stringtranslate.com

Descenso de gradiente estocástico

El descenso de gradiente estocástico (a menudo abreviado como SGD ) es un método iterativo para optimizar una función objetivo con propiedades de suavidad adecuadas (por ejemplo, diferenciable o subdiferenciable ). Puede considerarse como una aproximación estocástica de la optimización del descenso de gradiente , ya que reemplaza el gradiente real (calculado a partir de todo el conjunto de datos ) por una estimación del mismo (calculado a partir de un subconjunto de datos seleccionado aleatoriamente). Especialmente en problemas de optimización de alta dimensión , esto reduce la carga computacional muy alta , logrando iteraciones más rápidas a cambio de una tasa de convergencia más baja . [1]

La idea básica detrás de la aproximación estocástica se remonta al algoritmo Robbins-Monro de la década de 1950. Hoy en día, el descenso de gradiente estocástico se ha convertido en un método de optimización importante en el aprendizaje automático . [2]

Fondo

Tanto la estimación estadística como el aprendizaje automático consideran el problema de minimizar una función objetivo que tiene la forma de una suma: donde se debe estimar el parámetro que se minimiza . Cada función sumando generalmente está asociada con la observación -ésima en el conjunto de datos (usado para el entrenamiento).

En estadística clásica, los problemas de minimización de suma surgen en los mínimos cuadrados y en la estimación de máxima verosimilitud (para observaciones independientes). La clase general de estimadores que surgen como minimizadores de sumas se denominan estimadores M. Sin embargo, en estadística, se reconoce desde hace tiempo que exigir incluso una minimización local es demasiado restrictivo para algunos problemas de estimación de máxima verosimilitud. [3] Por lo tanto, los teóricos estadísticos contemporáneos a menudo consideran puntos estacionarios de la función de verosimilitud (o ceros de su derivada, la función de puntuación y otras ecuaciones de estimación ).

El problema de minimización de la suma también surge para la minimización del riesgo empírico . Allí, es el valor de la función de pérdida en el ejemplo -ésimo y es el riesgo empírico.

Cuando se utiliza para minimizar la función anterior, un método de descenso de gradiente estándar (o "por lotes") realizaría las siguientes iteraciones: El tamaño del paso se denota por (a veces llamado tasa de aprendizaje en el aprendizaje automático) y aquí " " denota la actualización de una variable en el algoritmo.

En muchos casos, las funciones sumando tienen una forma simple que permite realizar evaluaciones económicas de la función suma y del gradiente de la suma. Por ejemplo, en estadística, las familias exponenciales de un parámetro permiten realizar evaluaciones económicas de funciones y gradientes.

Sin embargo, en otros casos, evaluar el gradiente de suma puede requerir evaluaciones costosas de los gradientes de todas las funciones sumando. Cuando el conjunto de entrenamiento es enorme y no existen fórmulas simples, evaluar las sumas de gradientes se vuelve muy costoso, porque evaluar el gradiente requiere evaluar los gradientes de todas las funciones sumando. Para economizar el costo computacional en cada iteración, el descenso de gradiente estocástico muestrea un subconjunto de funciones sumando en cada paso. Esto es muy efectivo en el caso de problemas de aprendizaje automático a gran escala. [4]

Método iterativo

Las fluctuaciones en la función objetivo total se toman como pasos de gradiente con respecto a los minilotes.

En el descenso de gradiente estocástico (o "en línea"), el gradiente verdadero de se aproxima mediante un gradiente en una sola muestra: A medida que el algoritmo recorre el conjunto de entrenamiento, realiza la actualización anterior para cada muestra de entrenamiento. Se pueden realizar varias pasadas sobre el conjunto de entrenamiento hasta que el algoritmo converja. Si se hace esto, los datos se pueden mezclar en cada pasada para evitar ciclos. Las implementaciones típicas pueden utilizar una tasa de aprendizaje adaptativa para que el algoritmo converja. [5]

En pseudocódigo, el descenso de gradiente estocástico se puede presentar como:

  • Elija un vector inicial de parámetros y una tasa de aprendizaje .
  • Repetir hasta obtener un mínimo aproximado:
    • Mezcle aleatoriamente las muestras en el conjunto de entrenamiento.
    • Para , haz lo siguiente:

Un compromiso entre calcular el gradiente verdadero y el gradiente en una sola muestra es calcular el gradiente contra más de una muestra de entrenamiento (llamado "minilote") en cada paso. Esto puede funcionar significativamente mejor que el descenso de gradiente estocástico "verdadero" descrito, porque el código puede hacer uso de bibliotecas de vectorización en lugar de calcular cada paso por separado como se mostró por primera vez en [6] donde se lo llamó "el algoritmo de retropropagación en modo de grupo". También puede dar como resultado una convergencia más suave, ya que el gradiente calculado en cada paso se promedia sobre más muestras de entrenamiento.

La convergencia del descenso de gradiente estocástico se ha analizado utilizando las teorías de minimización convexa y de aproximación estocástica . En resumen, cuando las tasas de aprendizaje disminuyen con una tasa apropiada, y sujeto a suposiciones relativamente suaves, el descenso de gradiente estocástico converge casi con seguridad a un mínimo global cuando la función objetivo es convexa o pseudoconvexa , y de lo contrario converge casi con seguridad a un mínimo local. [2] [7] Esto es de hecho una consecuencia del teorema de Robbins-Siegmund. [8]

