La reducción de varianza (estocástica) es un método algorítmico para minimizar funciones que pueden descomponerse en sumas finitas. Al aprovechar la estructura de suma finita, las técnicas de reducción de varianza logran tasas de convergencia imposibles de alcanzar con métodos que tratan la función objetivo como una suma infinita, como en el contexto clásico de la aproximación estocástica .
Los enfoques de reducción de varianza se utilizan ampliamente para entrenar modelos de aprendizaje automático como la regresión logística y las máquinas de vectores de soporte [ 1 ] ya que estos problemas tienen una estructura de suma finita y un condicionamiento uniforme que los convierten en candidatos ideales para la reducción de varianza.
Objetivos de suma finita
Una funciónSe considera que tiene una estructura de suma finita si se puede descomponer en una suma o promedio:
donde el valor de la función y la derivada de cadase pueden consultar de forma independiente. Aunque se pueden aplicar métodos de reducción de varianza para cualquier positivoy cualquierestructura, sus propiedades teóricas y prácticas favorables surgen cuandoes grande en comparación con el número de condición de cada unoy cuando eltienen constantes de suavidad de Lipschitz y de convexidad fuerte similares (pero no necesariamente idénticas) .
La estructura de suma finita debe contrastarse con el entorno de aproximación estocástica que trata con funciones de la forma que es el valor esperado de una función que depende de una variable aleatoria.Cualquier problema de suma finita puede optimizarse utilizando un algoritmo de aproximación estocástica mediante el uso de.
Convergencia rápida
Los métodos de varianza reducida estocástica sin aceleración son capaces de encontrar un mínimo dedentro de la precisión, es deciren una serie de pasos del pedido:
El número de pasos depende solo logarítmicamente del nivel de precisión requerido, a diferencia del marco de aproximación estocástica, donde el número de pasosEl requerido crece proporcionalmente a la precisión requerida. Los métodos de reducción de varianza estocástica convergen casi tan rápido como el método de descenso de gradiente.tasa, a pesar de usar solo un gradiente estocástico, en unmenor coste que el descenso de gradiente.
Los métodos acelerados en el marco de reducción de varianza estocástica logran tasas de convergencia aún más rápidas, requiriendo solo
pasos para llegarprecisión, potencialmentemás rápido que los métodos no acelerados. Límites de complejidad más bajos. [ 2 ] para la clase de suma finita establecen que esta tasa es la más rápida posible para problemas fuertemente convexos suaves.
Aproches
Los métodos de reducción de varianza se dividen en cuatro categorías principales: métodos de promedio de tablas, métodos de instantáneas de gradiente completo, métodos de estimador recursivo (por ejemplo, SARAH) y métodos duales. Cada categoría incluye métodos diseñados para abordar problemas convexos, no suaves y no convexos, diferenciándose entre sí en la configuración de hiperparámetros y otros detalles algorítmicos.
SAGA
En el método SAGA, [ 3 ] el enfoque prototípico de promedio de tablas, una tabla de tamañose mantiene que contiene el último gradiente observado para cadatérmino, que denotamosEn cada paso, un índicese muestrea y se obtiene un nuevo gradiente.se calcula. La iteraciónSe actualiza con:
y después entrada a la mesase actualiza con.
SAGA es uno de los métodos de reducción de varianza más populares debido a su simplicidad, su teoría fácilmente adaptable y su excelente rendimiento. Es el sucesor del método SAG, [ 4 ] mejorando su flexibilidad y rendimiento.
SVRG
El método de gradiente reducido de varianza estocástica (SVRG), [ 5 ] el método de instantánea prototípico, utiliza una actualización similar, excepto que en lugar de usar el promedio de una tabla, utiliza un gradiente completo que se reevalúa en un punto de instantánea.a intervalos regulares deiteraciones. La actualización queda así:
Este enfoque requiere dos evaluaciones de gradiente estocástico por paso, una para calculary uno para calcularmientras que los métodos de promedio de tabla solo necesitan uno.
A pesar de su elevado coste computacional, el método SVRG es popular debido a que su sencilla teoría de convergencia se adapta fácilmente a nuevos escenarios de optimización. Además, requiere menos almacenamiento que los métodos de promedio tabular, lo que lo hace aplicable en muchos contextos donde estos últimos no pueden utilizarse.
SARAH
El método SARAH (gradiente recursivo estocástico) [ 6 ] mantiene un estimador recursivo del gradiente en lugar de almacenar una tabla de gradientes pasados (como en SAGA) o calcular instantáneas periódicas del gradiente completo (como en SVRG). Al comienzo de un bucle interno, se calcula un gradiente completo en un punto de referencia.:Para iteraciones internas, con un índice muestreado, el estimador de gradiente y la iteración se actualizan mediante:
Esta recursión requiere dos evaluaciones de gradiente de componentes por paso.ypero no necesita almacenar gradientes por muestra, lo que resulta en un menor costo de memoria que los métodos de promedio de tablas. SARAH admite convergencia lineal para funciones fuertemente convexas y se ha extendido a problemas compuestos y no convexos más generales. [ 7 ] [ 8 ]
SDCA
Aprovechar la representación dual del objetivo conduce a otro enfoque de reducción de varianza que es particularmente adecuado para sumas finitas donde cada término tiene una estructura que hace que el cálculo del conjugado convexo sea más fácil.o su operador proximal tratable. El método SDCA estándar [ 9 ] considera sumas finitas que tienen una estructura adicional en comparación con la configuración genérica de sumas finitas:
donde cadaes unidimensional y cadaes un punto de datos asociado con. SDCA resuelve el problema dual:
mediante un procedimiento de ascenso de coordenadas estocástico , donde en cada paso el objetivo se optimiza con respecto a una coordenada elegida aleatoriamente., dejando todas las demás coordenadas iguales. Una solución primal aproximadapuede recuperarse de lavalores:
- .
Este método obtiene tasas de convergencia teóricas similares a otros métodos estocásticos de reducción de varianza, evitando la necesidad de especificar un parámetro de tamaño de paso. Es rápido en la práctica cuandoes grande, pero significativamente más lento que los otros enfoques cuandoes pequeño.
Enfoques acelerados
Los métodos de reducción de varianza acelerada se basan en los métodos estándar mencionados anteriormente. Los primeros enfoques utilizan operadores proximales para acelerar la convergencia, ya sea de forma aproximada o exacta. También se han desarrollado enfoques de aceleración directa. [ 10 ]
Aceleración del catalizador
El marco de trabajo Catalyst [ 11 ] utiliza cualquiera de los métodos estándar anteriores como optimizador interno para resolver aproximadamente un operador proximal :
Después de lo cual utiliza un paso de extrapolación para determinar el siguiente:
La flexibilidad y simplicidad del método catalizador lo convierten en un enfoque básico muy popular. Sin embargo, no alcanza la tasa de convergencia óptima entre los métodos acelerados; puede ser hasta un factor logarítmico más lento en los hiperparámetros.
Punto-SAGA
También se pueden aplicar operaciones proximales directamente a latérminos para producir un método acelerado. El método Point-SAGA [ 12 ] reemplaza las operaciones de gradiente en SAGA con evaluaciones de operadores proximales, lo que resulta en un método de aceleración simple y directo:
con la actualización de la tablarealizado después de cada paso. Aquíse define como el operador proximal para eltérmino:
A diferencia de otros métodos acelerados conocidos, Point-SAGA requiere solo una secuencia de iteraciones.debe mantenerse entre pasos, y tiene la ventaja de tener un único parámetro ajustable.Se obtiene la tasa de convergencia acelerada óptima para la minimización de suma finita fuertemente convexa sin factores logarítmicos adicionales.
Véase también
Referencias
- ↑ "sklearn.linear_model.LogisticRegression" . Scikit Learn . Consultado el 26 de febrero de 2022 .
- ↑ Lan, Guanghui; Zhou, Yi (2018). "Un método óptimo de gradiente incremental aleatorio". Mathematical Programming: Series A and B . 171 ( 1– 2): 167– 215. arXiv : 1507.02000 . doi : 10.1007/s10107-017-1173-0 . S2CID 9143586 .
- ↑ Defazio, Aaron; Bach, Francis; Lacoste-Julien, Simon (2014). "SAGA: Un método rápido de gradiente incremental con soporte para objetivos compuestos no fuertemente convexos". Neural Information Processing Systems . arXiv : 1407.0202 .
- ↑ Schmidt, Mark; Le Roux, Nicolas; Bach, Francis (2017). "Minimizing finite sums with the stochastic average gradient". Mathematical Programming . 162 . arXiv : 1309.2388 .
- ↑ Johnson, Rie; Zhang, Tong (2013). "Aceleración del descenso de gradiente estocástico mediante la reducción predictiva de la varianza" (PDF) . Sistemas de procesamiento de información neuronal .
- ↑ Nguyen, Lam M.; Liu, Jie; Scheinberg, Katya; Takáč, Martin. "SARAH: Un método novedoso para problemas de aprendizaje automático utilizando gradiente recursivo estocástico" (PDF) . Conferencia internacional sobre aprendizaje automático .
- ↑ Fang, Cong; Li, Chris Junchi; Lin, Zhouchen; Zhang, Tong. "SPIDER: Optimización no convexa casi óptima mediante un estimador diferencial estocástico integrado en la ruta" (PDF) . NeurIPS 2018 .
{{cite web}}: CS1 maint: varios nombres: lista de autores ( enlace ) - ↑ Pham, Nhan; Nguyen, Lam M.; Phan, Dzung T.; Tran-Dinh, Quoc. "ProxSARAH: Un marco algorítmico eficiente para la optimización no convexa compuesta estocástica" (PDF) . JMLR 2020 .
{{cite web}}: CS1 maint: varios nombres: lista de autores ( enlace ) - ↑ Shalev-Shwartz, Shai; Zhang, Tong (2013). "Métodos de ascenso de coordenadas duales estocásticos para la minimización de pérdidas regularizada" (PDF) . Journal of Machine Learning Research . 14 .
- ↑ Lan, Guanghui; Zhou, Yi (2018). "Un método óptimo de gradiente incremental aleatorio". Mathematical Programming: Series A and B . 171 ( 1– 2): 167– 215. arXiv : 1507.02000 . doi : 10.1007/s10107-017-1173-0 . S2CID 9143586 .
- ↑ Lin, Hongzhou; Mairal, Julien; Harchaoui, Zaid (2016). "Aceleración de catalizadores para la optimización convexa de primer orden: de la teoría a la práctica". Journal of Machine Learning Research . 18 . arXiv : 1712.05654 .
- ↑ Defazio, Aaron (2016). "Un método acelerado práctico y sencillo para sumas finitas". Sistemas de procesamiento de información neuronal . arXiv : 1602.02442 .
- Optimización estocástica
- Métodos de gradiente
- algoritmos de aprendizaje automático
- Optimización convexa