¿Qué es la curva ROC?

Supongamos que está diseñando una herramienta de ML que intenta clasificar a los pacientes en dos grupos en función de los datos médicos: los grupos “Deben ser probados por un médico para detectar el cáncer” y “no deben ser probados”.

Los datos del paciente sobre los que se ha capacitado a la herramienta solo contienen información sobre los factores de riesgo de cáncer (antecedentes familiares, edad, peso, ese tipo de cosas) y no contienen suficiente información para determinar con precisión si un individuo tiene cáncer o no. Los datos de entrenamiento también contienen si el paciente terminó o no con cáncer, de modo que la herramienta ML puede aprender a distinguir a los dos grupos.

Debido a esta información imperfecta, la herramienta asigna al paciente un puntaje entre 0 y 1: cuanto mayor sea el puntaje, más confianza tendrá la herramienta en que el paciente está en riesgo de tener cáncer.

Una vez que la herramienta está entrenada, puede medir su efectividad. Hay varias medidas de esto, por ejemplo, la tasa de falsos positivos (cuántas personas no enfermas recibieron pruebas recomendadas) y la tasa de falsos negativos (cuántas personas con cáncer no se recomendaron más pruebas). Ambos son malos resultados que queremos minimizar, pero no igualmente malos.


Sin embargo, antes de que pueda medir estas cosas, tiene que elegir: ¿qué puntaje de umbral utiliza para decidir si un paciente se somete o no a pruebas adicionales? Después de todo, cada paciente con un puntaje distinto de cero de la herramienta tiene cierto riesgo de tener cáncer, por lo que hay que argumentar que solo se debe evaluar a todos.

Pero la razón por la que estamos construyendo esta herramienta en primer lugar es para que podamos evitar hacer eso: las pruebas son caras, y si evaluamos a todos, la tasa de falsos positivos sería muy alta: probaríamos un montón de personas que no lo hicieron Necesito las pruebas. La evaluación de todos corresponde a un puntaje umbral muy bajo.

Por otro lado, podríamos recomendar pruebas solo a las personas con un riesgo muy alto de tener cáncer: nuestra tasa de falsos positivos sería baja (casi todas las personas que se hacen la prueba necesitarían las pruebas), pero también tendríamos muchas falsas aspectos negativos: enviamos a muchas personas con cáncer a casa sin probar. Esto corresponde a tener un puntaje umbral muy alto.


Entonces, ¿cómo compara los valores de umbral y decide qué umbral es mejor para su herramienta? Dibujas una curva ROC.

Cuando elige un valor de umbral, puede usar su herramienta para clasificar el conjunto de datos de prueba usando ese umbral y calcular la tasa de falsos positivos y la tasa de verdaderos positivos que resulta. Esto le da un punto en la curva ROC.

A medida que mueve el umbral de mayor a menor, la tasa positiva verdadera aumenta (prueba una mayor proporción de aquellos que realmente tienen cáncer) y la tasa de falsos positivos también aumenta (incorrectamente le dice a más personas que se hagan la prueba cuando no lo hacen ‘ No es necesario).

A medida que avanza por los valores de umbral de mayor a menor, coloca puntos en el gráfico anterior de izquierda a derecha; unir los puntos da la curva ROC.

La línea punteada es lo que podría lograr un clasificador aleatorio, por ejemplo, lanzar una moneda por cada paciente, con tantos falsos positivos como verdaderos positivos. Cuanto más arriba a la izquierda esté la curva, mejor puede discriminar la herramienta ML entre las dos clases.

Para decidir qué umbral usar, la curva ROC no es suficiente por sí sola; incluso si la herramienta es la más predictiva en el umbral 0.6, podríamos preferir evaluar a todos con un puntaje de 0.4 y superior, ya que faltan negativos personas con cáncer) son peores que los falsos positivos (evaluar a las personas innecesariamente).

Aquí está la entrada de wiki para obtener más información sobre los bits técnicos.

Característica de funcionamiento del receptor – Wikipedia

La curva ROC es un gráfico que ilustra el rendimiento de cualquier sistema clasificador binario a medida que varía su umbral de discriminación.

¿Qué es el umbral de discriminación? : Cuando tiene un sistema clasificador binario, lo que obtiene como resultado es la probabilidad de que una observación se clasifique como Clase 0 o Clase 1. Una vez, decide el umbral para clasificar las observaciones en las dos clases. Digamos que está clasificando un tumor como canceroso o no canceroso. La probabilidad de que el tumor sea canceroso es de 0,75. Si ha establecido el umbral de su sistema en 0.8, entonces clasifica el tumor como no canceroso. Si ha establecido el umbral en 0.7, clasificaría el tumor como canceroso.


El rendimiento de su sistema varía a medida que cambia este umbral. La curva se crea trazando la tasa positiva verdadera contra la tasa de falsos positivos en varias configuraciones de umbral. Entonces, para trazar la curva ROC, cambiará su umbral a varias configuraciones y trazará el TPR y el FPR.

Tasa positiva verdadera : la cantidad de veces que su sistema pudo clasificar los positivos como positivos.
Tasa positiva verdadera = Positivas clasificadas correctamente / (Clasificadas correctamente como Positivas + Clasificadas falsamente como Negativas)

Tasa de falso positivo : la cantidad de veces que su sistema clasificó un negativo como positivo dividido por el total de casos negativos reales.

Tasa de falsos positivos = Clasificados incorrectamente como positivos / (Clasificados incorrectamente como positivos + correctamente clasificados como negativos)

A medida que varía los umbrales, obtiene una curva. El área debajo de la curva te da una idea de cuán bueno es tu clasificador.

Estos videos me ayudaron a comprender las curvas ROC y el concepto relacionado como Sensibilidad y Especificidad.

(Asegúrese de ver primero el video de arriba, antes de pasar al siguiente)

Trabaje con un ejemplo para que los conceptos sean claros. Introducción al aprendizaje estadístico tiene un ejemplo (bien explicado) en el capítulo 4.

Las otras respuestas aquí son buenas. Quizás la respuesta a esta pregunta podría ser útil. ¿Cuál es la explicación intuitiva de la curva ROC en estadística?