Qu’est-ce qu’un classificateur Bayes naïf ?
Appliquer un classificateur Bayes naïf avec watsonx.ai S’abonner aux actualités de l’IA
Illustration par un collage de pictogrammes représentant des nuages, un diagramme circulaire, des pictogrammes de graphique
Qu’est-ce qu’un classificateur Bayes naïf ?

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.

L’entrepôt de données pour l’IA

Découvrez les avantages qu’une stratégie de data lakehouse saura apporter à votre architecture de données, tels que la mise à l’échelle de l’IA et l’optimisation des coûts.

Contenu connexe

Obtenir l’e-book sur l’IA générative

Consultez notre tutoriel pour savoir comment appliquer ce classificateur avec Python
Un bref aperçu des statistiques bayésiennes

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)

 

Retour aux classificateurs Bayes naïfs

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.  

Probabilités conditionnelles de classe 

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 ».

Probabilités a priori

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 : 

Évaluation de votre classificateur Bayes naïf 

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.

Types de classificateurs Bayes naïfs

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 exemples : 

  • Naïve Bayes gaussien (GaussianNB) : Il s’agit d’une variante de classificateur Bayes naïf, utilisée avec des distributions gaussiennes, c’est-à-dire des distributions normales, et des variables continues. Ce modèle est ajusté en trouvant la moyenne et l’écart-type de chaque classe. 
  • Naïve Bayes multinomial (MultinomialNB) : Ce type de classificateur Bayes naïf suppose que les caractéristiques proviennent de distributions multinomiales. Cette variante est utile lors de l’utilisation de données discrètes, telles que des valeurs de fréquence, et elle est généralement appliquée dans les cas d’utilisation de traitement automatique du langage naturel, comme la classification des spams. 
  • Naïve Bayes de Bernoulli (BernoulliNB) : Il s’agit d’une autre variante des classificateurs Bayes naïfs, utilisée avec des variables booléennes, c’est-à-dire des variables à deux valeurs, telles que Vrai et Faux ou 1 et 0. 

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).

Avantages et inconvénients de la classification naïve bayésienne
Avantages
  • Moins complexe : Comparée aux autres classificateurs, la classification naïve bayésienne est considérée comme plus simple, car les paramètres sont plus faciles à estimer. Il s’agit donc de l’un des premiers algorithmes appris dans les cours de science des données et de machine learning.  
  • Bonne évolutivité : Par rapport à la régression logistique, la classification naïve bayésienne est considérée comme une méthode rapide et efficace, relativement précise lorsque l’hypothèse d’indépendance conditionnelle est vérifiée. De plus, elle a de faibles exigences en matière de stockage. 
  • Capable de gérer des données de grande dimension : Certains cas d’utilisation, tels que la classification de documents, peuvent compter de nombreuses dimensions, ce qui peut être difficile à gérer pour d’autres classificateurs. 
Inconvénients :   
  • Sujette à la fréquence zéro : La fréquence zéro se produit lorsqu’une variable nominale n’existe pas dans le jeu d’entraînement. Imaginez par exemple que nous essayions de trouver l’estimateur du maximum de vraisemblance pour le mot « monsieur » dans la classe « spam », mais que le mot « monsieur » ne figure pas dans les données d’apprentissage. Dans ce cas, la probabilité serait nulle, et comme ce classificateur multiplie toutes les probabilités conditionnelles, cela équivaudrait à une probabilité a posteriori nulle. Pour éviter ce problème, le lissage de Laplace peut être utilisé. 
  • Hypothèse principale irréaliste : Bien que l’hypothèse d’indépendance conditionnelle fonctionne bien dans l’ensemble, elle n’est pas toujours vérifiée, ce qui conduit à des classifications incorrectes. 
Applications de la classification naïve bayésienne

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 :

  • Filtre antispam : La classification des spams est l’une des applications les plus populaires des algorithmes Bayes naïfs citées dans la littérature. Pour en savoir plus sur ce cas d’utilisation, consultez ce chapitre sur O’reilly (lien externe à ibm.com).  
  • Classification de documents : La classification de documents et de texte vont de pair. Un autre cas d’utilisation populaire des classificateurs Bayes naïfs est la classification de contenu. Prenons comme exemple les catégories de contenu d’un site web d’actualités. Toutes les catégories de contenu peuvent être classées dans une taxonomie thématique basée sur chaque article du site. Federick Mosteller et David Wallace sont crédités de la première application de l’inférence bayésienne dans leur article de 1963 (lien externe à ibm.com). 
  • Analyse des sentiments: Bien qu’il s’agisse d’une autre forme de classification de texte, l’analyse des sentiments est couramment utilisée dans le marketing pour mieux comprendre et quantifier les opinions et les attitudes des utilisateurs concernant des produits et des marques spécifiques. 
  • Prédictions de l’état mental : En se basant sur des données d’imagerie par résonance magnétique fonctionnelle (fMRI), la classification naïve bayésienne a été exploitée pour prédire différents états cognitifs chez les humains. L’objectif de ces recherches (lien externe à ibm.com) était de mieux comprendre les états cognitifs cachés chez les humains, en particulier chez les patients atteints de lésions cérébrales.
Produits associés
IBM Cloud Pak for Data

IBM Cloud Pak for Data est une plateforme de données ouverte et extensible qui fournit une data fabric afin de rendre toutes les données disponibles pour l’IA et l’analytique, sur n’importe quel cloud.

En savoir plus sur IBM Cloud Pak for Data
IBM Watson Studio

Créez, exécutez et gérez des modèles d’IA. Préparez les données et créez des modèles sur n’importe quel cloud à l’aide d’un code open source ou de la modélisation visuelle. Faites des prédictions et optimisez vos résultats.

En savoir plus sur IBM Watson Studio
watsonx.ai

Passez à l'étape suivante pour commencer à opérationnaliser et à appliquer l'IA générative et le machine learning à votre entreprise.

Découvrir watsonx.ai
Ressources Apprentissage pratique gratuit pour les technologies d’IA générative

Découvrez les concepts fondamentaux de l’IA et de l’IA générative, notamment le prompt engineering, les grands modèles de langage et les meilleurs projets open source.

An Analysis of Naive Bayes Classifier on Low-Entropy Distributions

Dans cet article, IBM Research démontre de manière empirique comment la diminution de l’entropie des distributions de caractéristiques conditionnelles de classe affecte l’erreur de classification naïve bayésienne.

An Analysis of Data Characteristics that Affect Naive Bayes Performance

En s’appuyant sur des simulations Monte Carlo, IBM Research montre que la classification naïve bayésienne fonctionne mieux dans deux cas : les caractéristiques complètement indépendantes et les caractéristiques fonctionnellement dépendantes.

Découvrir les algorithmes de classification avec Python et scikit-learn

Découvrez les bases de la résolution des problèmes de machine learning provenant de la classification et obtenez une étude comparative de certains des algorithmes les plus populaires du moment.

Classification des données à l’aide de l’algorithme Naive Bayes multinomial

Utilisez scikit-learn pour effectuer une tâche de classification de texte courante (filtre antispam) à l’aide du classificateur Naive Bayes multinomial.

Passez à l’étape suivante

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 professionnel de 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.

Découvrir watsonx.ai Réserver une démo live