eispiel für eine 10-fache Kreuzvalidierung mit neuronaler Netzklassifizierung in MATL
Ich suche nach einem Beispiel für die Anwendung der 10-fachen Kreuzvalidierung in einem neuronalen Netzwerk. Ich benötige eine Antwort auf diese Frage:eispiel einer 10-fachen SVM-Klassifikation in MATL
Ich möchte alle 3 Klassen klassifizieren, während im Beispiel nur zwei Klassen berücksichtigt wurden.
Edit: hier ist der Code, den ich für das Iris-Beispiel geschrieben habe
load fisheriris %# load iris dataset
k=10;
cvFolds = crossvalind('Kfold', species, k); %# get indices of 10-fold CV
net = feedforwardnet(10);
for i = 1:k %# for each fold
testIdx = (cvFolds == i); %# get indices of test instances
trainIdx = ~testIdx; %# get indices training instances
%# train
net = train(net,meas(trainIdx,:)',species(trainIdx)');
%# test
outputs = net(meas(trainIdx,:)');
errors = gsubtract(species(trainIdx)',outputs);
performance = perform(net,species(trainIdx)',outputs)
figure, plotconfusion(species(trainIdx)',outputs)
end
Fehler von matlab gegeben:
Error using nntraining.setup>setupPerWorker (line 62)
Targets T{1,1} is not numeric or logical.
Error in nntraining.setup (line 43)
[net,data,tr,err] = setupPerWorker(net,trainFcn,X,Xi,Ai,T,EW,enableConfigure);
Error in network/train (line 335)
[net,data,tr,err] = nntraining.setup(net,net.trainFcn,X,Xi,Ai,T,EW,enableConfigure,isComposite);
Error in Untitled (line 17)
net = train(net,meas(trainIdx,:)',species(trainIdx)');