Regularización para lograr simplicidad: Regularización L2

Considera la siguiente curva de generalización, que muestra la pérdida del conjunto de entrenamiento y del conjunto de validación con respecto a la cantidad de iteraciones de entrenamiento.

La función de pérdida para el conjunto de entrenamiento se reduce de forma gradual. Por el contrario, la función de pérdida para el conjunto de validación disminuye, pero luego comienza a aumentar.

Figura 1: Pérdida en los conjuntos de entrenamiento y de validación.

En la Figura 1, se muestra un modelo en el que la pérdida de entrenamiento disminuye de forma gradual, pero la pérdida de validación aumenta con el tiempo. En otras palabras, esta curva de generalización muestra que el modelo se sobreajusta en función de los datos en el conjunto de entrenamiento. Si canalizamos nuestro Ockham interno, tal vez podamos prevenir el sobreajuste mediante la penalización de modelos complejos, un principio denominado regularización.

En otras palabras, en lugar de solo intentar minimizar la pérdida (minimización del riesgo empírico):

$$\text{minimize(Loss(Data|Model))}$$

ahora minimizaremos pérdida+complejidad, lo que se denomina minimización del riesgo estructural:

$$\text{minimize(Loss(Data|Model) + complexity(Model))}$$

Nuestro algoritmo de optimización de entrenamiento ahora es una función de dos términos: el término de pérdida, que mide qué tan bien se ajusta el modelo a los datos, y el término de regularización, que mide la complejidad del modelo.

El Curso intensivo de aprendizaje automático se centra en dos formas comunes (y, de cierto modo, relacionadas) de pensar en la complejidad del modelo:

  • La complejidad del modelo como una función de las ponderaciones (o pesos) de todos los atributos que contiene
  • La complejidad del modelo como una función de la cantidad total de atributos con ponderaciones que no sean cero (este enfoque se trata en un módulo más adelante)

Si la complejidad del modelo es una función de ponderaciones, una ponderación de atributos con un valor absoluto alto es más complejo que una con un valor absoluto bajo.

Podemos cuantificar la complejidad mediante la fórmula de la regularización L2, que define el término de regularización como la suma de los cuadrados de todas las ponderaciones de atributos:

$$L_2\text{ regularization term} = ||\boldsymbol w||_2^2 = {w_1^2 + w_2^2 + ... + w_n^2}$$

En esta fórmula, los pesos cercanos a cero tienen poco efecto en la complejidad del modelo, mientras que los pesos con valores atípicos pueden tener un gran impacto.

Por ejemplo, un modelo lineal con los siguientes pesos:

$$\{w_1 = 0.2, w_2 = 0.5, w_3 = 5, w_4 = 1, w_5 = 0.25, w_6 = 0.75\}$$

tiene un término de regularización L2 de 26.915:

$$w_1^2 + w_2^2 + \boldsymbol{w_3^2} + w_4^2 + w_5^2 + w_6^2$$ $$= 0.2^2 + 0.5^2 + \boldsymbol{5^2} + 1^2 + 0.25^2 + 0.75^2$$ $$= 0.04 + 0.25 + \boldsymbol{25} + 1 + 0.0625 + 0.5625$$ $$= 26.915$$

Sin embargo, \(w_3\) (en negrita arriba), con un valor al cuadrado de 25, contribuye casi toda la complejidad. La suma de los cuadrados de las otras cinco ponderaciones agrega solo 1.915 al término de regularización L2.