MATLAB でニューラル ネットワークをトレーニングしているときに、「train」コマンドを使用しています。このコマンドは、データをトレーニング、テスト、および検証セットに自動的に分割しますか、またはデータを手動で分割する必要があります。
2860 次
1 に答える
1
はい、そうです。ただし、必要に応じて、データを手動で分割できます。net オブジェクトのフィールドを使用する必要がありますnet.divideFcn
。net.divideParam
t=0:0.05:8; x= sin(t);
net = feedforwardnet(3);
net.divideFcn= 'dividerand'; % divide the data randomly
net.divideParam.trainRatio= 0.7; % we use 70% of the data for training
net.divideParam.valRatio= 0.3; % 30% is for validation
net.divideParam.testRatio= 0; % 0% for testing
net = train(net,t,x);
plot(t,x,t,net(t));
手動データ分割の例を次に示します。
net.divideFcn= 'divideind'; % divide the data manually
net.divideParam.trainInd= 1:100; % training data indices
net.divideParam.valInd= 101:140; % validation data indices
net.divideParam.testInd= 141:161; % testing data indices
于 2016-09-13T09:16:23.903 に答える