Parámetros dado λ, y λ por validación
β*(λ) = argminβ [ MSEtrain(β) + λ·Σj βj2 ]
λ* = argminλ MSEval( β*(λ) )
con λ = —:

El caso. Tu equipo de analítica ajusta un modelo de precios: predice la demanda a partir del precio. Los parámetros (los coeficientes β) se aprenden minimizando el error en el conjunto de entrenamiento. Pero el hiperparámetro λ (cuánta regularización aplicar) no se aprende de los datos de train: lo eliges probando en un conjunto de validación separado.

λ
  1. Baja λ al mínimo (a la izquierda del eje). El modelo sobreajusta el train: su MSE de entrenamiento es diminuto, pero el MSE de validación se dispara.
  2. Desliza λ hasta el fondo de la U de validación. Ahí coincides con λ* (la línea vertical): en ese punto el MSE de test también es bajo.
  3. Sube λ al máximo (a la derecha). Subajuste: el modelo se aplana y tanto validación como test vuelven a subir.
  4. ¿Por qué se elige λ con validación?
    Con train siempre saldría λ=0 (menos regularización = menos error de entrenamiento, hasta memorizar el ruido). Con test no, porque tocarlo para elegir λ lo contamina y deja de ser una estimación honesta del rendimiento futuro. Por eso λ se busca en un conjunto intermedio, la validación.

Lee así. La curva dorada es el MSE de validación frente a λ (eje x en escala logarítmica); el punto dorado marca tu λ actual y la vertical marca λ*. La curva gris tenue es el MSE de train, que solo crece con λ. Mueve el slider y el término λ de la ecuación se enciende.

β los parámetros: se aprenden minimizando el error de train. λ el hiperparámetro: no se aprende, se elige por validación. MSE error cuadrático medio en un conjunto de datos. train / val / test los tres conjuntos separados.
Para llevarte a casa
β se aprende · λ se elige · test es sagrado

La idea. Un modelo tiene dos capas de ajuste. Los parámetros (β) se aprenden de los datos minimizando el error de entrenamiento. Los hiperparámetros son mandos externos que fijas tú antes de aprender: λ (regularización), k (vecinos), la profundidad de un árbol, el nº de árboles, el learning rate…

Cómo se eligen. No por corazonada: se buscan probando valores y midiendo en validación (o por validación cruzada si tienes pocos datos). Se elige el que minimiza el error de validación.

El test es sagrado. El conjunto de test se toca una sola vez, al final, para reportar el rendimiento. Si lo usas para elegir hiperparámetros, dejas de tener una estimación honesta: te engañas a ti mismo.

Y ahora. Cada modelo que veamos traerá sus propios hiperparámetros; la receta es siempre la misma: entrena en train, elige en validación, mide una vez en test.

Garrido-Merchán — ecgarrido@comillas.edu — Machine Learning para Business Analytics — Hiperparámetros