Regresión lineal

Supongamos que queremos ajustar una línea recta a un conjunto de entrenamiento con observaciones y respuestas estimadas correspondientes utilizando mínimos cuadrados . La función objetivo que se minimizará es La última línea en el pseudocódigo anterior para este problema específico se convertirá en: Tenga en cuenta que en cada iteración o paso de actualización, el gradiente solo se evalúa en un solo . Esta es la diferencia clave entre el descenso de gradiente estocástico y el descenso de gradiente por lotes.

En general, dado un problema de regresión lineal, el descenso de gradiente estocástico se comporta de manera diferente cuando (subparametrizado) y (sobreparametrizado). En el caso sobreparametrizado, el descenso de gradiente estocástico converge a . Es decir, SGD converge a la solución de interpolación con una distancia mínima desde el punto de partida . Esto es cierto incluso cuando la tasa de aprendizaje permanece constante. En el caso subparametrizado, SGD no converge si la tasa de aprendizaje permanece constante. [9]

Historia

En 1951, Herbert Robbins y Sutton Monro introdujeron los primeros métodos de aproximación estocástica, precediendo al descenso de gradiente estocástico. [10] Basándose en este trabajo un año después, Jack Kiefer y Jacob Wolfowitz publicaron un algoritmo de optimización muy cercano al descenso de gradiente estocástico, utilizando diferencias centrales como una aproximación del gradiente. [11] Más tarde, en la década de 1950, Frank Rosenblatt utilizó SGD para optimizar su modelo de perceptrón , demostrando la primera aplicabilidad del descenso de gradiente estocástico a las redes neuronales. [12]

La retropropagación se describió por primera vez en 1986, y se utilizó el descenso de gradiente estocástico para optimizar de manera eficiente los parámetros en redes neuronales con múltiples capas ocultas . Poco después, se desarrolló otra mejora: el descenso de gradiente en minilotes, donde se sustituyen muestras individuales por lotes pequeños de datos. En 1997, se exploraron por primera vez los beneficios prácticos de rendimiento de la vectorización que se pueden lograr con lotes tan pequeños, [13] allanando el camino para una optimización eficiente en el aprendizaje automático. A partir de 2023, este enfoque de minilotes sigue siendo la norma para el entrenamiento de redes neuronales, equilibrando los beneficios del descenso de gradiente estocástico con el descenso de gradiente . [14]

En la década de 1980, ya se había introducido el momento y se agregó a las técnicas de optimización de SGD en 1986. [15] Sin embargo, estas técnicas de optimización asumieron hiperparámetros constantes , es decir, una tasa de aprendizaje fija y un parámetro de momento. En la década de 2010, se introdujeron enfoques adaptativos para aplicar SGD con una tasa de aprendizaje por parámetro con AdaGrad (para "Gradiente adaptativo") en 2011 [16] y RMSprop (para "Propagación de raíz cuadrada media") en 2012. [17] En 2014, se publicó Adam (para "Estimación de momento adaptativo"), que aplica los enfoques adaptativos de RMSprop al momento; luego se desarrollaron muchas mejoras y ramas de Adam, como Adadelta, Adagrad, AdamW y Adamax. [18] [19]

En el aprendizaje automático, los enfoques de optimización en 2023 están dominados por optimizadores derivados de Adam. TensorFlow y PyTorch, con diferencia las bibliotecas de aprendizaje automático más populares, [20] a partir de 2023 en gran medida solo incluyen optimizadores derivados de Adam, así como predecesores de Adam como RMSprop y SGD clásico. PyTorch también admite parcialmente BFGS de memoria limitada , un método de búsqueda de línea, pero solo para configuraciones de un solo dispositivo sin grupos de parámetros. [19] [21]

Aplicaciones notables

El descenso de gradiente estocástico es un algoritmo popular para entrenar una amplia gama de modelos en aprendizaje automático , incluidas máquinas de vectores de soporte (lineales) , regresión logística (ver, por ejemplo, Vowpal Wabbit ) y modelos gráficos . [22] Cuando se combina con el algoritmo de retropropagación , es el algoritmo estándar de facto para entrenar redes neuronales artificiales . [23] También se ha informado de su uso en la comunidad de geofísica , específicamente para aplicaciones de inversión de forma de onda completa (FWI). [24]

El descenso de gradiente estocástico compite con el algoritmo L-BFGS , [ cita requerida ] que también se utiliza ampliamente. El descenso de gradiente estocástico se ha utilizado desde al menos 1960 para entrenar modelos de regresión lineal , originalmente bajo el nombre de ADALINE . [25]

Otro algoritmo de descenso de gradiente estocástico es el filtro adaptativo de mínimos cuadrados medios (LMS) .

Extensiones y variantes

