Les modèles de classification sont un type de modélisation prédictive qui organise les données en classes prédéfinies en fonction des valeurs des caractéristiques.
Les modèles de classification sont un type de modèle de machine learning qui divise les points de données en groupes prédéfinis appelés classes. Les classificateurs sont un type de modélisation prédictive qui apprend les caractéristiques des classes à partir des données d’entrée et s’entraîne à attribuer les classes possibles aux nouvelles données en fonction des caractéristiques apprises.1 Les algorithmes de classification sont largement utilisés en science des données pour prévoir les schémas et prédire les résultats. En effet, ils sont entraînés sur un éventail de cas d’utilisation concrets, tels que la classification des patients en fonction des risques potentiels pour leur santé et le filtrage antispam des e-mails.
Les tâches de classification peuvent être binaires ou multiclasses. Dans les problèmes de classification binaire, le modèle fait des prédictions entre deux classes. Par exemple, un filtre antispam classe les e-mails comme spam ou non-spam. Dans les problèmes de classification multiclasse, les données sont catégorisées dans plus de deux classes étiquetées. Par exemple, un classificateur d’images peut classer les images d’animaux de compagnie en utilisant une myriade d’étiquettes de classe, telles que chien, chat, lama, ornithorynque, etc.
Certaines sources, surtout en ligne, considèrent la classification comme une forme de machine learning supervisé. Mais les classificateurs ne relèvent pas exclusivement du domaine de l’apprentissage supervisé. Les approches d’apprentissage non supervisé appliquées à la résolution des problèmes de classification sont au cœur des recherches récentes.
Bien entendu, chaque algorithme de classification basé sur le machine learning diffère dans ses opérations internes. Tous adhèrent néanmoins à un processus général de classification des données en deux étapes :
Apprentissage. Dans l’apprentissage supervisé, un annotateur humain attribue une étiquette à chaque point de données du jeu de données d’entraînement. Ces points sont définis comme un certain nombre de variables d’entrée (ou de variables indépendantes), qui peuvent être numériques, des chaînes de texte, des caractéristiques d’image, etc. En termes mathématiques, le modèle considère chaque point de données comme un tuple x. Un tuple est simplement une suite numérique ordonnée représentée par x = (x1,x2,x3…xn). Chaque valeur du tuple est une caractéristique spécifique du point de données. Le modèle utilise les caractéristiques de chaque point de données ainsi que son étiquette de classe pour décoder les caractéristiques qui définissent chaque classe. En mappant les données d’entraînement selon cette équation, le modèle apprend les caractéristiques générales (ou variables) associées à chaque étiquette de classe.
Classification. La deuxième étape des tâches de classification est la classification elle-même. Pendant cette phase, les utilisateurs déploient le modèle sur un ensemble de test de données inédites. Des données précédemment inutilisées sont idéales pour évaluer la capacité de classification des modèles afin d’éviter tout phénomène de surajustement. Le modèle utilise la fonction de prédiction apprise y=f(x) pour classer les données inédites dans des classes distinctes en fonction des caractéristiques de chaque échantillon. Les utilisateurs évaluent ensuite la précision du modèle en fonction du nombre d’échantillons de données de test correctement prédits.2
Les modèles de classification produisent deux types de prédictions : discrètes et continues.
Prédictions discrètes. Les prédictions discrètes sont les étiquettes de classe prédites pour chaque point de données. Par exemple, nous pouvons utiliser un prédicteur pour classer les patients médicaux comme diabétiques ou non-diabétiques en fonction de leurs données de santé. Les classes diabétiques et non-diabétiques sont des prédictions de catégories discrètes.
Prédictions continues. Les classificateurs attribuent des prédictions de classe sous forme de probabilités continues appelées scores de confiance. Ces probabilités sont des valeurs comprises entre 0 et 1, représentant des pourcentages. Notre modèle pourrait classer un patient comme diabétique avec une probabilité de 0,82. Cela signifie que le modèle estime que le patient a 82 % de chances d’être diabétique et 18 % de chances d’être non-diabétique.
Les chercheurs évaluent généralement les modèles en utilisant des prédictions discrètes, et se servent des prédictions continues comme seuils. Un classificateur ignore toute prédiction en dessous d’un certain seuil. Par exemple, si notre prédicteur de diabète a un seuil de 0,4 (40 %) et classe un patient comme diabétique avec une probabilité de 0,35 (35 %), le modèle ignorera cette étiquette et n’attribuera pas le patient à la classe diabétiques.3
Les chercheurs et les développeurs utilisent un large éventail d’indicateurs pour évaluer les modèles de classification. L’indicateur d’évaluation choisi dépend de la tâche de classification. Tous mesurent la précision avec laquelle un apprenant (c’est-à-dire un classificateur) prédit les classes du modèle.
Les indicateurs de classification utilisent une terminologie commune. Les vrais positifs (TP) sont les échantillons de données que le modèle place correctement dans leur classe respective. Les faux positifs (FP) sont les instances de classe négatives incorrectement identifiées comme des cas positifs. Les faux négatifs (FN) sont des instances positives réelles prédites à tort comme négatives. Les vrais négatifs (TN) sont les instances négatives réelles que le modèle classe avec précision comme négatives.
Précision. C’est ce que l’on appelle la valeur prédictive positive (PPV). Il s’agit de la proportion de prédictions de classes positives qui appartiennent réellement à la classe en question. Par exemple, dans un filtre antispam, la précision correspond à la proportion de messages que le modèle classe comme spam et qui sont réellement des spams. Elle est représentée par l’équation suivante :4
Rappel.Également appelé sensibilité ou taux de vrais positifs (TPR), le rappel désigne le pourcentage d’instances de classe détectées par un modèle. Dans notre cas du filtre antispam, le rappel indique le nombre de messages indésirables réels que le modèle classe effectivement comme spams. Il est représenté par l’équation suivante :5
Score F1. La précision et le rappel peuvent partager une relation inverse. Lorsqu’un classificateur renvoie davantage de vrais positifs (augmentation du rappel), il classe inévitablement mal les non-instances (c’est-à-dire les faux positifs), ce qui diminue la précision. Le score F1 vise à résoudre ce dilemme. Le score F1 (ou F-score) combine en fait la précision et le rappel pour représenter la précision totale d’un modèle en termes de classes. Il est représenté par l'équation suivante :6
Les outils de visualisation des données permettent d’illustrer les résultats de l’analyse des données. Les data scientists et les chercheurs en machine learning utilisent deux outils principaux pour visualiser les performances du classificateur :
Matrice de confusion. La matrice de confusion, est un tableau dont les colonnes représentent les valeurs prédites d’une classe donnée, tandis que les lignes représentent les valeurs réelles, ou inversement. La case en haut à gauche indique le nombre de vrais positifs. La case en dessous indique les faux positifs. La case en haut à droite indique le nombre de faux négatifs. La case en bas à droite indique le nombre de vrais négatifs. En totalisant chacune de ces valeurs, vous obtenez le nombre total de prédictions du modèle.7 Voici ce à quoi pourrait ressembler une matrice de confusion pour un classificateur binaire :
Courbe ROC. Une courbe ROC (Receiver Operating Characteristic) permet de visualiser la proportion des vrais positifs par rapport aux vrais négatifs. Le graphique représente le taux de vrais positifs par rapport au taux de vrais négatifs pour chaque seuil utilisé dans l’algorithme de classification du modèle. La statistique AUC (Area Under the Curve, aire sous la courbe) est dérivée de la courbe ROC. L’AUC mesure la probabilité qu’un positif sélectionné au hasard ait un score de confiance plus élevé qu’un négatif aléatoire. Les valeurs de l’AUC sont comprises entre 0 et 1. 0 signifie que le modèle note tous les points négatifs avec des probabilités plus élevées que les positifs, tandis que 1 signifie que le modèle note tous les points positifs avec une probabilité plus élevée.8
Il existe de nombreux types d’algorithmes de classification. Bien que leurs cas d’utilisation se chevauchent, certains sont plus adaptés à des applications particulières que d’autres. Voici un aperçu de trois algorithmes de machine learning populaires utilisés pour la classification. Tous les trois peuvent être facilement implémentés en Python en utilisant diverses bibliothèques scikit-learn.
Les sources en ligne confondent souvent les tâches de classification et de régression du machine learning. Mais il s’agit d’une simplification excessive. La régression logistique est un classificateur de probabilité dérivé de modèles de régression linéaire. La régression linéaire utilise une ou plusieurs variables indépendantes pour prédire la valeur d’une variable indépendante, dont la valeur peut être n’importe quel nombre rationnel continu. La régression logistique est une modification de la régression linéaire : la valeur de sortie (ou variable indépendante) est limitée à une valeur comprise entre 0 et 1. Elle applique une transformation logit, ou log-odds, à la formule de régression linéaire standard : 9
Les modèles de régression logistique sont utiles pour la classification binaire des problèmes de régression multivariée. Les applications courantes sont la détection des fraudes et les prédictions biomédicales. Par exemple, la régression logistique permet de prédire la mortalité des patients induite par un traumatisme ou une maladie coronarienne.10
Les classificateurs Bayes naïfs sont un type populaire de classificateur basé sur le théorème de Bayes. Ce qui les distingue principalement des autres classificateurs, c’est qu’ils calculent la probabilité a posteriori pour les prédictions de classe. Cela signifie que le classificateur Bayes naïf met à jour les prédictions de classe initiales (appelées probabilités a priori) à l’arrivée de chaque nouvelle donnée. Par exemple, supposons que nous tentions de classer la probabilité qu’un patient développe un diabète. Les données médicales de ce patient, telles que la tension artérielle, l’âge, la glycémie, etc., servent de variables indépendantes. Pour faire la prédiction, un classificateur bayésien calcule la prévalence actuelle supposée du diabète dans une population (probabilité a priori) avec la probabilité que les valeurs des données médicales de notre patient apparaissent chez une personne atteinte de diabète (probabilité conditionnelle). Les classificateurs Bayes naïfs suivent l’équation du théorème de Bayes :11
Les classificateurs Bayes naïfs sont connus pour être des classificateurs génératifs. Cela signifie que le classificateur bayésien, en utilisant les valeurs variables d’une observation donnée, calcule la classe la plus susceptible d’avoir généré l’observation. Les chercheurs en traitement automatique du langage naturel (NLP) appliquent largement les classificateurs Bayes naïfs aux tâches de classification de texte, telles que l’analyse des sentiments. En utilisant un modèle Bag of words , dans lequel chaque mot constitue une variable, le classificateur Bayes naïf utilisé pour l’analyse des sentiments prédit si le texte en question a été produit par une classe positive ou négative.12
La méthode des k plus proches voisins (KNN) mappe les points de données dans un espace multidimensionnel. Elle regroupe ensuite les points de données avec des valeurs de caractéristique similaires dans des groupes distincts, ou classes. Pour classer de nouveaux échantillons de données, le classificateur examine simplement le nombre k de points les plus proches d’une nouvelle entrée de test d’échantillon donnée x, compte le nombre de membres de chaque classe contenus dans le sous-ensemble voisin et renvoie cette proportion en tant qu’estimation de classe pour le nouveau point de données. En d’autres termes, le modèle attribue un nouveau point de données à la classe qui contient la majorité des voisins de ce point. Les modèles KNN comparent généralement la distance entre les points de données avec la distance euclidienne :13
La recherche approximative des plus proches voisins (ANN) est une variante de la méthode KNN. Dans les espaces de données de grande dimension, trouver les voisins exacts d’un point de données spécifique peut devenir coûteux en termes de calcul. La réduction de dimensionnalité est l’un des moyens d’y remédier. L’ANN en est un autre. Plutôt que de trouver le voisin le plus proche exact d’un point de données particulier, l’ANN trouve le voisin le plus proche approximatif à une distance donnée. Des recherches récentes ont donné des résultats prometteurs pour l’ANN dans le contexte de la classification multi-label.14
Notez que bon nombre de ces techniques peuvent être affectées négativement par la présence de données aberrantes. Heureusement, un certain nombre de techniques de régularisation peuvent permettre de compenser ces facteurs d’impact négatifs. Il existe également de nombreux autres algorithmes de classification dans le machine learning. Citons notamment les arbres de décision, les forêts d’arbres décisionnels, le boosting de gradient et les machines à vecteurs de support (SVM).
Entraînez, validez, réglez et déployez une IA générative, des modèles de fondation et des capacités de machine learning avec IBM watsonx.ai, un studio d’entreprise nouvelle génération pour les générateurs d’IA. Créez des applications d’IA en peu de temps et avec moins de données.
Mettez l’IA au service de votre entreprise en vous appuyant sur l’expertise de pointe d’IBM dans le domaine de l’IA et sur son portefeuille de solutions.
Réinventez les workflows et les opérations critiques en ajoutant l’IA pour optimiser les expériences, la prise de décision et la valeur métier en temps réel.
1 Chris Drummond, « Classification », Encyclopedia of Machine Learning and Data Mining, Springer, 2017.
2 Jaiwei Han, Micheline Kamber et Jian Pei, Data Mining : Concepts and Techniques, 3e édition, Morgan Kaufman, 2012.
3 Max Kuhn et Kjell Johnson, Applied Predictive Modeling, Springer, 2016.
4 Ethan Zhang et Yi Zhang, « Precision », Encyclopedia of Database Systems, Springer, 2018.
5 Ethan Zhang et Yi Zhang, « Recall », Encyclopedia of Database Systems, Springer, 2018.
6 Ben Carterette, « Precision and Recall », Encyclopedia of Database Systems, Springer, 2018.
7 Kai Ming Ting, « Confusion matrix », Encyclopedia of Machine Learning and Data Mining, Springer, 2017.
8 Peter Flach, « ROC Analysis », Encyclopedia of Machine Learning and Data Mining, Springer, 2017.
9 Max Kuhn et Kjell Johnson, Applied Predictive Modeling, Springer, 2016. Gareth James, Daniela Witten, Trevor Hastie, Robert Tibshirani et Jonathan Taylor, An Introduction to Statistical Learning with Applications in Python, Springer, 2023
10 Lisa X. Deng, Abigail May Khan, David Drajpuch, Stephanie Fuller, Jonathan Ludmir, Christopher E. Mascio, Sara L. Partington, Ayesha Qadeer, Lynda Tobin, Adrienne H. Kovacs et Yuli Y. Kim, « Prevalence and Correlates of Post-traumatic Stress Disorder in Adults With Congenital Heart Disease », The American Journal of Cardiology, vol. 117, n° 5, 2016, pages 853-857, https://www.sciencedirect.com/science/article/abs/pii/S0002914915023590 .
11 Max Kuhn et Kjell Johnson, Applied Predictive Modeling, Springer, 2016. William Bolstad et James Curran, Introduction to Bayesian Statistics, 3e édition, Wiley, 2016.
12 Daniel Jurafsky et James Martin, Speech and Language Processing : An Introduction to Natural Language Processing, Computational Linguistics, and Speech Recognition, 3e édition, 2023.
13 Max Kuhn et Kjell Johnson, Applied Predictive Modeling, Springer, 2016. Kevin Murphy, Machine Learning : A Probabilistic Perspective, MIT Press, 2012.
14 Ville Hyvönen, Elias Jääsaari, Teemu Roos, « A Multilabel Classification Framework for Approximate Nearest Neighbor Search » Journal of Machine Learning Research, vol. 25, n° 46, 2024, pages 1−51, https://www.jmlr.org/papers/v25/23-0286.html .