Ventajas de AUC vs precisión estándar

64

Estaba empezando a mirar el área bajo la curva (AUC) y estoy un poco confundido acerca de su utilidad. Cuando me lo explicaron por primera vez, el AUC parecía ser una gran medida de rendimiento, pero en mi investigación descubrí que algunos afirman que su ventaja es mayormente marginal, ya que es mejor para capturar modelos 'afortunados' con mediciones de alta precisión estándar y bajo AUC .

Entonces, ¿debería evitar depender de AUC para validar modelos o sería mejor una combinación? Gracias por toda tu ayuda.

aidankmcl
fuente
55
Considere un problema altamente desequilibrado. Ahí es donde ROC AUC es muy popular, porque la curva equilibra los tamaños de las clases. Es fácil lograr una precisión del 99% en un conjunto de datos donde el 99% de los objetos están en la misma clase.
Anony-Mousse
3
"El objetivo implícito de AUC es lidiar con situaciones en las que tiene una distribución de muestra muy sesgada y no desea sobreajustar a una sola clase". Pensé que estas situaciones eran donde AUC funcionaba mal y se usaban gráficos / áreas de recuperación de precisión debajo de ellos.
JenSCDC
@JenSCDC, según mi experiencia en estas situaciones, AUC se desempeña bien y, como lo describe Indico a continuación, es de la curva ROC de donde obtiene esa área. El gráfico PR también es útil (tenga en cuenta que Recall es el mismo que TPR, uno de los ejes en ROC) pero la precisión no es exactamente igual a FPR, por lo que el gráfico PR está relacionado con ROC pero no es el mismo. Fuentes: stats.stackexchange.com/questions/132777/… y stats.stackexchange.com/questions/7207/…
alexey

Respuestas:

60

Realmente una gran pregunta, y me parece que la mayoría de la gente realmente no entiende en un nivel intuitivo. AUCde hecho, a menudo se prefiere a la precisión para la clasificación binaria por varias razones diferentes. Primero, sin embargo, hablemos exactamente de lo que AUCes. Honestamente, por ser una de las métricas de eficacia más utilizadas, es sorprendentemente obtuso descubrir exactamente cómo AUCfunciona.

AUCrepresenta Area Under the Curve, ¿qué curva preguntas? Bueno, esa sería la ROCcurva. ROCsignifica Receptor Operating Characteristic , que en realidad es ligeramente no intuitivo. El objetivo implícito de AUCes lidiar con situaciones en las que tiene una distribución de muestra muy sesgada y no desea ajustarse a una sola clase.

Un gran ejemplo es la detección de spam. En general, los conjuntos de datos de spam tienen un fuerte sesgo hacia Ham o no spam. Si su conjunto de datos es del 90% de jamón, puede obtener una precisión bastante buena simplemente diciendo que cada correo electrónico es jamón, lo que obviamente es algo que indica un clasificador no ideal. Comencemos con un par de métricas que son un poco más útiles para nosotros, específicamente la tasa positiva verdadera ( TPR) y la tasa positiva falsa ( FPR):

Ejes ROC

Ahora, en este gráfico, TPRes específicamente la relación de verdadero positivo a todos los positivos, y FPRes la relación de falsos positivos a todos los negativos. (Tenga en cuenta que esto es solo para la clasificación binaria). En un gráfico como este, debería ser bastante sencillo darse cuenta de que una predicción de todos los 0 o todos los 1 dará como resultado los puntos de (0,0)y (1,1)respectivamente. Si dibujas una línea a través de estas líneas obtienes algo como esto:

Como un triangulo

Que se ve básicamente como una línea diagonal (lo es), y por alguna geometría fácil, se puede ver que la AUCde dicho modelo sería 0.5(altura y base son ambos 1). Del mismo modo, si predice un surtido aleatorio de 0 y 1, digamos 90% 1, podría obtener el punto (0.9, 0.9), que nuevamente cae a lo largo de esa línea diagonal.

Ahora viene la parte interesante. ¿Qué pasaría si no solo estuviéramos prediciendo 0 y 1? ¿Qué pasaría si, en cambio, quisiéramos decir que, en teoría, íbamos a establecer un límite, por encima del cual cada resultado era un 1, y por debajo del cual cada resultado era un 0. Esto significaría que en los extremos obtendría la situación original donde tienen todos los 0 y todos los 1 (con un límite de 0 y 1 respectivamente), pero también una serie de estados intermedios que se encuentran dentro del 1x1gráfico que contiene su ROC. En la práctica, obtienes algo como esto: Cortesía de Wikipedia.

Básicamente, lo que realmente obtienes cuando haces una AUCprecisión excesiva es algo que desalentará a las personas a buscar modelos que sean representativos, pero no discriminatorios, ya que esto solo seleccionará en realidad modelos que logren tasas positivas falsas y verdaderas positivas. están significativamente por encima del azar, lo que no garantiza la precisión.

