El clasificador "bueno" destruyó mi curva Precision-Recall. ¿Que pasó?

11

Estoy trabajando con datos desequilibrados, donde hay alrededor de 40 casos de clase = 0 para cada clase = 1. Puedo discriminar razonablemente entre las clases usando características individuales, y entrenar a un ingenuo clasificador Bayes y SVM en 6 características y datos balanceados arrojaron una mejor discriminación (curvas ROC a continuación).

ingrese la descripción de la imagen aquí

Eso está bien, y pensé que me estaba yendo bien. Sin embargo, la convención para este problema particular es predecir los golpes a un nivel de precisión, generalmente entre 50% y 90%. por ejemplo, "Detectamos algunos golpes con una precisión del 90%". Cuando probé esto, la precisión máxima que pude obtener de los clasificadores fue de aproximadamente el 25% (línea negra, curva PR a continuación).

Podría entender esto como un problema de desequilibrio de clase, ya que las curvas PR son sensibles al desequilibrio y las curvas ROC no lo son. Sin embargo, el desequilibrio no parece afectar las características individuales: puedo obtener una precisión bastante alta usando las características individuales (azul y cian).

ingrese la descripción de la imagen aquí

No entiendo lo que está pasando. Podría entenderlo si todo funcionara mal en el espacio de relaciones públicas, ya que, después de todo, los datos están muy desequilibrados. También podría entenderlo si los clasificadores se veían mal en ROC y en el espacio de relaciones públicas, tal vez solo sean malos clasificadores. Pero, ¿qué está sucediendo para mejorar los clasificadores según lo juzgado por ROC, pero peor según lo juzgado por Precision-Recall ?

Editar : Noté que en las áreas bajas de TPR / recuperación (TPR entre 0 y 0.35), las características individuales superan constantemente a los clasificadores en las curvas ROC y PR. Quizás mi confusión se deba a que la curva ROC "enfatiza" las áreas de alto TPR (donde los clasificadores funcionan bien) y la curva PR enfatiza el bajo TPR (donde los clasificadores son peores).

Edición 2 : El entrenamiento en datos no balanceados, es decir, con el mismo desequilibrio que los datos sin procesar, devolvió la vida a la curva PR (ver más abajo). Supongo que mi problema era entrenar incorrectamente a los clasificadores, pero no entiendo totalmente lo que sucedió. ingrese la descripción de la imagen aquí

R Greg Stacey
fuente

Respuestas:

7

Descubrí que no hay un beneficio increíble en el uso de muestreo descendente / muestreo ascendente cuando las clases tienen un desequilibrio moderado (es decir, no peor que 100: 1) junto con una métrica invariante de umbral (como AUC). El muestreo tiene el mayor impacto para métricas como el puntaje F1 y la precisión, porque el muestreo mueve artificialmente el umbral para estar más cerca de lo que podría considerarse como la ubicación "óptima" en una curva ROC. Puede ver un ejemplo de esto en la documentación de caret .

No estaría de acuerdo con @Chris en que tener un buen AUC es mejor que la precisión, ya que se relaciona totalmente con el contexto del problema. Además, tener un buen AUC no necesariamente se traduce en una buena curva de Precision-Recall cuando las clases están desequilibradas. Si un modelo muestra un buen AUC, pero aún tiene una recuperación temprana deficiente, la curva Precision-Recall dejará mucho que desear. Puede ver un gran ejemplo de esto sucediendo en esta respuesta a una pregunta similar. Por esta razón, Saito et al. recomienda usar el área bajo la curva de Precisión-recuperación en lugar de AUC cuando tenga clases desequilibradas.

dmartin
fuente
No pretendía dar a entender que un buen AUC siempre es mejor que una buena curva de relaciones públicas.
Chris
1
Tenga en cuenta también que siempre puede voltear las etiquetas positivas y negativas antes de ajustar el modelo y maximizar AUC-PR. El popular ejemplo de recuperación de documentos exhibe el hecho de que a las personas generalmente les gusta el AUC-PR porque puede usarse para minimizar los falsos golpes; claramente se molestan más por documentos no relacionados que se ven obligados a mirar que por documentos relevantes que se pierden. Estudio guerras ... así que, para decirlo a la ligera, me molestan mucho más los golpes perdidos que las falsas alarmas. Pero eso significa que solo uso AUC-PR con la paz como algo positivo. Solo usaría ROC si no tuviera preferencia con respecto al tipo de error.
ACS
1

