Sobreajuste a propósito

8

¿Tendría sentido equipar un modelo a propósito?

Digamos que tengo un caso de uso donde sé que los datos no variarán mucho con respecto a los datos de entrenamiento.

Estoy pensando aquí en la predicción del tráfico, donde el estado del tráfico sigue un conjunto fijo de patrones

  • viaje matutino
  • actividad nocturna
  • y así.

Estos patrones no cambiarán mucho a menos que haya un aumento repentino de usuarios de automóviles o cambios importantes en la infraestructura vial. En este caso, me gustaría que el modelo sea lo más sesgado posible hacia los patrones que aprendió en los datos actuales, suponiendo que en el futuro el patrón y los datos serán muy similares.

Brandon
fuente
Esto parece muy sospechoso, si tiene la garantía de que los datos no cambiarán, podría sobreajustar el modelo y obtener un mejor rendimiento, pero esto parece una mala idea.
user2974951
1
Está. Pero por otro lado, siento que no será una mala idea si sé que los datos no cambiarán mucho. Estoy escribiendo mis pensamientos aquí para que alguien pueda probar que estoy equivocado.
Brandon
55
Si el rendimiento predictivo fuera de muestra de su modelo (es decir, en datos futuros) no es peor que el rendimiento en sus datos actuales, entonces diría que técnicamente no está realmente sobreajustado. Está sobreajustando cuando ajusta el ruido en sus datos actuales, y eso siempre debería conducir a predicciones peores en los nuevos datos. Debería poder configurar su modelo en el nivel de complejidad correcto mediante la validación cruzada.
matteo
2
En un estudio, se le pidió a un sujeto que sobreajuste algunos datos, y luego ganaron la lotería. El estudio concluyó que los datos sobreajustados siempre son algo bueno.
Nat

Respuestas:

4

En general, no tiene sentido sobreajustar sus datos a propósito. El problema es que es difícil asegurarse de que los patrones también aparezcan en la parte que no está incluida en sus datos. Tienes que afirmar que hay un patrón en los datos. Una posibilidad de hacerlo es el concepto de estacionariedad.


Lo que describe me recuerda la estacionariedad y la ergodicidad. Desde un lado contextual / comercial, asume que su serie temporal sigue ciertos patrones. Estos patrones se denominan estacionariedad o ergodicidad.

Definición de estacionariedad:

Un proceso estacionario es un proceso estocástico cuya distribución de probabilidad conjunta incondicional no cambia cuando se desplaza en el tiempo. Por lo tanto, parámetros como la media y la varianza tampoco cambian con el tiempo.

Definición ergodicidad:

Un proceso ergódico es un proceso relacionado o que denota sistemas o procesos con la propiedad de que, con el tiempo suficiente, incluyen o inciden en todos los puntos en un espacio dado y pueden representarse estadísticamente mediante una selección razonablemente grande de puntos.


Ahora desea asegurarse de que realmente siga estos ciertos patrones. Puede hacerlo, por ejemplo, con la prueba de raíz unitaria (como Dickey-Fuller) o la prueba de estacionariedad (como KPSS).

Prueba de raíz de unidad de definición:

H0: hay una raíz unitaria.

H1: no hay raíz unitaria. Esto implica en la mayoría de los casos estacionariedad.

Prueba de estacionariedad de definición:

H0: Hay estacionariedad.

H1: no hay estacionariedad.

Otras lecturas:

¿Cuál es la diferencia entre una prueba estacionaria y una prueba de raíz unitaria?


Si la serie temporal realmente sigue estos patrones, el pronóstico y la predicción serán "más fáciles desde un punto de vista estadístico", por ejemplo, puede aplicar modelos econométricos para pronósticos como ARIMA o TBATS. Mi respuesta se refiere a series de tiempo univariadas y también multivariadas si tiene estacionariedad de datos de sección transversal y las raíces unitarias no son conceptos comunes.

Ferdi
fuente
8

No, no tiene sentido sobreajustar sus datos.

El término sobreajuste en realidad se refiere a una comparación entre modelos: si el rendimiento del modelo_a mejor en los datos de entrenamiento dados pero peor fuera de la muestra que el modelo_b , el modelo_a está sobreajustado . O en otras palabras: " existe una alternativa mejor ".

Si el estado del tráfico " no variará en absoluto con respecto a los datos de entrenamiento", entonces obtendrá los mejores resultados posibles simplemente memorizando los datos de entrenamiento (de nuevo, eso no es "sobreajuste").

Pero "los datos no variarán mucho con respecto a los datos de entrenamiento" simplemente equivale a tener una representación razonable del patrón subyacente. Aquí es donde el aprendizaje automático funciona mejor ( entorno estacionario como explicó Ferdi ).

Laksan Nathan
fuente
Bueno. Entonces, tal vez sea mejor decir que aumentamos el sesgo a propósito. Dije esto porque estaba leyendo sobre el sesgo frente a la compensación de varianza y tenía sentido para mí tener un sesgo más alto para el caso de uso del tráfico.
Brandon el
algoritmo + ajuste le dará los mejores resultados posibles (optimice la compensación).
Laksan Nathan
+1, pero no creo que "exista una alternativa mejor" se deba al sobreajuste.
kbrose
4

Yo diría que hay un sentido para sobreajustar sus datos, pero solo con fines de investigación. (¡No use el modelo sobreajustado en la producción!)

En los casos en que los datos pueden ser complejos y la tarea no es trivial, tratar de sobreajustar un modelo puede ser un paso importante.

Si puede sobreajustar un modelo, significa que el modelo puede describir los datos.

Si ni siquiera puede sobreajustar, puede darle una pista para la investigación:

  • sus datos no están listos para ser modelados, por lo que necesitaría hacer más preparación de datos / ingeniería de características
  • su modelo es demasiado simple y no puede capturar todas las dependencias de datos
Vadym B.
fuente