Se han propuesto y utilizado muchas mejoras en el algoritmo básico de descenso de gradiente estocástico. En particular, en el aprendizaje automático, se ha reconocido como problemática la necesidad de establecer una tasa de aprendizaje (tamaño de paso). Establecer este parámetro demasiado alto puede hacer que el algoritmo diverja; establecerlo demasiado bajo hace que sea lento para converger. [26] Una extensión conceptualmente simple del descenso de gradiente estocástico hace que la tasa de aprendizaje sea una función decreciente η t del número de iteración t , dando un programa de tasa de aprendizaje , de modo que las primeras iteraciones causan grandes cambios en los parámetros, mientras que las posteriores solo hacen un ajuste fino. Tales programas se conocen desde el trabajo de MacQueen sobre el agrupamiento de k -medias . [27] Spall proporciona una guía práctica para elegir el tamaño de paso en varias variantes de SGD. [28]

Un gráfico que visualiza el comportamiento de un conjunto seleccionado de optimizadores, utilizando una proyección en perspectiva 3D de una función de pérdida f(x, y)
Un gráfico que visualiza el comportamiento de un conjunto seleccionado de optimizadores.

Actualizaciones implícitas (ISGD)

Como se mencionó anteriormente, el descenso de gradiente estocástico clásico es generalmente sensible a la tasa de aprendizaje η . La convergencia rápida requiere tasas de aprendizaje altas, pero esto puede inducir inestabilidad numérica. El problema se puede resolver en gran medida [29] considerando actualizaciones implícitas mediante las cuales el gradiente estocástico se evalúa en la siguiente iteración en lugar de la actual:

Esta ecuación es implícita, ya que aparece en ambos lados de la ecuación. Es una forma estocástica del método del gradiente proximal , ya que la actualización también se puede escribir como:

Como ejemplo, considere los mínimos cuadrados con características y observaciones . Queremos resolver: donde indica el producto interno. Tenga en cuenta que podría tener "1" como el primer elemento para incluir una intersección. El descenso de gradiente estocástico clásico se realiza de la siguiente manera:

donde se muestrea de manera uniforme entre 1 y . Aunque la convergencia teórica de este procedimiento ocurre bajo supuestos relativamente moderados, en la práctica el procedimiento puede ser bastante inestable. En particular, cuando se especifica incorrectamente de modo que tenga valores propios absolutos grandes con alta probabilidad, el procedimiento puede divergir numéricamente en unas pocas iteraciones. En contraste, el descenso de gradiente estocástico implícito (abreviado como ISGD) se puede resolver en forma cerrada como:

Este procedimiento permanecerá numéricamente estable prácticamente para todos, ya que la tasa de aprendizaje ahora está normalizada. Esta comparación entre el descenso de gradiente estocástico clásico e implícito en el problema de mínimos cuadrados es muy similar a la comparación entre los mínimos cuadrados medios (LMS) y el filtro de mínimos cuadrados medios normalizado (NLMS) .

Aunque una solución de forma cerrada para ISGD solo es posible en mínimos cuadrados, el procedimiento se puede implementar de manera eficiente en una amplia gama de modelos. Específicamente, supongamos que depende de solo a través de una combinación lineal con características , de modo que podemos escribir , donde también puede depender de pero no de excepto a través de . Los mínimos cuadrados obedecen esta regla, y también lo hace la regresión logística y la mayoría de los modelos lineales generalizados . Por ejemplo, en mínimos cuadrados, , y en regresión logística , donde es la función logística . En regresión de Poisson , , y así sucesivamente.

En tales configuraciones, la ISGD se implementa simplemente de la siguiente manera. Sea , donde es escalar. Entonces, la ISGD es equivalente a:

El factor de escala se puede encontrar a través del método de bisección , ya que en la mayoría de los modelos regulares, como los modelos lineales generalizados antes mencionados, la función es decreciente y, por lo tanto, los límites de búsqueda para son .

Impulso

Otras propuestas incluyen el método del momento o el método de la bola pesada , que en el contexto de ML apareció en el artículo de Rumelhart , Hinton y Williams sobre el aprendizaje por retropropagación [30] y tomó prestada la idea del artículo de 1964 del matemático soviético Boris Polyak sobre la resolución de ecuaciones funcionales. [31] El descenso del gradiente estocástico con momento recuerda la actualización Δ w en cada iteración y determina la siguiente actualización como una combinación lineal del gradiente y la actualización anterior: [32] [33] que conduce a:

donde el parámetro que se debe estimar es un tamaño de paso (a veces llamado tasa de aprendizaje en el aprendizaje automático) y es un factor de decaimiento exponencial entre 0 y 1 que determina la contribución relativa del gradiente actual y los gradientes anteriores al cambio de peso.

El nombre momentum proviene de una analogía con el momentum en física: el vector de peso , considerado como una partícula que viaja a través del espacio de parámetros, [30] incurre en aceleración a partir del gradiente de la pérdida (" fuerza "). A diferencia del descenso de gradiente estocástico clásico, tiende a seguir viajando en la misma dirección, lo que evita las oscilaciones. Los científicos informáticos han utilizado el momentum con éxito en el entrenamiento de redes neuronales artificiales durante varias décadas. [34] El método del momentum está estrechamente relacionado con la dinámica de Langevin subamortiguada y puede combinarse con el recocido simulado . [35]