La mejor manera de evaluar un modelo es observar cómo se usará en el mundo real y desarrollar una función de costo.

Por otro lado, por ejemplo, hay demasiado énfasis en r al cuadrado, pero muchos creen que es una estadística inútil. Así que no te obsesiones con ninguna estadística.

Sospecho que su respuesta es un ejemplo de la paradoja de la precisión.

https://en.m.wikipedia.org/wiki/Accuracy_paradox

La recuperación (también conocida como sensibilidad, también conocida como tasa positiva verdadera) es la fracción de instancias relevantes que se recuperan.

tpr = tp / (tp + fn)

La precisión (también conocido como valor predictivo positivo) es la fracción de instancias recuperadas que son relevantes.

ppv = tp / (tp + fp)

Digamos que tiene un conjunto muy desequilibrado de 99 positivos y uno negativo.

Digamos que un modelo está entrenado en el que el modelo dice que todo es positivo.

tp = 99 fp = 1 ppv se convierte en 0.99

Claramente un modelo basura a pesar del "buen" valor predictivo positivo.

Recomiendo construir un conjunto de entrenamiento que sea más equilibrado, ya sea mediante sobremuestreo o submuestreo. Después de construir el modelo, utilice un conjunto de validación que mantenga el desequilibrio original y cree un gráfico de rendimiento sobre eso.

Chris
fuente
Muchas gracias. No lo mencioné, pero estoy entrenando en datos balanceados (hecho con re-muestreo) y evaluando los datos desequilibrados. Re: paradoja de precisión, ¿quiere decir que el clasificador podría estar eligiendo la clase dominante? ¿Eso no llevaría a una curva ROC de aspecto aleatorio? El clasificador "bueno" en su ejemplo tiene una buena precisión y un ROC malo; el clasificador "bueno" en mi caso tiene lo contrario, una Precisión mala pero un buen ROC.
R Greg Stacey
Omitir datos valiosos no es la solución correcta. Esta es una manera derrochadora de lidiar con un problema que proviene del uso de reglas de puntaje de precisión inadecuadas. Además, la estrategia propuesta presentada en la pregunta original está en desacuerdo con la toma de decisiones óptima.
Frank Harrell
¿Dónde dice que está omitiendo datos valiosos?
Chris
@ Frank Gracias por el comentario. ¿Qué quiere decir con "usar reglas de puntaje de precisión incorrectas"? Además, ¿qué "estrategia propuesta está en desacuerdo con la toma de decisiones óptima"? ¿Te refieres a definir golpes en un nivel de precisión dado o algo más?
R Greg Stacey
1
No es suficiente evaluar un modelo dentro del caso de negocios. El caso de negocios debe resolverse de manera óptima construyendo un modelo óptimo y aplicando una función de utilidad además de eso para tomar decisiones, no construyendo ningún umbral en el análisis. Los puntajes de precisión discontinuos y otros puntajes de precisión inadecuados le permiten a uno afirmar que un modelo falso (incorrecto) es superior, y lo lleva a seleccionar las características incorrectas y otros daños cuando se usa el puntaje de precisión incorrecto para construir el modelo. El hecho de que @Qroid descarte datos es una gran evidencia de que la evaluación de precisión es defectuosa.
Frank Harrell
1

Podría entender esto como un problema de desequilibrio de clase, ya que las curvas PR son sensibles al desequilibrio y las curvas ROC no lo son. Sin embargo, el desequilibrio no parece afectar las características individuales: puedo obtener una precisión bastante alta usando las características individuales (azul y cian).

Permítanme señalar que esto es al revés: ROC es sensible al desequilibrio de clase, mientras que PR es más robusto cuando se trata de distribuciones de clase asimétricas. Ver https://www.biostat.wisc.edu/~page/rocpr.pdf .

También muestran que "los algoritmos que optimizan el área bajo la curva ROC no están garantizados para optimizar el área bajo la curva PR".

Milad Shahidi
fuente