我有一個90×8的數據集,我從90個字符的圖像,即數字1-9特徵提取(通過在每10×10單元中求和1)。每一行代表一幅圖像。 我嘗試使用下面的代碼來訓練神經網絡識別新的輸入圖像(即在1到9(含)之間的數字):MATLAB NN工具箱:錯誤使用trainlm
net.trainFcn='traingdx';
net.performFcn='sse';
net.trainParam.goal=0.1;
net.trainParam.show=20;
net.trainParam.epochs=5000;
net.trainParam.mc=0.95;
net =newff(minmax(datasetNormalized'),[20 9],{'logsig' 'logsig'});
T=reshape(repmat([1:9],10,1),1,90);
[net,tr]=train(net,datasetNormalized,T);
後來我想用後續的使用培訓,以識別新的圖片網絡。 m是已經被特徵提取的圖像字符。
[a,m]=max(sim(net,m));
disp(b);
我收到以下錯誤,我沒有任何想法如何解決這個問題:
使用trainlm錯誤(線109)
輸入和目標均有不同數量的樣本。 (net.train)= feval(net.trainFcn,net,X,T,Xi,Ai,EW,net.trainParam); (行55)[net,tr] = train(net,datasetNormalized,T);
注意:datasetNormalized是我在[0,1]中歸一化的數據集。 哪一部分導致問題?
問題依然存在 – JasonStack
究竟應該爲網絡輸入一個輸出?這太複雜了,我很困惑! – JasonStack
錯誤信息是什麼?你能告訴我們T的大小和數據集的規格化嗎? – michaeltang