Los problemas de desequilibrio de clase pueden abordarse tanto con aprendizaje sensible al costo como con remuestreo. Vea ventajas y desventajas del aprendizaje sensible al costo frente al muestreo, copiado a continuación:
{1} da una lista de ventajas y desventajas del aprendizaje sensible al costo frente al muestreo:
2.2 Muestreo
El sobremuestreo y el submuestreo se pueden utilizar para alterar la distribución de clases de los datos de entrenamiento y ambos métodos se han utilizado para lidiar con el desequilibrio de clases [1, 2, 3, 6, 10, 11]. La razón por la que alterar la distribución de clases de los datos de entrenamiento ayuda al aprendizaje con conjuntos de datos altamente desequilibrados es que efectivamente impone costos de clasificación errónea no uniformes. Por ejemplo, si uno altera la distribución de clases del conjunto de entrenamiento para que la proporción de ejemplos positivos a negativos pase de 1:1 a 2:1, entonces efectivamente se ha asignado una proporción de costo de clasificación errónea de 2:1. Esta equivalencia entre alterar la distribución de clases de los datos de entrenamiento y alterar la proporción de costo de clasificación errónea es bien conocida y fue descrita formalmente por Elkan [9].
Existen desventajas conocidas asociadas con el uso de muestreo para implementar el aprendizaje sensible al costo. La desventaja del submuestreo es que descarta potencialmente datos útiles. La principal desventaja del sobremuestreo, desde nuestra perspectiva, es que al hacer copias exactas de ejemplos existentes, aumenta la probabilidad de sobreajuste. De hecho, con el sobremuestreo es bastante común que un modelo genere una regla de clasificación para cubrir un ejemplo único replicado. Una segunda desventaja del sobremuestreo es que aumenta el número de ejemplos de entrenamiento, aumentando así el tiempo de aprendizaje.
2.3 ¿Por Qué Usar Muestreo?
Dadas las desventajas del muestreo, vale la pena preguntarse por qué alguien lo usaría en lugar de un algoritmo de aprendizaje sensible al costo para lidiar con datos con una distribución de clases desequilibrada y costos de clasificación errónea no uniformes. Hay varias razones para esto. La razón más obvia es que no existen implementaciones sensibles al costo de todos los algoritmos de aprendizaje y, por lo tanto, un enfoque basado en envoltura utilizando muestreo es la única opción. Aunque esto es ciertamente menos cierto hoy que en el pasado, muchos algoritmos de aprendizaje (por ejemplo, C4.5) aún no manejan directamente los costos en el proceso de aprendizaje.
Una segunda razón para usar muestreo es que muchos conjuntos de datos altamente desequilibrados son enormes y el tamaño del conjunto de entrenamiento debe reducirse para que el aprendizaje sea factible. En este caso, el submuestreo parece ser una estrategia razonable y válida. En este artículo no consideramos la necesidad de reducir el tamaño del conjunto de entrenamiento. Sin embargo, señalaríamos que si se necesita descartar algunos datos de entrenamiento, aún podría ser beneficioso descartar algunos de los ejemplos de la clase mayoritaria para reducir el tamaño del conjunto de entrenamiento al tamaño requerido y luego también emplear un algoritmo de aprendizaje sensible al costo, de modo que la cantidad de datos de entrenamiento descartados se minimice.
Una razón final que puede haber contribuido al uso de muestreo en lugar de un algoritmo de aprendizaje sensible al costo es que los costos de clasificación errónea a menudo son desconocidos. Sin embargo, esta no es una razón válida para usar el muestreo en lugar de un algoritmo de aprendizaje sensible al costo, ya que el problema análogo surge con el muestreo: ¿cuál debería ser la distribución de clases de los datos de entrenamiento finales? Si esta información de costo no se conoce, se podría utilizar una medida como el área bajo la curva ROC para medir el rendimiento del clasificador y ambas enfoques podrían determinar empíricamente la proporción de costo/distribución de clases adecuada.
También realizaron una serie de experimentos, que fue inconclusa:
Según los resultados de todos los conjuntos de datos, no hay un ganador definitivo entre el aprendizaje sensible al costo, el sobremuestreo y el submuestreo
Luego intentan entender qué criterios en los conjuntos de datos podrían indicar qué técnica se adapta mejor.
También señalan que SMOTE puede aportar algunas mejoras:
Existen una variedad de mejoras que las personas han realizado para mejorar la efectividad del muestreo. Algunas de estas mejoras incluyen la introducción de nuevos ejemplos "sintéticos" al sobremuestreo [5 -> SMOTE], eliminar ejemplos de la clase mayoritaria menos útiles al submuestreo [11] y utilizar múltiples submuestras al submuestrear, de modo que cada ejemplo se utilice en al menos una submuestra [3]. Si bien estas técnicas han sido comparadas con el sobremuestreo y el submuestreo, generalmente no se han comparado con algoritmos de aprendizaje sensibles al costo. Sería interesante estudiar esto en el futuro.
{1} Weiss, Gary M., Kate McCarthy, y Bibi Zabar. "Aprendizaje sensible al costo frente al muestreo: ¿cuál es mejor para manejar clases desbalanceadas con costos de error desiguales?." DMIN 7 (2007): 35-41. https://scholar.google.com/scholar?cluster=10779872536070567255&hl=en&as_sdt=0,22 ; https://pdfs.semanticscholar.org/9908/404807bf6b63e05e5345f02bcb23cc739ebd.pdf
4 votos
He encontrado este artículo muy útil sobre el tema: svds.com/learning-imbalanced-classes
0 votos
@J.O'BrienAntognini ¡Ese es un artículo realmente bueno!
0 votos
Alguna discusión útil aquí: stats.stackexchange.com/questions/285231/… y stats.stackexchange.com/questions/283170/…
0 votos
Este post aquí tiene una respuesta muy clara sobre por qué el desequilibrio de clases causa problemas.
0 votos
@StephenG En la actualidad, la publicación a la que has vinculado tiene tres respuestas. ¿A cuál te refieres?
0 votos
@Sycorax la primera respuesta específicamente.