Evaluación de modelos de clasificación: Matriz de Confusión y Curva ROC

Publicado por Eric Melillanca... el Jue, 09/08/2018 - 00:21

Una Curva ROC (abreviación de Receiver Operating Characteristic, o Característica Operativa del Receptor) es una representación gráfica de la relación entre la Tasa de Verdedaros Positivos y la tasa de Falsos Positivos.

Para explicar más específicamente a qué valores me refiero con estos conceptos, iré paso a paso. 

Matriz de Confusión

Luego de probar los Modelos de Clasificación, obtenemos la Matriz de Confusión, que sigue con la siguiente estructura:

  Valor real
Valor predicho   Positivos Negativos
Positivos Verdaderos Positivos (VP) Falsos Positivos (FP)
Negativos Falsos Negativos (FN) Verdaderos Negativos (VN)

Los datos que representa la matriz se describen a continuación:

  • Verdaderos positivos: Corresponden a los valores predichos como Positivos por el modelo (clase 1) de clasificación y que efectivamente corresponden a un valor Positivo, para los datos de prueba.
  • Verdaderos negativos: Son los valores predichos como Negativos por el modelo (clase 0) y que corresponden a un valor Negativo en el conjunto de datos.
  • Falsos negativos: Corresponden a valores predichos por el modelo como Negativos de forma incorrecta, ya que en el conjunto de datos corresponden a un valor Positivo.
  • Falsos positivos: Son los valores predichos como Positivos por el modelo, pero que en los datos de prueba corresponden a valores Negativos.

Curva ROC

A partir de los valores expresados en la Matriz de Confusión, es posible contar con una serie de medidas útiles en nuestro análisis. 

  • Precisión = (VP + VN) / (VP + FP + FN + VN)
  • Sensibilidad = VP / (VP + FN)
  • Especificidad = VN / (VN + FP)

En términos estadísticos, teniendo un estimador de una variable que cuenta con un parámetro ajustable se pueden especificar sus curvas de Sensibilidad y Especificidad o Curvas ROC. En la Curva ROC se representa la sensibilidad del modelo frente al valor obtenido de restar la especificidad a la unidad (1-especificidad).

Se definen dos conceptos: Tasa de Verdaderos Positivos y Tasa de Falsos Positivos.

  • Tasa de Verdaderos Positivos (TVP) = Sensibilidad = VP / (VP + FN)
  • Tasa de Falsos Positivos (TFP) = FP / (FP + VN)
    • Como se señaló anteriormente, la sensibilidad se evalúa frente al restar a una unidad la especificidad, por lo que también aplica TFP = 1 - Sensibilidad = 1 - VP / (VP + FN)

Curva ROC, Imagen obtenida desde Wikipedia

En la imagen, aparecen cuatro puntos que corresponden a distintos modelos. Para comprender el espacio en la Curva ROC se analizará cada uno de ellos.

  • A
    • TVP = 0,63
    • TFP = 0,28
    • Precisión = 0,68
  • B
    • TVP = 0,77
    • TFP = 0,77
    • Precisión = 0,50
  • C
    • TVP = 0,24
    • TFP = 0,88
    • Precisión = 0,18
  • C'
    • TVP = 0,76
    • TFP = 0,12
    • Precisión = 0,82

La curva que cruza el gráfico corresponde a una línea de estimación aleatoria (diagonal), al no utilizar un modelo y clasificar al azar tenemos 50% de acertar (clasificación binaria).

La posición (1,0) aparece en el gráfico como Clasificación Perfecta, esto se debe a que en ese punto existe una máxima sensibilidad o dicho de otra forma una Tasa de Verdaderos Positivos de 100% versus una Tasa de Falsos Positivos de 0% ( lo que también es una Especificidad de 100%, ya que TVP = 1 - Especificidad). Esto quiere decir que en ese punto tenemos un modelo perfecto, mientras más se acerque nuestro modelo a ese punto, tiene un mejor desempeño.

El resultado de B se encuentra sobre la línea de estimación aleatoria; su precisión es de  50%. El modelo C aparece como el peor de los tres, con un resultado muy bajo.

El modelo A tiene un desempeño superior al aleatorio pero no es un modelo que podríamos considerar admirable.

El modelo indicado en C' es el de mejor desempeño, es cosa de observar sus indicadores además de su posición en el gráfico.

Costos de Clasificación: Tipos de Errores I y II

A partir de la información entregada por la Matriz de Confusión, se definen los errores de Tipo I y II

  Valor real
Valor predicho   Positivos Negativos
Positivos Verdaderos Positivos Error Tipo I
Negativos Error Tipo II Verdaderos Negativos

Todo modelo predictivo debe contar con una tasa de error, se espera que sea así, de otra forma lo más probable es que se haya producido un sobreajuste. 

Un factor importante a la hora de evaluar un modelo y compararlo con otros, reside en qué tipo de error es más tolerable; esto dependerá en gran medida del contexto para el que estemos generando un modelo predictivo. De ahí la importancia de la "visión de negocio" que deba tener el Analista de Datos. Para explicarlo, dos ejemplos:

  1. Si se busca predecir, a partir de un conjunto de datos demográficos, si una campaña de venta a partir de llamadas telefónicas concretará o no una venta de un producto, es preferible que el modelo tenga más Errores de Tipo I que de Tipo II. Ya que esto implica que es preferible equivocarse al llamar a una persona que no comprará el producto, que equivocarse al perder una venta por no haber llamado a una persona que sí lo compraría, pero el modelo la clasificó en sentido contrario.
  2. Si se busca generar un modelo que permita predecir si una persona es apta o no para recibir un medicamento de prueba, considerando que dependiendo de sus propias condiciones podría ser muy beneficioso, pero en caso de error puede traer efectos secundarios, es preferible que el modelo tenga más Errores de Tipo II que de Tipo I. Ya que es preferente equivocarse en que una persona que no cuenta con condiciones de riesgo, no reciba el nuevo medicamento, antes que equivocarse al clasificar como apta a una persona en que sí se pueden generar efectos secundarios al proporcionar el medicamento en prueba.

El Costo de Clasificación está dado por:

  • Costo = TFN * Error Tipo I + TFP * Error Tipo II

Si consideramos que:

  • TFN = 1 - TVP

Entonces, reemplazando algebraicamente

  • Costo = (1 - TVP) * Error Tipo I + TFP * Error Tipo II

Así se logra obtener la Ecuación de Costos en términos de las tasa utilizadas por la Curva ROC:

  • TVP = (Error Tipo II / Error Tipo I) * TFP + 1

Mediante la Recta de Costos y la Curva ROC es posible encontrar el valor óptimo de costos para cada error de clasificación.

Curva ROC y Umbral Óptimo

Los valores de TVP y TFP se calcula para cada nivel de umbral (desde 0 a 1, como en los ejes del gráfico)m y son esos valores los que forman la Curva ROC.

 

Temas destacados

análisisDeDatos apellido argentina chile clasificación Data Science Diario Concepción emprendimiento En la prensa estadística Estilo de vida identidad innovación instalación investigación machineLearning MacOSX Mapuche mapudungun mineríaDeDatos opinión regresiones rubyOnRails Tips en el computador