Una regresión lineal / clasificador puede ser totalmente sobreajustada si se usa sin el cuidado adecuado.
Aquí hay un pequeño ejemplo. Creemos dos vectores, el primero es simplemente monedas al azar:5000
set.seed(154)
N <- 5000
y <- rbinom(N, 1, .5)
El segundo vector son observaciones, cada una asignada aleatoriamente a una de clases aleatorias:5005000500
N.classes <- 500
rand.class <- factor(sample(1:N.classes, N, replace=TRUE))
No debería haber ninguna relación entre nuestros cambios y
y nuestras clases aleatorias rand.class
, se determinaron de forma completamente independiente.
Sin embargo, si intentamos predecir el giro aleatorio con la clase aleatoria utilizando la regresión logística (un clasificador lineal), seguramente cree que hay una relación
M <- glm(y ~ rand.class, family="binomial")
hist(coef(M), breaks=50)
El verdadero valor de cada uno de estos coeficientes es cero. Pero como puede ver, tenemos bastante difusión. Este clasificador lineal es seguro sobreajuste.
Nota: Los extremos en este histograma, donde los coeficientes se han desplazado a y , son casos en los que una clase no tenía observaciones ni valores con . Los valores estimados reales para estos coeficientes son más y menos infinito, pero el algoritmo de regresión logística está codificado con un límite de .15 15- 1515y == 1
y == 0
15
"sobreajustar" no parece estar formalmente definido. ¿Porqué es eso?
El sobreajuste puede entenderse mejor dentro del contexto de una clase de modelos que tiene algún parámetro de complejidad. En este caso, se podría decir que un modelo está sobreajustado cuando la disminución de la complejidad da como resultado un mejor rendimiento esperado de la muestra.
Sería muy difícil definir con precisión el concepto de manera independiente del modelo. Un solo modelo es adecuado, necesita algo con lo que compararlo para que esté sobre o debajo del ajuste. En mi ejemplo anterior, esta comparación fue con la verdad, pero generalmente no sabes la verdad, ¡de ahí el modelo!
¿Acaso alguna medida de distancia entre el entrenamiento y el rendimiento del conjunto de pruebas permitiría tal formalización?
Existe tal concepto, se llama optimismo. Se define por:
ω = Eprueba- Etren
donde representa error, y cada término se promedia sobre todos los conjuntos posibles de entrenamiento y prueba para su algoritmo de aprendizaje.mi
Sin embargo, no llega a la esencia del sobreajuste, porque el rendimiento en un conjunto de prueba puede ser bastante peor que el tren, a pesar de que un modelo de mayor complejidad disminuye ambos .