¿Por qué AUC es más alto para un clasificador que es menos preciso que para uno que es más preciso?

29

Tengo dos clasificadores

  • A: ingenua red bayesiana
  • B: árbol (conectado individualmente) red bayesiana

En términos de precisión y otras medidas, A funciona comparativamente peor que B. Sin embargo, cuando uso los paquetes R ROCR y AUC para realizar el análisis ROC, resulta que el AUC para A es más alto que el AUC para B. ¿Por qué es esto? ¿sucediendo?

El verdadero positivo (tp), falso positivo (fp), falso negativo (fn), verdadero negativo (tn), sensibilidad (sen), especificidad (especificación), valor predictivo positivo (ppv), valor predictivo negativo (npv) y La precisión (acc) para A y B es la siguiente.

+------+---------+---------+
|      |    A    |    B    |
+------+---------+---------+
| tp   | 3601    | 769     |
| fp   | 0       | 0       |
| fn   | 6569    | 5918    |
| tn   | 15655   | 19138   |
| sens | 0.35408 | 0.11500 |
| spec | 1.00000 | 1.00000 |
| ppv  | 1.00000 | 1.00000 |
| npv  | 0.70442 | 0.76381 |
| acc  | 0.74563 | 0.77084 |
+------+---------+---------+

Con la excepción de sens y lazos (spec y ppv) en los marginales (excluyendo tp, fn, fn y tn), B parece tener un mejor desempeño que A.

Cuando calculo el AUC para sens (eje y) vs 1-spec (eje x)

aucroc <- auc(roc(data$prediction,data$labels));

Aquí está la comparación AUC.

+----------------+---------+---------+
|                |    A    |    B    |
+----------------+---------+---------+
| sens vs 1-spec | 0.77540 | 0.64590 |
| sens vs spec   | 0.70770 | 0.61000 |
+----------------+---------+---------+

Asi que aqui están mis preguntas:

  • ¿Por qué el AUC para A es mejor que B, cuando B "parece" superar a A con respecto a la precisión?
  • Entonces, ¿cómo juzgo / comparo realmente el rendimiento de clasificación de A y B? Quiero decir, ¿uso el valor de AUC? ¿Utilizo el valor acc y, de ser así, por qué?
  • Además, cuando aplico las reglas de puntuación adecuadas a A y B, B supera a A en términos de pérdida logarítmica, pérdida cuadrática y pérdida esférica (p <0.001). ¿Cómo influyen estos en juzgar el desempeño de la clasificación con respecto al AUC?
  • El gráfico ROC para A se ve muy suave (es un arco curvo), pero el gráfico ROC para B parece un conjunto de líneas conectadas. ¿Por qué es esto?

Según lo solicitado, aquí están las parcelas para el modelo A.

modelo A ingenua bayes net

Aquí están las parcelas para el modelo B.

modelo B bayes regular

Estas son las gráficas de histograma de la distribución de las probabilidades para A y B. (los descansos se establecen en 20).

diagrama de histograma

Aquí está el diagrama de dispersión de las probabilidades de B vs A.

gráfico de dispersión

Jane Wayne
fuente
1
Sus tablas no tienen sentido: ¿cómo eligió el punto en el que calcula esos valores de rendimiento?
Calimo
3
Recuerde que AUC mide el rendimiento en todos los umbrales posibles . Sería útil (también para ti) si pudieras mostrar las curvas (idealmente en la misma parcela).
Calimo
@Calimo lo siento, olvidé incluir esa información, pero el umbral utilizado para crear esa matriz de confusión fue del 50%.
Jane Wayne
¿Quieres decir 0,5? Los valores pronosticados de A y B se ven claramente diferentes, y si aún no tiene la pista, definitivamente debe trazar los histogramas uno al lado del otro ...
Calimo
@Calimo, ¿podría aclarar los histogramas de qué lado a lado?
Jane Wayne

Respuestas:

27

