Le classificateur Bayes naïf est un algorithme de machine learning supervisé utilisé pour des tâches de classification telles que la classification de texte. Il utilise les principes de probabilité pour effectuer ces tâches de classification.
Le classificateur Bayes naïf fait partie d’une famille d’algorithmes d’apprentissage génératif, c’est-à-dire qu’il a pour but de modéliser la distribution des entrées d’une classe ou d’une catégorie donnée. Contrairement aux classificateurs discriminants, comme la régression logistique, il n’apprend pas les caractéristiques les plus importantes pour différencier les classes.
Le classificateur Bayes naïf est également considéré comme un classificateur probabiliste, car il est basé sur le théorème de Bayes. Il serait difficile d’expliquer cet algorithme sans expliquer les bases de la statistique bayésienne. Ce théorème, également connu sous le nom de règle de Bayes, nous permet « d’inverser » les probabilités conditionnelles. Pour rappel, les probabilités conditionnelles représentent la probabilité qu’un événement se produise sachant qu’un autre événement a eu lieu, ce qui est représenté par la formule suivante :
Le théorème de Bayes se distingue par son utilisation d’événements séquentiels, où des informations supplémentaires acquises ultérieurement ont un impact sur la probabilité initiale. Ces probabilités sont désignées par la probabilité a priori et la probabilité a posteriori. La probabilité a priori est la probabilité initiale d’un événement avant qu’une certaine condition n’intervienne dans son contexte, ou la probabilité marginale. La probabilité a posteriori est la probabilité d’un événement après l’observation d’une donnée.
Les tests médicaux sont un exemple fréquemment cité dans la littérature sur les statistiques et le machine learning (lien externe à ibm.com) pour illustrer ce concept. Imaginons par exemple qu’une personne nommée Jane passe un test pour déterminer si elle est atteinte de diabète. Supposons que la probabilité globale qu’un patient souffre de diabète soit de 5 % ; ce serait notre probabilité a priori. Mais si le résultat du test de Jane était positif, la probabilité a priori serait mise à jour pour tenir compte de ces informations supplémentaires, et elle deviendrait alors notre probabilité a posteriori. Cet exemple peut être représenté avec l’équation suivante, qui utilise le théorème de Bayes :
Cependant, il y a de fortes chances que nos probabilités a priori soient loin d’être exactes, car elles ne tiennent pas compte d’autres variables comme le régime alimentaire, l’âge, les antécédents familiaux, etc. C’est pourquoi nous nous appuyons généralement sur des distributions de probabilités provenant d’échantillons aléatoires, ce qui simplifie l’équation : P(Y|X) = P(X|Y)P(Y) / P(X)
Les classificateurs Bayers naïfs fonctionnent différemment dans la mesure où ils tiennent compte de quelques hypothèses clés, ce qui leur vaut ce qualificatif. Ils supposent que les prédicteurs d’un modèle Bayes naïf sont conditionnellement indépendants ou sans lien avec les autres caractéristiques du modèle. Ils supposent également que toutes les caractéristiques contribuent de manière égale au résultat. Bien que ces hypothèses soient souvent enfreintes dans des scénarios concrets (par exemple, le mot qui suit dans un e-mail dépend du mot qui le précède), cela simplifie la classification, car les variables du calcul sont plus faciles à manier. Autrement dit, une seule probabilité est désormais requise pour chaque variable, ce qui facilite le calcul du modèle. Malgré cette hypothèse d’indépendance irréaliste, l’algorithme de classification fonctionne bien, en particulier avec des échantillons de petite taille.
En gardant cette hypothèse à l’esprit, nous pouvons maintenant réexaminer de plus près les composants d’un classificateur Bayes naïf. Comme dans le théorème de Bayes, il utilise les probabilités conditionnelles et a priori pour calculer les probabilités a posteriori à l’aide de la formule suivante :
Imaginons maintenant un cas d’utilisation de classification de texte pour illustrer le fonctionnement de l’algorithme Bayes naïf. Prenons l’exemple d’un fournisseur de messagerie qui chercherait à améliorer son filtre antispam. Les données d’entraînement seraient constituées de mots tirés d’e-mails classés comme « spam » ou « non-spam ». À partir de là, les probabilités conditionnelles de la classe et les probabilités a priori sont calculées pour donner la probabilité a posteriori. Le classificateur Bayes naïf renverra la classe qui a la probabilité a posteriori maximale parmi un groupe de classes (c’est-à-dire « spam » ou « non-spam ») pour un e-mail donné. Ce calcul est représenté par la formule suivante :
Comme chaque classe fait référence au même texte, nous pouvons éliminer le dénominateur de cette équation, la simplifiant ainsi :
La précision de l’algorithme d’apprentissage basé sur le jeu de données d’entraînement est ensuite évaluée en fonction des performances du jeu de données de test.
Pour aller plus loin, intéressons-nous aux éléments individuels de cette formule. Les probabilités conditionnelles de classe sont les probabilités individuelles de l’apparition de chaque mot dans un e-mail. Ces dernières sont calculées en déterminant la fréquence de chaque mot dans chaque catégorie, c’est-à-dire « spam » ou « non-spam », que l’on appelle également l’estimateur du maximum de vraisemblance (MLE). Dans cet exemple, si nous examinions l’expression « Cher Monsieur », nous calculerions simplement la fréquence à laquelle ces mots apparaissent dans tous les e-mails classés comme spam et non-spam. Cette valeur peut être représentée par la formule ci-dessous, où y représente « Cher Monsieur » et x la catégorie « spam ».
Les probabilités a priori sont celles que nous avons décrites précédemment en expliquant le théorème de Bayes. Sur la base du jeu d’entraînement, nous pouvons calculer la probabilité globale qu’un e-mail soit du type « spam » ou « non-spam ». La probabilité a priori de l’étiquette de classe « spam » serait représentée par la formule suivante :
La probabilité a priori agit comme une « pondération » pour la probabilité conditionnelle de classe lorsque les deux valeurs sont multipliées entre elles, ce qui donne les probabilités a posteriori individuelles. À partir de là, l’estimateur du maximum a posteriori (MAP) est calculé pour attribuer une étiquette de classe (spam ou non-spam). L’équation naïve bayésienne finale peut être représentée comme suit :
Elle peut également être représentée dans l’espace logarithmique, car elle est couramment utilisée sous cette forme :
Pour évaluer votre classificateur, vous pouvez par exemple utiliser une matrice de confusion, qui représentera les valeurs réelles et prédites dans un tableau. Les lignes représentent généralement les valeurs réelles tandis que les colonnes représentent les valeurs prédites. De nombreux guides illustrent cette figure sous la forme d’une représentation 2 x 2, comme suit :
Toutefois, si vous prédisiez des images de 0 à 9, vous obtiendriez une représentation 10 x 10. Pour connaître le nombre de « confusions » des images 4 et 9 effectuées par le classificateur, il vous suffirait de regarder la 4e ligne et la 9e colonne.
Il existe plusieurs types de classificateurs Bayes naïfs. Les types les plus populaires varient en fonction de la distribution des valeurs de caractéristiques. En voici quelques-uns :
Tous ces éléments peuvent être mis en œuvre grâce à la bibliothèque Python Scikit Learn (lien externe à ibm.com) (également appelée sklearn).
Comme un certain nombre d’autres algorithmes, la classification naïve bayésienne appartient à une famille d’algorithmes de data mining qui transforment de grands volumes de données en informations utiles. Voici quelques applications de la classification naïve bayésienne :
IBM Granite est notre famille de modèles d’IA ouverts, performants et fiables, conçus pour les entreprises et optimisés pour dimensionner vos applications d’IA. Explorez les options de langage, de code, de séries temporelles et de garde-fous.
Nous avons interrogé 2 000 entreprises à propos de leurs initiatives d’IA pour découvrir ce qui fonctionne, ce qui ne fonctionne pas et comment progresser.
Découvrez des approches d’apprentissage supervisées telles que les machines à vecteurs de support et les classificateurs probabilistes.
Apprenez des concepts fondamentaux et développez vos compétences grâce à des ateliers pratiques, à des cours, à des projets guidés, à des essais et à d’autres ressources.
Découvrez comment choisir le modèle de fondation d’IA le mieux adapté à votre cas d’utilisation.
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.