A mediados de la década de 1980, Yurii Nesterov modificó el método para utilizar el gradiente predicho en el siguiente punto, y el denominado gradiente acelerado de Nesterov resultante se utilizó a veces en ML en la década de 2010. [36]

Promedio

El descenso de gradiente estocástico promediado , inventado independientemente por Ruppert y Polyak a fines de la década de 1980, es un descenso de gradiente estocástico ordinario que registra un promedio de su vector de parámetros a lo largo del tiempo. Es decir, la actualización es la misma que para el descenso de gradiente estocástico ordinario, pero el algoritmo también realiza un seguimiento de [37]

Cuando se realiza la optimización, este vector de parámetros promediado toma el lugar de w .

AdaGrad

AdaGrad (algoritmo de gradiente adaptativo ) es un algoritmo de descenso de gradiente estocástico modificado con una tasa de aprendizaje por parámetro , publicado por primera vez en 2011. [38] De manera informal, esto aumenta la tasa de aprendizaje para parámetros más dispersos [ aclaración necesaria ] y disminuye la tasa de aprendizaje para los que son menos dispersos. Esta estrategia a menudo mejora el rendimiento de convergencia sobre el descenso de gradiente estocástico estándar en entornos donde los datos son dispersos y los parámetros dispersos son más informativos. Ejemplos de tales aplicaciones incluyen el procesamiento del lenguaje natural y el reconocimiento de imágenes. [38]

Todavía tiene una tasa de aprendizaje base η , pero esta se multiplica por los elementos de un vector { G j , j } que es la diagonal de la matriz del producto externo

donde , el gradiente, en la iteración τ . La diagonal está dada por

Este vector almacena esencialmente una suma histórica de cuadrados de gradiente por dimensión y se actualiza después de cada iteración. La fórmula para una actualización ahora es [a] o, escrita como actualizaciones por parámetro, Cada { G ( i , i ) } da lugar a un factor de escala para la tasa de aprendizaje que se aplica a un solo parámetro w i . Dado que el denominador en este factor es la norma ℓ 2 de las derivadas anteriores, las actualizaciones extremas de los parámetros se amortiguan, mientras que los parámetros que reciben pocas o pequeñas actualizaciones reciben tasas de aprendizaje más altas. [34]

Aunque fue diseñado para problemas convexos , AdaGrad se ha aplicado con éxito a la optimización no convexa. [39]

Propiedad RMS

RMSProp (de Root Mean Square Propagation) es un método inventado en 2012 por James Martens e Ilya Sutskever , en ese momento ambos estudiantes de doctorado en el grupo de Geoffrey Hinton, en el que la tasa de aprendizaje se adapta, como en Adagrad, para cada uno de los parámetros. La idea es dividir la tasa de aprendizaje para un peso por un promedio móvil de las magnitudes de los gradientes recientes para ese peso. [40] Inusualmente, no se publicó en un artículo sino que simplemente se describió en una conferencia de Coursera . [ cita requerida ]

Entonces, primero se calcula el promedio móvil en términos de media cuadrada,

donde, es el factor de olvido. El concepto de almacenar el gradiente histórico como suma de cuadrados se tomó prestado de Adagrad, pero se introdujo el "olvido" para resolver las tasas de aprendizaje decrecientes de Adagrad en problemas no convexos al disminuir gradualmente la influencia de los datos antiguos. [ cita requerida ]

Y los parámetros se actualizan como,

RMSProp ha demostrado una buena adaptación de la tasa de aprendizaje en diferentes aplicaciones. RMSProp puede considerarse una generalización de Rprop y es capaz de trabajar con minilotes, en lugar de solo con lotes completos. [40]

Adán

Adam [41] (abreviatura de Adaptive Moment Estimation) es una actualización de 2014 del optimizador RMSProp que lo combina con la característica principal del método Momentum . [42] En este algoritmo de optimización, se utilizan promedios móviles con olvido exponencial tanto de los gradientes como de los segundos momentos de los gradientes. Dados los parámetros y una función de pérdida , donde indexa la iteración de entrenamiento actual (indexada en ), la actualización de parámetros de Adam está dada por:

donde es un pequeño escalar (p. ej. ) utilizado para evitar la división por 0, y (p. ej. 0,9) y (p. ej. 0,999) son los factores de olvido para gradientes y segundos momentos de gradientes, respectivamente. La elevación al cuadrado y la raíz cuadrada se realizan elemento por elemento.

La prueba inicial que establece la convergencia de Adam fue incompleta, y el análisis posterior reveló que Adam no converge para todos los objetivos convexos. [43] [44] A pesar de esto, Adam continúa utilizándose en la práctica debido a su sólido desempeño en la práctica. [45]

Variantes

La popularidad de Adam inspiró muchas variantes y mejoras. Algunos ejemplos incluyen:

Descenso de gradiente estocástico basado en signos

Aunque la optimización basada en signos se remonta al Rprop mencionado anteriormente , en 2018 los investigadores intentaron simplificar Adam eliminando la magnitud del gradiente estocástico y considerando solo su signo. [54] [55]

Búsqueda de línea de retroceso

