Not able to train closed-loop for Narnet timeseries.

4 次查看(过去 30 天)
I am not able to train narnet to make closed-loop.
Error is as follows:
  1. * Error using zeros
  2. * Requested 1x6166784512 (45.9GB) array exceeds maximum array size preference. Creation of arrays greater than this
  3. * limit may take a long time and cause MATLAB to become unresponsive. See array size limit or preference panel for
  4. * more information.
  5. *
  6. * Error in nnMex.perfsJEJJ>iJacobianFunctionForDirection (line 45)
  7. * TEMP = zeros(1,ceil(hints.tempSizeFJ/8)*8);
  8. *
  9. * Error in nnMex.perfsJEJJ (line 8)
  10. * [jacobian, TEMP] = iJacobianFunctionForDirection( direction, hints );
  11. *
  12. * Error in nnCalcLib/perfsJEJJ (line 388)
  13. * lib.calcMode.perfsJEJJ(calcNet,lib.calcData,lib.calcHints);
  14. *
  15. * Error in trainlm>initializeTraining (line 165)
  16. * [worker.perf,worker.vperf,worker.tperf,worker.je,worker.jj,worker.gradient] = calcLib.perfsJEJJ(calcNet);
  17. *
  18. * Error in nnet.train.trainNetwork>trainNetworkInMainThread (line 28)
  19. * worker = localFcns.initializeTraining(archNet,calcLib,calcNet,tr);
  20. *
  21. * Error in nnet.train.trainNetwork (line 16)
  22. * [archNet,tr] = trainNetworkInMainThread(archNet,rawData,calcLib,calcNet,tr,feedback,localFcns);
  23. *
  24. * Error in trainlm>train_network (line 156)
  25. * [archNet,tr] = nnet.train.trainNetwork(archNet,rawData,calcLib,calcNet,tr,localfunctions);
  26. *
  27. * Error in trainlm (line 55)
  28. * [out1,out2] = train_network(varargin{2:end});
  29. *
  30. * Error in network/train (line 369)
  31. * [net,tr] = feval(trainFcn,'apply',net,data,calcLib,calcNet,tr);
My Code is as follows:
T=tonndata(sdatat(1:end,1),false,false);
delay=[1:706];
hiddenlayersize=6;
trainFcn='trainlm';
net=narnet(delay,hiddenlayersize,'open',trainFcn);
net.divideFcn='divideblock';
net.trainParam.epochs = 3000;
net.divideParam.trainRatio = 70/100;
net.divideParam.valRatio = 15/100;
net.divideParam.testRatio = 15/100;
net.trainParam.min_grad=1e-7;
net.trainParam.max_fail=100;
net.performFcn = 'mse';
net.performParam.normalization = 'standard';
net.input.processFcns={'removeconstantrows','mapminmax'}
[Xso,Xio,Aio,Tso]=preparets(net,{},{},T);
rng('default')
net=train(net,Xso,Tso,Xio,Aio);
[Yso,Xfo,Afo]=net(Xso,Xio,Aio);
[netc,Xic,Aic]=closeloop(net,Xfo,Afo);
[Xc,Xic,Aic,Tc] = preparets(netc,{},{},T);
netc=train(netc,Xc,Tc,Xic,Aic);
This step causes the above error.
Please suggest where I am committing mistakes.
Thanks

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Sequence and Numeric Feature Data Workflows 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by