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)
我運行它正是這樣。 p
和t
分別是我的輸入和目標。 是否只是我,當試圖運行工具箱(nprtool)不能引入目標,除非它來自演示?
謝謝你的支持。我確實使用了工作區中的變量。發生什麼事是,當我打開目標時,它不會給我改變選擇?????我可以問別的嗎?我兩次能夠訓練網絡,一旦我改變了目標,它就不會繼續訓練。我想這可能是因爲體重,我很幸運,在一週內它可以工作兩次。你知道什麼是最好的權重開始?非常感謝你 – Paulo 2011-05-04 11:42:46
這可能是由於有問題的數據造成的,如果數據沒有遵循神經網絡模型,那麼算法可能不會收斂。 – 2011-05-04 11:49:58
但我不明白爲什麼它會在我嘗試多次的時候收斂兩次。 Trainlm正常地給我一個更糟的MSE。我開始絕望了,是不是總是這樣?我想嘗試weka,但有空間問題,XMx沒有解決它:( – Paulo 2011-05-04 11:55:17