297 votos

La elección de un modelo predictivo después de la k-fold cross-validation

Me estoy preguntando cómo elegir un modelo predictivo después de hacer K-fold cross-validation.

Esto puede ser mal formulada, por lo que voy a explicar en más detalle: entiendo cómo K-fold cross-validation obras. Sin embargo, cada vez que ejecuto K-fold cross-validation, yo uso K diferentes conjuntos de datos de entrenamiento, y terminar con K los diferentes modelos.

Me estoy preguntando cómo ir sobre la elección entre estos K modelos, por lo que puedo presentar a alguien y decir "esta es la mejor clasificador que nos puede venir para arriba con."

Está bien elegir uno de los K modelos? O es que hay algún tipo de buenas prácticas que está implicada, como escoger el modelo que alcanza la mediana de pruebas de error?

355voto

MattoxBeckman Puntos 827

Creo que le falta algo todavía en su comprensión de la finalidad de la validación cruzada.

Veamos algo de la terminología de la recta, en general, cuando decimos 'un modelo' nos referimos a un método en particular para describir cómo algunos de los datos de entrada se relaciona con lo que estamos tratando de predecir. No nos referimos generalmente a instancias particulares de ese método como los diferentes modelos. Así que se podría decir "tengo un modelo de regresión lineal', pero no llamaría a dos conjuntos diferentes de la formación de los coeficientes de los diferentes modelos. Al menos no en el contexto de selección de modelo.

Así que, cuando usted K-fold cross validation, que son la prueba de lo bien que su modelo es capaz de recibir capacitación por parte de algunos de los datos y predecir los datos que no ha visto. Utilizamos la validación cruzada para esto, porque si se entrena usando todos los datos que tiene, no tiene la izquierda para las pruebas. Usted puede hacer esto una vez, decir mediante el 80% de los datos para entrenar y 20% para probar, pero ¿y si el 20% de pasar a recoger a prueba pasa a contener un montón de puntos que son especialmente fáciles (o muy difícil) para predecir? No le han llegado con la mejor estimación posible de los modelos de capacidad para aprender y predecir.

Queremos utilizar todos los datos. Así que para continuar con el ejemplo anterior de un 80/20 split, le iba a hacer 5 veces validación cruzada por el modelo de formación de 5 veces en el 80% de los datos y las pruebas en un 20%. Nos aseguramos de que cada punto de datos termina en el 20% de la prueba de establecer exactamente una vez. Por lo tanto, hemos utilizado todos los datos que tenemos para contribuir a una comprensión de cómo nuestro modelo lleva a cabo la tarea de aprendizaje a partir de algunos datos y la predicción de algunos de los nuevos datos.

Pero el propósito de la validación cruzada no es nuestro modelo final. No utilizamos estos 5 instancias de nuestro modelo de aprendizaje para hacer real la predicción. Para que queremos usar todos los datos que han de venir con el mejor modelo posible. El propósito de la validación cruzada es la comprobación del modelo, no de la construcción de modelos.

Ahora, digamos que tenemos dos modelos, decir que un modelo de regresión lineal y de una red neuronal. ¿Cómo podemos decir que modelo es mejor? Podemos hacer K-fold cross-validation y ver cual resulta mejor en la predicción de la prueba de los puntos de ajuste. Pero una vez que hemos utilizado de validación cruzada para seleccionar el mejor desempeño del modelo, podemos entrenar a ese modelo (ya sea de la regresión lineal o de la red neuronal) en todos los datos. No utilizamos el modelo actual instancias hemos entrenado durante la validación cruzada para nuestro último modelo predictivo.

Tenga en cuenta que hay una técnica que se llama bootstrap agregación (generalmente abreviado a "embolsado") que lo hace de un modo de uso modelo de casos producidos en una forma similar a la validación cruzada para construir un conjunto modelo, sino que es una técnica avanzada más allá del alcance de su pregunta aquí.

46voto

cbeleites Puntos 12461

Permítanme lanzar en un par de puntos además de Bogdanovist la respuesta

Como ustedes dicen, tren a $k$ diferentes modelos. Se diferencian en que 1/(k-1)ésima de la capacitación de los datos se intercambian en contra de otros casos. Estos modelos son llamados a veces de sustituto de los modelos debido a que el (promedio) rendimiento medido para estos modelos es tomado como un sustituto de la actuación de la modelo formado en todos los casos.

