【问题标题】:Matlab unable to plot validation and testing on neural networkMatlab 无法在神经网络上绘制验证和测试
【发布时间】:2019-08-03 20:51:16
【问题描述】:

我正在使用循环神经网络 (matlab) 进行时间序列预测。 我正在为 RNN 使用“divideind”。但我面临的问题是无法绘制我划分的验证和测试数据。唯一出现的图是训练数据。

所以,我尝试复制我的代码以使用反向传播方法分割数据。代码工作正常。该图可以很好地显示训练、验证和测试数据的回归和时间序列响应。

这是我的代码

net = layrecnet(1:1,7,'trainlm');
........

% divide data
net.divideFcn = 'divideind';  % divide data by indexing
[trainIndex,valIndex,testIndex] = divideind(1117,1:781,782:949,950:1117);
net.divideParam.trainInd = trainIndex;
net.divideParam.valInd = valIndex;
net.divideParam.testInd  = testIndex;

.......

[inpt,inputStates,layerStates,trgts]=preparets(net,Xcell,Ycell);
net=train(net,inpt,trgts,inputStates,layerStates);

resultTest = net(inpt,inputStates,layerStates);
errorTest = gsubtract(luaran,resultTest);
perf = perform(net,resultTest,trgts);

我希望我能看到验证和测试数据的回归和时间序列响应图。 正如我之前提到的,我看到的唯一图表仅用于训练数据。

【问题讨论】:

    标签: matlab validation testing plot recurrent-neural-network


    【解决方案1】:

    对于动态网络(如layrecnet),您应该使用此附加行:

    net.divideMode = 'time'; % 'time' for dynamic networks or 'sample' for static networks
    

    【讨论】:

      猜你喜欢
      • 2012-09-19
      • 1970-01-01
      • 2017-02-03
      • 2014-02-24
      • 2017-08-27
      • 2014-04-25
      • 2011-07-31
      • 2015-12-03
      相关资源
      最近更新 更多