Naive Bayes expliqué : fonction, avantages et inconvénients, applications en 2022
Publié: 2021-01-05Naive Bayes est un algorithme d'apprentissage automatique que nous utilisons pour résoudre des problèmes de classification. Il est basé sur le théorème de Bayes. C'est l'un des algorithmes ML les plus simples et les plus puissants utilisés et trouve des applications dans de nombreux secteurs.
Supposons que vous deviez résoudre un problème de classification et que vous ayez créé les caractéristiques et généré l'hypothèse, mais que vos supérieurs souhaitent voir le modèle. Vous disposez de nombreux points de données (des milliers de points de données) et de nombreuses variables pour former l'ensemble de données. La meilleure solution pour cette situation serait d'utiliser le classificateur Naive Bayes, qui est assez rapide par rapport aux autres algorithmes de classification.
Dans cet article, nous discuterons de cet algorithme en détail et découvrirons comment il fonctionne. Nous discuterons également de ses avantages et de ses inconvénients ainsi que de ses applications dans le monde réel pour comprendre à quel point cet algorithme est essentiel.
Rejoignez le cours d'apprentissage en profondeur en ligne des meilleures universités du monde - Masters, programmes de troisième cycle pour cadres et programme de certificat avancé en ML et IA pour accélérer votre carrière.
Commençons:
Table des matières
Bayes naïf expliqué
Naive Bayes utilise le théorème de Bayes et suppose que tous les prédicteurs sont indépendants. En d'autres termes, ce classificateur suppose que la présence d'une caractéristique particulière dans une classe n'affecte pas la présence d'une autre.

Voici un exemple : vous considéreriez qu'un fruit est orange s'il est rond, orange et qu'il mesure environ 3,5 pouces de diamètre. Maintenant, même si ces caractéristiques ont besoin les unes des autres pour exister, elles contribuent toutes indépendamment à votre hypothèse que ce fruit particulier est orange. C'est pourquoi cet algorithme a "Naïf" dans son nom.
Construire le modèle Naive Bayes est assez simple et vous aide à travailler avec de vastes ensembles de données. De plus, cette équation est populaire pour battre de nombreuses techniques de classification avancées en termes de performances.
Voici l'équation pour Naive Bayes :
P (c|x) = P(x|c) P(c) / P(x)
P(c|x) = P(x1 | c) x P(x2 | c) x … P(xn | c) x P(c)
Ici, P (c|x) est la probabilité a posteriori selon le prédicteur (x) pour la classe (c). P(c) est la probabilité a priori de la classe, P(x) est la probabilité a priori du prédicteur et P(x|c) est la probabilité du prédicteur pour la classe particulière(c).
En plus de considérer l'indépendance de chaque fonctionnalité, Naive Bayes suppose également qu'elles contribuent de manière égale. C'est un point important à retenir.
Comment fonctionne Naive Bayes ?
Pour comprendre le fonctionnement de Naive Bayes, nous devons discuter d'un exemple.
Supposons que nous voulions trouver des voitures volées et que nous disposions de l'ensemble de données suivant :
Numéro de série. | Couleur | Taper | Origine | A-t-il été volé ? |
1 | rouge | Des sports | National | Oui |
2 | rouge | Des sports | National | Non |
3 | rouge | Des sports | National | Oui |
4 | Jaune | Des sports | National | Non |
5 | Jaune | Des sports | Importé | Oui |
6 | Jaune | VUS | Importé | Non |
7 | Jaune | VUS | Importé | Oui |
8 | Jaune | VUS | National | Non |
9 | rouge | VUS | Importé | Non |
dix | rouge | Des sports | Importé | Oui |
Selon notre jeu de données, nous pouvons comprendre que notre algorithme fait les hypothèses suivantes :
- Il suppose que chaque fonctionnalité est indépendante. Par exemple, la couleur 'Jaune' d'une voiture n'a rien à voir avec son Origine ou son Type.
- Il donne à chaque fonctionnalité le même niveau d'importance. Par exemple, connaître uniquement la couleur et l'origine permettrait de prédire correctement le résultat. C'est pourquoi chaque caractéristique est également importante et contribue également au résultat.
Maintenant, avec notre ensemble de données, nous devons classer si les voleurs volent une voiture en fonction de ses caractéristiques. Chaque ligne a des entrées individuelles et les colonnes représentent les caractéristiques de chaque voiture. Au premier rang, nous avons une voiture de sport rouge volée d'origine nationale. Nous découvrirons si les voleurs voleraient un SUV domestique rouge ou non (notre ensemble de données n'a pas d'entrée pour un SUV domestique rouge).
Nous pouvons réécrire le théorème de Bayes pour notre exemple comme suit :
P(y | X) = [P(X | y) P(y)P(X)]/P(X)
Ici, y représente la variable de classe (Was it Stolen?) pour montrer si les voleurs ont volé la voiture non selon les conditions. X représente les fonctionnalités.
X = x1, x2, x3, …., xn)
Ici, x1, x2,…, xn représentent les caractéristiques. Nous pouvons les mapper en Type, Origine et Couleur. Maintenant, nous allons remplacer X et développer la règle de chaîne pour obtenir ce qui suit :
P(y | x1, …, xn) = [P(x1 | y) P(x2 | y) … P(xn | y) P(y)]/[P(x1) P (x2) … P(xn )]
Vous pouvez obtenir les valeurs de chacun en utilisant l'ensemble de données et en mettant leurs valeurs dans l'équation. Le dénominateur restera statique pour chaque entrée de l'ensemble de données afin de le supprimer et d'injecter la proportionnalité.
P(y | x1, …, xn) ∝ P(y) je = 1nP(xi | y)
Dans notre exemple, y n'a que deux résultats, oui ou non.
y = argmaxyP(y) je = 1nP(xi | y)
Nous pouvons créer un tableau de fréquence pour calculer la probabilité a posteriori P(y|x) pour chaque caractéristique. Ensuite, nous allons transformer les tables de fréquences en tables de probabilité et utiliser l'équation bayésienne naïve pour trouver la probabilité a posteriori de chaque classe. Le résultat de notre prédiction serait la classe qui a la probabilité a posteriori la plus élevée. Voici les tableaux de probabilité et de fréquence :
Tableau de fréquence de couleur :
Couleur | A-t-il été volé (Oui) | A-t-il été volé (Non) |
rouge | 3 | 2 |
Jaune | 2 | 3 |
Tableau de probabilité de couleur :
Couleur | A-t-il été volé [P(Oui)] | A-t-il été volé [P(Non)] |
rouge | 3/5 | 2/5 |
Jaune | 2/5 | 3/5 |

