2.24 - Otros algoritmos de optimización: Adam

Lección 24 de la sección “Redes Neuronales” del curso Fundamentos de Deep Learning con Python.

Introducción

En las dos lecciones anteriores vimos cómo los algoritmos del Gradiente Descendente con Momentum y RMSPROP buscan acelerar el proceso de entrenamiento de una Red Neuronal.

En esta lección veremos cómo combinar lo mejor de estos dos métodos en el algoritmo de optimización Adam, para lograr acelerar aún más dicho proceso de entrenamiento.

Contenido exclusivo suscriptores

Suscríbete para tener acceso al video con la explicación detallada de esta lección. Además podrás disfrutar de todos los cursos de la Academia Online

Las ventajas de los algoritmos de Momentum y RMSPROP

Recordemos que el algoritmo del Gradiente Descendente con Momentum usa la media móvil para evitar oscilaciones excesivas en los valores de los gradientes durante el entrenamiento.

Por otra parte el algoritmo RMSPROP incorpora un tamaño de paso variable, que permite acelerar o desacelerar el proceso de entrenamiento dependiendo de la magnitud del gradiente en cada iteración.

El algoritmo Adam

El algoritmo Adam incorpora las dos ventajas mencionadas anteriormente en la ecuación de actualización de los coeficientes. En particular, en cada iteración la actualización contiene un término asociado al momentum y otro que controla el tamaño del paso.

Con esto se logra tener un mejor desempeño durante el entrenamiento en comparación con el algoritmo del Gradiente Descendente convencional y con los algoritmos de Gradiente Descendente con Momentum y RMSPROP.

Contenido exclusivo suscriptores

Recuerda suscribirte para acceder al video con la explicación detallada de esta lección. Además podrás disfrutar de todos los cursos de la Academia Online

Conclusión

Muy bien, en las últimas lecciones ya hemos aprendido varias herramientas que resultan esenciales en la implementación y entrenamiento de Redes Neuronales.

Antes de entrar al proyecto final del curso, en la próxima lección hablaremos entonces de varios aspectos prácticos para la implementación de Redes Neuronales, que resultarán útiles al momento de aplicar todos estos conceptos para la solución de problemas reales.

Ver todas las lecciones de este curso