La búsqueda de línea de retroceso es otra variante del descenso de gradiente. Todo lo que se indica a continuación proviene del enlace mencionado. Se basa en una condición conocida como condición de Armijo-Goldstein. Ambos métodos permiten que las tasas de aprendizaje cambien en cada iteración; sin embargo, la forma del cambio es diferente. La búsqueda de línea de retroceso utiliza evaluaciones de funciones para verificar la condición de Armijo y, en principio, el bucle en el algoritmo para determinar las tasas de aprendizaje puede ser largo y desconocido de antemano. El SGD adaptativo no necesita un bucle para determinar las tasas de aprendizaje. Por otro lado, el SGD adaptativo no garantiza la "propiedad de descenso" (que disfruta la búsqueda de línea de retroceso), que es para todos los n. Si el gradiente de la función de costo es globalmente continuo de Lipschitz, con la constante de Lipschitz L, y la tasa de aprendizaje se elige del orden de 1/L, entonces la versión estándar de SGD es un caso especial de búsqueda de línea de retroceso.

Métodos de segundo orden

Un análogo estocástico del algoritmo estándar (determinista) de Newton-Raphson (un método de "segundo orden") proporciona una forma asintóticamente óptima o casi óptima de optimización iterativa en el contexto de la aproximación estocástica [ cita requerida ] . Byrd, Hansen, Nocedal y Singer desarrollaron un método que utiliza mediciones directas de las matrices hessianas de los sumandos en la función de riesgo empírica. [56] Sin embargo, determinar directamente las matrices hessianas requeridas para la optimización puede no ser posible en la práctica. Spall y otros ofrecen métodos prácticos y teóricamente sólidos para versiones de segundo orden de SGD que no requieren información hessiana directa. [57] [58] [59] (Ruppert ofrece un método menos eficiente basado en diferencias finitas, en lugar de perturbaciones simultáneas. [60] ) Otro enfoque para la matriz hessiana de aproximación es reemplazarla con la matriz de información de Fisher, que transforma el gradiente habitual en natural. [61] Estos métodos que no requieren información hessiana directa se basan en valores de los sumandos en la función de riesgo empírica anterior o en valores de los gradientes de los sumandos (es decir, las entradas de SGD). En particular, la optimalidad de segundo orden se puede lograr asintóticamente sin el cálculo directo de las matrices hessianas de los sumandos en la función de riesgo empírica. Cuando el objetivo es una pérdida de mínimos cuadrados no lineal donde es el modelo predictivo (por ejemplo, una red neuronal profunda ), la estructura del objetivo se puede explotar para estimar información de segundo orden utilizando solo gradientes. Los métodos resultantes son simples y a menudo efectivos [62]


Aproximaciones en tiempo continuo

Para una tasa de aprendizaje pequeña, el descenso de gradiente estocástico se puede considerar como una discretización de la EDO de flujo de gradiente.

sujeto a ruido estocástico adicional. Esta aproximación solo es válida en un horizonte temporal finito en el siguiente sentido: supongamos que todos los coeficientes son suficientemente suaves. Sea y una función de prueba suficientemente suave. Entonces, existe una constante tal que para todos

donde denota tomar la expectativa con respecto a la elección aleatoria de índices en el esquema de descenso de gradiente estocástico.

Dado que esta aproximación no captura las fluctuaciones aleatorias alrededor del comportamiento medio del descenso de gradiente estocástico, se han propuesto soluciones a ecuaciones diferenciales estocásticas (EDS) como objetos limitantes. [63] Más precisamente, la solución a la EDS

donde denota la Ito-integral con respecto a un movimiento browniano es una aproximación más precisa en el sentido de que existe una constante tal que

Sin embargo, esta SDE sólo aproxima el movimiento de un punto del descenso del gradiente estocástico. Para una aproximación del flujo estocástico hay que considerar SDE con ruido de dimensión infinita. [64]

Véase también

Notas

  1. ^ denota el producto elemento por elemento .

