2011-05-03 5 views
2

패턴 인식을 위해 네트워크를 훈련하는 동안 누군가 내 코드가 잘못되었다고 말할 수 있습니까? 나는 Hn, 신기원을 바꾸고, 나의 데이터를 정규화 한 이후로 모든 것을 시도한 필사적이다. 그러나 네트워크는 발전하지 않는 것 같다.Matlab 신경 회로망이 학습하지 않습니다

여기에 코드

net = newff(p,t,15,{},'traingd'); 
net.divideParam.trainRatio = 70/100; % Adjust as desired 
net.divideParam.valRatio = 15/100; % Adjust as desired 
net.divideParam.testRatio = 15/100; % Adjust as desired 
net.trainParam.epochs = 10000; 
net.trainParam.goal = 0.01; 
net.trainParam.show = 25; 
net.trainParam.time = inf; 
net.trainParam.min_grad = 1e-10; 
net.trainParam.max_fail = 10; 
net.trainParam.sigma = 5.0e-5; 
net.trainParam.lambda = 5.0e-7; 
net.trainParam.mu_max = 1e-20; 
net.trainParam.lr = 0.001; 

% Train and Apply Network 
[net,tr] = train(net,p,t); 
outputs = sim(net,p); 

% Create P. 

% Plot 
plotperf(tr) 
plotfit(net,p,t) 
plotregression(t,outpts) 

내가 정확히 다음과 같이 실행합니다. pt은 제 입력 사항이며 targetsivly 대상입니다. 도구 상자 (nprtool)를 실행할 때 데모에서 오는 경우가 아니면 대상을 소개 할 수 없습니까?

답변

2

은 GUI (nprtool)를 시작하면 작업 영역에있는 변수에서 대상 (및 입력)을 선택 할 수 있어야한다 :

: 첫 번째 질문에 대해서는

nprtool

  • 합성 데이터 (모델에 맞는 모델)를 사용해 볼 수 있습니까?
  • traingd 대신 기본값 trainlm 옵션을 사용해 볼 수 있습니까?
+0

감사드립니다. 작업 공간의 변수를 사용합니다. 무슨 일이 일어나는가 내가 목표물을 열면 나에게 선택을 변경시키지 않는다 ????? 다른 걸 물어봐도 될까요? 두 번이나 네트워크를 훈련 할 수 있었고 목표를 변경하자마자 계속 훈련을하지 않았습니다. 나는 그것이 무게 때문에 일 수 있다고 생각하고 있는데, 일주일 만에 두 번 일할 수 있다는 것이 운이 좋았다. 가장 좋은 가중치가 무엇인지 알고 있습니까? 고맙습니다. – Paulo

+0

데이터가 신경망 모델을 따르지 않는 경우 문제가있는 데이터로 인해 발생할 수 있습니다. 그러면 알고리즘이 수렴되지 않을 수 있습니다. –

+0

그러나 나는 왜 내가 여러 번 시도했는지 두 번 수렴했는지 이해하지 못한다. Trainlm normaly는 나에게 더 나쁜 mse를 준다. 필사적이되기 시작 했어, 항상 이럴거야? 나는 weka를 시도했다. 그러나 공간 문제가있다. 그리고 XMx는 그것을 해결하지 않고있다. ( – Paulo