9 votos

R/caret: ¿conjuntos de entrenamiento y prueba frente a la validación cruzada?

Quizá sea una pregunta tonta, pero al generar un modelo con caret y utilizar algo como LOOCV o (más aún) LGOCV En el caso de la validación cruzada, ¿cuál es el beneficio de dividir los datos en conjuntos de entrenamiento y de prueba si esto es lo que hace el paso de validación cruzada?

Leí algunas de las preguntas relacionadas y sugirieron que algunos de los métodos de validación cruzada (por ejemplo, lo que se describe aquí en el sitio de caret ) son para el propósito de selección de características . Pero en mi caso, estoy usando randomForest ( method = "rf" ) y kernlab ( method = svmRadial ), que no aparecen en el grupo que intenta depurar los predictores.

Entonces, mi pregunta es si uso algo como cross_val <- trainControl(method = "LGOCV", p = 0.8) ¿No es lo mismo que entrenar con el 80% de mis datos, probar el modelo resultante con el 20% restante y hacerlo una y otra vez para tener una idea de lo bien que funciona el modelo?

Si es así, ¿es necesario dividir mis datos en conjuntos de entrenamiento/prueba?

P.D. Lo pregunto en parte porque estoy llevando a cabo modelos sobre prototipos DOE generados empíricamente (piense en productos duros donde ajustamos las entradas y luego usamos métodos de prueba para medir varios atributos sobre el prototipo).

Como tal, no tengo un enorme conjunto de datos con muchos niveles de predicción superpuestos para modelar - a menudo ejecutamos un ensayo en cada punto de interés de la EOD ya que la generación de datos es costosa en este caso. Por lo tanto, me gustaría utilizar todos los datos que pueda para un modelo preciso, pero quería comprobar aquí que no me estoy perdiendo algo obvio y haciendo un modelo pobre por no dividir las cosas.


Editar: En respuesta a la pregunta de @topepo, estoy modelando atributos medidos físicamente de un compuesto en base al ajuste de las entradas químicas de la fórmula. No puedo hablar de mi aplicación real, pero me inventaré un ejemplo basado en la formulación de pintura de látex para interiores. Estoy realizando experimentos diseñados en los que mezclamos 4-5 productos químicos, tal vez jugamos con el % de sólidos, y una cantidad de tiempo para calentar la solución de polímero para ajustar el grado de polimerización.

A continuación, podemos medir la reología, el peso molecular, la dureza de la capa de pintura, la resistencia al agua, etc.

Tenemos réplicas decentes de varias variables, pero pocas verdadero replica en el sentido de que cada nivel de DOE era exactamente el mismo. El conjunto de datos es de ~80 observaciones y quizá 4-5 son repeticiones exactas. Hemos realizado 15 pruebas diferentes, y quizás 5-6 de ellas se han hecho para cada observación. Algunas de las respuestas están presentes en el 25-50% de los datos.

A partir de aquí, nos gustaría modelar los efectos de nuestros 7 predictores en las propiedades de salida y luego optimizar para apuntar a nuevos espacios de diseño que tengan más probabilidades de dar las propiedades deseadas.

(De ahí mi pregunta AQUÍ . Una vez que tengo un modelo entrenado, sería bueno hacer la "inversa" y alimentar las respuestas deseadas para obtener la mejor estimación de los posibles niveles de entrada para probar a continuación).

7voto

VarLogRant Puntos 284

Mis pensamientos generales:

Por lo tanto, cuando se evalúan diferentes modelos, es posible que se desee afinarlos, probar diferentes tipos de preprocesamiento, etc., hasta encontrar lo que se considera un buen modelo. El remuestreo puede ayudarle a orientarse en la dirección correcta durante ese proceso.

Sin embargo, sigue existiendo la posibilidad de sobreajustar y las probabilidades de que esto ocurra dependen en gran medida de la cantidad de datos (y predictores) que se tengan. Si tienes pocos datos, hay algunas maneras de pensar en esto:

  • Utilice todos los datos para el entrenamiento, ya que cada punto de datos contribuye significativamente a la eficacia del modelo.
  • Reserve un pequeño conjunto de pruebas como comprobación final de los errores gruesos debidos a un ajuste excesivo. Las posibilidades de sobreajuste con un tamaño de muestra pequeño no son pequeñas y aumentan con el número de muestras.

Yo caigo en el segundo campo, pero el primero no está equivocado en absoluto.

Si tienes una tonelada de datos, entonces no importa mucho (a menos que tengas una tasa de eventos pequeña).

Para ti:

Tienes un DOE. El tipo de diseño ayudaría a responder la pregunta. ¿Está intentando interpolar entre puntos de diseño o predecir puntos de diseño que no han sido probados hasta ahora?

Tienes una réplica. Me parece que el bosque aleatorio es golpear un clavo con un mazo y podría resultar en un ajuste excesivo. Yo intentaría algo más suave como un SVM o (gasp) red neuronal.

Max

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