18 votos

¿Área bajo la curva ROC o área bajo la curva PR para datos desequilibrados?

Tengo algunas dudas sobre qué medida de rendimiento utilizar, el área bajo la curva ROC (TPR en función de FPR) o el área bajo la curva precisión-recuperación (precisión en función de la recuperación).

Mis datos están desequilibrados, es decir, el número de casos negativos es mucho mayor que el de casos positivos.

Estoy utilizando la predicción de salida de weka, una muestra es:

inst#,actual,predicted,prediction
1,2:0,2:0,0.873
2,2:0,2:0,0.972
3,2:0,2:0,0.97
4,2:0,2:0,0.97
5,2:0,2:0,0.97
6,2:0,2:0,0.896
7,2:0,2:0,0.973

Y estoy utilizando pROC y ROCR r bibliotecas.

0 votos

Olvidaste mencionar lo que quieres conseguir con cualquiera de estas curvas.

1 votos

Nota: parece que quiere elegir entre curvas ROC (TPR en función de FPR en todo el rango operativo) y curvas PR (precisión frente a recall en todo el rango operativo). Terminología como " AUC-ROC de precisión y recuperación " es muy engañoso, así que lo he editado. Por favor, devuélvalo si lo he entendido mal.

36voto

Marc Claesen Puntos 9818

La pregunta es bastante vaga, así que voy a suponer que quiere elegir una medida de rendimiento adecuada para comparar diferentes modelos. Para obtener una buena visión general de las principales diferencias entre las curvas ROC y PR, puede consultar el siguiente documento: La relación entre precisión-recuperación y curvas ROC por Davis y Goadrich .

Citando a Davis y Goadrich:

Sin embargo, cuando se trata de conjuntos de datos muy sesgados, las curvas de Precisión-Recuperación (PR) ofrecen una imagen más informativa del rendimiento de un algoritmo.

Las curvas ROC representan FPR frente a TPR. Para ser más explícitos: $$FPR = \frac{FP}{FP+TN}, \quad TPR=\frac{TP}{TP+FN}.$$ Las curvas PR trazan la precisión frente a la recuperación (FPR), o más explícitamente: $$recall = \frac{TP}{TP+FN} = TPR,\quad precision = \frac{TP}{TP+FP}$$

La precisión está directamente influenciada por el (im)equilibrio de clases, ya que $FP$ se ve afectado, mientras que el TPR sólo depende de los positivos. Por eso las curvas ROC no captan esos efectos.

Las curvas de precisión-recuerdo son mejores para resaltar las diferencias entre modelos en conjuntos de datos muy desequilibrados. Si desea comparar distintos modelos en entornos desequilibrados, es probable que el área bajo la curva PR muestre mayores diferencias que el área bajo la curva ROC.

Dicho esto, las curvas ROC son mucho más habituales (aunque sean menos adecuadas). Dependiendo de su público, las curvas ROC pueden ser la lingua franca, por lo que utilizarlas es probablemente


Publicidad desvergonzada . Como ejemplo adicional, puede consultar uno de mis trabajos en el que informo de las curvas ROC y PR en un entorno desequilibrado. La Figura 3 contiene curvas ROC y PR para modelos idénticos, mostrando claramente la diferencia entre ambas. Para comparar el área bajo el PR frente al área bajo el ROC, puede comparar las tablas 1-2 (AUPR) y las tablas 3-4 (AUROC), donde puede ver que AUPR muestra mucho mayor diferencias entre modelos individuales que el AUROC. Esto subraya una vez más la idoneidad de las curvas PR.

0 votos

Gracias por la explicación. La pregunta ahora es, ¿por qué las curvas PR son más informativas para datos desequilibrados? Para mí, la ROC debería ser más informativa porque tiene en cuenta tanto la TPR como la FPR.

0 votos

1 votos

@M.A ha editado mi respuesta para aclararla.

6voto

Underminer Puntos 1112

Las curvas ROC representan la TPR en el eje y y la FPR en el eje x, pero depende de lo que se quiera representar. A menos que haya alguna razón para trazarlas de forma diferente en su área de estudio, las curvas ROC TPR/FPR son el estándar para mostrar las compensaciones operativas y creo que serían muy bien recibidas.

La precisión y la recuperación por sí solas pueden inducir a error, ya que no tienen en cuenta los verdaderos negativos.

3voto

David Puntos 82

Considero que la mayor diferencia entre el ROC y el PR AUC es que el ROC determina lo bien que el modelo puede "calcular" la clase positiva Y la clase negativa, mientras que el PR AUC sólo tiene en cuenta la clase positiva. Por lo tanto, en una situación de clases equilibradas y en la que se tienen en cuenta tanto las clases negativas como las positivas, la métrica ROC AUC funciona muy bien. En una situación de desequilibrio, es preferible utilizar el PR AUC, pero tenga en cuenta que sólo determina lo bien que su modelo puede "calcular" la clase positiva.

0voto

user1603548 Puntos 111

¿Qué entiende usted por muy sesgada de los datos o desequilibrio de datos? Tengo una población de 684 total (580 son buenas y 104 son malos), es este tipo de datos altamente sesgada o desequilibrio?

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X