Classification multi-classe

Page d’aide sur l’homonymie

Ne doit pas être confondu avec Classification en classes multiples.

Si ce bandeau n'est plus pertinent, retirez-le. Cliquez ici pour en savoir plus.
Si ce bandeau n'est plus pertinent, retirez-le. Cliquez ici pour en savoir plus.

La traduction de cet article ou de cette section doit être revue ().

Le contenu est difficilement compréhensible vu les erreurs de traduction, qui sont peut-être dues à l'utilisation d'un logiciel de traduction automatique.

Discutez des points à améliorer en page de discussion ou modifiez l'article.

En apprentissage automatique, la classification multi-label (ou classification à sorties multiples) est une variante du problème de classification où plusieurs labels non exclusifs peuvent être attribués à chaque instance. La classification multi-label généralise la classification multi-classe, qui consiste à catégoriser les instances dans une seule classe parmi plusieurs (au moins deux). Dans le problème multi-label, les labels ne sont pas exclusifs et il n'y a aucune contrainte sur le nombre de classes auxquelles une instance peut appartenir. La formulation de l'apprentissage multi-label a été introduite pour la première fois par Shen et al. dans le contexte de la Semantic Scene Classification , et s'est ensuite répandue dans divers domaines de l'apprentissage automatique.

La classification multi-label est le problème de trouver un modèle qui mappe les entrées x sur des vecteurs binaires y ; c'est-à-dire qu'il attribue une valeur de 0 ou 1 à chaque élément (label) de y .

Méthodes de transformation des problèmes

Il existe plusieurs méthodes de transformation des problèmes de classification multi-label :

Transformation en problèmes de classification binaire (en)

L'approche de base, appelée méthode de pertinence binaire , consiste à entraîner indépendamment un classificateur binaire pour chaque label. Étant donné un échantillon inconnu, le modèle combiné prédit ensuite toutes les labels de cet échantillon pour lesquels les classificateurs respectifs prédisent un résultat positif. Bien que cette méthode de division de la tâche en plusieurs tâches binaires puisse superficiellement ressembler aux méthodes « un contre tous » (OvA) et « un contre tous » (OvR) pour la classification multi-classe, elle en est fondamentalement différente, car un classificateur unique, dans le cadre de la pertinence binaire, traite une seule label, sans tenir compte des autres. Une chaîne de classificateurs est une méthode alternative pour transformer un problème de classification multi-labels en plusieurs problèmes de classification binaire. Elle diffère de la pertinence binaire en ce que les labels sont prédits séquentiellement et que la sortie de tous les classificateurs précédents (c'est-à-dire positive ou négative pour une label particulier) est utilisée comme caractéristiques pour les classificateurs suivants. Les chaînes de classificateurs ont été appliquées, par exemple, à la prédiction de la résistance aux médicaments contre le VIH,. Le réseau bayésien a également été appliqué pour ordonner de manière optimale les classificateurs dans les chaînes de classificateurs.

Dans le cas d'une transformation du problème en plusieurs classifications binaires, la fonction de vraisemblance s'écrit :

où l'index parcourt les échantillons, index passe sur les labels, indique les résultats binaires 0 ou 1, indique le delta de Kronecker, indique les multiples labels encodées en one-hot de l'échantillon .

Transformation en problème de classification multi-classe

Dans la classification multi-label, une autre approche consiste à transformer le problème en un problème de classification multi-classes en considérant chaque combinaison possible de labels comme une classe distincte. Ainsi, au lieu de prédire séparément la présence ou l’absence de chaque label, le modèle apprend à prédire directement l’ensemble des labels associés à une observation. Par exemple, si trois labels A, B et C sont possibles, chaque observation peut appartenir à l’une des combinaisons [0 0 0], [1 0 0], [0 1 0], [0 0 1], [1 1 0], [1 0 1], [0 1 1] ou [1 1 1], où chaque vecteur indique la présence (1) ou l’absence (0) de chaque label. Cette transformation permet de prendre en compte explicitement les dépendances entre labels, au prix d’une augmentation potentielle du nombre de classes lorsque le nombre de labels est élevé.

Méthodes d'apprentissage ensembliste

