traingdm
Retropropagación del gradiente descendente con momento
Sintaxis
net.trainFcn = 'traingdm'
[net,tr] = train(net,...)
Descripción
traingdm es una función de entrenamiento de red que actualiza los valores de peso y sesgo de acuerdo con el gradiente descendente con momento.
net.trainFcn = 'traingdm' establece la propiedad de red trainFcn.
[net,tr] = train(net,...) entrena la red con traingdm.
El entrenamiento se lleva a cabo según los parámetros de entrenamiento traingdm, que se muestran a continuación con sus valores predeterminados:
net.trainParam.epochs | 1000 | Número máximo de épocas que desea entrenar |
net.trainParam.goal | 0 | Objetivo de rendimiento |
net.trainParam.lr | 0.01 | Tasa de aprendizaje |
net.trainParam.max_fail | 6 | Máximo de errores de validación |
net.trainParam.mc | 0.9 | Constante de momento |
net.trainParam.min_grad | 1e-5 | Gradiente mínimo de rendimiento |
net.trainParam.show | 25 | Épocas entre las que se muestran progresos |
net.trainParam.showCommandLine | false | Generar una salida en la línea de comandos |
net.trainParam.showWindow | true | Mostrar la interfaz gráfica del entrenamiento |
net.trainParam.time | inf | Tiempo máximo de entrenamiento en segundos |
Uso de la red
Puede crear una red estándar que use traingdm con feedforwardnet o cascadeforwardnet. Para preparar una red personalizada que se entrene con traingdm:
Establezca
net.trainFcnen'traingdm'. Esto establecenet.trainParamen los parámetros predeterminados detraingdm.Establezca las propiedades
net.trainParamen los valores que desee.
En cualquier caso, llamar a train con la red resultante entrena la red con traingdm.
Para ver ejemplos, consulte help feedforwardnet y help cascadeforwardnet.
Más acerca de
Algoritmos
traingdm puede entrenar cualquier red, siempre y cuando su peso, entrada combinada y funciones de transferencia tengan funciones derivadas.
La retropropagación se utiliza para calcular las derivadas del rendimiento perf con respecto a las variables de peso y sesgo X. Cada variable se ajusta según el gradiente descendente con momento,
dX = mc*dXprev + lr*(1-mc)*dperf/dX
donde dXprev es el cambio anterior del peso o el sesgo.
El entrenamiento se detiene cuando tiene lugar alguna de estas condiciones:
Se ha alcanzado el número máximo de
epochs(repeticiones).Se ha sobrepasado el máximo de
time.El rendimiento se minimiza al
goal.El gradiente de rendimiento está por debajo de
min_grad.El rendimiento de validación (error de validación) ha aumentado más de
max_failveces desde la última vez que disminuyó (al utilizar la validación).
Historial de versiones
Introducido antes de R2006a