为什么出现此错误“使用网络/ SIM输入数据大小时出错,不匹配”?

问题描述

我正在Matlab上使用LeaveOut交叉验证。

cv = cvpartition(classe_t,'LeaveOut'); 

在每次迭代中,我使用x-1个元素进行训练,并使用1个元素进行验证。

 ind_x_train_act = find(cv.training(i))';
 ind_x_val_act = find(cv.test(i))';
 net.divideParam.trainInd = ind_x_train_act;
 [nn tr] = train(net,x_train_act,t_train_act); 

在迭代结束时,我保留训练有素的神经网络。

nns{i}=nn;

但是,当我测试一组测试时,会出现以下错误

Error using network/sim (line 270)
Input data sizes do not match net.inputs{1}.size.

Error in network/subsref (line 15)
        otherwise,v = sim(vin,subs{:});

当我使用以下命令检查保存的网络时,我看到有些返回30(正确的值,它是变量的数量),而另一些返回0,而它们则返回错误

nns {j} .inputs {1} .size

>> nns{1}.inputs{1}.size

ans =

   324

>> nns{2}.inputs{1}.size

ans =

     0

为什么某些网络保存不正确?怎么了?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)