Ahora, hay algunos supuestos en este proceso.

  • Hipótesis 1: el sustituto de los modelos son equivalentes al "conjunto de datos" del modelo.
    Es bastante común que esta suposición se rompe, y el síntoma es el conocido sesgo pesimista de $k$-fold cross validation (u otros remuestreo basado en esquemas de validación). El rendimiento de los sustitutos de los modelos es, en promedio, peor que el rendimiento del "conjunto de datos" modelo si la curva de aprendizaje aún tiene pendiente positiva (es decir, con menos muestras de formación conducir a la peor modelos).

  • La hipótesis 2 es una versión más débil de la hipótesis 1: incluso si el sustituto de los modelos son, en promedio, peor que el conjunto de los datos del modelo, asumimos que ellos sean equivalentes entre sí. Esto permite resumir los resultados de la prueba de $k$ sustituto de los modelos como un promedio de rendimiento.
    Modelo de inestabilidad provoca la ruptura de esta suposición: el verdadero rendimiento de los modelos entrenados en $N \frac{k - 1}{k}$ casos de entrenamiento varía mucho. Se puede medir esta haciendo iteraciones/repeticiones de la $k$-fold cross validation (new random asignaciones a la $k$ subconjuntos) y mirando la varianza (random diferencias) entre las predicciones de los diferentes sustituto de los modelos por el mismo caso.

  • El finito número de casos significa la medición del desempeño estará sujeto a un error aleatorio (varianza) debido a que el número finito de casos de prueba. Esta fuente de variación es diferente (y por lo tanto añade a) a partir del modelo instablilty de la varianza.

Las diferencias en los resultados observados se deben a que estas dos fuentes de variación.

La "selección" que pensar es en un conjunto de datos de selección: la selección de uno de los sustitutos de los modelos implica la selección de un subconjunto de muestras de formación y afirman que este subconjunto de muestras de formación conduce a un modelo superior. Mientras que esto puede ser verdaderamente el caso, normalmente la "superioridad" es espuria. En cualquier caso, como escoger "el mejor" de los sustitutos de los modelos de datos-optimización basada en, usted tendría que validar (medida de rendimiento) este recogido modelo con nuevos datos desconocidos. El conjunto de pruebas dentro de esta validación cruzada no es independiente ya que se utilizó para seleccionar el sustituto del modelo.

Usted puede desear mirar en nuestro papel, es acerca de la clasificación donde las cosas son peores que para la regresión. Sin embargo, se muestra cómo estas fuentes de varianza y el sesgo de agregar.
Beleites, C. y Neugebauer, U. y Bocklitz, T. y Krafft, C. y Popp, J.: el tamaño de la Muestra planificación de los modelos de clasificación. Anal Chim Acta, 2013, 760, 25-33.
DOI: 10.1016/j.de aca.2012.11.007
manuscrito aceptado en arXiv: 1211.1323

1voto

DataExplorer Puntos 1

No estoy seguro de la discusión anterior es totalmente correcta. En la validación cruzada, podemos dividir los datos de Entrenamiento y de Prueba para cada carrera. El uso de los datos de entrenamiento solo, uno tiene que adaptarse a la modelo y elegir los parámetros de ajuste en cada clase de modelos que se consideran. Por ejemplo, en las Redes Neuronales de los parámetros de ajuste son el número de neuronas y de las opciones para la activación de la función. Con el fin de hacer esto, una cruz-valida en los datos de entrenamiento solo.

Una vez que el mejor modelo en cada clase se encuentra, el mejor ajuste del modelo se evaluó mediante la prueba de datos. El "exterior" de la validación cruzada de bucle puede ser utilizado para dar una mejor estimación de los datos de la prueba de rendimiento, así como una estimación de la variabilidad. Una discusión puede comparar la prueba de rendimiento para diferentes clases de decir que las Redes Neuronales vs SVM. Una clase del modelo que se elija, con el modelo de tamaño fijo, y ahora el conjunto de los datos se utiliza para determinar el mejor modelo.

Ahora, si como parte de su algoritmo de aprendizaje de máquina que desea constantemente seleccionar el mejor modelo de la clase (es decir que cada semana), entonces, aunque esta elección debe ser evaluado en los datos de entrenamiento! Prueba de medición de datos no pueden utilizarse para determinar la clase de modelo de elección si se trata de una opción dinámica.

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