Entrenamiento, pruebas, validación en un problema de análisis de supervivencia

14

He estado buscando varios hilos aquí, pero no creo que mi pregunta exacta sea respondida.

Tengo un conjunto de datos de ~ 50,000 estudiantes y su tiempo de deserción. Voy a realizar una regresión de riesgos proporcionales con una gran cantidad de posibles covariables. También voy a hacer una regresión logística en cuanto a la deserción / permanencia. El objetivo principal será la predicción para nuevas cohortes de estudiantes, pero no tenemos ninguna razón para creer que variarán mucho de la cohorte del año pasado.

Por lo general, no tengo ese lujo de datos y hago ajustes de modelos con algún tipo de penalización, pero esta vez pensé dividir el entrenamiento internacional y los conjuntos de datos de prueba y luego hacer la selección variable en el conjunto de entrenamiento; luego usando el conjunto de datos de prueba para estimar parámetros y capacidad predictiva.

¿Es esta una buena estrategia? Si no, ¿qué es mejor?

Las citas son bienvenidas pero no necesarias.

Peter Flom - Restablece a Monica
fuente

Respuestas:

8

Con una frecuencia de resultado similar, descubrí que la división de datos puede funcionar si . Y proporciona una estimación imparcial del rendimiento del modelo, penalizando adecuadamente la selección del modelo (si realmente necesita la selección del modelo; es más probable que la penalización resulte en un mejor modelo) si solo usa la muestra de prueba una vez. PERO no use la muestra de prueba para ninguna reestimación de parámetros. La división de datos se basa en el modelo creado utilizando la muestra de entrenamiento para "congelar" y aplicar a la muestra de prueba sin modificar.norte>20,000

Frank Harrell
fuente
Gracias. ¿Recomendarías 80-20? 90-10? ¿Algo más? ¿Alguna referencia sobre esto?
Peter Flom - Restablece a Monica
2
No me he mantenido al día con la literatura sobre la configuración de división óptima. Pero se aplican algunos principios generales. Para la muestra de validación, necesita lo suficientemente grande como para poder estimar la curva de calibración con gran precisión, luego debe ver que lo que queda es más que adecuado para un ajuste de modelo confiable (usando, por ejemplo, una relación de eventos 20: 1: candidato parámetros si no penalizas). norte
Frank Harrell
3

He estado mirando este documento yo mismo para la tarea similar de validación cruzada de predicción de supervivencia. Lo bueno comienza en el Capítulo 2.

Cam.Davidson.Pilon
fuente
Esto parece comparar 5 veces con la estimación basada en CV modelo (y concluye que 5 veces es mejor). Pero estaba más interesado en dividir los datos en 2 partes y usar una para validar la otra.
Peter Flom - Restablece a Monica
1
La conclusión que encontré de esto, y por qué me atrajo originalmente este documento, fue cómo lidiar con la censura en las predicciones de supervivencia, es decir, qué función de pérdida usar (aunque releyendo su pregunta, es posible que no tenga censura).
Cam.Davidson.Pilon
Tengo censura y la disertación es interesante, pero no creo que sea una respuesta a mi pregunta.
Peter Flom - Restablece a Monica
1

Desde entonces he encontrado este documento que no solo responde a mi pregunta, sino que proporciona un método para determinar la división óptima para conjuntos de datos particulares. Encontré esto gracias al uso de @FrankHarrell del término "configuración dividida óptima" que luego busqué en Google.

Peter Flom - Restablece a Monica
fuente
2
Peter, creo que el periódico usaba una regla de puntuación incorrecta. Se pueden obtener diferentes resultados al usar reglas de puntuación adecuadas. Además, el documento no abordó la "volatilidad" del análisis. Con tamaños de muestra totales pequeños considerados allí, repetir el proceso usando una división aleatoria diferente dará como resultado modelos muy diferentes y una precisión muy diferente en comparación con la primera división. Veo que es muy indeseable.
Frank Harrell
@FrankHarrell: veo su punto y de hecho es un muy buen punto. ¿Qué recomiendas entonces hacer? Realice las ejecuciones de Monte Carlo de divisiones de tren / prueba y luego, en cada ejecución, ¿ix k-folds CV (o bootstrapping)? Pero entonces esto contaminaría todo el conjunto de datos ... No veo una mejor solución que encontrar una manera adecuada de dividir el conjunto de datos en trenes y conjuntos de prueba (¿cuáles serían los criterios?) Simplemente no me siento cómodo al usar todos los conjunto de datos para entrenar y validar (usando CV o arranque) los modelos (de los cuales se usará uno (o varios) para predecir valores de salida desconocidos basados ​​en algunos datos de entrada).
jpcgandre
Abordé eso en la publicación que acabas de poner en otra página de tema.
Frank Harrell