stringtranslate.com

Tasa de aprendizaje

En el aprendizaje automático y las estadísticas , 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 mientras avanza hacia un mínimo de una función de pérdida . [1] Dado que influye en qué medida la información recién adquirida anula la información anterior, 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 denomina comúnmente ganancia . [2]

Al establecer una tasa de aprendizaje, existe un equilibrio entre la tasa de convergencia y la tasa de exceso . 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 qué tan grande es el paso que se da en esa dirección. Una tasa de aprendizaje demasiado alta hará que el aprendizaje supere los mínimos, pero una tasa de aprendizaje demasiado baja tardará demasiado en converger o se quedará estancada en un mínimo local indeseable. [3]

Para lograr una convergencia más rápida, evitar oscilaciones y quedarse atascado en mínimos locales no deseados, la tasa de aprendizaje a menudo varía 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 se trata de una matriz diagonal que puede interpretarse como una aproximación a la inversa de la matriz de Hesse en el método de Newton . [5] La tasa de aprendizaje está relacionada con la longitud del paso determinada por la búsqueda de líneas inexactas en métodos cuasi-Newton y algoritmos de optimización relacionados. [6] [7]

Horario de tasa de aprendizaje

La tasa inicial se puede dejar como predeterminada del sistema o se puede seleccionar mediante una variedad de técnicas. [8] Un programa de tasa de aprendizaje cambia la tasa de aprendizaje durante el aprendizaje y se cambia con mayor frecuencia entre épocas/iteraciones. Esto se hace principalmente con dos parámetros: decaimiento y impulso . Hay muchos programas de ritmo de aprendizaje diferentes, pero los más comunes son el basado en tiempo, el basado en pasos y el exponencial . [4]

El decaimiento sirve para asentar el aprendizaje en un lugar agradable y evitar oscilaciones, una situación que puede surgir cuando una tasa de aprendizaje constante demasiado alta hace que el aprendizaje salte hacia adelante y hacia atrás por encima de un mínimo, y está controlado por un hiperparámetro.

El impulso es análogo a una pelota que rueda cuesta abajo; queremos que la pelota se asiente en el punto más bajo de la colina (correspondiente al error más bajo). Momentum acelera el aprendizaje (aumentando la tasa de aprendizaje) cuando el gradiente de costo de error se dirige en la misma dirección durante un tiempo prolongado y también evita los mínimos locales al "pasar por encima" pequeños baches. El momento está controlado por un hiperparámetro análogo a la masa de una pelota que debe elegirse manualmente: demasiado alto y la pelota rodará sobre los mínimos que deseamos encontrar, demasiado bajo y no cumplirá su propósito. La fórmula para factorizar el impulso es más compleja que la de la decadencia, pero la mayoría de las veces se integra con bibliotecas de aprendizaje profundo como Keras .

Los programas de aprendizaje basados ​​en el tiempo alteran la tasa de aprendizaje dependiendo de la tasa de aprendizaje de la iteración de tiempo anterior. Teniendo en cuenta la decadencia, la fórmula matemática para la tasa de aprendizaje es:

donde es la tasa de aprendizaje, es un parámetro de caída y es el paso de iteración.

Los programas de aprendizaje basados ​​en pasos cambian la tasa de aprendizaje de acuerdo con algunos pasos predefinidos. La fórmula de aplicación del decaimiento se define aquí como:

donde está la tasa de aprendizaje en la iteración , es la tasa de aprendizaje inicial, es cuánto debe cambiar la tasa de aprendizaje en cada caída (0,5 corresponde a una reducción a la mitad) y corresponde a la tasa de caída , o con qué frecuencia se debe reducir 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 programas de aprendizaje exponencial son similares al basado en pasos, pero en lugar de pasos, se utiliza una función exponencial decreciente. La fórmula matemática para factorizar la decadencia es:

donde es un parámetro de decadencia.

Tasa de aprendizaje adaptativo

El problema con los programas de tasa de aprendizaje es que todos dependen de hiperparámetros que deben elegirse manualmente para cada sesión de aprendizaje determinada y pueden variar mucho según el problema en cuestión o el modelo utilizado. Para combatir esto, existen muchos tipos diferentes de algoritmos adaptativos de descenso de gradiente, como Adagrad , Adadelta, RMSprop y Adam [9] , que generalmente están integrados en bibliotecas de aprendizaje profundo como Keras . [10]

Ver también

Referencias

  1. ^ Murphy, Kevin P. (2012). Aprendizaje automático: una perspectiva probabilística. Cambridge: Prensa del MIT. pag. 247.ISBN​ 978-0-262-01802-9.
  2. ^ Delyon, Bernard (2000). "Aproximación estocástica con ganancia decreciente: convergencia y teoría asintótica". Notas de conferencias no publicadas . Universidad de Rennes. CiteSeerX 10.1.1.29.4428 . 
  3. ^ Buduma, Nikhil; Locascio, Nicolás (2017). Fundamentos del aprendizaje profundo: diseño de algoritmos de inteligencia artificial de próxima generación . O'Reilly. pag. 21.ISBN 978-1-4919-2558-4.
  4. ^ ab Patterson, Josh; Gibson, Adán (2017). "Comprensión de las tasas de aprendizaje". Aprendizaje profundo: el enfoque de un profesional . O'Reilly. págs. 258–263. ISBN 978-1-4919-1425-0.
  5. ^ Ruder, Sebastián (2017). "Una descripción general de los algoritmos de optimización del descenso de gradientes". arXiv : 1609.04747 [cs.LG].
  6. ^ Nesterov, Y. (2004). Conferencias introductorias sobre optimización convexa: un curso básico. Boston: Kluwer. pag. 25.ISBN 1-4020-7553-7.
  7. ^ Dixon, LCW (1972). "La elección de la longitud del paso, un factor crucial en el rendimiento de algoritmos de métrica variable". Métodos numéricos de optimización no lineal . Londres: Academic Press. págs. 149-170. ISBN 0-12-455650-7.
  8. ^ Smith, Leslie N. (4 de abril de 2017). "Tasas de aprendizaje cíclico para el entrenamiento de redes neuronales". arXiv : 1506.01186 [cs.CV].
  9. ^ Murphy, Kevin (2021). Aprendizaje automático probabilístico: una introducción. Prensa del MIT . Consultado el 10 de abril de 2021 . {{cite book}}: |website=ignorado ( ayuda )
  10. ^ Brownlee, Jason (22 de enero de 2019). "Cómo configurar la tasa de aprendizaje al entrenar redes neuronales de aprendizaje profundo". Dominio del aprendizaje automático . Consultado el 4 de enero de 2021 .

Otras lecturas

enlaces externos