En aprendizaje automático y estadística , la tasa de aprendizaje es un parámetro de ajuste en un algoritmo de optimización que determina el tamaño del paso en cada iteración al acercarse al mínimo de una función de pérdida . [ 1 ] Dado que influye en la medida en que la información recién adquirida reemplaza la información antigua, representa metafóricamente la velocidad a la que un modelo de aprendizaje automático "aprende". En la literatura sobre control adaptativo , la tasa de aprendizaje se conoce comúnmente como ganancia . [ 2 ]
Al establecer una tasa de aprendizaje, existe un equilibrio entre la velocidad de convergencia y el sobrepaso . Si bien la dirección de descenso generalmente se determina a partir del gradiente de la función de pérdida, la tasa de aprendizaje determina la magnitud del paso en esa dirección. Una tasa de aprendizaje demasiado alta hará que el aprendizaje salte por encima de los mínimos, pero una tasa de aprendizaje demasiado baja tardará demasiado en converger o se quedará atascado en un mínimo local indeseable. [ 3 ]
Para lograr una convergencia más rápida, evitar oscilaciones y quedarse atascado en mínimos locales indeseables, la tasa de aprendizaje se suele variar durante el entrenamiento, ya sea de acuerdo con un programa de tasa de aprendizaje o mediante el uso de una tasa de aprendizaje adaptativa. [ 4 ] La tasa de aprendizaje y sus ajustes también pueden diferir según el parámetro, en cuyo caso es una matriz diagonal que puede interpretarse como una aproximación a la inversa de la matriz hessiana en el método de Newton . [ 5 ] La tasa de aprendizaje está relacionada con la longitud del paso determinada por la búsqueda lineal inexacta en los métodos cuasi-Newton y algoritmos de optimización relacionados. [ 6 ] [ 7 ]
Programa de tasa de aprendizaje
La tasa inicial puede dejarse como predeterminada del sistema o seleccionarse mediante diversas técnicas. [ 8 ] Un esquema de tasa de aprendizaje modifica la tasa de aprendizaje durante el proceso y, por lo general, se modifica entre épocas/iteraciones. Esto se realiza principalmente con dos parámetros: decaimiento y momento . Existen muchos esquemas de tasa de aprendizaje diferentes, pero los más comunes son los basados en el tiempo, los basados en pasos y los exponenciales . [ 4 ]
La disminución gradual sirve para estabilizar el aprendizaje en un punto óptimo y evitar oscilaciones, una situación que puede surgir cuando una tasa de aprendizaje constante demasiado alta provoca que el aprendizaje salte de un lado a otro alrededor de un mínimo, y está controlada por un hiperparámetro.
El momento es análogo a una pelota que rueda cuesta abajo; queremos que la pelota se detenga en el punto más bajo de la colina (que corresponde al error más bajo). El momento acelera el aprendizaje (aumentando la tasa de aprendizaje) cuando el gradiente del costo del error se dirige en la misma dirección durante mucho tiempo y también evita mínimos locales al "pasar por encima" de pequeños baches. El momento se controla mediante un hiperparámetro análogo a la masa de una pelota que debe elegirse manualmente: si es demasiado alto, la pelota pasará por encima de los mínimos que deseamos encontrar; si es demasiado bajo, no cumplirá su propósito. La fórmula para incorporar el momento es más compleja que la de la desintegración, pero suele estar integrada en bibliotecas de aprendizaje profundo como Keras .
Los programas de aprendizaje basados en el tiempo modifican la tasa de aprendizaje en función de la tasa de aprendizaje de la iteración anterior. Teniendo en cuenta la disminución, la fórmula matemática para la tasa de aprendizaje es:
dóndees la tasa de aprendizaje,es la tasa de aprendizaje original,es un parámetro de desintegración yes el paso de iteración.
Los programas de aprendizaje por etapas modifican la tasa de aprendizaje según unos pasos predefinidos. La fórmula de aplicación de la disminución se define aquí como:
dóndees la tasa de aprendizaje en la iteración,es la tasa de aprendizaje inicial,es cuánto debería cambiar la tasa de aprendizaje en cada caída (0,5 corresponde a una reducción a la mitad) ycorresponde a la tasa de caída , o con qué frecuencia se debe caer la tasa (10 corresponde a una caída cada 10 iteraciones). La función piso () aquí reduce el valor de su entrada a 0 para todos los valores menores que 1.
Los esquemas de aprendizaje exponencial son similares a los basados en pasos, pero en lugar de pasos, se utiliza una función exponencial decreciente. La fórmula matemática para tener en cuenta la disminución es:
dóndees un parámetro de decaimiento.
Tasa de aprendizaje adaptativa
El problema con los esquemas de tasa de aprendizaje es que todos dependen de hiperparámetros que deben elegirse manualmente para cada sesión de aprendizaje y pueden variar mucho según el problema en cuestión o el modelo utilizado. Para solucionar esto, existen muchos tipos diferentes de algoritmos de descenso de gradiente adaptativo como Adagrad , Adadelta, RMSprop y Adam [ 9 ] , que generalmente están integrados en bibliotecas de aprendizaje profundo como Keras . [ 10 ]
Véase también
Referencias
- ↑ Murphy, Kevin P. (2012). Aprendizaje automático: una perspectiva probabilística . Cambridge: MIT Press. pág. 247. ISBN 978-0-262-01802-9.
- ↑ Delyon, Bernard (2000). "Aproximación estocástica con ganancia decreciente: convergencia y teoría asintótica". Apuntes de clase inéditos . Universidad de Rennes. CiteSeerX 10.1.1.29.4428 .
- ↑ Buduma, Nikhil; Locascio, Nicholas (2017). Fundamentos del aprendizaje profundo : Diseño de algoritmos de inteligencia artificial de próxima generación . O'Reilly. pág. 21. ISBN 978-1-4919-2558-4.
- 1 2 Patterson, Josh; Gibson, Adam (2017). «Comprendiendo las tasas de aprendizaje». Aprendizaje profundo : un enfoque práctico . O'Reilly. págs. 258–263 . ISBN 978-1-4919-1425-0.
- ↑ Ruder, Sebastian (2017). "Una visión general de los algoritmos de optimización por descenso de gradiente". arXiv : 1609.04747 [ cs.LG ].
- ↑ Nesterov, Y. (2004). Lecciones introductorias sobre optimización convexa: un curso básico . Boston: Kluwer. pág. 25. ISBN 1-4020-7553-7.
- ↑ Dixon, LCW (1972). «La elección de la longitud del paso, un factor crucial en el rendimiento de los algoritmos de métrica variable». Métodos numéricos para la optimización no lineal . Londres: Academic Press. págs. 149–170 . ISBN 0-12-455650-7.
- ↑ Smith, Leslie N. (4 de abril de 2017). "Tasas de aprendizaje cíclicas para el entrenamiento de redes neuronales". arXiv : 1506.01186 [ cs.CV ].
- ↑ Murphy, Kevin (2021). Aprendizaje automático probabilístico: una introducción . MIT Press . Recuperado el 10 de abril de 2021 .
- ↑ Brownlee, Jason (22 de enero de 2019). "Cómo configurar la tasa de aprendizaje al entrenar redes neuronales de aprendizaje profundo" . Machine Learning Mastery . Recuperado el 4 de enero de 2021 .
Lecturas adicionales
- Géron, Aurélien (2017). «Descenso de gradiente» . Aprendizaje automático práctico con Scikit-Learn y TensorFlow . O'Reilly. pp. 113–124 . ISBN 978-1-4919-6229-9.
- Plagianakos, VP; Magoulas, GD; Vrahatis, MN (2001). «Adaptación de la tasa de aprendizaje en el descenso de gradiente estocástico» . Avances en análisis convexo y optimización global . Kluwer. págs. 433–444 . ISBN 0-7923-6942-4.
Enlaces externos
- de Freitas, Nando (12 de febrero de 2015). "Optimización" . Lección 6 de Aprendizaje Profundo . Universidad de Oxford – vía YouTube .
- Aprendizaje automático
- Selección de modelos
- Algoritmos y métodos de optimización