5 votos

Validación cruzada y división de la prueba de entrenamiento

Tengo una duda fundamental sobre la validación cruzada. Sé que la validación cruzada entrena el modelo en el conjunto de datos, reservando una parte para probar el modelo, y que cada iteración del conjunto de datos de entrenamiento/prueba es diferente.

Pero mi principal preocupación es qué enfoque de entre los siguientes es el correcto

Enfoque 1

¿Debo pasar todo el conjunto de datos para la validación cruzada y obtener los mejores parámetros del modelo

Enfoque 2

  1. Haga una división de datos de entrenamiento y prueba
  2. Pase X_train y y_train para la validación cruzada (la validación cruzada se hará sólo en X_train e y_train. El modelo nunca verá X_test, y_test)
  3. Probar el modelo con los mejores parámetros obtenidos de la validación cruzada de X_train y y_train en X_test y y_test

Preocupación por el enfoque 1

¿Cómo voy a validar el modelo si está entrenado en todo el conjunto de datos?

Preocupación por el enfoque 2

Los parámetros obtenidos para este enfoque estarán sesgados a los datos presentes en X_train y y_train Cómo deshacerse de este sesgo

1voto

Nagabhushan Baddi Puntos 108

Sus planteamientos son poco claros. Así que, aquí está mi simple explicación de la validación cruzada. La validación cruzada se realiza para ajustar los hiperparámetros de forma que el modelo entrenado generalice bien (validándolo en los datos de validación). Así que aquí está una versión básica de la validación cruzada sostenida:

  1. Entrenamiento de prueba (realmente validación) dividir los datos para obtener XTrain, yTrain, XVal, yVal

  2. Seleccione un conjunto de rejilla de hiperparámetros que desee buscar.

  3. Para i th combinación de hiperparámetros:

    a. Entrenar(ajustar) el modelo en XTrain, yTrain

    b. Evaluar el modelo

    c. Evaluar el modelo en XVal, yVal, es decir, calcular la métrica de rendimiento (precisión, auc, f1, etc).

  4. Después de 3, seleccione la combinación de hiperparámetros que proporciona la mejor métrica de rendimiento.

Hay otros tipos de validación cruzada como la validación cruzada k-fold y la validación cruzada iterada que funcionan mejor.

EDIT: Para hacer la validación cruzada de k pliegues, no es necesario dividir los datos en conjunto de entrenamiento y validación, se hace dividiendo los datos de entrenamiento en k pliegues, cada uno de los cuales se utilizará como conjunto de validación en el entrenamiento de los otros (k-1) pliegues juntos como conjunto de entrenamiento. La métrica de evaluación será entonces la media de las métricas de evaluación en las k iteraciones.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X