Преобразуйте обратную связь разомкнутого цикла нейронной сети в замкнутый цикл
net = closeloop(net)
[net,xi,ai] = closeloop(net,xi,ai)
net = closeloop(net) берет нейронную сеть и закрывает любую обратную связь разомкнутого цикла. Для каждой обратной связи вывод i, свойством net.outputs{i}.feedbackMode которого является 'open', оно заменяет свой связанный вход обратной связи и их входные веса со связями веса слоя, прибывающими из вывода. Свойство net.outputs{i}.feedbackMode установлено в 'closed', и свойство net.outputs{i}.feedbackInput установлено в пустую матрицу. Наконец, значение net.outputs{i}.feedbackDelays добавляется к задержкам весов слоя обратной связи (т.е. к значениям задержек замененных входных весов).
[net,xi,ai] = closeloop(net,xi,ai) преобразовывает сеть разомкнутого цикла, и ее текущая входная задержка утверждает xi, и задержка слоя утверждает ai к форме с обратной связью.
Этот пример показывает, как разработать сеть NARX в форме разомкнутого цикла, затем преобразуйте его в форму с обратной связью.
[X,T] = simplenarx_dataset;
net = narxnet(1:2,1:2,10);
[Xs,Xi,Ai,Ts] = preparets(net,X,{},T);
net = train(net,Xs,Ts,Xi,Ai);
view(net)
Yopen = net(Xs,Xi,Ai)
net = closeloop(net)
view(net)
[Xs,Xi,Ai,Ts] = preparets(net,X,{},T);
Yclosed = net(Xs,Xi,Ai);
Для примеров при использовании closeloop и openloop, чтобы реализовать многоступенчатый прогноз, смотрите narxnet и narnet.