indico
fuente
¿Podría agregar cómo AUC se compara con un puntaje de F1?
Dan
77
@ Dan: la mayor diferencia es que no tiene que establecer un umbral de decisión con AUC (esencialmente mide la probabilidad de que el correo no deseado se clasifique por encima del correo no deseado). La puntuación F1 requiere un umbral de decisión. Por supuesto, siempre puede establecer el umbral de decisión como un parámetro operativo y trazar puntuaciones F1.
DSea
17

AUC y precisión son cosas bastante diferentes. AUC se aplica a clasificadores binarios que tienen alguna noción de un umbral de decisión internamente. Por ejemplo, la regresión logística devuelve positivo / negativo dependiendo de si la función logística es mayor / menor que un umbral, generalmente 0.5 por defecto. Cuando elige su umbral, tiene un clasificador. Tienes que elegir uno.

Para una elección determinada de umbral, puede calcular la precisión, que es la proporción de verdaderos positivos y negativos en todo el conjunto de datos.

AUC mide cómo la tasa positiva verdadera (recuperación) y la tasa de falsos positivos se compensan, por lo que en ese sentido ya está midiendo algo más. Más importante aún, el AUC no es una función del umbral. Es una evaluación del clasificador ya que el umbral varía sobre todos los valores posibles. Es, en cierto sentido, una métrica más amplia, que prueba la calidad del valor interno que genera el clasificador y luego se compara con un umbral. No está probando la calidad de una elección particular de umbral.

AUC tiene una interpretación diferente, y es que también es la probabilidad de que un ejemplo positivo elegido al azar se clasifique por encima de un ejemplo negativo elegido al azar, de acuerdo con el valor interno del clasificador para los ejemplos.

AUC es computable incluso si tiene un algoritmo que solo produce una clasificación en los ejemplos. AUC no es computable si realmente solo tiene un clasificador de caja negra, y no uno con un umbral interno. Por lo general, determinarían cuál de los dos está disponible para un problema en cuestión.

AUC es, creo, una medida más integral, aunque aplicable en menos situaciones. No es estrictamente mejor que la precisión; es diferente. Depende en parte de si le importan más los verdaderos positivos, los falsos negativos, etc.

La medida F se parece más a la precisión en el sentido de que es una función de un clasificador y su configuración de umbral. Pero mide la precisión frente al recuerdo (tasa positiva verdadera), que no es lo mismo que cualquiera de los anteriores.

Sean Owen
fuente
Por lo tanto, si quiero predecir un resultado binario para un conjunto de observaciones para los que los tamaños de grupo son iguales (es decir, un estudio de casos y controles), ¿gano algo al usar AUC sobre la precisión? ¿O es el uso típico de AUC en tales estudios solo por convenio?
Joe
AUC mide qué tan bien el clasificador clasifica las instancias positivas por encima de las negativas, mientras que la precisión mide los positivos verdaderos frente a los falsos para un umbral de decisión dado. Supongo que depende de qué coincide con lo que desea evaluar. AUC es posiblemente una medida más completa del clasificador independiente de la elección del umbral, pero, cualquier uso real del clasificador dependerá de elegir un umbral para clasificar
Sean Owen
4

Me gustaría referirme a cómo debe elegir una medida de rendimiento. Antes de eso me referiré a la cuestión específica de precisión y AUC.

Como se respondió anteriormente, en un conjunto de datos desequilibrado que utiliza la mayoría de la ejecución como clasificador dará lugar a una alta precisión, lo que lo convertirá en una medida engañosa. AUC agregado sobre el umbral de confianza, para bien y para mal. Para bien, obtienes un resultado de peso para todos los niveles de confianza. Lo malo es que generalmente solo te importa el nivel de confianza que realmente usarás y el resto es irrelevante.

Sin embargo, quiero comentar sobre la elección de una medida de rendimiento adecuada para un modelo. Debes comparar un modelo por su objetivo. El objetivo de un modelo no es una cuestión de aprendizaje automático o estadística, sino una cuestión del dominio del negocio y sus necesidades.

Si está buscando oro (un escenario en el que tiene un gran beneficio de un verdadero positivo, no un costo demasiado alto de un falso positivo), entonces el retiro es una buena medida.

Si está tratando de decidir si realizar un procedimiento médico complejo en personas (alto costo de falsos positivos, con suerte un bajo costo de falsos negativos), la precisión es la medida que debe usar.

Hay muchas medidas que puede usar. También puedes combinarlos de varias maneras.

Sin embargo, no existe una "mejor" medida universal. Existe el mejor modelo para sus necesidades, el que al maximizarlo maximizará su beneficio.

DaL
fuente