Tableau de fréquence de type :
Taper | A-t-il été volé (Oui) | A-t-il été volé (Non) |
Des sports | 4 | 2 |
VUS | 1 | 3 |
Tableau de probabilité de type :
Taper | A-t-il été volé [P(Oui)] | A-t-il été volé [P(Non)] |
Des sports | 4/5 | 2/5 |
VUS | 1/5 | 3/5 |
Tableau des fréquences d'origine :
Origine | A-t-il été volé (Oui) | A-t-il été volé (Non) |
National | 2 | 3 |
Importé | 3 | 2 |
Tableau de probabilité d'origine :
Origine | A-t-il été volé [P(Oui)] | A-t-il été volé [P(Non)] |
National | 2/5 | 3/5 |
Importé | 3/5 | 2/5 |
Notre problème a 3 prédicteurs pour X, donc selon les équations que nous avons vues précédemment, la probabilité a posteriori P(Oui | X) serait la suivante :
P(Oui | X) = P(Rouge | Oui) * P(SUV | Oui) * P(Domestique | Oui) * P(Oui)
= ⅗ x ⅕ x ⅖ x 1
= 0,048
P(Non | X) serait :
P(Non | X) = P(Rouge | Non) * P(SUV | Non) * P(Domestique | Non) * P(Non)
= ⅖ x ⅗ x ⅗ x 1
= 0,144
Ainsi, comme la probabilité a posteriori P(Non | X) est plus élevée que la probabilité a posteriori P(Oui | X), notre SUV domestique rouge aura 'Non' dans le champ 'A-t-il été volé ?' section.
L'exemple aurait dû vous montrer comment fonctionne le classificateur Naive Bayes. Pour avoir une meilleure image de Naive Bayes expliqué, nous devons maintenant discuter de ses avantages et de ses inconvénients :
Avantages et inconvénients de Naive Bayes
Avantages
- Cet algorithme fonctionne rapidement et peut faire gagner beaucoup de temps.
- Naive Bayes est adapté à la résolution de problèmes de prédiction multi-classes.
- Si son hypothèse d'indépendance des caractéristiques est vraie, il peut fonctionner mieux que d'autres modèles et nécessite beaucoup moins de données d'apprentissage.
- Naive Bayes est mieux adapté aux variables d'entrée catégorielles qu'aux variables numériques.
Désavantages
- Naive Bayes suppose que tous les prédicteurs (ou caractéristiques) sont indépendants, ce qui se produit rarement dans la vie réelle. Cela limite l'applicabilité de cet algorithme dans des cas d'utilisation réels.
- Cet algorithme fait face au « problème de fréquence zéro » où il attribue une probabilité nulle à une variable catégorielle dont la catégorie dans l'ensemble de données de test n'était pas disponible dans l'ensemble de données d'apprentissage. Il serait préférable que vous utilisiez une technique de lissage pour surmonter ce problème.
- Ses estimations peuvent être erronées dans certains cas, vous ne devez donc pas prendre très au sérieux ses résultats de probabilité.
Paiement : Explication des modèles d'apprentissage automatique
Applications de Naive Bayes expliquées
Voici quelques domaines où cet algorithme trouve des applications :

