Curvas ROC y Área bajo la curva (AUC)

En Machine Learning, la medición del rendimiento es una tarea esencial. Entonces, cuando se trata de un problema de clasificación, podemos contar con una curva AUC-ROC. Esta es una de las métricas de evaluación más importante para verificar el rendimiento de cualquier modelo de clasificación.

ROC viene de las características de funcionamiento del receptor y AUC del área bajo la curva.

Para entender mejor lo que se explicará a continuación te recomiendo que revises primero la información de la matriz de confusión.

La curva ROC (característica de funcionamiento del receptor)

La curva ROC nos dice qué tan bueno puede distinguir el modelo entre dos cosas, por ejemplo, si un paciente tiene cáncer o no. Mejores modelos pueden distinguir con precisión entre los dos, mientras que un modelo pobre tendrá dificultades para distinguir entre los dos.

Supongamos que tenemos un modelo que predice si un paciente tiene cáncer o no, el resultado es el siguiente:

ROC 2

La línea en verde representa a todos los pacientes que no tienen cáncer mientras que la línea rojo representa los pacientes que si tienen cáncer.

Ahora debemos elegir un valor en donde establecemos el corte o un valor umbral, por encima del cual predeciremos a todos como positivos, tienen cáncer, y por debajo del cual predeciremos como negativos, NO cáncer. Este umbral lo establecemos en 0.5.

ROC 3

Tomando los conceptos aprendidos en la matriz de confusión, todos los valores positivos por encima del umbral serán “verdaderos positivos” y los valores negativos por encima del umbral será “falsos positivos”, ya que se predicen incorrectamente como positivos.

Todos los valores negativos por debajo del umbral serán “verdaderos negativos” y los valores positivos por debajo del umbral serán “falsos negativos”, ya que se pronostican incorrectamente como negativos.

ROC 4

Aquí, tenemos una idea básica de que el modelo predice valores correctos e incorrectos con respecto al conjunto de umbrales. Antes de continuar, refresquemos dos términos que vimos en un anterior video, como los son sensibilidad y especificidad.

La sensibilidad o recall, es la proporción de pacientes que se identificaron correctamente por tener cáncer, es decir verdadero positivo, sobre el número total de pacientes que realmente tienen la enfermedad.

Por su parte, especificidad es la proporción de pacientes que se identificaron correctamente por no tener cáncer, verdadero positivo, sobre el número total de pacientes que no tienen la enfermedad.

ROC 5

Si volvemos a nuestra gráfica anterior, si disminuimos el valor del umbral, obtenemos más valores positivos, aumentando la sensibilidad, pero disminuyendo la especificidad.

ROC 6

En cambio, si aumentamos el umbral, obtenemos más valores negativos, lo que aumenta la especificidad y disminuye la sensibilidad.

Si graficamos esta relación sería algo como esto:

ROC 7

ROC 8

Pero, no es así como graficamos la curva ROC, para trazar esta curva, en lugar de especificidad usamos “1 – especificidad” y la gráfica se verá algo como esto:

De esta forma si aumentamos la sensibilidad, la “1 – especificidad” también aumentará. A esta curva se le conoce como la curva ROC.

Pero me imagino que te estas preguntando porque utilizamos “1 – especificidad”, si llevamos este termino a la formula tendríamos algo así:

ROC 9

Mientras que la especificidad nos da la tasa negativa verdadera y “1 – especificidad” nos da la tasa positiva falsa.

Por lo que la curva ROC esta definida por la sensibilidad que es la tasa de verdadero positivo y “1 – especificidad” es la tasa de falso positivo.

Área bajo la curva (AUC)

El AUC es el área bajo la curva ROC. Este puntaje nos da una buena idea de qué tan bien funciona el modelo.

Veamos algunos ejemplos de esto:

ROC 10

Esta es una situación ideal. Cuando dos curvas no se superponen en absoluto, el modelo tiene una medida ideal de separación. Es perfectamente capaz de distinguir entre clase positiva y clase negativa.

ROC 11

Cuando dos distribuciones se superponen, introducimos errores. Dependiendo del umbral, podemos minimizarlos o maximizarlos. Cuando AUC es 0.7, significa que hay 70% de probabilidad de que el modelo pueda distinguir entre clase positiva y clase negativa.

ROC 12

Esta es la peor situación. Cuando el AUC es aproximadamente 0.5, el modelo no tiene capacidad de discriminación para distinguir entre clase positiva y clase negativa.

ROC 13

Cuando AUC es aproximadamente 0, el modelo en realidad está correspondiendo las clases. Significa que el modelo predice la clase negativa como una clase positiva y viceversa.

Este método es conveniente por las siguientes razones:

  • Es invariable con respecto a la escala, mide qué tan bien se clasifican las predicciones, en lugar de sus valores absolutos.
  • Es invariable con respecto al umbral de clasificación, mide la calidad de las predicciones del modelo, sin tener en cuenta qué umbral de clasificación se elige.

1 comentario en “Curvas ROC y Área bajo la curva (AUC)”

  1. Pingback: 5 Preguntas para Reclutar a un Data Scientist - Selection

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *