这是我的代码:
p = input1;
t1 = output1;
net = feedforwardnet(10, 'trainrp');
net.trainParam.epochs = 1000;
net.trainParam.goal = 0.0005;
net = train(net, p, t1);
y1 = sim(net, p);
p = input2;
t2 = tar;
y2 = sim(net, p);
然而,我收到此错误:
Error using bsxfun
Non-singleton dimensions of the two input arrays must match each other.
Error in nnMATLAB.pc (line 24)
pi = bsxfun(@minus,pi,settings.xoffset);
Error in nncalc.preCalcData (line 20)
data.Pc = calcMode.pc(net,data.X,data.Xi,data.Q,data.TS,calcHints);
Error in nncalc.setup1 (line 118)
calcData = nncalc.preCalcData(matlabMode,matlabHints,net,data,doPc,doPd,calcHints.doFlattenTime);
Error in network/sim (line 283)
[calcMode,calcNet,calcData,calcHints,~,resourceText] = nncalc.setup1(calcMode,net,data);
我想创建一个神经网络,其中input1
(对于输入图层,310 x 24
矩阵)和output1
(对于输出图层,155 x 24
矩阵)。
在此过程之后,我将使用这些矩阵训练我的网络。
最后,我希望通过input2
获取此网络的模拟结果(对于输入图层,31 x 24
矩阵)。
总之,我希望使用input1
和output1
来训练自己的网络,并希望通过input2
获取我的模拟结果(由上述网络完成)。< / p>
我认为这些错误是基于输入大小差异(input1
和input2
之间)
我该如何解决这个问题?