¿Es posible que un modelo de Machine Learning sobreajuste y subadapte simultáneamente los datos de entrenamiento?

A2A.

En el sentido habitual de las palabras, por lo general, no puede sobreajustar y subestimar todos los datos de entrenamiento. Los gráficos típicos de precisión vs complejidad se parecen a los siguientes:

Es decir, desde la complejidad óptima (en el centro del gráfico), si te mueves hacia la izquierda, te subestimas, y si te mueves hacia la derecha, te sobreestimes. Entonces son mutuamente excluyentes.

Sin embargo, es muy posible que pueda sobreajustar una parte de los datos de entrenamiento y subadaptar alguna otra parte de los datos de entrenamiento.

Imagine que tiene algunos datos de clasificación en el espacio 2D. Ahora, en alguna parte del espacio, puede separar las clases usando un clasificador lineal. Sin embargo, en otra parte del espacio, necesita un polinomio de grado 5 para capturar el modelo subyacente. Por lo tanto, si usa algo como un polinomio de grado 3, se sobreajustará a la primera parte de los datos y se ajustará a la segunda parte.

De hecho, si observa los árboles de decisión o los modelos relacionados con estructura de árbol, a menudo no están equilibrados, es decir, un lado del árbol es más profundo que el otro. Una de las razones del desequilibrio es que el lado poco profundo está ajustando datos que tienen una estructura más simple, mientras que el lado más profundo está ajustando datos que tienen una estructura compleja. Una vez más, si intenta ajustar los datos utilizando un árbol de profundidad fija, equiparía y sobreajustaría simultáneamente.

[Fuente de la imagen: error de predicción del modelo de medición precisa]

Puedo pensar quizás en una situación (con subconjuntos de causas específicas) en la que esto podría suceder: el caso en el que realmente no tiene la información correcta para resolver el problema que le interesa.

Esto podría suceder de varias maneras, como se mencionó anteriormente.

Una es que carece de la información para comprender el problema que realmente necesita ser resuelto; es posible que no esté resolviendo el problema correcto. Por ejemplo, podría predecir el abandono bastante bien, pero omita el hecho de que el abandono (y su pérdida real) es causado por un competidor que lo socava.

Una es carecer de los datos que realmente se requieren para hacer una predicción, una variación de lo anterior, y solo encajan bien en el conjunto de “entrenamiento” (e incluso en el conjunto de “prueba”) porque ha ajustado su modelo a una corriente punto en el tiempo (o similar).

Hay otros.

He visto cosas como esta todo el tiempo en problemas de datos de la vida real.

En la vida real, las cosas no son necesariamente claras.

Claro que es posible. Puedes imaginar que trato de ajustar una función sinusoidal a un montón de puntos 2D como este:

La curva se adapta demasiado a parte del ruido, mientras que se ajusta al patrón exponencial en los datos.

Este es solo un ejemplo simple y sin sentido. Si bien puede suceder, generalmente no es un problema en la práctica. Un problema mucho mayor es el sobreajuste puro y un problema aún mayor es cuando los datos son simplemente ruido aleatorio.

No estoy seguro de si hay definiciones matemáticas precisas de ajuste y sobreajuste donde todos estén 100% de acuerdo, pero todos estén de acuerdo con la intuición. Use esta guía para responder su propia pregunta:

sobreajuste = cuando el modelo tiene un error de entrenamiento realmente bajo pero el error de prueba correspondiente es realmente alto, generalmente debido a que el modelo es demasiado complejo o está demasiado entrenado.

underfit = cuando el modelo tiene un tren realmente alto y un error de prueba, generalmente debido a que la complejidad del modelo no es lo suficientemente alta.

¿Crees que puede tanto el underfit como el overfit?

darte algo de tiempo para pensar

¿Listo?

Respuesta: No. ¿Por qué? Porque el sobreajuste implica que el error de entrenamiento es bajo (o incluso cero), mientras que el ajuste insuficiente requiere un error de entrenamiento alto. Incluso las fuentes del problema son tradicionalmente opuestas, clásicamente una se debe a que el modelo es demasiado complejo que se ajusta al ruido en el error del tren (por lo tanto, es un error de prueba incorrecto en el sobreajuste) y la otra es que la complejidad del modelo es tan simple que puede Ni siquiera lo descubra patrones “obvios”. Entonces diría que es esencialmente imposible solo mirando las definiciones de estas palabras.

Si, en cierto modo.

Si su conjunto de prueba proviene de una distribución diferente a su conjunto de trenes.

Puede ajustar sus datos de entrenamiento, por ejemplo, haciendo la regularización L1 y eligiendo solo 3 funciones cuando de hecho hay 5 en el modelo verdadero.

Y podría “sobreajustar” ya que los detalles de los datos de entrenamiento no se generalizan a los datos de la prueba.

Por lo tanto, su modelo se sobrerreguló, pero usted no generalizó.

Ustedes tanto arriba como debajo de la medida.

Investigaría sus datos de entrenamiento en un caso como este o sus expectativas de precisión en su modelo final.

Es posible que deba descomponer sus datos en múltiples conjuntos y ejecutarlos en múltiples modelos.