Les méthodes d’ensemble consistent à combiner plusieurs classifieurs afin de produire une prédiction multi-label. Dans le cas d’un ensemble de classifieurs multi-classes, chaque modèle prédit une classe pour une observation donnée, et les prédictions sont agrégées, le plus souvent par un mécanisme de vote : un label est retenu s’il reçoit un nombre suffisant de votes, défini par un seuil de discrimination. D’autres approches plus élaborées existent, telles que les committee machines. L’algorithme random k-labelsets (RAKEL) repose quant à lui sur un ensemble de classifieurs de type label powerset, chacun entraîné sur un sous-ensemble aléatoire de labels, les prédictions finales étant obtenues par vote. Il est également possible de combiner directement plusieurs classifieurs multi-label, chacun contribuant par un vote pour chaque label qu’il prédit.

Algorithmes adaptés

Certains algorithmes/modèles de classification ont été adaptés à la tâche multi-labels, sans nécessiter de transformation du problème. Voici quelques exemples, y compris pour les données multi-labels :

Paradigmes d'apprentissage

Selon les paradigmes d'apprentissage, les techniques de classification multi-labels existantes se divisent en deux catégories : l'apprentissage par lots et l'apprentissage automatique en ligne . Les algorithmes d'apprentissage par lots nécessitent la disponibilité préalable de tous les échantillons de données. Ils entraînent le modèle à l'aide de l'ensemble des données d'entraînement, puis prédisent l'échantillon de test en utilisant la relation ainsi établie. Les algorithmes d'apprentissage en ligne, quant à eux, construisent leurs modèles de manière incrémentale par itérations successives. À l'itération t, un algorithme en ligne reçoit un échantillon xt et prédit son ou ses labels ŷ t à l'aide du modèle actuel; l'algorithme reçoit ensuite y t, la ou les labels réels de x t, et met à jour son modèle en fonction de la paire échantillon-étiquette : (x t, yt ).

Classification de flux multi-label

Les flux de données sont des séquences de données potentiellement infinies qui croissent continuellement et rapidement au fil du temps. La classification de flux multi-labels (MLSC) est la version de la tâche de classification multi-labels qui s'effectue au sein de flux de données. Elle est parfois également appelée classification multi-labels en ligne. Les difficultés de la classification multi-labels (nombre exponentiel d'ensembles d'labels possibles, prise en compte des dépendances entre les labels) se combinent aux difficultés propres aux flux de données (contraintes de temps et de mémoire, traitement d'un flux infini avec des ressources finies, dérive conceptuelle ).

De nombreuses méthodes MLSC font appel à des méthodes ensemblistes afin d'améliorer leurs performances prédictives et de gérer les dérives conceptuelles. Voici les méthodes d'ensemble les plus couramment utilisées dans la littérature :

Statistiques et indicateurs d'évaluation

Considérant être un ensemble de label pour un échantillon de données (à ne pas confondre avec un vecteur encodé en « binaire à chaud » (one-hot en anglais); il s'agit simplement d'un ensemble de toutes les labels appartenant à cet échantillon), la mesure dans laquelle un ensemble de données est multi-label peut être capturée par deux statistiques :

Les métriques d'évaluation des performances de la classification multi-labels diffèrent fondamentalement de celles utilisées en classification multi-classe (ou binaire), en raison des différences inhérentes au problème de classification. Si T désigne l'ensemble réel des labels d'un échantillon donné et P l'ensemble des labels prédits, alors les métriques suivantes peuvent être définies sur cet échantillon :

La validation croisée dans un contexte multi-labels est compliquée par le fait que la méthode ordinaire (binaire/multi-classe) d' échantillonnage stratifié ne fonctionne pas ; des méthodes alternatives d'échantillonnage stratifié approximatif ont été suggérées.

Implémentations et ensembles de données

Des implémentations Java d'algorithmes multi-label sont disponibles dans les logiciels Mulan et Meka, tous deux basés sur Weka.

Le package Python scikit-learn implémente certains algorithmes et métriques multi-label .