Referencias

  1. ^ Bottou, Léon ; Bousquet, Olivier (2012). "Las ventajas y desventajas del aprendizaje a gran escala". En Sra, Suvrit; Nowozin, Sebastian; Wright, Stephen J. (eds.). Optimización para el aprendizaje automático . Cambridge: MIT Press. págs. 351–368. ISBN 978-0-262-01646-9.
  2. ^ ab Bottou, Léon (1998). "Algoritmos en línea y aproximaciones estocásticas". Aprendizaje en línea y redes neuronales . Cambridge University Press. ISBN 978-0-521-65263-6.
  3. ^ Ferguson, Thomas S. (1982). "Una estimación de máxima verosimilitud inconsistente". Revista de la Asociación Estadounidense de Estadística . 77 (380): 831–834. doi :10.1080/01621459.1982.10477894. JSTOR  2287314.
  4. ^ Bottou, Léon ; Bousquet, Olivier (2008). Las ventajas y desventajas del aprendizaje a gran escala. Avances en sistemas de procesamiento de información neuronal . Vol. 20. págs. 161–168.
  5. ^ Murphy, Kevin (2021). Aprendizaje automático probabilístico: una introducción. MIT Press . Consultado el 10 de abril de 2021 .
  6. ^ Bilmes, Jeff; Asanovic, Krste ; Chin, Chee-Whye; Demmel, James (abril de 1997). "Uso de PHiPAC para acelerar el aprendizaje de retropropagación de errores". Conferencia internacional IEEE de 1997 sobre acústica, habla y procesamiento de señales . ICASSP. Múnich, Alemania: IEEE. págs. 4153–4156 vol. 5. doi :10.1109/ICASSP.1997.604861.
  7. ^ Kiwiel, Krzysztof C. (2001). "Convergencia y eficiencia de los métodos de subgradiente para la minimización cuasiconvexa". Programación matemática, serie A . 90 (1). Berlín, Heidelberg: Springer: 1–25. doi :10.1007/PL00011414. ISSN  0025-5610. MR  1819784. S2CID  10043417.
  8. ^ Robbins, Herbert ; Siegmund, David O. (1971). "Un teorema de convergencia para supermartingalas casi no negativas y algunas aplicaciones". En Rustagi, Jagdish S. (ed.). Optimizing Methods in Statistics . Academic Press. ISBN 0-12-604550-X.
  9. ^ Belkin, Mikhail (mayo de 2021). "Encajar sin miedo: fenómenos matemáticos notables del aprendizaje profundo a través del prisma de la interpolación". Acta Numerica . 30 : 203–248. doi :10.1017/S0962492921000039. ISSN  0962-4929.
  10. ^ Robbins, H. ; Monro, S. (1951). "Un método de aproximación estocástica". Anales de estadística matemática . 22 (3): 400. doi : 10.1214/aoms/1177729586 .
  11. ^ Kiefer, J.; Wolfowitz, J. (1952). "Estimación estocástica del máximo de una función de regresión". Anales de estadística matemática . 23 (3): 462–466. doi : 10.1214/aoms/1177729392 .
  12. ^ Rosenblatt, F. (1958). "El perceptrón: un modelo probabilístico para el almacenamiento y la organización de la información en el cerebro". Psychological Review . 65 (6): 386–408. doi :10.1037/h0042519. PMID  13602029. S2CID  12781225.
  13. ^ Bilmes, Jeff; Asanovic, Krste ; Chin, Chee-Whye; Demmel, James (abril de 1997). "Uso de PHiPAC para acelerar el aprendizaje de retropropagación de errores". Conferencia internacional IEEE de 1997 sobre acústica, habla y procesamiento de señales . ICASSP. Múnich, Alemania: IEEE. págs. 4153–4156 vol. 5. doi :10.1109/ICASSP.1997.604861.
  14. ^ Peng, Xinyu; Li, Li; Wang, Fei-Yue (2020). "Aceleración del descenso de gradiente estocástico en minibatch mediante muestreo de tipicidad". IEEE Transactions on Neural Networks and Learning Systems . 31 (11): 4649–4659. arXiv : 1903.04192 . doi :10.1109/TNNLS.2019.2957003. PMID  31899442. S2CID  73728964 . Consultado el 2 de octubre de 2023 .
  15. ^ Rumelhart, David E.; Hinton, Geoffrey E.; Williams, Ronald J. (octubre de 1986). "Aprendizaje de representaciones mediante retropropagación de errores". Nature . 323 (6088): 533–536. Bibcode :1986Natur.323..533R. doi :10.1038/323533a0. ISSN  1476-4687. S2CID  205001834.
  16. ^ Duchi, John; Hazan, Elad; Singer, Yoram (2011). "Métodos de subgradiente adaptativos para aprendizaje en línea y optimización estocástica" (PDF) . JMLR . 12 : 2121–2159.
  17. ^ Hinton, Geoffrey . «Lecture 6e rmsprop: Divide el gradiente por un promedio móvil de su magnitud reciente» (PDF) . pág. 26. Consultado el 19 de marzo de 2020 .
  18. ^ Kingma, Diederik; Ba, Jimmy (2014). "Adam: un método para la optimización estocástica". arXiv : 1412.6980 [cs.LG].
  19. ^ ab "torch.optim — Documentación de PyTorch 2.0". pytorch.org . Consultado el 2 de octubre de 2023 .
  20. ^ Nguyen, Giang; Dlugolinsky, Stefan; Bobák, Martín; Tran, vietnamita; García, Álvaro; Heredia, Ignacio; Malik, Peter; Hluchý, Ladislav (19 de enero de 2019). "Marcos y bibliotecas de aprendizaje automático y aprendizaje profundo para la minería de datos a gran escala: una encuesta" (PDF) . Revisión de inteligencia artificial . 52 : 77-124. doi :10.1007/s10462-018-09679-z. S2CID  254236976.
  21. ^ "Módulo: tf.keras.optimizers | TensorFlow v2.14.0". TensorFlow . Consultado el 2 de octubre de 2023 .
  22. ^ Jenny Rose Finkel, Alex Kleeman, Christopher D. Manning (2008). Análisis de campos aleatorios condicionales, eficiente y basado en características. Proc. Reunión anual de la ACL.
  23. ^ LeCun, Yann A., et al. "Retropropagación eficiente". Redes neuronales: trucos del oficio. Springer Berlin Heidelberg, 2012. 9-48
  24. ^ Jerome R. Krebs, John E. Anderson, David Hinkley, Ramesh Neelamani, Sunwoong Lee, Anatoly Baumstein y Martin-Daniel Lacasse, (2009), "Inversión sísmica rápida de campo de onda completo utilizando fuentes codificadas", GEOPHYSICS 74: WCC177-WCC188.
  25. ^ Avi Pfeffer. "CS181 Clase 5 — Perceptrones" (PDF) . Universidad de Harvard.[ enlace muerto permanente ]
  26. ^ Goodfellow, Ian ; Bengio, Yoshua; Courville, Aaron (2016). Aprendizaje profundo. MIT Press. pág. 291. ISBN 978-0262035613.
  27. ^ Citado por Darken, Christian; Moody, John (1990). Agrupamiento rápido adaptativo de k-medias: algunos resultados empíricos . Conferencia Internacional Conjunta sobre Redes Neuronales (IJCNN). IEEE. doi :10.1109/IJCNN.1990.137720.
  28. ^ Spall, JC (2003). Introducción a la búsqueda y optimización estocástica: estimación, simulación y control . Hoboken, NJ: Wiley. pp. Secciones 4.4, 6.6 y 7.5. ISBN 0-471-33052-3.
  29. ^ Toulis, Panos; Airoldi, Edoardo (2017). "Propiedades asintóticas y de muestras finitas de estimadores basados ​​en gradientes estocásticos". Anales de Estadística . 45 (4): 1694–1727. arXiv : 1408.2923 . doi :10.1214/16-AOS1506. S2CID  10279395.
  30. ^ ab Rumelhart, David E.; Hinton, Geoffrey E.; Williams, Ronald J. (8 de octubre de 1986). "Aprendizaje de representaciones mediante retropropagación de errores". Nature . 323 (6088): 533–536. Bibcode :1986Natur.323..533R. doi :10.1038/323533a0. S2CID  205001834.
  31. ^ "Descenso de gradiente y momento: el método de la bola pesada". 13 de julio de 2020.
  32. ^ Sutskever, Ilya; Martens, James; Dahl, George; Hinton, Geoffrey E. (junio de 2013). Sanjoy Dasgupta y David Mcallester (ed.). Sobre la importancia de la inicialización y el impulso en el aprendizaje profundo (PDF) . En Actas de la 30.ª conferencia internacional sobre aprendizaje automático (ICML-13). Vol. 28. Atlanta, GA. págs. 1139–1147 . Consultado el 14 de enero de 2016 .
  33. ^ Sutskever, Ilya (2013). Entrenamiento de redes neuronales recurrentes (PDF) (Ph.D.). Universidad de Toronto. p. 74.
  34. ^ ab Zeiler, Matthew D. (2012). "ADADELTA: Un método de tasa de aprendizaje adaptativo". arXiv : 1212.5701 [cs.LG].
  35. ^ Borysenko, Oleksandr; Byshkin, Maksym (2021). "CoolMomentum: un método para la optimización estocástica mediante dinámica de Langevin con recocido simulado". Informes científicos . 11 (1): 10705. arXiv : 2005.14605 . Código Bibliográfico :2021NatSR..1110705B. doi :10.1038/s41598-021-90144-3. PMC 8139967 . PMID  34021212. 
  36. ^ "Artículos con código - Explicación del gradiente acelerado de Nesterov".
  37. ^ Polyak, Boris T.; Juditsky, Anatoli B. (1992). "Aceleración de la aproximación estocástica mediante promediado" (PDF) . SIAM J. Control Optim . 30 (4): 838–855. doi :10.1137/0330046. S2CID  3548228. Archivado desde el original (PDF) el 2016-01-12 . Consultado el 2018-02-14 .
  38. ^ ab Duchi, John; Hazan, Elad; Singer, Yoram (2011). "Métodos de subgradiente adaptativos para aprendizaje en línea y optimización estocástica" (PDF) . JMLR . 12 : 2121–2159.
  39. ^ Gupta, Maya R.; Bengio, Samy; Weston, Jason (2014). "Entrenamiento de clasificadores altamente multiclase" (PDF) . JMLR . 15 (1): 1461–1492.
  40. ^ ab Hinton, Geoffrey . "Conferencia 6e rmsprop: Dividir el gradiente por un promedio móvil de su magnitud reciente" (PDF) . p. 26 . Consultado el 19 de marzo de 2020 .
  41. ^ ab Kingma, Diederik; Ba, Jimmy (2014). "Adam: un método para la optimización estocástica". arXiv : 1412.6980 [cs.LG].
  42. ^ "4. Más allá del descenso de gradiente: fundamentos del aprendizaje profundo [libro]".
  43. ^ Reddi, Sashank J.; Kale, Satyen; Kumar, Sanjiv (2018). Sobre la convergencia de Adán y más allá. 6.ª Conferencia internacional sobre representaciones del aprendizaje (ICLR 2018). arXiv : 1904.09237 .
  44. ^ Rubio, David Martínez (2017). Análisis de convergencia de un método adaptativo de descenso de gradiente (PDF) (Tesis de maestría). Universidad de Oxford . Consultado el 5 de enero de 2024 .
  45. ^ Zhang, Yushun; Chen, Congliang; Shi, Naichen; Sun, Ruoyu; Luo, Zhi-Quan (2022). "Adam puede converger sin ninguna modificación en las reglas de actualización". Avances en sistemas de procesamiento de información neuronal 35 . Avances en sistemas de procesamiento de información neuronal 35 (NeurIPS 2022). arXiv : 2208.09632 .
  46. ^ Dozat, T. (2016). "Incorporando el impulso de Nesterov en Adán". S2CID  70293087. {{cite journal}}: Requiere citar revista |journal=( ayuda )
  47. ^ Naveen, Philip (9 de agosto de 2022). "FASFA: un nuevo optimizador de retropropagación de próxima generación". doi :10.36227/techrxiv.20427852.v1 . Consultado el 19 de noviembre de 2022 . {{cite journal}}: Requiere citar revista |journal=( ayuda )
  48. ^ Whye, Schwarz, Jonathan Jayakumar, Siddhant M. Pascanu, Razvan Latham, Peter E. Teh, Yee (1 de octubre de 2021). Propagación de energía: una escasez que induce la reparametrización del peso. OCLC  1333722169.{{cite book}}: CS1 maint: multiple names: authors list (link)
  49. ^ Hu, Yuzheng; Lin, Licong; Tang, Shange (2019-12-20). "Información de segundo orden en métodos de optimización de primer orden". arXiv : 1912.09926 . {{cite journal}}: Requiere citar revista |journal=( ayuda )
  50. ^ Reddi, Sashank J.; Kale, Satyen; Kumar, Sanjiv (2018). "Sobre la convergencia de Adán y más allá". arXiv : 1904.09237 . {{cite journal}}: Requiere citar revista |journal=( ayuda )
  51. ^ "Una visión general de los algoritmos de optimización del descenso de gradientes". 19 de enero de 2016.
  52. ^ Tran, Phuong Thi; Phong, Le Trieu (2019). "Sobre la prueba de convergencia de AMSGrad y una nueva versión". IEEE Access . 7 : 61706–61716. arXiv : 1904.03590 . Bibcode :2019IEEEA...761706T. doi :10.1109/ACCESS.2019.2916341. ISSN  2169-3536.
  53. ^ Loshchilov, Ilya; Hutter, Frank (4 de enero de 2019). "Regularización de decaimiento de peso desacoplado". arXiv : 1711.05101 . {{cite journal}}: Requiere citar revista |journal=( ayuda )
  54. ^ Balles, Lukas; Hennig, Philipp (15 de febrero de 2018). "Disección de Adán: el signo, la magnitud y la varianza de los gradientes estocásticos".
  55. ^ "SignSGD: Optimización comprimida para problemas no convexos". 3 de julio de 2018. págs. 560–569.
  56. ^ Byrd, RH; Hansen, SL; Nocedal, J.; Singer, Y. (2016). "Un método estocástico cuasi-Newton para optimización a gran escala". Revista SIAM sobre optimización . 26 (2): 1008–1031. arXiv : 1401.7020 . doi :10.1137/140954362. S2CID  12396034.
  57. ^ Spall, JC (2000). "Aproximación estocástica adaptativa mediante el método de perturbación simultánea". IEEE Transactions on Automatic Control . 45 (10): 1839−1853. doi :10.1109/TAC.2000.880982.
  58. ^ Spall, JC (2009). "Mecanismos de retroalimentación y ponderación para mejorar las estimaciones jacobianas en el algoritmo de perturbación simultánea adaptativa". IEEE Transactions on Automatic Control . 54 (6): 1216–1229. doi :10.1109/TAC.2009.2019793. S2CID  3564529.
  59. ^ Bhatnagar, S.; Prasad, HL; Prashanth, LA (2013). Algoritmos recursivos estocásticos para optimización: métodos de perturbación simultánea . Londres: Springer. ISBN 978-1-4471-4284-3.
  60. ^ Ruppert, D. (1985). "Una versión de Newton-Raphson del procedimiento multivariado de Robbins-Monro". Anales de Estadística . 13 (1): 236–245. doi : 10.1214/aos/1176346589 .
  61. ^ Amari, S. (1998). "El gradiente natural funciona de manera eficiente en el aprendizaje". Computación neuronal . 10 (2): 251–276. doi :10.1162/089976698300017746. S2CID  207585383.
  62. ^ Brust, JJ (2021). "Mínimos cuadrados no lineales para aprendizaje automático a gran escala utilizando estimaciones jacobianas estocásticas". Taller: Más allá de los métodos de primer orden en el aprendizaje automático . ICML 2021. arXiv : 2107.05598 .
  63. ^ Li, Qianxiao; Tai, Cheng; E, Weinan (2019). "Ecuaciones modificadas estocásticas y dinámica de algoritmos de gradiente estocástico I: Fundamentos matemáticos". Revista de investigación en aprendizaje automático . 20 (40): 1–47. arXiv : 1811.01558 . ISSN  1533-7928.
  64. ^ Gess, Benjamin; Kassing, Sebastian; Konarovskyi, Vitalii (14 de febrero de 2023). "Flujos modificados estocásticos, límites de campo medio y dinámica del descenso de gradiente estocástico". arXiv : 2302.07125 [math.PR].

Lectura adicional

Enlaces externos