Preámbulo
Este es un post largo. Si lo estás releyendo, ten en cuenta que he revisado la parte de las preguntas, aunque el material de fondo sigue siendo el mismo. Además, creo que he encontrado una solución al problema. Esa solución aparece al final del post. Gracias a CliffAB por señalar que mi solución original (editada fuera de este post; ver historial de ediciones para esa solución) necesariamente producía estimaciones sesgadas.
Problema
En los problemas de clasificación de aprendizaje automático, una forma de evaluar el rendimiento del modelo es comparar las curvas ROC, o área bajo la curva ROC (AUC). Sin embargo, he observado que se habla muy poco de la variabilidad de las curvas ROC o de las estimaciones de AUC; es decir, son estadísticas estimadas a partir de datos y, por tanto, tienen algún error asociado. Caracterizar el error en estas estimaciones ayudará a determinar, por ejemplo, si un clasificador es, de hecho, superior a otro.
He desarrollado el siguiente enfoque, que denomino análisis bayesiano de curvas ROC, para abordar este problema. Hay dos observaciones clave en mi forma de pensar sobre el problema:
-
Las curvas ROC se componen de cantidades estimadas a partir de los datos y son susceptibles de análisis bayesiano.
La curva ROC se compone trazando la tasa de verdaderos positivos $TPR(\theta)$ contra la tasa de falsos positivos $FPR(\theta)$ cada uno de los cuales se estima a partir de los datos. Considero $TPR$ y $FPR$ funciones de $\theta$ el umbral de decisión utilizado para separar la clase A de la B (votos de árbol en un bosque aleatorio, distancia a un hiperplano en SVM, probabilidades predichas en una regresión logística, etc.). Variar el valor del umbral de decisión $\theta$ devolverán diferentes estimaciones de $TPR$ y $FPR$ . Además, podemos considerar $TPR(\theta)$ para ser una estimación de la probabilidad de éxito en una secuencia de ensayos Bernoulli. De hecho, la TPR se define como $\frac{TP}{TP+FN},$ que es también la MLE de la probabilidad de éxito binomial en un experimento con $TP$ éxitos y $TP+FN>0$ pruebas totales.
Así que considerando la salida de $TPR(\theta)$ y $FPR(\theta)$ como variables aleatorias, nos enfrentamos al problema de estimar la probabilidad de éxito de un experimento binomial en el que se conoce exactamente el número de éxitos y fracasos (dado por $TP$ , $FP$ , $FN$ y $TN$ que supongo que ya están arreglados). Convencionalmente, uno simplemente usa el MLE, y asume que TPR y FPR son fijos para valores específicos de $\theta$ . Pero en mi análisis bayesiano de las curvas ROC, dibujo simulaciones posteriores de las curvas ROC, que se obtienen extrayendo muestras de la distribución posterior sobre las curvas ROC. Un modelo bayesiano estándar para este problema es una verosimilitud binomial con una prioridad beta sobre la probabilidad de éxito; la distribución posterior sobre la probabilidad de éxito también es beta, de modo que para cada $\theta$ tenemos una distribución posterior de los valores de TPR y FPR. Esto nos lleva a mi segunda observación.
-
Las curvas ROC no son decrecientes. Por tanto, una vez que se ha muestreado algún valor de $TPR(\theta)$ y $FPR(\theta)$ existe una probabilidad nula de muestrear un punto en el espacio ROC "al sureste" del punto muestreado. Pero el muestreo con restricciones de forma es un problema difícil.
El enfoque bayesiano puede utilizarse para simular un gran número de AUC a partir de un único conjunto de estimaciones. Por ejemplo, 20 simulaciones tienen este aspecto en comparación con los datos originales.
Este método presenta una serie de ventajas. Por ejemplo, la probabilidad de que el AUC de un modelo sea mayor que el de otro puede estimarse directamente comparando el AUC de sus simulaciones posteriores. Las estimaciones de la varianza pueden obtenerse mediante simulación, que es más barata que los métodos de remuestreo, y estas estimaciones no incurren en el problema de las muestras correlacionadas que surgen con los métodos de remuestreo.
Solución
Desarrollé una solución a este problema haciendo una tercera y cuarta observación sobre la naturaleza del problema, además de las dos anteriores.
-
$TPR(\theta)$ y $FPR(\theta)$ tienen densidades marginales susceptibles de simulación.
Si $TPR(\theta)$ (vicio $FPR(\theta)$ ) es una variable aleatoria con distribución beta y parámetros $TP$ y $FN$ (vicio $FP$ y $TN$ ), también podemos considerar cuál es la densidad de TPR promediando los distintos valores $\theta$ que corresponden a nuestro análisis. Es decir, podemos considerar un proceso jerárquico en el que se muestrea un valor $\tilde{\theta}$ de la colección de $\theta$ obtenidos por las predicciones de nuestro modelo fuera de muestra y, a continuación, muestrea un valor de $TPR(\tilde{\theta})$ . Una distribución sobre las muestras resultantes de $TPR(\tilde{\theta})$ es una densidad de la tasa de verdaderos positivos incondicional a $\theta$ mismo. Porque estamos asumiendo un modelo beta para $TPR(\theta)$ la distribución resultante es una mezcla de distribuciones beta, con una serie de componentes $c$ igual al tamaño de nuestra colección de $\theta$ y los coeficientes de mezcla $1/c$ .
En este ejemplo, obtuve la siguiente FDA de TPR. Cabe destacar que, debido a la degeneración de las distribuciones beta en las que uno de los parámetros es cero, algunos de los componentes de la mezcla son función delta de Dirac en 0 o 1. Esto es lo que causa los picos repentinos en 0 y 1. Estos "picos" implican que estas densidades no son ni continuas ni discretas. Una elección de prior que sea positiva en ambos parámetros tendría el efecto de "suavizar" estos picos repentinos (no se muestra), pero las curvas ROC resultantes se inclinarán hacia el prior. Lo mismo puede hacerse para FPR (no se muestra). Extraer muestras de las densidades marginales es una aplicación sencilla del muestreo por transformada inversa.
-
Para resolver el requisito de restricción de forma, sólo tenemos que ordenar TPR y FPR de forma independiente.
El requisito de no decrecimiento es el mismo que el requisito de que las muestras marginales de TPR y FPR se ordenen independientemente -- es decir, la forma de la curva ROC está completamente determinada por el requisito de que el valor más pequeño de TPR esté emparejado con el valor más pequeño de FPR y así sucesivamente, lo que significa que la construcción de una muestra aleatoria con restricciones de forma es trivial en este caso. Para la muestra $\text{Beta}(0,0)$ prior, las simulaciones proporcionan pruebas de que construir una curva ROC de esta manera produce muestras con AUC medio que converge al AUC original en el límite de un gran número de muestras. A continuación se muestra una KDE de 2000 simulaciones.
Comparación con el Bootstrap
En una larga discusión por chat con @AdamO (¡gracias, AdamO!), señaló que hay varios métodos establecidos para comparar dos curvas ROC, o para caracterizar la variabilidad de una sola curva ROC, entre ellos el bootstrap. Así que, a modo de experimento, probé a hacer bootstrap con mi ejemplo, que es el siguiente $n=20$ observaciones en el conjunto holdout y comparar los resultados con el método bayesiano. Los resultados se comparan a continuación (la aplicación del bootstrap aquí es el bootstrap simple: muestreo aleatorio con sustitución del tamaño de la muestra original. Una lectura rápida sobre bootstraps deja al descubierto importantes lagunas en mis conocimientos sobre los métodos de remuestreo, por lo que quizá no sea un enfoque adecuado).
Esta demostración muestra que la media del bootstrap está sesgada por debajo de la media de la muestra original, y que la KDE del bootstrap produce "jorobas" bien definidas. La génesis de estas jorobas no tiene ningún misterio: la curva ROC será sensible a la inclusión de cada punto, y el efecto de una muestra pequeña (en este caso, n=20) es que la estadística subyacente es más sensible a la inclusión de cada punto. (Enfáticamente, este patrón no es un artefacto de la anchura de banda del kernel - observe el gráfico rugoso. Cada franja corresponde a varias réplicas bootstrap que tienen el mismo valor. El bootstrap tiene 2000 réplicas, pero el número de valores distintos es claramente mucho menor. Podemos concluir que las jorobas son una característica intrínseca del procedimiento bootstrap). Por el contrario, las estimaciones bayesianas medias de AUC tienden a estar muy cerca de la estimación original y "suavizan" las jorobas que muestra el bootstrap.
Pregunta
Mi pregunta revisada es si mi solución revisada es incorrecta. Una buena respuesta demostrará (o refutará) que las muestras resultantes de las curvas ROC están sesgadas, o del mismo modo demostrará o refutará otras cualidades de este enfoque.