Lorsque des classes déséquilibrées sont sur / sous-échantillonnées, maximiser la précision diffère-t-il de minimiser les coûts de mauvaise classification?

14

Tout d'abord, je voudrais décrire quelques dispositions courantes que les livres d'exploration de données utilisent pour expliquer comment traiter les ensembles de données non équilibrés . Habituellement, la section principale est intitulée Ensembles de données non équilibrés et couvre ces deux sous-sections: Techniques de classification et d'échantillonnage sensibles aux coûts.

Il semble que face à un problème avec une classe rare , vous pouvez effectuer à la fois une classification et un échantillonnage sensibles aux coûts. Au lieu de cela, je pense que l'on devrait appliquer des techniques sensibles aux coûts si la classe rare est également la cible de la classification et qu'une mauvaise classification d'un enregistrement de cette classe est coûteuse.

D'un autre côté, les techniques d'échantillonnage, comme le suréchantillonnage et le sous-échantillonnage, sont utiles si la cible de la classification est une bonne précision globale, sans se concentrer sur une classe particulière.

Cette croyance vient de la logique de MetaCost qui est un moyen général de rendre un classificateur sensible aux coûts: si l'on veut rendre un classificateur sensible aux coûts afin de pénaliser une erreur de classification erronée de la classe rare, il doit suréchantillonner l'autre classe . En gros, le classificateur essaie de s'adapter à l'autre classe et il devient spécifique à la classe rare.

C'est l'opposé du suréchantillonnage de la classe rare, qui est la manière généralement suggérée de résoudre ce problème. Le suréchantillonnage de la classe rare ou le sous-échantillonnage de l'autre classe est utile pour améliorer la précision globale.

S'il vous plaît, ce serait génial si vous confirmiez mes pensées.

Cela dit, la question commune à laquelle est confronté un ensemble de données déséquilibré est:

Dois-je essayer d'obtenir un ensemble de données qui compte autant d'enregistrements rares que d'autres?

Ma réponse serait, au cas où vous recherchez la précision: OK. Vous pouvez l'exécuter en recherchant des exemples de classe plus rares ou en supprimant certains enregistrements de l'autre classe.

Dans le cas où vous vous concentrez sur la classe rare, avec une technique sensible aux coûts, je répondrais: vous ne pouvez trouver que des exemples de classe plus rares mais vous ne devez pas supprimer les enregistrements de l'autre classe. Dans ce dernier cas, vous ne pourrez pas laisser le classificateur s'adapter à l'autre classe, et l'erreur de classification erronée rare pourrait augmenter.

Que répondriez-vous?

Simone
la source
2
Il peut être impossible de "découvrir" de nouveaux enregistrements pour des classes rares. Je suppose que les données sont structurées de cette façon car il est coûteux (bioinformatique) ou risqué (prêt bancaire) de créer des événements de classe plus rares.
steffen
Bien sûr, mais c'est une solution commune proposée. Cependant, il est vrai que si vous pouvez trouver des exemples de classes plus rares, vous pourrez peut-être aussi trouver d'autres exemples. Parce que l'ensemble d'apprentissage doit être un échantillon représentatif de l'univers d'enregistrement. Donc, il me semble que cela ressemble à un suréchantillonnage.
Simone

Réponses:

9

C'est une bonne question. Personnellement, ma réponse serait qu'il ne serait jamais judicieux de jeter des données (à moins que ce soit pour des raisons de calcul), car plus vous avez de données, mieux votre modèle du monde peut être. Par conséquent, je suggérerais que la modification de la fonction de coût de manière appropriée pour votre tâche devrait être suffisante. Par exemple, si vous êtes intéressé par une classe rare particulière, vous pouvez faire des erreurs de classification de cette classe seulement plus cher; si vous êtes intéressé par une mesure équilibrée, quelque chose comme le taux d'erreur équilibré (la moyenne des erreurs sur chaque classe) ou le coefficient de corrélation de Matthews est approprié; si vous ne vous intéressez qu'à l'erreur de classement globale, la traditionnelle perte 0-1 .

Une approche moderne du problème consiste à utiliser l'apprentissage actif. Par exemple, Hospedales et al (2011) «Finding Rare Classes: Active Learning with Generative and Discriminative Models, IEEE Transactions on Knowledge and Data Engineering, (TKDE 2011) . Cependant, je pense que ces approches sont encore relativement moins matures.

tdc
la source
Mesure intéressante celle des Metthews au cas où l'on aurait besoin d'une mesure équilibrée. Cependant, étant donné que nous ne voulons supprimer aucun enregistrement, avant d'effectuer un échantillonnage ou une modification de la fonction de coût, rééquilibreriez-vous l'ensemble de données en ajoutant des exemples de classes rares? Je pense que la réponse pourrait être NON. Parce que tant que vous découvrez des exemples de classe rares, vous pouvez trouver d'autres exemples. Ainsi, pour obtenir une meilleure mesure équilibrée ou une meilleure mesure de performance de classe rare (par exemple la mesure F), je ne réaliserais une technique (comme l'échantillonnage ou la modification du coût) qu'après la phase de collecte des données. Êtes-vous d'accord?
Simone
D'accord, toute opération comme celle-ci doit être effectuée après la phase de collecte des données.
tdc