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 una aproximación estocástica de la optimización por descenso de gradiente , ya que reemplaza el gradiente real (calculado a partir de todo el conjunto de datos ) por una estimación del mismo (calculada a partir de un subconjunto de datos seleccionado aleatoriamente). Especialmente en problemas de optimización de alta dimensión , esto reduce la elevada carga computacional , logrando iteraciones más rápidas a cambio de una menor tasa de convergencia . [ 1 ]
La idea básica detrás de la aproximación estocástica se remonta al algoritmo de 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 el parámetroque minimizadebe ser estimado . Cada función sumandose asocia típicamente con el-ésima observación en el conjunto de datos (utilizado para el entrenamiento).
En estadística clásica, los problemas de minimización de sumas surgen en mínimos cuadrados y en 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 ha reconocido desde hace tiempo que exigir incluso la 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-ésimo ejemplo, yes 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 llamada tasa de aprendizaje en 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 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 evaluaciones económicas de funciones y gradientes.
Sin embargo, en otros casos, evaluar la suma de gradientes puede requerir costosas evaluaciones de los gradientes de todas las funciones sumando. Cuando el conjunto de entrenamiento es enorme y no existen fórmulas sencillas, evaluar las sumas de gradientes se vuelve muy costoso, ya que requiere evaluar los gradientes de todas las funciones sumando. Para economizar en 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