Le package Python scikit-multilearn est spécifiquement conçu pour la classification multi-labels. Il propose une implémentation multi-labels de plusieurs techniques reconnues, notamment SVM, kNN et bien d'autres . Ce package repose sur l'écosystème scikit-learn .

La méthode de pertinence binaire, les chaînes de classificateurs et d'autres algorithmes multi-labels avec de nombreux apprenants de base différents sont implémentés dans le package R mlr

Une liste des ensembles de données multi-labels couramment utilisés est disponible sur le site Web de Mulan .

Voir aussi

Références

  1. 1 2 (en) Jesse Read, Bernhard Pfahringer, Geoff Holmes et Eibe Frank, « Classifier Chains for Multi-label Classification », Machine Learning Journal, Springer, vol. 85, no 3,‎ (lire en ligne).
  2. ↑ Heider, Senge, Cheng et Hüllermeier, « Multilabel classification for exploiting cross-resistance information in HIV-1 drug resistance prediction », Bioinformatics, vol. 29, no 16,‎ , p. 1946–52 (PMID 23793752, DOI 10.1093/bioinformatics/btt331)
  3. 1 2 3 4 5 6 Riemenschneider, Senge, Neumann et Hüllermeier, « Exploiting HIV-1 protease and reverse transcriptase cross-resistance information for improved drug resistance prediction by means of multi-label classification », BioData Mining, vol. 9,‎ , p. 10 (PMID 26933450, PMCID 4772363, DOI 10.1186/s13040-016-0089-1)
  4. 1 2 3 4 Soufan, Ba-Alawi, Afeef et Essack, « DRABAL: novel method to mine large high-throughput screening assays using Bayesian active learning », Journal of Cheminformatics, vol. 8,‎ , p. 64 (ISSN 1758-2946, PMID 27895719, PMCID 5105261, DOI 10.1186/s13321-016-0177-8)
  5. ↑ Zhang et Zhou, « ML-KNN: A lazy learning approach to multi-label learning », Pattern Recognition, vol. 40, no 7,‎ , p. 2038–2048 (DOI 10.1016/j.patcog.2006.12.019, Bibcode 2007PatRe..40.2038Z, S2CID 14886376, CiteSeerx 10.1.1.538.9597)
  6. ↑ Madjarov, Kocev, Gjorgjevikj et Džeroski, « An extensive experimental comparison of methods for multi-label learning », Pattern Recognition, vol. 45, no 9,‎ , p. 3084–3104 (DOI 10.1016/j.patcog.2012.03.004, Bibcode 2012PatRe..45.3084M, S2CID 14064264)
  7. ↑ Chen, Hsu et Chou, « Constructing a multi-valued and multi-labeled decision tree », Expert Systems with Applications, vol. 25, no 2,‎ , p. 199–209 (DOI 10.1016/S0957-4174(03)00047-2)
  8. ↑ M.L. Zhang et Z.H. Zhou « Multi-label neural networks with applications to functional genomics and text categorization » () (lire en ligne).
    — IEEE Transactions on Knowledge and Data Engineering.
  9. 1 2 Osojnik, Panov et DźEroski, « Multi-label classification via multi-target regression on data streams », Machine Learning, vol. 106, no 6,‎ , p. 745–770 (ISSN 0885-6125, DOI 10.1007/s10994-016-5613-5)
  10. 1 2 3 4 Read, Bifet, Holmes et Pfahringer, « Scalable and efficient multi-label classification for evolving data streams », Machine Learning, vol. 88, nos 1–2,‎ , p. 243–272 (ISSN 0885-6125, DOI 10.1007/s10994-012-5279-6)
  11. 1 2 3 4 5 Alican Büyükçakir, Hamed Bonab et Fazli Can, Proceedings of the 27th ACM International Conference on Information and Knowledge Management, ACM, , 1063–1072 p. (ISBN 9781450360142, DOI 10.1145/3269206.3271774, arXiv 1809.09994, S2CID 52843253), « A Novel Online Stacked Ensemble for Multi-Label Stream Classification »
  12. ↑ Shantanu Godbole et Sunita Sarawagi « Discriminative methods for multi-labeled classification » () (lire en ligne).
    — Advances in Knowledge Discovery and Data Mining.

Pour en savoir plus