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.
machine-learning
accuracy
aidankmcl
fuente
fuente
Respuestas:
Realmente una gran pregunta, y me parece que la mayoría de la gente realmente no entiende en un nivel intuitivo.
AUC
de 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 queAUC
es. Honestamente, por ser una de las métricas de eficacia más utilizadas, es sorprendentemente obtuso descubrir exactamente cómoAUC
funciona.AUC
representaArea Under the Curve
, ¿qué curva preguntas? Bueno, esa sería laROC
curva.ROC
significa Receptor Operating Characteristic , que en realidad es ligeramente no intuitivo. El objetivo implícito deAUC
es 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
):Ahora, en este gráfico,
TPR
es específicamente la relación de verdadero positivo a todos los positivos, yFPR
es 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:Que se ve básicamente como una línea diagonal (lo es), y por alguna geometría fácil, se puede ver que la
AUC
de dicho modelo sería0.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
1x1
gráfico que contiene suROC
. En la práctica, obtienes algo como esto:Básicamente, lo que realmente obtienes cuando haces una
AUC
precisió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.fuente
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.
fuente
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.
fuente