Sobreajuste: Complejidad del modelo

En la unidad anterior, se presentó el siguiente modelo, que categorizó de forma incorrecta muchos árboles en el conjunto de prueba:

Figura 16. La misma imagen que en la Figura 13. Esta es una forma compleja que categoriza de forma incorrecta muchos árboles.
Figura 16: El modelo complejo con comportamiento incorrecto de la unidad anterior.

El modelo anterior contiene muchas formas complejas. ¿Un modelo más simple manejaría mejor los datos nuevos? Supongamos que reemplazas el modelo complejo por un modelo ridículamente simple: una línea recta.

Figura 17. Un modelo de línea recta que hace un trabajo excelente
            al separar los árboles enfermos de los sanos.
Figura 17: Un modelo mucho más simple.

El modelo simple generaliza mejor que el modelo complejo en datos nuevos. Es decir, el modelo simple hizo mejores predicciones en el conjunto de prueba que el modelo complejo.

La simplicidad ha estado superando a la complejidad durante mucho tiempo. De hecho, la preferencia por la simplicidad se remonta a la antigua Grecia. Siglos después, un fraile del siglo XIV llamado Guillermo de Ockham formalizó la preferencia por la simplicidad en una filosofía conocida como navaja de Ockham. Esta filosofía sigue siendo un principio subyacente esencial de muchas ciencias, incluido el aprendizaje automático.

Ejercicios: Comprueba tu comprensión

Estás desarrollando una ecuación de física. ¿Cuál de las siguientes fórmulas se ajusta más a la navaja de Occam?
Una fórmula con doce variables.
Una fórmula con tres variables.
Estás en un proyecto de aprendizaje automático nuevo y estás a punto de seleccionar tus primeras funciones. ¿Cuántas características debes elegir?
Elige entre 4 y 6 atributos que parecen tener un gran poder predictivo.
Elige tantas funciones como puedas para comenzar a observar cuáles tienen el poder predictivo más fuerte.
Elige entre 1 y 3 atributos que parecen tener un gran poder predictivo.

Regularización

Los modelos de aprendizaje automático deben cumplir simultáneamente con dos objetivos en conflicto:

  • Se ajustan bien a los datos.
  • Adapta los datos de la forma más sencilla posible.

Un enfoque para mantener un modelo simple es penalizar los modelos complejos, es decir, forzar al modelo a simplificarse durante el entrenamiento. Penalizar los modelos complejos es una forma de regularización.

Pérdida y complejidad

Hasta ahora, este curso sugirió que el único objetivo durante el entrenamiento era minimizar la pérdida, es decir:

minimize(loss)

Como viste, los modelos enfocados únicamente en minimizar la pérdida tienden a sobreajustarse. Un mejor algoritmo de optimización del entrenamiento minimiza alguna combinación de pérdida y complejidad:

minimize(loss + complexity)

Lamentablemente, la pérdida y la complejidad suelen tener una relación inversa. A medida que aumenta la complejidad, disminuye la pérdida. A medida que disminuye la complejidad, aumenta la pérdida. Debes encontrar un punto medio razonable en el que el modelo realice buenas predicciones en los datos de entrenamiento y en los datos del mundo real. Es decir, tu modelo debe encontrar un compromiso razonable entre la pérdida y la complejidad.

¿Qué es la complejidad?

Ya viste algunas formas diferentes de cuantificar las pérdidas. ¿Cómo cuantificarías la complejidad? Comienza tu exploración con el siguiente ejercicio:

Ejercicio: Comprueba tu intuición

Hasta ahora, hemos sido bastante vagos sobre lo que es realmente la complejidad. ¿Cuál de las siguientes ideas crees que sería una métrica de complejidad razonable?
La complejidad es una función de los pesos del modelo.
La complejidad es una función de los sesgos de todos los atributos del modelo.
La complejidad es una función del cuadrado de los pesos del modelo.