67 votos

¿Por qué sólo tres particiones? (entrenamiento, validación, prueba)

Cuando se trata de ajustar modelos a un gran conjunto de datos, el consejo habitual es dividir los datos en tres partes: el conjunto de datos de entrenamiento, el de validación y el de prueba.

Esto se debe a que los modelos suelen tener tres "niveles" de parámetros: el primer "parámetro" es la clase de modelo (por ejemplo, SVM, red neuronal, bosque aleatorio), el segundo conjunto de parámetros son los parámetros de "regularización" o "hiperparámetros" (por ejemplo, el coeficiente de penalización del lazo, la elección del núcleo, la estructura de la red neuronal) y el tercer conjunto son los que suelen considerarse los "parámetros" (por ejemplo, los coeficientes de las covariables).

Dada una clase de modelo y una elección de hiperparámetros, se seleccionan los parámetros eligiendo los que minimizan el error en el conjunto de entrenamiento. Dada una clase de modelo, se afinan los hiperparámetros minimizando el error en el conjunto de validación. Se selecciona la clase de modelo en función del rendimiento en el conjunto de pruebas.

Pero, ¿por qué no más particiones? A menudo uno puede dividir los hiperparámetros en dos grupos, y utilizar una "validación 1" para ajustarse al primero y una "validación 2" para ajustarse al segundo. O incluso se podría tratar el tamaño de la división de los datos de entrenamiento/validación como un hiperparámetro a ajustar.

¿Es esto ya una práctica común en algunas aplicaciones? ¿Hay algún trabajo teórico sobre la partición óptima de los datos?

90voto

Loren Pechtel Puntos 2212

En primer lugar, creo que te equivocas en lo que hacen las tres particiones. No hacen ninguna elección basada en los datos de prueba. Tus algoritmos ajustan sus parámetros basándose en los datos de entrenamiento. Luego los ejecutas en los datos de validación para comparar tus algoritmos (y sus parámetros entrenados) y decidir un ganador. A continuación, se ejecuta el ganador en los datos de prueba para obtener una previsión de su rendimiento en el mundo real.

No se valida en los datos de entrenamiento porque eso sobreajustaría los modelos. No te detienes en la puntuación del ganador del paso de validación porque has estado ajustando iterativamente las cosas para obtener un ganador en el paso de validación, y por eso necesitas una prueba independiente (que no has estado ajustando específicamente) para darte una idea de lo bien que lo harás fuera del ámbito actual.

En segundo lugar, creo que un factor limitante aquí es la cantidad de datos que tienes. La mayoría de las veces, ni siquiera queremos dividir los datos en particiones fijas, de ahí el CV.

1voto

No_Socks Puntos 8

Esta es una pregunta interesante, y la respuesta de @Wayne me ha resultado útil.

A mi entender, dividir el conjunto de datos en diferentes particiones depende del propósito del autor y de los requisitos del modelo en la aplicación del mundo real.

Normalmente tenemos dos conjuntos de datos: de entrenamiento y de prueba. El de entrenamiento se utiliza para encontrar los parámetros de los modelos, o para ajustarlos. El de prueba se utiliza para evaluar el rendimiento del modelo en datos no vistos (o datos del mundo real).

Si nos limitamos a hacer un paso en la formación, es obvio que hay un proceso de formación y otro de prueba (o validación).

Sin embargo, al hacer esto, puede surgir el problema del sobreajuste cuando el modelo se entrena con un conjunto de datos, una sola vez. Esto puede conducir a la inestabilidad del modelo en el problema del mundo real. Una forma de resolver este problema es la validación cruzada (CV) del modelo en el conjunto de datos de entrenamiento. Esto significa que dividimos el conjunto de datos de entrenamiento en diferentes pliegues, y mantenemos un pliegue para probar el modelo que ha sido entrenado con otros pliegues. El ganador es ahora el que da la mínima pérdida (basada en nuestra propia función objetivo) en todo el proceso de CV. De este modo, nos aseguramos de minimizar la posibilidad de sobreajuste en el proceso de entrenamiento y de seleccionar el ganador correcto. El conjunto de pruebas se utiliza de nuevo para evaluar al ganador en los datos no vistos.

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