Últimamente he estado pensando mucho en el "problema de desequilibrio de clase" en el aprendizaje automático / estadístico, y me estoy adentrando cada vez más en un sentimiento de que simplemente no entiendo lo que está sucediendo.
Primero déjame definir (o intentar) definir mis términos:
El problema del desequilibrio de clase en el aprendizaje automático / estadístico es la observación de que algunos algoritmos de clasificación binaria (*) no funcionan bien cuando la proporción de 0 clases a 1 clases es muy sesgada.
Entonces, en lo anterior, por ejemplo, si hubiera cien clases por cada clase , diría que el desequilibrio de clase es de 1 a 100 , o 1 \% .
La mayoría de las declaraciones sobre el problema que he visto carecen de lo que consideraría una calificación suficiente (qué modelos luchan, qué tan desequilibrado es un problema), y esta es una fuente de mi confusión.
Una encuesta de los textos estándar en aprendizaje automático / estadístico resulta poco:
- Los elementos de inclinación estadística e introducción al aprendizaje estadístico no contienen "desequilibrio de clase" en el índice.
Machine Learning para Predictive Data Analytics tampoco contiene "desequilibrio de clase" en el índice.
De Murphy Machine Learning: Una Perspectiva probabilístico hace contener "desequilibrio de clases * en el índice La referencia es a una sección sobre SVM, donde me encontré con el siguiente comentario tentadora.:
Vale la pena recordar que todas estas dificultades, y la gran cantidad de heurísticas que se han propuesto para solucionarlas, surgen fundamentalmente porque los SVM no modelan la incertidumbre utilizando probabilidades, por lo que sus puntajes de salida no son comparables entre las clases.
Este comentario coincide con mi intuición y experiencia: en mi trabajo anterior, ajustamos rutinariamente regresiones logísticas y modelos de árbol impulsados por gradiente (para minimizar la probabilidad de registro binomial) a datos no balanceados (en el orden de un desequilibrio de clase ), con No hay problemas obvios en el rendimiento.
He leído (en alguna parte) que los modelos basados en árboles de clasificación (los propios árboles y el bosque aleatorio) también sufren el problema del desequilibrio de clase. Esto enturbia un poco las aguas, los árboles, en cierto sentido, devuelven probabilidades: el registro de votación para la clase objetivo en cada nodo terminal del árbol.
Entonces, para terminar, lo que realmente busco es una comprensión conceptual de las fuerzas que conducen al problema del desequilibrio de clase (si existe).
- ¿Es algo que nos hacemos a nosotros mismos con algoritmos mal elegidos y umbrales de clasificación por defecto perezosos?
- ¿Se desvanece si siempre ajustamos los modelos de probabilidad que optimizan los criterios de puntuación adecuados? Dicho de otra manera, ¿es la causa simplemente una mala elección de la función de pérdida, es decir, evaluar el poder predictivo de un modelo basado en reglas de clasificación estrictas y precisión general?
- Si es así, ¿son inútiles los modelos que no optimizan las reglas de puntuación adecuadas (o al menos menos útiles)?
(*) Por clasificación me refiero a cualquier modelo estadístico ajustado a los datos de respuesta binaria. Estoy no asumiendo que mi objetivo es una tarea difícil de una clase u otra, aunque puede ser.
poor choice of loss function
en mi lista. Entonces, ¿crees que esto es cierto incluso para las reglas de puntuación adecuadas como funciones de pérdida?