Tema
Regularización de cresta y de lazo
- Machine Learning
- Nivel intermedio
La regularización añade a la función de coste un término que penaliza el tamaño de los pesos, con la norma al cuadrado en el caso de cresta y con la suma de valores absolutos en el caso de lazo.
Nombre en inglés
Ridge and lasso regularization
Intuición
Penalizar el tamaño de los pesos equivale a decirle al modelo que solo gaste flexibilidad si el ajuste lo compensa, de modo que se cambia algo de sesgo por bastante menos varianza. La diferencia entre las dos normas se ve en la forma de la región admisible, porque la bola de la norma uno tiene esquinas sobre los ejes y las soluciones tienden a caer ahí, lo que anula pesos por completo y selecciona variables.
Fórmula
J(w) = ECM(w) + lambda * ||w||_2^2 en cresta; J(w) = ECM(w) + lambda * ||w||_1 en lazo
Ejemplo resuelto
Un modelo tiene pesos w = (3, -4). La norma al cuadrado vale 9 + 16 = 25 y la suma de valores absolutos vale 3 + 4 = 7. Con lambda igual a 0.1, la penalización de cresta aporta 2.5 al coste y la de lazo aporta 0.7. Si el error cuadrático medio del ajuste vale 1.0, el coste total sube a 3.5 con cresta y a 1.7 con lazo, y en ambos casos el optimizador encontrará pesos más pequeños que (3, -4).
Errores frecuentes
- Penalizar también el término independiente, con lo que el modelo queda obligado a pasar cerca del origen aunque los datos estén centrados en otro sitio.
- Aplicar la penalización sin estandarizar antes las variables, ya que un atributo medido en metros y otro en kilómetros reciben castigos muy distintos por el mismo efecto real.
- Dar por seguro que un lambda mayor mejora la generalización, cuando pasado cierto punto la penalización domina y el modelo se vuelve tan rígido que el sesgo se dispara.
Ejercicio
Con pesos w = (0, 5) y lambda igual a 0.2, calcula la penalización de cresta y la de lazo.
Ver la solución
La penalización de cresta usa la norma al cuadrado, que vale 0 + 25 = 25, y multiplicada por 0.2 da 5. La penalización de lazo usa la suma de valores absolutos, que vale 0 + 5 = 5, y multiplicada por 0.2 da 1. La cresta castiga mucho más un peso grande aislado, mientras que el lazo castiga igual repartir 5 unidades entre uno o entre varios pesos, y de ahí su tendencia a dejar ceros.
Respuesta: Cresta 5 y lazo 1.
Temas relacionados
- Descomposición de sesgo y varianza
- Máquinas de vectores de soporte
- Selección de características
- Convexidad