En el descenso de gradiente estocástico (o "en línea"), el gradiente verdadero dese aproxima mediante un gradiente en una sola muestra: A medida que el algoritmo recorre el conjunto de entrenamiento, realiza la actualización mencionada anteriormente 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 barajar en cada pasada para evitar ciclos. Las implementaciones típicas pueden usar 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 de parámetros inicialy tasa de aprendizaje.
- Repita el procedimiento hasta obtener un mínimo aproximado:
- Mezcla aleatoriamente las muestras del conjunto de entrenamiento.
- Para, hacer:
Una solución intermedia entre calcular el gradiente verdadero y el gradiente en una sola muestra consiste en calcular el gradiente con más de una muestra de entrenamiento (denominada "mini-lote") en cada paso. Esto puede ofrecer un rendimiento significativamente mejor que el descenso de gradiente estocástico "verdadero" descrito, ya que el código puede utilizar bibliotecas de vectorización en lugar de calcular cada paso por separado, como se mostró por primera vez en [ 6 ], donde se denominó "algoritmo de retropropagación en modo de agrupamiento". Además, puede resultar en una convergencia más suave, puesto que el gradiente calculado en cada paso se promedia sobre un mayor número de 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 . Brevemente, cuando las tasas de aprendizajeSi disminuye con una tasa apropiada y bajo supuestos 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 en caso 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 observacionesy las respuestas estimadas correspondientesutilizando mínimos cuadrados . La función objetivo a minimizar es La última línea del pseudocódigo anterior para este problema específico quedará así: Tenga en cuenta que en cada iteración o paso de actualización, el gradiente se evalúa solo en un único punto.Esta es la diferencia clave entre el descenso de gradiente estocástico y el descenso de gradiente por lotes.
En general, dada una regresión linealproblema, 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 aEs decir, SGD converge a la solución de interpolación con 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, precursores del descenso de gradiente estocástico. [ 10 ] Un año después, basándose en este trabajo, Jack Kiefer y Jacob Wolfowitz publicaron un algoritmo de optimización muy similar al descenso de gradiente estocástico, utilizando diferencias centrales como aproximación del gradiente. [ 11 ] Más adelante, en la década de 1950, Frank Rosenblatt utilizó el 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, utilizando el descenso de gradiente estocástico para optimizar eficientemente los parámetros en redes neuronales con múltiples capas ocultas . Poco después, se desarrolló otra mejora: el descenso de gradiente por minilotes, donde se sustituyen muestras individuales por pequeños lotes de datos. En 1997, se exploraron por primera vez las ventajas prácticas de rendimiento que ofrecía la vectorización 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 entrenar redes neuronales, equilibrando las ventajas del descenso de gradiente estocástico con las del descenso de gradiente [ 14 ] .
En la década de 1980, el momento ya se había introducido y se añadió a las técnicas de optimización SGD en 1986. [ 15 ] Sin embargo, estas técnicas de optimización asumían hiperparámetros constantes , es decir, una tasa de aprendizaje y un parámetro de momento fijos. En la década de 2010, se introdujeron enfoques adaptativos para aplicar SGD con una tasa de aprendizaje por parámetro con AdaGrad (por "Adaptive Gradient") en 2011 [ 16 ] y RMSprop (por "Root Mean Square Propagation") en 2012. [ 17 ] En 2014, se publicó Adam (por "Adaptive Moment Estimation"), que aplica los enfoques adaptativos de RMSprop al momento; posteriormente se desarrollaron muchas mejoras y ramas de Adam, como Adadelta, Adagrad, AdamW y Adamax. [ 18 ] [ 19 ]
Dentro del aprendizaje automático, los enfoques de optimización en 2023 están dominados por los optimizadores derivados de Adam, TensorFlow y PyTorch , de lejos las bibliotecas de aprendizaje automático más populares, [ 20 ] a partir de 2023 incluyen en gran medida solo 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 lineal, pero solo para configuraciones de un solo dispositivo sin grupos de parámetros. [ 19 ] [ 21 ]
Aplicaciones destacadas
El descenso de gradiente estocástico es un algoritmo popular para entrenar una amplia gama de modelos en aprendizaje automático , incluyendo máquinas de vectores de soporte (lineales) , regresión logística (véase, 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 ] Su uso también se ha reportado en la comunidad de geofísica , específicamente en aplicaciones de inversión de forma de onda completa (FWI). [ 24 ]
El descenso de gradiente estocástico compite con el algoritmo L-BFGS , que también es ampliamente utilizado. 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 al algoritmo básico de descenso de gradiente estocástico. En particular, en el aprendizaje automático, se ha reconocido como problemático el hecho de establecer una tasa de aprendizaje (tamaño del paso). Establecer este parámetro demasiado alto puede provocar la divergencia del algoritmo; establecerlo demasiado bajo hace que la convergencia sea lenta. [ 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 , lo que da lugar a un esquema de tasa de aprendizaje , de modo que las primeras iteraciones provoquen grandes cambios en los parámetros, mientras que las posteriores solo realicen ajustes finos. Dichos esquemas se conocen desde el trabajo de MacQueen sobre la agrupación k -means . [ 27 ] Spall proporciona orientación práctica sobre la elección del tamaño del paso en varias variantes de SGD. [ 28 ]


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 elevadas, pero esto puede inducir inestabilidad numérica. El problema se puede resolver en gran medida [ 29 ] considerando actualizaciones implícitas en las que el gradiente estocástico se evalúa en la siguiente iteración en lugar de la actual:
Esta ecuación es implícita ya queaparece 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, consideremos los mínimos cuadrados con característicasy observaciones . Deseamos resolver: dónde indica el producto interno. Tenga en cuenta quepodría tener "1" como primer elemento para incluir una intersección. El descenso de gradiente estocástico clásico procede de la siguiente manera:
dóndese muestrea uniformemente entre 1 yAunque la convergencia teórica de este procedimiento se produce bajo supuestos relativamente suaves, en la práctica el procedimiento puede ser bastante inestable. En particular, cuandoestá mal especificado de modo quetiene autovalores 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 de 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 el filtro de mínimos cuadrados medios (LMS) y el filtro de mínimos cuadrados medios normalizados (NLMS) .
Aunque una solución analítica para ISGD solo es posible en mínimos cuadrados, el procedimiento puede implementarse eficientemente en una amplia gama de modelos. Específicamente, supongamos quedepende desolo a través de una combinación lineal con características, para que podamos escribir, dóndepuede depender detambién pero no enexcepto a través de. Los mínimos cuadrados obedecen esta regla, al igual que 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, dóndees la función logística . En la regresión de Poisson ,, etcétera.
En tales escenarios, ISGD se implementa simplemente de la siguiente manera. Sea, dóndees escalar. Entonces, ISGD es equivalente a:
El factor de escalase 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 mencionados anteriormente, la funciónestá disminuyendo y, por lo tanto, los límites de búsqueda parason.
Impulso
Otras propuestas incluyen el método del momento o el método de la bola pesada , que en el contexto del aprendizaje automático 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 de 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ámetrolo cual minimizadebe ser estimado ,es un tamaño de paso (a veces llamado tasa de aprendizaje en aprendizaje automático) yes 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., considerada como una partícula que viaja a través del espacio de parámetros, [ 30 ] experimenta aceleración debido al gradiente de la pérdida (" fuerza "). A diferencia del descenso de gradiente estocástico clásico, tiende a mantenerse en la misma dirección, evitando oscilaciones. El momento ha sido utilizado con éxito por científicos informáticos en el entrenamiento de redes neuronales artificiales durante varias décadas. [ 34 ] El método del momento 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 gradiente acelerado de Nesterov resultante se utilizó a veces en ML en la década de 2010. [ 36 ]
Promediando
El descenso de gradiente estocástico promediado , inventado independientemente por Ruppert y Polyak a finales 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 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 y la disminuye para aquellos que son menos dispersos. Esta estrategia suele mejorar el rendimiento de convergencia con respecto al 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 de producto exterior .
dónde, el gradiente, en la iteración τ . La diagonal viene 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 es ahora [ a ]. o, escrito 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 único parámetro w i . Dado que el denominador en este factor,es la norma ℓ 2 de derivadas anteriores, las actualizaciones extremas de 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 diseñado para problemas convexos , AdaGrad se ha aplicado con éxito a la optimización no convexa. [ 39 ]
RMSProp
RMSProp (por Propagación de la Raíz Cuadrada Media) es un método inventado en 2012 por James Martens e Ilya Sutskever , 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 de un peso por un promedio móvil de las magnitudes de los gradientes recientes para ese peso. [ 40 ] Curiosamente, no se publicó en un artículo, sino que simplemente se describió en una clase de Coursera . [ 41 ] [ 42 ]
Entonces, primero se calcula el promedio móvil en términos de medias cuadradas,
dónde,es el factor del olvido. El concepto de almacenar el gradiente histórico como suma de cuadrados se toma prestado de Adagrad, pero se introduce el "olvido" para resolver las tasas de aprendizaje decrecientes de Adagrad en problemas no convexos, disminuyendo gradualmente la influencia de los datos antiguos.
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 también con minilotes, a diferencia de solo con lotes completos. [ 40 ]
Adán
Adam [ 43 ] (abreviatura de Estimación Adaptativa del Momento) es una actualización de 2014 del optimizador RMSProp que lo combina con la característica principal del método Momentum . [ 44 ] 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. Parámetros dadosy una función de pérdida, dóndeindexa la iteración de entrenamiento actual (indexada en), la actualización de parámetros de Adam viene dada por:
dóndees un escalar pequeño (por ejemplo) utilizado para evitar la división por 0, y(por ejemplo, 0,9) y(p. ej. 0,999) son los factores de olvido para los gradientes y los segundos momentos de los gradientes, respectivamente. La elevación al cuadrado y la raíz cuadrada se realizan elemento por elemento.
Como los promedios móviles exponenciales del gradientey el gradiente al cuadradoSi se inicializan con un vector de 0, habría un sesgo hacia cero en las primeras iteraciones de entrenamiento. Un factorSe introduce para compensar este sesgo y obtener mejores estimaciones.y.
La demostración inicial que establecía la convergencia de Adam era incompleta, y análisis posteriores han revelado que Adam no converge para todos los objetivos convexos. [ 45 ] [ 46 ] A pesar de esto, Adam se sigue utilizando debido a su sólido desempeño en la práctica. [ 47 ]
Variantes
La popularidad de Adam inspiró muchas variantes y mejoras. Algunos ejemplos incluyen:
- gradientes mejorados por Nesterov: NAdam , [ 48 ] FASFA [ 49 ]
- Interpretaciones variables de la información de segundo orden: Propagación de potencia [ 50 ] y AdaSqrt . [ 51 ]
- Usando norma infinita : AdaMax [ 43 ]
- AMSGrad , [ 52 ] que mejora la convergencia sobre Adam al usar el máximo de los gradientes cuadrados pasados en lugar del promedio exponencial. [ 53 ] AdamX [ 54 ] mejora aún más la convergencia sobre AMSGrad .
- AdamW , [ 55 ] que mejora la disminución del peso .
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 únicamente su signo. [ 56 ] [ 57 ] Esto resulta en un costo de comunicación significativamente menor para la transferencia de gradientes desde los nodos de trabajo al servidor de parámetros. En este sentido, sirve para comprimir mejor la información del gradiente, manteniendo una convergencia comparable a la del SGD estándar. [ 57 ]
Búsqueda de línea con retroceso
La búsqueda lineal con retroceso es otra variante del descenso de gradiente. Todo lo que se menciona a continuación proviene del enlace citado. Se basa en una condición conocida como la 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 lineal con retroceso utiliza evaluaciones de funciones para comprobar la condición de Armijo, y en principio el bucle del 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 sí posee la búsqueda lineal con retroceso – que es quepara todo n. Si el gradiente de la función de costo es globalmente Lipschitz continuo, con 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 lineal con 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 . 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. [ 58 ] Sin embargo, determinar directamente las matrices hessianas requeridas para la optimización puede no ser posible en la práctica. Spall y otros dan métodos prácticos y teóricamente sólidos para versiones de segundo orden de SGD que no requieren información hessiana directa. [ 59 ] [ 60 ] [ 61 ] (Ruppert da un método menos eficiente basado en diferencias finitas, en lugar de perturbaciones simultáneas. [ 62 ] ) Otro enfoque para la matriz hessiana de aproximación es reemplazarla con la matriz de información de Fisher, que transforma el gradiente usual en natural. [ 63 ] Estos métodos que no requieren información directa de la matriz hessiana se basan en los valores de los sumandos en la función de riesgo empírica anterior o en los valores de los gradientes de los sumandos (es decir, las entradas 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 dóndees el modelo predictivo (por ejemplo, una red neuronal profunda ) la estructura del objetivo puede explotarse para estimar información de segundo orden utilizando solo gradientes. Los métodos resultantes son simples y a menudo efectivos [ 64 ]
Aproximaciones en tiempo continuo
Para una tasa de aprendizaje pequeñadescenso de gradiente estocásticopuede considerarse como una discretización de la ecuación diferencial ordinaria del 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. Dejeysea una función de prueba suficientemente suave. Entonces, existe una constantede tal manera que para todos
dóndedenota tomar la esperanza 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 de las soluciones de descenso de gradiente estocástico para ecuaciones diferenciales estocásticas (EDE), se han propuesto como objetos límite. [ 65 ] Más precisamente, la solución a la EDE
paradóndedenota la integral de Ito con respecto a un movimiento browniano es una aproximación más precisa en el sentido de que existe una constantede tal manera que
Sin embargo, esta EDE solo aproxima el movimiento de un punto del descenso de gradiente estocástico. Para una aproximación del flujo estocástico, es necesario considerar EDE con ruido de dimensión infinita. [ 66 ]
Véase también
- Búsqueda de línea con retroceso
- Ley de escalamiento neuronal rota
- Descenso de coordenadas : cambia una coordenada a la vez, en lugar de un ejemplo.
- Descenso de gradiente estocástico con privacidad diferencial
- Clasificador lineal
- Aprendizaje automático en línea
- Ascenso de colina estocástico
- Reducción de la varianza estocástica
Notas
- ↑denota el producto elemento a elemento .
Referencias
- ↑ 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. pp. 351–368 . ISBN 978-0-262-01646-9.
- 1 2 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.
- ↑ Ferguson, Thomas S. (1982). "Una estimación de máxima verosimilitud inconsistente". Journal of the American Statistical Association . 77 (380): 831– 834. doi : 10.1080/01621459.1982.10477894 . JSTOR 2287314 .
- ↑ 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 .
- ↑ Murphy, Kevin (2021). Aprendizaje automático probabilístico: una introducción . MIT Press . Recuperado el 10 de abril de 2021 .
- ↑ Bilmes, Jeff; Asanovic, Krste ; Chin, Chee-Whye; Demmel, James (abril de 1997). "Uso de PHiPAC para acelerar el aprendizaje de retropropagación de errores". 1997 IEEE International Conference on Acoustics, Speech, and Signal Processing . ICASSP. Múnich, Alemania: IEEE. pp. 4153–4156 vol.5. doi : 10.1109/ICASSP.1997.604861 .
- ↑ Kiwiel, Krzysztof C. (2001). "Convergencia y eficiencia de los métodos de subgradiente para la minimización cuasiconvexa". Mathematical Programming, Series A . 90 (1). Berlín, Heidelberg: Springer: 1– 25. doi : 10.1007/PL00011414 . ISSN 0025-5610 . MR 1819784 . S2CID 10043417 .
- ↑ Robbins, Herbert ; Siegmund, David O. (1971). "Un teorema de convergencia para casi supermartingalas no negativas y algunas aplicaciones". En Rustagi, Jagdish S. (ed.). Métodos de optimización en estadística . Academic Press. ISBN 0-12-604550-X.
- ↑ Belkin, Mikhail (mayo de 2021). "En forma sin miedo: fenómenos matemáticos notables del aprendizaje profundo a través del prisma de la interpolación" . Acta Numerica . 30 : 203–248 . arXiv : 2105.14368 . doi : 10.1017/S0962492921000039 . ISSN 0962-4929 .
- ↑ Robbins, H. ; Monro, S. (1951). "Un método de aproximación estocástica" . The Annals of Mathematical Statistics . 22 (3): 400. doi : 10.1214/aoms/1177729586 .
- ↑ Kiefer, J.; Wolfowitz, J. (1952). "Estimación estocástica del máximo de una función de regresión" . The Annals of Mathematical Statistics . 23 (3): 462– 466. doi : 10.1214/aoms/1177729392 .
- ↑ 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 .
- ↑ Bilmes, Jeff; Asanovic, Krste ; Chin, Chee-Whye; Demmel, James (abril de 1997). "Uso de PHiPAC para acelerar el aprendizaje de retropropagación de errores". 1997 IEEE International Conference on Acoustics, Speech, and Signal Processing . ICASSP. Múnich, Alemania: IEEE. pp. 4153–4156 vol.5. doi : 10.1109/ICASSP.1997.604861 .
- ↑ Peng, Xinyu; Li, Li; Wang, Fei-Yue (2020). "Aceleración del descenso de gradiente estocástico por minilotes mediante muestreo de tipicidad". IEEE Transactions on Neural Networks and Learning Systems . 31 (11): 4649– 4659. arXiv : 1903.04192 . Bibcode : 2020ITNNL..31.4649P . doi : 10.1109/TNNLS.2019.2957003 . PMID 31899442. S2CID 73728964 .
- ↑ Rumelhart, David E.; Hinton, Geoffrey E.; Williams, Ronald J. (octubre de 1986). "Aprendizaje de representaciones mediante la retropropagación de errores" . Nature . 323 (6088): 533– 536. Bibcode : 1986Natur.323..533R . doi : 10.1038/323533a0 . ISSN 1476-4687 . S2CID 205001834 .
- ↑ Duchi, John; Hazan, Elad; Singer, Yoram (2011). "Métodos de subgradiente adaptativos para el aprendizaje en línea y la optimización estocástica" (PDF) . JMLR . 12 : 2121–2159 .
- ↑ Hinton, Geoffrey . "Clase 6e rmsprop: Dividir el gradiente por un promedio móvil de su magnitud reciente" (PDF) . pág. 26. Consultado el 19 de marzo de 2020 .
- ↑ Kingma, Diederik; Ba, Jimmy (2014). "Adam: Un método para la optimización estocástica". arXiv : 1412.6980 [ cs.LG ].
- 1 2 "torch.optim — Documentación de PyTorch 2.0" . pytorch.org . Consultado el 2 de octubre de 2023 .
- ^ 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 .
- ↑ "Módulo: tf.keras.optimizers | TensorFlow v2.14.0" . TensorFlow . Consultado el 2 de octubre de 2023 .
- ↑ Jenny Rose Finkel, Alex Kleeman, Christopher D. Manning (2008). Análisis sintáctico de campos aleatorios condicionales eficiente basado en características . Actas de la Reunión Anual de la ACL.
- ↑ LeCun, Yann A., et al. «Retropropagación eficiente». Redes neuronales: Trucos del oficio. Springer Berlin Heidelberg, 2012. 9-48
- ↑ Krebs, Jerome R.; Anderson, John E.; Hinkley, David; Neelamani, Ramesh; Lee, Sunwoong; Baumstein, Anatoly; Lacasse, Martin-Daniel (2009). "Inversión sísmica rápida de campo de onda completo utilizando fuentes codificadas". Geophysics . 74 (6): WCC177– WCC188. doi : 10.1190/1.3230502 .
- ↑ Avi Pfeffer. "CS181 Lección 5 — Perceptrones" (PDF) . Universidad de Harvard.
- ↑ Goodfellow, Ian ; Bengio, Yoshua; Courville, Aaron (2016). Aprendizaje profundo . MIT Press. pág. 291. ISBN 978-0262035613.
- ↑ Citado por Darken, Christian; Moody, John (1990). Agrupamiento k-means adaptativo rápido: algunos resultados empíricos . Conferencia Conjunta Internacional sobre Redes Neuronales (IJCNN). IEEE. doi : 10.1109/IJCNN.1990.137720 .
- ↑ Spall, JC (2003). Introducción a la búsqueda y optimización estocástica: estimación, simulación y control . Hoboken, NJ: Wiley. págs. Secciones 4.4, 6.6 y 7.5. ISBN 0-471-33052-3.
- ↑ Toulis, Panos; Airoldi, Edoardo (2017). "Propiedades asintóticas y de muestra finita de estimadores basados en gradientes estocásticos". Annals of Statistics . 45 (4): 1694– 1727. arXiv : 1408.2923 . doi : 10.1214/16-AOS1506 . S2CID 10279395 .
- 1 2 Rumelhart, David E.; Hinton, Geoffrey E.; Williams, Ronald J. (8 de octubre de 1986). "Aprendizaje de representaciones mediante la retropropagación de errores". Nature . 323 (6088): 533– 536. Bibcode : 1986Natur.323..533R . doi : 10.1038/323533a0 . S2CID 205001834 .
- ↑ "Descenso de gradiente y momento: el método de la bola pesada" . 13 de julio de 2020.
- ↑ Sutskever, Ilya; Martens, James; Dahl, George; Hinton, Geoffrey E. (junio de 2013). Sanjoy Dasgupta y David Mcallester (eds.). Sobre la importancia de la inicialización y el momento 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 . Recuperado el 14 de enero de 2016 .
- ↑ Sutskever, Ilya (2013). Entrenamiento de redes neuronales recurrentes (PDF) (Ph.D.). Universidad de Toronto. p. 74.
- 1 2 Zeiler, Matthew D. (2012). "ADADELTA: Un método de tasa de aprendizaje adaptativa". arXiv : 1212.5701 [ cs.LG ].
- ↑ Borysenko, Oleksandr; Byshkin, Maksym (2021). "CoolMomentum: Un método para la optimización estocástica mediante dinámica de Langevin con recocido simulado" . Scientific Reports . 11 (1): 10705. arXiv : 2005.14605 . Bibcode : 2021NatSR..1110705B . doi : 10.1038/s41598-021-90144-3 . PMC 8139967. PMID 34021212 .
- ↑ "Documentos con código: explicación del gradiente acelerado de Nesterov" .
- ↑ 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 del original (PDF) el 12 de enero de 2016. Recuperado el 14 de febrero de 2018 .
- 1 2 Duchi, John; Hazan, Elad; Singer, Yoram (2011). "Métodos de subgradiente adaptativos para el aprendizaje en línea y la optimización estocástica" (PDF) . JMLR . 12 : 2121–2159 .
- ↑ Gupta, Maya R.; Bengio, Samy; Weston, Jason (2014). "Entrenamiento de clasificadores multiclase altamente" (PDF) . JMLR . 15 (1): 1461– 1492.
- 1 2 Hinton, Geoffrey . "Clase 6e rmsprop: Dividir el gradiente por un promedio móvil de su magnitud reciente" (PDF) . pág. 26. Recuperado el 19 de marzo de 2020 .
- ↑ " RMSProp" . DeepAI . 17 de mayo de 2019. Consultado el 15 de junio de 2025.
El algoritmo RMSProp fue presentado por Geoffrey Hinton en su curso de Coursera, donde reconoció su eficacia en diversas aplicaciones.
- ↑ Geoffrey Hinton (16 de noviembre de 2016). Conferencia 6.5 — RMSprop, Adam, Dropout y normalización por lotes . YouTube . Universidad de Toronto. El evento ocurre en 36:37 . Recuperado el 15 de junio de 2025 .
- 1 2 Kingma, Diederik; Ba, Jimmy (2014). "Adam: Un método para la optimización estocástica". arXiv : 1412.6980 [ cs.LG ].
- ↑ "4. Más allá del descenso de gradiente: fundamentos del aprendizaje profundo [ Libro ] " .
- ↑ Reddi, Sashank J.; Kale, Satyen; Kumar, Sanjiv (2018). Sobre la convergencia de Adam y más allá . 6.ª Conferencia Internacional sobre Representaciones de Aprendizaje (ICLR 2018). arXiv : 1904.09237 .
- ↑ 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 . Recuperado el 5 de enero de 2024 .
- ↑ 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". Advances in Neural Information Processing Systems 35. Advances in Neural Information Processing Systems 35 (NeurIPS 2022). arXiv : 2208.09632 .
- ↑ Dozat, T. (2016). "Incorporando el momento de Nesterov en Adam". S2CID 70293087 .
{{cite journal}}: Para citar una revista se requiere|journal=( ayuda ) - ↑ Naveen, Philip (2022-08-09). "FASFA: Un nuevo optimizador de retropropagación de próxima generación" . doi : 10.36227/techrxiv.20427852.v1 .
{{cite journal}}: Para citar una revista se requiere|journal=( ayuda ) - ^ 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: varios nombres: lista de autores ( enlace ) - ↑ 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 [ cs.LG ].
- ^ Reddi, Sashank J.; Kale, Satyen; Kumar, Sanjiv (2018). "Sobre la convergencia de Adán y más allá". arXiv : 1904.09237 [ cs.LG ].
- ↑ "Una visión general de los algoritmos de optimización por descenso de gradiente" . 19 de enero de 2016.
- ↑ 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 .
- ↑ Loshchilov, Ilya; Hutter, Frank (4 de enero de 2019). "Regularización de decaimiento de peso desacoplado". arXiv : 1711.05101 [ cs.LG ].
- ↑ Balles, Lukas; Hennig, Philipp (15 de febrero de 2018). "Disecando a Adán: El signo, la magnitud y la varianza de los gradientes estocásticos" .
- 1 2 "SignSGD: Optimización comprimida para problemas no convexos" . 3 de julio de 2018. págs. 560–569 .
- ↑ Byrd, RH; Hansen, SL; Nocedal, J.; Singer, Y. (2016). "Un método estocástico cuasi-Newton para la optimización a gran escala". SIAM Journal on Optimization . 26 (2): 1008– 1031. arXiv : 1401.7020 . doi : 10.1137/140954362 . S2CID 12396034 .
- ↑ 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. Bibcode : 2000ITAC...45.1839S . doi : 10.1109/TAC.2000.880982 .
- ↑ 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. Bibcode : 2009ITAC...54.1216S . doi : 10.1109/TAC.2009.2019793 . S2CID 3564529 .
- ↑ Bhatnagar, S.; Prasad, HL; Prashanth, LA (2013). Algoritmos recursivos estocásticos para la optimización: métodos de perturbación simultánea . Londres: Springer. ISBN 978-1-4471-4284-3.
- ^ 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 .
- ↑ Amari, S. (1998). "El gradiente natural funciona eficientemente en el aprendizaje". Neural Computation . 10 (2): 251– 276. doi : 10.1162/089976698300017746 . S2CID 207585383 .
- ↑ Brust, JJ (2021). "Mínimos cuadrados no lineales para el 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 .
- ↑ Li, Qianxiao; Tai, Cheng; E, Weinan (2019). "Ecuaciones estocásticas modificadas y dinámica de algoritmos de gradiente estocástico I: Fundamentos matemáticos" . Journal of Machine Learning Research . 20 (40): 1– 47. arXiv : 1811.01558 . ISSN 1533-7928 .
- ↑ 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 ].
Lecturas adicionales
- Bottou, Léon (2004), "Aprendizaje estocástico" , Conferencias avanzadas sobre aprendizaje automático , LNAI, vol. 3176, Springer, pp. 146–168 , ISBN 978-3-540-23122-6
- Buduma, Nikhil; Locascio, Nicholas (2017), "Más allá del descenso de gradiente" , Fundamentos del aprendizaje profundo : Diseño de algoritmos de inteligencia artificial de próxima generación , O'Reilly, ISBN 9781491925584
- LeCun, Yann A .; Bottou, Léon; Orr, Genevieve B.; Müller, Klaus-Robert (2012), "Efficient BackProp" , Redes neuronales: Trucos del oficio , Springer, pp. 9–48 , ISBN 978-3-642-35288-1
- Spall, James C. (2003), Introducción a la búsqueda estocástica y la optimización , Wiley , ISBN 978-0-471-33052-3
Enlaces externos
- "Descenso de gradiente: cómo aprenden las redes neuronales" . 3Blue1Brown . 16 de octubre de 2017. Archivado del original el 22 de diciembre de 2021 ( vía YouTube) .
- Goh (4 de abril de 2017). "Por qué Momentum realmente funciona" . Distill . 2 (4). doi : 10.23915/distill.00006 .Documento interactivo que explica el momento lineal.
- Optimización estocástica
- estadística computacional
- métodos de gradiente
- estimadores M
- algoritmos de aprendizaje automático
- Optimización convexa
- Aproximaciones estadísticas