Quiero saber si el proceso descrito a continuación es válido / aceptable y si hay alguna justificación disponible.
La idea: los algoritmos de aprendizaje supervisados no asumen estructuras / distribuciones subyacentes sobre los datos. Al final del día, generan estimaciones puntuales. Espero cuantificar la incertidumbre de las estimaciones de alguna manera. Ahora, el proceso de construcción del modelo ML es inherentemente aleatorio (por ejemplo, en el muestreo para la validación cruzada para el ajuste de hiperparámetros y en el submuestreo en GBM estocástico), por lo que una tubería de modelado me dará una salida diferente para los mismos predictores con cada semilla diferente. Mi idea (ingenua) es ejecutar este proceso una y otra vez para llegar a una distribución de la predicción, y espero poder hacer declaraciones sobre la incertidumbre de las predicciones.
Si es importante, los conjuntos de datos con los que trabajo suelen ser muy pequeños (~ 200 filas).
¿Esto tiene sentido?
Para aclarar, en realidad no estoy cargando los datos en el sentido tradicional (es decir, no estoy volviendo a muestrear los datos). Se usa el mismo conjunto de datos en cada iteración, solo estoy explotando la aleatoriedad en xval y GBM estocástico.
Respuestas:
A mí me parece un enfoque tan bueno como cualquiera para cuantificar las incertidumbres en las predicciones. Solo asegúrese de repetir todos los pasos de modelado (para un GBM que sería el ajuste de parámetros) desde cero en cada remuestreo de arranque. También podría ser útil arrancar los rankings de importancia para cuantificar la incertidumbre en los rankings.
He descubierto que a veces los intervalos no contienen la predicción real, especialmente cuando se estima una probabilidad. El aumento del número mínimo de observaciones en cada nodo terminal generalmente resuelve eso, al menos en los datos con los que he trabajado.
La predicción conforme parece un enfoque útil para cuantificar la confianza en las predicciones sobre nuevos datos. Hasta ahora solo he arañado la superficie y probablemente otros estén más preparados para dar una opinión sobre eso.
Hay un código R crudo en mi respuesta a esta publicación sobre la búsqueda de un intervalo de predicción GBM.
¡Espero que esto ayude!
fuente
Puede dividir su incertidumbre sobre la predicción de los términos 'sesgo' y 'varianza'. El término sesgo se refiere a la especificación errónea del modelo: si ajusta el modelo lineal para la función no lineal, siempre obtendrá algún error. El término 'varianza' se refiere al error en la estimación de los parámetros del modelo. Se aproxima a la parte de la varianza de la incertidumbre, mientras que no puede estimar el sesgo.
Como lo sugiere @ErikL, la predicción conforme es un enfoque teóricamente justificado que adopta una idea bastante similar para bootstrap. La predicción conforme usando la reconstrucción del modelo usando un nuevo punto toma en cuenta tanto el sesgo como la varianza, mientras que para la regresión necesitan recursos computacionales significativos. Puedes probarlo con Python usando una biblioteca no conforme .
fuente
No, parece una mala idea. Primero, como señaló Alexey, hay sesgos y variaciones. Incluso para la mejor elección de parámetros, no puede evitar la variación. Su método ni siquiera trata de abordarlo. Hay otra cuestión muy importante, que parte, y probablemente la mayoría, del error de su modelo está en los datos, más que en la aleatoriedad inherente del modelo. (Sin mencionar que algunos modelos, como la regresión lineal simple, no son aleatorios en absoluto, y para los modelos aleatorios, el grado de aleatoriedad varía de un modelo a otro)
Le sugiero que pruebe su enfoque en algunos datos simulados simples y en algún modelo que conozca. Estoy seguro de que, por las razones que describí, su error estimado será mucho menor que el error real (o su distribución será mucho más estrecha).
Para estimar la distribución de errores, puede usar una validación cruzada antigua y buena.
fuente
Estoy pensando en este problema ahora. Aquí están mis hallazgos:
(1) Método Delta
(2) Muestreo Bootstrap
(3) Método bayesiano
(4) Estimación de la varianza media (MVE)
La idea es tratar de estimar las dos fuentes de la variabilidad de predicción, la incertidumbre de la estimación del parámetro del modelo y el error irreducible.
Aquí hay varias referencias:
Enfoques de aprendizaje automático para la estimación del intervalo de predicción para la salida del modelo, Durga L. Shrestha, Dimitri P. Solomatine, 2006
Una comparación de algunas estimaciones de error para modelos de redes neuronales, Robert Tibshirani, 1995
Revisión exhaustiva de los intervalos de predicción basados en redes neuronales y nuevos Avances, Abbas khosravi, Doug Creighton, 2011
Espero que esto ayude y me corrija, cualquiera de los anteriores es inapropiado. Me gustaría saber más de los demás.
fuente