1 votos

¿Qué se entiende por "cantidad de regularización" en LASSO?

He comenzado a aprender sobre LASSO a partir de esta revisión ("Optimización de mínimos cuadrados con regularización de norma L1" por Mark Schmitd).

El problema de optimización es:

$$\min_{\beta } \left\{ \frac{1}{N} \sum_{i=1}^N (y_i - x_i^T \beta)^2 \right\} \text{ sujeto a } \sum_{j=1}^p |\beta_j| \leq t$$

donde $t$ controla la cantidad de regularización. Existe otra forma de escribir este problema utilizando multiplicadores de Lagrange:

$$\min_{ \beta \in \mathbb{R}^p } \left\{ \frac{1}{N} \left\| y - X \beta \right\|_2^2 + \lambda \| \beta \|_1 \right\}$$

Pregunta 1: ¿Cómo controla $t$ la cantidad de regularización? Si $\lambda$ es grande, ¿más coeficientes serán forzados a cero? En tal caso, ¿cuántos coeficientes serían cero, dado que LASSO no asume un conjunto activo particular?

Usé Lasso en Matlab y, basado en la documentación, uno debería elegir $\lambda$ para minimizar el error cuadrático medio. Supongamos que $\lambda = 0.8$, ¿cómo y dónde se utiliza este valor? ¿Implica un $\lambda$ grande mayor esparsidad? ¿Cuál es el significado de este término?

Pregunta 2: ¿Se encuentra $\lambda$ en un rango, digamos de 0 a 1?

4voto

throwaway Puntos 18

¿Cómo controla $t$ la cantidad de regularización?

Reducir $t$ (o equivalentemente, aumentar $\lambda$) limita la norma $\ell_1$ de los coeficientes a valores más pequeños. Esto obliga a más coeficientes a ser cero, produciendo soluciones más dispersas (un vector escaso es aquel que contiene muchos ceros). También disminuye la magnitud de los coeficientes no nulos (este efecto se llama contracción).

Si es así, ¿cuántos coeficientes serían cero?

Desafortunadamente, esto depende del problema y no podemos saberlo generalmente a priori. Simplemente hay que resolver el problema con diferentes valores de $\lambda$ o $t$. Digamos que queremos seleccionar el parámetro de regularización que dé un nivel particular de dispersión (digamos $k$ coeficientes no nulos). Un enfoque computacionalmente eficiente es resolver el problema utilizando el algoritmo de regresión de menor ángulo (LARS), que calcula la trayectoria completa de la solución LASSO. Esto devuelve muchas opciones de coeficientes (uno para cada valor de $\lambda$ o $t$). Luego podemos seleccionar de este conjunto los coeficientes que contienen $k$ no nulos.

se debe elegir $\lambda$ para minimizar el error cuadrático medio

Aquí se necesita cuidado. $\lambda$ se puede elegir para minimizar el error cuadrático, pero solo utilizando validación cruzada o un conjunto de validación independiente.

¿$\lambda$ está en un rango, digamos de 0 a 1?

$\lambda$ puede tomar cualquier valor no negativo

1 votos

Gracias por tu respuesta y explicación. Algunos términos como "$t$ fuerza más coeficientes" a cero no me quedan claros. ¿Cómo afecta el valor numérico real de $t$ o $\lambda$ para hacer que el coeficiente sea cero? Un ejemplo sencillo sería útil. Si $\lambda$ = $0.81$ valor, ¿significa esto que la magnitud del coeficiente que es menor que $0.81$ se convertirá en cero?

0 votos

No, no funciona así. Debes considerar el problema de optimización. Aumentar $\lambda$ significa que la función objetivo devolverá valores más grandes para los coeficientes con una $\ell_1$ norma más grande. Por lo tanto, todo lo demás igual, los coeficientes con una $\ell_1$ norma más pequeña serán favorecidos. Y, estos tenderán a ser más dispersos.

0 votos

De manera general, se podría decir que el término de error al cuadrado intenta llevar los coeficientes hacia valores que minimicen el error cuadrático. El término de penalización busca llevar cada coeficiente hacia cero, y $\lambda$ controla la fuerza de esta acción. Los coeficientes óptimos son el resultado de un compromiso entre estos dos términos, que es determinado por $\lambda$. Para obtener más información, puedes encontrar muchas respuestas en este sitio (y en otros lugares) sobre por qué Lasso produce soluciones dispersas.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X