Clasificación / evaluación de métricas para datos altamente desequilibrados

22

Trato con un problema de detección de fraude (similar a la calificación crediticia). Como tal, existe una relación altamente desequilibrada entre las observaciones fraudulentas y no fraudulentas.

http://blog.revolutionanalytics.com/2016/03/com_class_eval_metrics_r.html proporciona una excelente visión general de las diferentes métricas de clasificación. Precision and Recallo kappaambos parecen ser una buena opción:

Una forma de justificar los resultados de tales clasificadores es comparándolos con los de los clasificadores de referencia y demostrando que son mejores que las predicciones de probabilidad aleatoria.

Según tengo entendido, kappapodría ser la mejor opción aquí, ya que se tiene en cuenta la posibilidad aleatoria . Del kappa de Cohen en inglés simple entiendo que se kappatrata del concepto de ganancia de información:

[...] una precisión observada del 80% es mucho menos impresionante con una precisión esperada del 75% frente a una precisión esperada del 50% [...]

Por lo tanto, mis preguntas serían:

  • ¿Es correcto asumir kappaque es una métrica de clasificación más adecuada para este problema?
  • ¿El simple uso kappaevita los efectos negativos del desequilibrio en el algoritmo de clasificación? ¿ Sigue siendo necesario el muestreo basado en costos (rem / up) o basado en costos (ver http://www.icmc.usp.br/~mcmonard/public/laptec2002.pdf )?
Georg Heiler
fuente
el muestreo de arriba / abajo de sus datos es algo que debe hacer cuando los datos de entrenamiento están desequilibrados y, a veces, puede ayudar a evitar que los clasificadores ignoren las clases minoritarias. Es inapropiado (y un poco fraudulento) usar datos muestreados al evaluar su clasificador: informará un rendimiento que su clasificador no tiene cuando se aplica en una muestra distribuida de manera idéntica a sus datos de prueba originales.
user48956
Relacionado: stats.stackexchange.com/questions/284515/…
Anton Tarasenko

Respuestas:

10

Sí, tus suposiciones sobre Kappa parecen correctas. Kappa como métricas escalares individuales es principalmente una ventaja sobre otras métricas escalares únicas como la precisión, que no reflejará el rendimiento de predicción de clases más pequeñas (sombreadas por el rendimiento de una clase mucho más grande). Kappa resuelve este problema con más elegancia, como usted señaló.

El uso de una métrica como Kappa para medir su rendimiento no necesariamente aumentará la forma en que su modelo se ajusta a los datos. Puede medir el rendimiento de cualquier modelo utilizando una serie de métricas, pero la forma en que el modelo se ajusta a los datos se determina mediante otros parámetros (por ejemplo, hiperparámetros). Por lo tanto, puede usar, por ejemplo, Kappa para seleccionar el tipo de modelo más adecuado y la hiperparametrización entre múltiples opciones para su problema muy desequilibrado, pero solo calcular Kappa en sí no cambiará la forma en que su modelo se ajusta a sus datos desequilibrados.

Para diferentes métricas: además de Kappa y precisión / recuperación, también eche un vistazo a las tasas de TPR / TNR verdaderas positivas y verdaderas negativas, y las curvas ROC y el área bajo la curva AUC. Cuáles de ellos son útiles para su problema dependerá principalmente de los detalles de su objetivo. Por ejemplo, la información diferente reflejada en TPR / TNR y precisión / recuperación: es su objetivo de tener una gran cantidad de fraudes realmente detectados como tales, y una gran cantidad de transacciones legítimas detectadas como tales, y / o minimizar la participación de falsas alarmas (que naturalmente obtendrá "en masa" con tales problemas) en todas las alarmas?

Para muestreo ascendente / descendente: creo que no hay una respuesta canónica a "si es necesario". Son más una forma de adaptar su problema. Técnicamente: sí, podría usarlos, pero úselos con cuidado, especialmente en el muestreo ascendente (podría terminar creando muestras poco realistas sin darse cuenta), y tenga en cuenta que cambiar la frecuencia de las muestras de ambas clases a algo no realista "en la naturaleza "también podría tener efectos negativos en el rendimiento de la predicción. Al menos, el conjunto de prueba final extendido debe reflejar la frecuencia real de las muestras nuevamente. En pocas palabras: he visto ambos casos en los que hacer y no hacer un muestreo ascendente o descendente dio como resultado mejores resultados finales, por lo que esto es algo que podría necesitar probar (¡pero no manipule sus conjuntos de prueba!) .

geekoverdose
fuente
Pero, ¿es más adecuado un enfoque basado en los costos como DOI 10.1109 / ICMLA.2014.48 porque se considera el impacto comercial general?
Georg Heiler
15

Además del AUC y el kappa de Kohonen ya discutido en las otras respuestas, también me gustaría agregar algunas métricas que he encontrado útiles para los datos desequilibrados. Ambos están relacionados con la precisión y el recuerdo . Porque al promediar estos obtienes un métrico de pesaje y ambos tipos de errores ( y ):TPAGSFPAGSFnorte

  • Puntuación F1 , que es la media armónica de precisión y recuperación .
  • Medida G , que es la media geométrica de precisión y recuperación . En comparación con F1, lo encontré un poco mejor para los datos desequilibrados.
  • Índice Jaccard , que se puede considerar como el . Esta es en realidad la métrica que mejor me ha funcionado.TPAGS/ /(TPAGS+FPAGS+Fnorte)

Nota: Para conjuntos de datos desequilibrados, es mejor que sus métricas tengan un promedio macro .

Johnson
fuente
1
¿Qué quiere decir con 'mejor' cuando se refiere a la medida G y al índice Jaccard?
Narfanar
8

Para conjuntos de datos desequilibrados, la métrica de precisión promedio a veces es una mejor alternativa al AUROC. El puntaje AP es el área bajo la curva de recuperación de precisión.

Aquí hay una discusión con algo de código (Python)

Aquí hay un artículo .

También vea las curvas de Precisión-Recuperación-Ganancia de Peter Flach , junto con una discusión sobre la deficiencia de las curvas AP.

usuario48956
fuente