Las reglas de puntuación inadecuadas, como la proporción clasificada correctamente, la sensibilidad y la especificidad, no solo son arbitrarias (en la elección del umbral), sino que son incorrectas, es decir, tienen la propiedad de que maximizarlas conduce a un modelo falso, predicciones inexactas y seleccionar las características incorrectas . Es bueno que no estén de acuerdo con la puntuación adecuada (log-verosimilitud; regla de puntuación logarítmica; puntuación de Brier) y las reglas index (una regla de puntuación semi-adecuada - área bajo curva ROC; probabilidad de concordancia; estadística de Wilcoxon; Somers ' coeficiente de correlación de rango); Esto nos da más confianza en las reglas de puntuación adecuadas.D x ycDxy

Frank Harrell
fuente
66
Desearía tener una buena referencia para eso, pero brevemente cualquier medida basada únicamente en rangos como (AUROC) no puede dar suficiente crédito a las predicciones extremas que son "correctas". Brier, y aún más, la regla de puntuación logarítmica (probabilidad de registro) da ese crédito. Esta es también una explicación de por qué comparar dos índices no es competitivo con otros enfoques en términos de poder. ccc
Frank Harrell
1
@alto, 0.5 es extremadamente arbitrario, coincidiendo con una función de utilidad / pérdida / costo más inusual en la que dos tipos de errores son igualmente malos. Esto rara vez es el caso. Pensando probabilísticamente, que es la forma en que creo que funciona la naturaleza, no existe un "error", sino un grado de maldad de una predicción de riesgo. Por ejemplo, predecir una probabilidad de 0.6 y luego observar un evento es peor que predecir una probabilidad de 0.9 y luego observar un evento. Pero ninguna de las predicciones es "incorrecta". Puede usar puntajes de precisión de probabilidad que no requieren umbrales.
Frank Harrell
3
Un modelo ilimitado como el logístico no conduce a un sobreajuste más que cualquier otro enfoque. La transformación logística asegura que las estimaciones de probabilidad se comporten bien. El único inconveniente de una regla de puntuación logarítmica es si predice una probabilidad extremadamente cercana a 0 o 1 y está "equivocado". Es cierto que, en última instancia, se toma una decisión, pero no se sigue en absoluto que el analista deba tomar la decisión utilizando un umbral. La decisión debe ser diferida al tomador de decisiones. El libro Signal and Noise de Nate Silver documenta grandes beneficios del pensamiento probabilístico.
Frank Harrell
1
@FrankHarrell, es frustrante que sigas malinterpretando mi opinión. Nunca abogué por un enfoque de caja negra. Simplemente creo que tu afirmación "x es inútil, solo usa y" es demasiado fuerte.
alto
44
@alto que es perceptivo. Creo que el reconocimiento de patrones en tiempo real no tiene tiempo para las utilidades. Este no es el mundo en el que trabajo. Pero todavía hay casos en tiempo real en los que preferirías que una caja negra te diga "incierto" que forzar una elección entre "que es un tanque que viene hacia ti" vs. "que es un automóvil de pasajeros ".
Frank Harrell
16
  1. ¿Por qué el AUC para A es mejor que B, cuando B "parece" superar a A con respecto a la precisión?

    La precisión se calcula en el valor umbral de 0,5. Mientras que AUC se calcula agregando todas las "precisiones" calculadas para todos los valores umbral posibles. ROC puede verse como un promedio (valor esperado) de esas precisiones cuando se calculan para todos los valores de umbral.

  2. Entonces, ¿cómo juzgo / comparo realmente el rendimiento de clasificación de A y B? Quiero decir, ¿uso el valor de AUC? ¿uso el valor acc? ¿y por qué?

    Depende. Las curvas ROC le dicen algo acerca de qué tan bien su modelo separa las dos clases, sin importar dónde esté el valor umbral. La precisión es una medida que funciona bien generalmente cuando las clases mantienen el mismo equilibrio en el tren y las pruebas, y cuando los puntajes son realmente probabilidades. ROC le da más pistas sobre cómo se comportará el modelo si se viola esta suposición (sin embargo, es solo una idea).

  3. Además, cuando aplico las reglas de puntuación adecuadas a A y B, B supera a A en términos de pérdida de registro, pérdida cuadrática y pérdida esférica (p <0.001). ¿Cómo influyen estos en juzgar el desempeño de la clasificación con respecto al AUC?

    Yo no sé. Tienes que entender mejor de qué se tratan tus datos. Lo que cada modelo es capaz de entender de sus datos. Y luego decida cuál es el mejor compromiso. La razón por la que eso sucede es que no hay una métrica universal sobre el rendimiento de un clasificador.

  4. El gráfico ROC para A se ve muy suave (es un arco curvo), pero el gráfico ROC para B parece un conjunto de líneas conectadas. ¿Por qué es esto?

    Probablemente se deba a que el modelo bayesiano le proporciona transiciones suaves entre esas dos clases. Eso se traduce en muchos valores umbral. Lo que significa muchos puntos en la curva ROC. El segundo modelo probablemente produzca menos valores debido a la predicción con el mismo valor en regiones más grandes del espacio de entrada. Básicamente, también la primera curva ROC está hecha por líneas, la única diferencia es que hay tantas líneas pequeñas adyacentes, que la ves como una curva.

rapaio
fuente
1
La precisión se puede calcular en valores umbral distintos de 0.5.
Calimo
Por supuesto que tienes razón. Es por eso que usé "precisiones" en la proposición siguiente. Sin embargo, cuando se habla de precisión, sin otra información de contexto, la mejor suposición para el valor umbral es 0.5.
rapaio
2
Es fácil ver cuán arbitrario es ese proceso. Pocos estimadores en estadísticas que requieren binning u opciones arbitrarias han sobrevivido sin grandes críticas. Y nunca llamaría a la proporción clasificada correcta como "precisión".
Frank Harrell
@unreasonablelearner tiene razón en su suposición ... la matriz de confusión anterior se calculó en el umbral 0.5. ¿Hay alguna ventaja para un umbral diferente?
Jane Wayne
1
@JaneWayne La fórmula es de hecho para la proporción de clasificados correctos. La precisión es el término más utilizado para esto. Sin embargo, la precisión significa mucho más, y a la luz de lo que dijo Frank Harrell, creo que ahora esa precisión no es el mejor término para eso. Ahora creo que su uso podría dañar, incluso si es popular. Así es como me equivoqué.
rapaio
4

¿Por qué el AUC para A es mejor que B, cuando B "parece" superar a A con respecto a la precisión?

Primero, aunque el punto de corte (0.5) es el mismo, no es comparable en absoluto entre A y B. De hecho, ¡se ve muy diferente de sus histogramas! Mire B: todas sus predicciones son <0.5.

Segundo, ¿por qué B es tan preciso? Debido al desequilibrio de clase. En la prueba B, tiene 19138 ejemplos negativos y 6687 positivos (por qué los números son diferentes en A no está claro para mí: ¿valores perdidos tal vez?). Esto significa que simplemente diciendo que todo es negativo, ya puedo lograr una precisión bastante buena: precisamente 19138 / (19138 + 6687) = 74%. Tenga en cuenta que esto no requiere absolutamente ningún conocimiento más allá del hecho de que hay un desequilibrio entre las clases: ¡incluso el modelo más tonto puede hacerlo!

Y esto es exactamente lo que hace la prueba B en el umbral de 0.5 ... obtienes (casi) solo predicciones negativas.

A es más una bolsa mixta con. Aunque tiene una precisión ligeramente menor, tenga en cuenta que su sensibilidad es mucho mayor en este punto de corte ...

Finalmente, no puede comparar la precisión (un rendimiento en un umbral) con el AUC (un rendimiento promedio en todos los umbrales posibles). Como estas métricas miden cosas diferentes, no es sorprendente que sean diferentes.

Entonces, ¿cómo juzgo / comparo realmente el rendimiento de clasificación de A y B? Quiero decir, ¿uso el valor de AUC? ¿uso el valor acc? ¿y por qué?

Además, cuando aplico las reglas de puntuación adecuadas a A y B, B supera a A en términos de pérdida logarítmica, pérdida cuadrática y pérdida esférica (p <0.001). ¿Cómo influyen estos en juzgar el desempeño de la clasificación con respecto al AUC?

Tienes que pensar: ¿qué es lo que realmente quieres hacer? ¿Lo que es importante? En última instancia, solo usted puede responder esta pregunta basándose en su conocimiento de la pregunta. Quizás AUC tiene sentido (rara vez lo hace realmente cuando lo piensas realmente, excepto cuando no quieres tomar una decisión por ti mismo pero dejas que otros lo hagan, lo más probable es que estés haciendo una herramienta para que otros lo usen), tal vez la precisión (si necesita una respuesta binaria, ir-no ir), pero tal vez en umbrales diferentes, tal vez algunas otras medidas más continuas, tal vez una de las medidas sugeridas por Frank Harrell ... como ya se dijo, no hay una pregunta universal aquí.

El gráfico ROC para A se ve muy suave (es un arco curvo), pero el gráfico ROC para B parece un conjunto de líneas conectadas. ¿Por qué es esto?

Volvamos a las predicciones que mostraste en los histogramas. A le da una predicción continua o casi continua. Por el contrario, B devuelve principalmente solo unos pocos valores diferentes (como puede ver en el histograma "puntiagudo").

En una curva ROC, cada punto corresponde a un umbral. En A, tiene muchos umbrales (porque las predicciones son continuas), por lo que la curva es suave. En B, solo tiene unos pocos umbrales, por lo que la curva parece "saltos" de un SN / SP a otro.

Usted ve saltos verticales cuando la sensibilidad solo cambia (el umbral hace diferencias solo para casos positivos), saltos horizontales cuando solo cambia la especificidad (el umbral hace diferencias solo para ejemplos negativos) y saltos diagonales cuando el cambio de umbral afecta a ambas clases.

Calimo
fuente
+1, sin embargo, no es el caso de que el AUC sea solo para "cuando no quieres tomar una decisión por ti mismo, sino dejar que otros lo hagan". Consulte: Cómo calcular el área bajo la curva (AUC), o la estadística c, a mano .
gung - Restablece a Monica