Classement du texte
La plupart du temps, Naive Bayes utilise la classification dans le texte en raison de son hypothèse d'indépendance et de haute performance dans la résolution de problèmes multi-classes. Il bénéficie d'un taux de réussite élevé par rapport aux autres algorithmes en raison de sa rapidité et de son efficacité.
Analyse des sentiments
L'analyse des sentiments est l'un des domaines les plus importants de l'apprentissage automatique, et cet algorithme y est également très utile. L'analyse des sentiments se concentre sur l'identification si les clients pensent positivement ou négativement sur un certain sujet (produit ou service).
Systèmes de recommandation
Avec l'aide du filtrage collaboratif, Naive Bayes Classifier crée un puissant système de recommandation pour prédire si un utilisateur aimerait ou non un produit (ou une ressource) particulier. Amazon, Netflix et Flipkart sont des entreprises de premier plan qui utilisent des systèmes de recommandation pour suggérer des produits à leurs clients.
En savoir plus Algorithmes d'apprentissage automatique
Naive Bayes est un algorithme d'apprentissage automatique simple et efficace pour résoudre des problèmes multi-classes. Il trouve des utilisations dans de nombreux domaines importants des applications d'apprentissage automatique telles que l'analyse des sentiments et la classification de texte.
Découvrez le programme de certification avancée en apprentissage automatique et cloud avec IIT Madras, la meilleure école d'ingénieurs du pays, pour créer un programme qui vous enseigne non seulement l'apprentissage automatique, mais également son déploiement efficace à l'aide de l'infrastructure cloud. Notre objectif avec ce programme est d'ouvrir les portes de l'institut le plus sélectif du pays et de donner aux apprenants l'accès à des professeurs et à des ressources incroyables afin de maîtriser une compétence en forte croissance.
Qu'est-ce que l'algorithme naïf de Bayes ?
Pour gérer les difficultés de catégorisation, nous utilisons la technique d'apprentissage automatique Naive Bayes. Le théorème de Bayes le sous-tend. C'est l'un des algorithmes d'apprentissage automatique les plus basiques et les plus puissants utilisés, avec des applications dans une variété d'industries. Disons que vous travaillez sur un problème de classification et que vous avez déjà établi les caractéristiques et l'hypothèse, mais que votre patron veut voir le modèle. Pour former l'ensemble de données, vous disposez d'un grand nombre de points de données (des milliers de points de données) et d'un grand nombre de variables. Le classificateur Naive Bayes, qui est beaucoup plus rapide que les autres algorithmes de classification, serait la meilleure option dans cette circonstance.
Quels sont les avantages et les inconvénients des baies naïves ?
Pour les problèmes de prédiction multi-classes, Naive Bayes est un bon choix. Si la prémisse de l'indépendance des fonctionnalités reste vraie, elle peut surpasser les autres modèles tout en utilisant beaucoup moins de données d'apprentissage. Les variables d'entrée catégorielles sont plus adaptées à Naive Bayes que les variables d'entrée numériques.
Dans Naive Bayes, tous les prédicteurs (ou traits) sont supposés indépendants, ce qui est rarement le cas dans la vie réelle. Cela limite la convivialité de l'algorithme dans des scénarios réels. Vous ne devriez pas prendre ses sorties de probabilité au sérieux car ses estimations peuvent être erronées dans certains cas.
Quelles sont certaines applications réelles des baies naïves ?
En raison de sa prémisse d'autonomie et de ses hautes performances pour résoudre les problèmes multi-classes, Naive Bayes est fréquemment utilisé dans la classification dans le texte. L'analyse des sentiments est l'une des applications les plus populaires de l'apprentissage automatique, et cette technique peut également y contribuer. L'objectif de l'analyse des sentiments est de déterminer si les clients ont des sentiments favorables ou négatifs à propos d'un problème particulier (produit ou service). Naive Bayes Classifier utilise le filtrage collaboratif pour créer un système de recommandation sophistiqué capable de prédire si un utilisateur appréciera ou non un produit (ou une ressource) donné.