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 Recall
o kappa
ambos 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, kappa
podrí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 kappa
trata 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
kappa
que es una métrica de clasificación más adecuada para este problema? - ¿El simple uso
kappa
evita 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 )?
Respuestas:
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!) .
fuente
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 ):TPAGS FPAGS Fnorte
Nota: Para conjuntos de datos desequilibrados, es mejor que sus métricas tengan un promedio macro .
fuente
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.
fuente