Main Content

closeloop

Convertir la retroalimentación de lazo abierto de una red neuronal en una de lazo cerrado

Sintaxis

net = closeloop(net)
[net,xi,ai] = closeloop(net,xi,ai)

Descripción

net = closeloop(net) toma una red neuronal y cierra cualquier retroalimentación de bucle abierto. Por cada salida de retroalimentación i cuya propiedad net.outputs{i}.feedbackMode sea 'open', sustituye su entrada de retroalimentación asociada y sus pesos de entrada por conexiones de pesos de capa procedentes de la salida. La propiedad net.outputs{i}.feedbackMode se establece en 'closed' y la propiedad net.outputs{i}.feedbackInput se establece en una matriz vacía. Por último, el valor de net.outputs{i}.feedbackDelays se añade a los retardos de los pesos de la capa de realimentación (es decir, a los valores de los retardos de los pesos de entrada sustituidos).

[net,xi,ai] = closeloop(net,xi,ai) convierte una red de lazo abierto y sus estados de retardo de entrada xi y de retardo de capa ai en una de lazo cerrado.

Ejemplos

Convertir una red NARX en una de lazo cerrado

Este ejemplo muestra cómo diseñar una red NARX de lazo abierto y, a continuación, convertirla en una de lazo cerrado.

[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);

Figure Neural Network Training (25-Jan-2024 15:39:54) contains an object of type uigridlayout.

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);

Convertir estados de retardo

Para ver ejemplos sobre el uso de closeloop y openloop para implementar la predicción de pasos múltiples, consulte narxnet y narnet.

Historial de versiones

Introducido en R2010b

Consulte también

| | |