Contenido principal

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.epochs1000

Número máximo de épocas que desea entrenar

net.trainParam.goal0

Objetivo de rendimiento

net.trainParam.lr0.01

Tasa de aprendizaje

net.trainParam.max_fail6

Máximo de errores de validación

net.trainParam.mc0.9

Constante de momento

net.trainParam.min_grad1e-5

Gradiente mínimo de rendimiento

net.trainParam.show25

Épocas entre las que se muestran progresos

net.trainParam.showCommandLinefalse

Generar una salida en la línea de comandos

net.trainParam.showWindowtrue

Mostrar la interfaz gráfica del entrenamiento

net.trainParam.timeinf

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:

  1. Establezca net.trainFcn en 'traingdm'. Esto establece net.trainParam en los parámetros predeterminados de traingdm.

  2. Establezca las propiedades net.trainParam en 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

contraer todo

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_fail veces desde la última vez que disminuyó (al utilizar la validación).

Historial de versiones

Introducido antes de R2006a

Consulte también

| | |