Al construir un modelo de regresión utilizando conjuntos de modelado / validación separados, ¿es apropiado "recircular" los datos de validación?

13

Supongamos que tengo una división 80/20 entre las observaciones de modelado / validación. He ajustado un modelo al conjunto de datos de modelado y me siento cómodo con el error que veo en el conjunto de datos de validación. Antes de implementar mi modelo para puntuar futuras observaciones, ¿es apropiado combinar la validación con los datos de modelado para obtener estimaciones actualizadas de los parámetros en el 100% de los datos? He escuchado dos perspectivas sobre esto:

  1. La validación que realicé fue una validación de la estructura del modelo, es decir, el conjunto de predictores y transformaciones que he aplicado. No tiene sentido dejar el 20% de mis datos en la tabla cuando podría usar eso para actualizar mis estimaciones.

  2. La validación que realicé fue en parte una validación de las estimaciones de parámetros que calculé en mi conjunto de datos de modelado. Si actualizo el ajuste del modelo, he cambiado las estimaciones y ya no tengo una forma objetiva de probar el rendimiento del modelo actualizado.

Siempre he seguido el argumento # 1, pero más recientemente escuché a varias personas discutir # 2. Quería ver lo que otros piensan sobre esto. ¿Has visto buenas discusiones en la literatura o en otro lugar sobre este tema?

DavidLiebeHart
fuente

Respuestas:

6

La opción 1 es la correcta. Puede agregar el conjunto de datos de validación para actualizar los parámetros de su modelo.

Esa es la respuesta. Ahora hablemos de ello. El hecho de que lo que hiciste fue tu opción 1. anterior es más claro si hiciste la validación cruzada k-fold de bootstrapping (y deberías haberlo hecho, no está claro en tu pregunta).

En la validación cruzada 5 veces, divide los datos que tiene en 5 conjuntos aleatorios de igual tamaño. Llamemos A, B, C, D y E. Luego, aprende los parámetros de su modelo (del modelo en sí) en 4 de los conjuntos, digamos A, B, C y D, y pruébelo o valídelo en el quinto modelo E. (Esto lo hiciste). Pero luego selecciona otro conjunto como prueba / validación (digamos D) y aprende usando los otros 4 (A, B, C y E). Pruébelo en D, repita.

El error de su modelo predictivo es el error promedio de las 5 pruebas, y tiene cierta comprensión de cómo el error predictivo depende de los conjuntos de aprendizaje y prueba. En el mejor de los casos, las 5 medidas de error son similares y puede estar razonablemente seguro de que su modelo funcionará a ese nivel en el futuro.

¿Pero qué modelo? Para cada conjunto de conjuntos de aprendizaje, tendrá un parámetro diferente para el modelo. Aprender con A, B, C, D genera un conjunto de parámetros P1, aprender con A, B, C, E, el conjunto de parámetros P2, hasta P5. Ninguno de ellos es tu modelo.

Lo que probó es el error esperado de un procedimiento para construir modelos , el procedimiento que siguió cuando el conjunto de aprendizaje era A, B, C, D y cuando era A, B, C, E, etc. Es este procedimiento el que genera un modelo con ese error esperado.

Entonces, ¿cuál es el modelo final? Es la aplicación del procedimiento en todos los datos que tiene disponibles (A, B, C, D y E). Un nuevo modelo con el conjunto de parámetros P0, que nunca antes generó, no tiene datos para probarlo (ya que "usó" todos los datos para determinar los parámetros P0) y aún tiene una expectativa razonable de que funcionará en el futuro datos como los otros modelos (P1, P2 ...) construidos usando el mismo procedimiento.

¿Qué sucede si no realizó una validación cruzada o bootstrap (bootstrap es algo más complejo de explicar, lo dejo fuera de esta discusión)? ¿Qué sucede si solo realizó una división de aprendizaje / validación y una medida de error? Entonces, el argumento 2. puede ser algo correcto pero tiene un problema mayor: solo tiene una medida del error del modelo y no sabe cuán dependiente es ese error de los datos utilizados para validarlo. Quizás, por suerte, su conjunto de validación del 20% fue particularmente fácil de predecir. Al no haber realizado múltiples medidas de error, será muy arriesgado suponer que la tasa de error esperada de su modelo predictivo seguirá siendo la misma para los datos futuros.

¿Cuál es el "mayor riesgo"? ¿Asumir que ese error seguirá siendo básicamente el mismo para datos futuros, o asumir que agregar más datos para conocer su modelo de alguna manera "arruinará" el modelo y aumentará su tasa de error en el futuro? Realmente no sé cómo responder esto, pero sospecharía de los modelos que empeoran con más datos ...

Jacques Wainer
fuente