Regularización de red elástica - Elastic net regularization

En estadística y, en particular, en el ajuste de modelos de regresión lineal o logística , la red elástica es un método de regresión regularizado que combina linealmente las penalizaciones L 1 y L 2 de los métodos de lazo y cresta .

Especificación

El método de red elástica supera las limitaciones del método LASSO (operador de selección y contracción mínima absoluta) que utiliza una función de penalización basada en

El uso de esta función de penalización tiene varias limitaciones. Por ejemplo, en el caso de " p grande , n pequeña " (datos de alta dimensión con pocos ejemplos), LASSO selecciona como máximo n variables antes de saturarse. Además, si hay un grupo de variables altamente correlacionadas, el LASSO tiende a seleccionar una variable de un grupo e ignorar las demás. Para superar estas limitaciones, la red elástica agrega una parte cuadrática a la penalización ( ), que cuando se usa sola es la regresión de la cresta (conocida también como regularización de Tikhonov ). Las estimaciones del método de la red elástica están definidas por

El término de penalización cuadrático hace que la función de pérdida sea fuertemente convexa y, por lo tanto, tiene un mínimo único. El método de la red elástica incluye el LASSO y la regresión de la cresta: es decir, cada uno de ellos es un caso especial donde o . Mientras tanto, la versión ingenua del método de red elástica encuentra un estimador en un procedimiento de dos etapas: primero, para cada fijo , encuentra los coeficientes de regresión de la cresta y luego hace una contracción de tipo LASSO. Este tipo de estimación incurre en una cantidad doble de contracción, lo que conduce a un mayor sesgo y predicciones deficientes. Para mejorar el rendimiento de la predicción, los autores modifican la escala de los coeficientes de la versión ingenua de la red elástica multiplicando los coeficientes estimados por .

Ejemplos de dónde se ha aplicado el método de la red elástica son:

  • Máquinas de vectores soporte
  • Aprendizaje métrico
  • Optimización de cartera
  • Pronóstico del cáncer

Reducción para apoyar la máquina de vectores

A finales de 2014, se comprobó que la red elástica se puede reducir a la máquina de vectores de soporte lineal . Una reducción similar fue probada previamente para LASSO en 2014. Los autores demostraron que para cada instancia de la red elástica, se puede construir un problema de clasificación binaria artificial de manera que la solución hiperplana de una máquina de vectores de soporte lineal (SVM) sea idéntica a la solución (después de volver a escalar). La reducción permite inmediatamente el uso de solucionadores SVM altamente optimizados para problemas de redes elásticas. También permite el uso de la aceleración de GPU , que a menudo ya se usa para solucionadores de SVM a gran escala. La reducción es una simple transformación de los datos originales y las constantes de regularización.

en nuevas instancias de datos artificiales y una constante de regularización que especifican un problema de clasificación binaria y la constante de regularización de SVM

Aquí, consta de etiquetas binarias . Cuando normalmente es más rápido resolver la SVM lineal en el primario, mientras que de lo contrario la formulación dual es más rápida. Los autores se refirieron a la transformación como Support Vector Elastic Net (SVEN) y proporcionaron el siguiente pseudocódigo de MATLAB:

function β=SVEN(X,y,t,λ2);
 [n,p]=size(X); 
 X2 = [bsxfun(@minus, X, y./t); bsxfun(@plus, X, y./t)];
 Y2=[ones(p,1);-ones(p,1)];
if 2p>n then 
 w = SVMPrimal(X2, Y2, C = 1/(2*λ2));
 α = C * max(1-Y2.*(X2*w),0); 
else
 α = SVMDual(X2, Y2, C = 1/(2*λ2)); 
end if
β = t * (α(1:p) - α(p+1:2p)) / sum(α);

Software

  • "Glmnet: Modelos lineales generalizados regularizados Lasso y elastic-net" es un software que se implementa como un paquete fuente R y como una caja de herramientas MATLAB . Esto incluye algoritmos rápidos para la estimación de modelos lineales generalizados con ℓ 1 (el lazo), ℓ 2 (regresión de la cresta) y mezclas de las dos penalizaciones (la red elástica) utilizando el descenso cíclico de coordenadas, calculado a lo largo de una ruta de regularización.
  • JMP Pro 11 incluye regularización de red elástica, utilizando la personalidad de regresión generalizada con modelo de ajuste.
  • "pensim: simulación de datos de alta dimensión y regresión penalizada repetida paralelizada" implementa un método de ajuste "2D" alternativo y paralelizado de los parámetros ℓ, un método que, según se afirma, mejora la precisión de la predicción.
  • scikit-learn incluye máquinas de vectores de regresión lineal, regresión logística y soporte lineal con regularización neta elástica.
  • SVEN, una implementación de Matlab de Support Vector Elastic Net. Este solucionador reduce el problema de Elastic Net a una instancia de clasificación binaria SVM y utiliza un solucionador Matlab SVM para encontrar la solución. Debido a que SVM se puede paralelizar fácilmente, el código puede ser más rápido que Glmnet en hardware moderno.
  • SpaSM , una implementación de Matlab de regresión dispersa, clasificación y análisis de componentes principales, que incluye regresión regularizada neta elástica.
  • Apache Spark brinda soporte para Elastic Net Regression en su biblioteca de aprendizaje automático MLlib . El método está disponible como parámetro de la clase LinearRegression más general.
  • SAS (software) El procedimiento SAS Glmselect admite el uso de la regularización neta elástica para la selección del modelo.

Referencias

Otras lecturas

enlaces externos