Curva ROC 101
Una curva ROC se visualiza la predicción del rendimiento de un clasificador para los diferentes niveles de conservadurismo (medido por calificaciones de confianza). En términos simples, lo que ilustra el precio que se paga en términos de tasa de falsos positivos para aumentar la tasa de verdaderos positivos. El conservadurismo es controlado a través de los umbrales de la confianza de los puntajes a asignar el positivo y el negativo de la etiqueta.
El eje x se puede interpretar como una medida del liberalismo del clasificador, que representa su tasa de falsos positivos (1-especificidad). El eje y representa lo bien que se está en la detección de positivos, que representan el clasificador de la tasa de verdaderos positivos (sensibilidad). Un perfecto clasificador de la curva ROC pasa a través de $(0,1)$, lo que significa que puede clasificar a todos los positivos correctamente sin un solo falso positivo. Esto se traduce en un área bajo la curva de exactamente $1$.
Intuitivamente, una más conservadora clasificador (que las etiquetas de menos cosas como positivo) tiene mayor precisión y menor sensibilidad que el más liberal. Cuando el umbral positivo de predicción disminuye (por ejemplo, la necesaria positivo puntuación de confianza disminuye), tanto la tasa de falsos positivos y el aumento de la sensibilidad monótonamente. Esta es la razón por la que una curva ROC siempre aumenta monótonamente.
Trazando una curva ROC
Usted no tiene que calcular las predicciones de los distintos umbrales, como usted dice. El cálculo de una curva ROC se realiza en base a la clasificación producida por el clasificador (por ejemplo, el modelo de regresión logística).
Utilizar el modelo para predecir cada punto de prueba una vez. Usted obtendrá un vector de calificaciones de confianza, vamos a llamar a $\mathbf{\hat{Y}}$. El uso de este vector puede producir la totalidad de la curva ROC (o al menos una estimación de los mismos). Los distintos valores en $\mathbf{\hat{Y}}$ son los umbrales. Ya que el uso de la regresión logística, las calificaciones de confianza en $\mathbf{\hat{Y}}$ son probabilidades, por ejemplo, en $[0,1]$.
Ahora, simplemente iterar sobre los valores y ajuste de TP/TN/FP/FN y usted puede calcular la curva ROC punto por punto. La cantidad de puntos en la curva ROC es igual a la longitud de $\mathbf{\hat{Y}}$, suponiendo que no hay lazos en la predicción.
Para graficar el resultado final, el uso de una función que traza en cero el fin de mantener (ZOH), en lugar de la interpolación lineal entre los puntos, como de MATLAB stairs
o R staircase.plot
. También ten esto en cuenta al calcular el área bajo la curva (AUC). Si utiliza la interpolación lineal en lugar de ZOH para calcular las AUC, que en realidad terminan con el área bajo la convex hull (AUCH).