Explore Courses
Liverpool Business SchoolLiverpool Business SchoolMBA by Liverpool Business School
  • 18 Months
Bestseller
Golden Gate UniversityGolden Gate UniversityMBA (Master of Business Administration)
  • 15 Months
Popular
O.P.Jindal Global UniversityO.P.Jindal Global UniversityMaster of Business Administration (MBA)
  • 12 Months
New
Birla Institute of Management Technology Birla Institute of Management Technology Post Graduate Diploma in Management (BIMTECH)
  • 24 Months
Liverpool John Moores UniversityLiverpool John Moores UniversityMS in Data Science
  • 18 Months
Popular
IIIT BangaloreIIIT BangalorePost Graduate Programme in Data Science & AI (Executive)
  • 12 Months
Bestseller
Golden Gate UniversityGolden Gate UniversityDBA in Emerging Technologies with concentration in Generative AI
  • 3 Years
upGradupGradData Science Bootcamp with AI
  • 6 Months
New
University of MarylandIIIT BangalorePost Graduate Certificate in Data Science & AI (Executive)
  • 8-8.5 Months
upGradupGradData Science Bootcamp with AI
  • 6 months
Popular
upGrad KnowledgeHutupGrad KnowledgeHutData Engineer Bootcamp
  • Self-Paced
upGradupGradCertificate Course in Business Analytics & Consulting in association with PwC India
  • 06 Months
OP Jindal Global UniversityOP Jindal Global UniversityMaster of Design in User Experience Design
  • 12 Months
Popular
WoolfWoolfMaster of Science in Computer Science
  • 18 Months
New
Jindal Global UniversityJindal Global UniversityMaster of Design in User Experience
  • 12 Months
New
Rushford, GenevaRushford Business SchoolDBA Doctorate in Technology (Computer Science)
  • 36 Months
IIIT BangaloreIIIT BangaloreCloud Computing and DevOps Program (Executive)
  • 8 Months
New
upGrad KnowledgeHutupGrad KnowledgeHutAWS Solutions Architect Certification
  • 32 Hours
upGradupGradFull Stack Software Development Bootcamp
  • 6 Months
Popular
upGradupGradUI/UX Bootcamp
  • 3 Months
upGradupGradCloud Computing Bootcamp
  • 7.5 Months
Golden Gate University Golden Gate University Doctor of Business Administration in Digital Leadership
  • 36 Months
New
Jindal Global UniversityJindal Global UniversityMaster of Design in User Experience
  • 12 Months
New
Golden Gate University Golden Gate University Doctor of Business Administration (DBA)
  • 36 Months
Bestseller
Ecole Supérieure de Gestion et Commerce International ParisEcole Supérieure de Gestion et Commerce International ParisDoctorate of Business Administration (DBA)
  • 36 Months
Rushford, GenevaRushford Business SchoolDoctorate of Business Administration (DBA)
  • 36 Months
KnowledgeHut upGradKnowledgeHut upGradSAFe® 6.0 Certified ScrumMaster (SSM) Training
  • Self-Paced
KnowledgeHut upGradKnowledgeHut upGradPMP® certification
  • Self-Paced
IIM KozhikodeIIM KozhikodeProfessional Certification in HR Management and Analytics
  • 6 Months
Bestseller
Duke CEDuke CEPost Graduate Certificate in Product Management
  • 4-8 Months
Bestseller
upGrad KnowledgeHutupGrad KnowledgeHutLeading SAFe® 6.0 Certification
  • 16 Hours
Popular
upGrad KnowledgeHutupGrad KnowledgeHutCertified ScrumMaster®(CSM) Training
  • 16 Hours
Bestseller
PwCupGrad CampusCertification Program in Financial Modelling & Analysis in association with PwC India
  • 4 Months
upGrad KnowledgeHutupGrad KnowledgeHutSAFe® 6.0 POPM Certification
  • 16 Hours
O.P.Jindal Global UniversityO.P.Jindal Global UniversityMaster of Science in Artificial Intelligence and Data Science
  • 12 Months
Bestseller
Liverpool John Moores University Liverpool John Moores University MS in Machine Learning & AI
  • 18 Months
Popular
Golden Gate UniversityGolden Gate UniversityDBA in Emerging Technologies with concentration in Generative AI
  • 3 Years
IIIT BangaloreIIIT BangaloreExecutive Post Graduate Programme in Machine Learning & AI
  • 13 Months
Bestseller
IIITBIIITBExecutive Program in Generative AI for Leaders
  • 4 Months
upGradupGradAdvanced Certificate Program in GenerativeAI
  • 4 Months
New
IIIT BangaloreIIIT BangalorePost Graduate Certificate in Machine Learning & Deep Learning (Executive)
  • 8 Months
Bestseller
Jindal Global UniversityJindal Global UniversityMaster of Design in User Experience
  • 12 Months
New
Liverpool Business SchoolLiverpool Business SchoolMBA with Marketing Concentration
  • 18 Months
Bestseller
Golden Gate UniversityGolden Gate UniversityMBA with Marketing Concentration
  • 15 Months
Popular
MICAMICAAdvanced Certificate in Digital Marketing and Communication
  • 6 Months
Bestseller
MICAMICAAdvanced Certificate in Brand Communication Management
  • 5 Months
Popular
upGradupGradDigital Marketing Accelerator Program
  • 05 Months
Jindal Global Law SchoolJindal Global Law SchoolLL.M. in Corporate & Financial Law
  • 12 Months
Bestseller
Jindal Global Law SchoolJindal Global Law SchoolLL.M. in AI and Emerging Technologies (Blended Learning Program)
  • 12 Months
Jindal Global Law SchoolJindal Global Law SchoolLL.M. in Intellectual Property & Technology Law
  • 12 Months
Jindal Global Law SchoolJindal Global Law SchoolLL.M. in Dispute Resolution
  • 12 Months
upGradupGradContract Law Certificate Program
  • Self paced
New
ESGCI, ParisESGCI, ParisDoctorate of Business Administration (DBA) from ESGCI, Paris
  • 36 Months
Golden Gate University Golden Gate University Doctor of Business Administration From Golden Gate University, San Francisco
  • 36 Months
Rushford Business SchoolRushford Business SchoolDoctor of Business Administration from Rushford Business School, Switzerland)
  • 36 Months
Edgewood CollegeEdgewood CollegeDoctorate of Business Administration from Edgewood College
  • 24 Months
Golden Gate UniversityGolden Gate UniversityDBA in Emerging Technologies with Concentration in Generative AI
  • 36 Months
Golden Gate University Golden Gate University DBA in Digital Leadership from Golden Gate University, San Francisco
  • 36 Months
Liverpool Business SchoolLiverpool Business SchoolMBA by Liverpool Business School
  • 18 Months
Bestseller
Golden Gate UniversityGolden Gate UniversityMBA (Master of Business Administration)
  • 15 Months
Popular
O.P.Jindal Global UniversityO.P.Jindal Global UniversityMaster of Business Administration (MBA)
  • 12 Months
New
Deakin Business School and Institute of Management Technology, GhaziabadDeakin Business School and IMT, GhaziabadMBA (Master of Business Administration)
  • 12 Months
Liverpool John Moores UniversityLiverpool John Moores UniversityMS in Data Science
  • 18 Months
Bestseller
O.P.Jindal Global UniversityO.P.Jindal Global UniversityMaster of Science in Artificial Intelligence and Data Science
  • 12 Months
Bestseller
IIIT BangaloreIIIT BangalorePost Graduate Programme in Data Science (Executive)
  • 12 Months
Bestseller
O.P.Jindal Global UniversityO.P.Jindal Global UniversityO.P.Jindal Global University
  • 12 Months
WoolfWoolfMaster of Science in Computer Science
  • 18 Months
New
Liverpool John Moores University Liverpool John Moores University MS in Machine Learning & AI
  • 18 Months
Popular
Golden Gate UniversityGolden Gate UniversityDBA in Emerging Technologies with concentration in Generative AI
  • 3 Years
Rushford, GenevaRushford Business SchoolDoctorate of Business Administration (AI/ML)
  • 36 Months
Ecole Supérieure de Gestion et Commerce International ParisEcole Supérieure de Gestion et Commerce International ParisDBA Specialisation in AI & ML
  • 36 Months
Golden Gate University Golden Gate University Doctor of Business Administration (DBA)
  • 36 Months
Bestseller
Ecole Supérieure de Gestion et Commerce International ParisEcole Supérieure de Gestion et Commerce International ParisDoctorate of Business Administration (DBA)
  • 36 Months
Rushford, GenevaRushford Business SchoolDoctorate of Business Administration (DBA)
  • 36 Months
Liverpool Business SchoolLiverpool Business SchoolMBA with Marketing Concentration
  • 18 Months
Bestseller
Golden Gate UniversityGolden Gate UniversityMBA with Marketing Concentration
  • 15 Months
Popular
Jindal Global Law SchoolJindal Global Law SchoolLL.M. in Corporate & Financial Law
  • 12 Months
Bestseller
Jindal Global Law SchoolJindal Global Law SchoolLL.M. in Intellectual Property & Technology Law
  • 12 Months
Jindal Global Law SchoolJindal Global Law SchoolLL.M. in Dispute Resolution
  • 12 Months
IIITBIIITBExecutive Program in Generative AI for Leaders
  • 4 Months
New
IIIT BangaloreIIIT BangaloreExecutive Post Graduate Programme in Machine Learning & AI
  • 13 Months
Bestseller
upGradupGradData Science Bootcamp with AI
  • 6 Months
New
upGradupGradAdvanced Certificate Program in GenerativeAI
  • 4 Months
New
KnowledgeHut upGradKnowledgeHut upGradSAFe® 6.0 Certified ScrumMaster (SSM) Training
  • Self-Paced
upGrad KnowledgeHutupGrad KnowledgeHutCertified ScrumMaster®(CSM) Training
  • 16 Hours
upGrad KnowledgeHutupGrad KnowledgeHutLeading SAFe® 6.0 Certification
  • 16 Hours
KnowledgeHut upGradKnowledgeHut upGradPMP® certification
  • Self-Paced
upGrad KnowledgeHutupGrad KnowledgeHutAWS Solutions Architect Certification
  • 32 Hours
upGrad KnowledgeHutupGrad KnowledgeHutAzure Administrator Certification (AZ-104)
  • 24 Hours
KnowledgeHut upGradKnowledgeHut upGradAWS Cloud Practioner Essentials Certification
  • 1 Week
KnowledgeHut upGradKnowledgeHut upGradAzure Data Engineering Training (DP-203)
  • 1 Week
MICAMICAAdvanced Certificate in Digital Marketing and Communication
  • 6 Months
Bestseller
MICAMICAAdvanced Certificate in Brand Communication Management
  • 5 Months
Popular
IIM KozhikodeIIM KozhikodeProfessional Certification in HR Management and Analytics
  • 6 Months
Bestseller
Duke CEDuke CEPost Graduate Certificate in Product Management
  • 4-8 Months
Bestseller
Loyola Institute of Business Administration (LIBA)Loyola Institute of Business Administration (LIBA)Executive PG Programme in Human Resource Management
  • 11 Months
Popular
Goa Institute of ManagementGoa Institute of ManagementExecutive PG Program in Healthcare Management
  • 11 Months
IMT GhaziabadIMT GhaziabadAdvanced General Management Program
  • 11 Months
Golden Gate UniversityGolden Gate UniversityProfessional Certificate in Global Business Management
  • 6-8 Months
upGradupGradContract Law Certificate Program
  • Self paced
New
IU, GermanyIU, GermanyMaster of Business Administration (90 ECTS)
  • 18 Months
Bestseller
IU, GermanyIU, GermanyMaster in International Management (120 ECTS)
  • 24 Months
Popular
IU, GermanyIU, GermanyB.Sc. Computer Science (180 ECTS)
  • 36 Months
Clark UniversityClark UniversityMaster of Business Administration
  • 23 Months
New
Golden Gate UniversityGolden Gate UniversityMaster of Business Administration
  • 20 Months
Clark University, USClark University, USMS in Project Management
  • 20 Months
New
Edgewood CollegeEdgewood CollegeMaster of Business Administration
  • 23 Months
The American Business SchoolThe American Business SchoolMBA with specialization
  • 23 Months
New
Aivancity ParisAivancity ParisMSc Artificial Intelligence Engineering
  • 24 Months
Aivancity ParisAivancity ParisMSc Data Engineering
  • 24 Months
The American Business SchoolThe American Business SchoolMBA with specialization
  • 23 Months
New
Aivancity ParisAivancity ParisMSc Artificial Intelligence Engineering
  • 24 Months
Aivancity ParisAivancity ParisMSc Data Engineering
  • 24 Months
upGradupGradData Science Bootcamp with AI
  • 6 Months
Popular
upGrad KnowledgeHutupGrad KnowledgeHutData Engineer Bootcamp
  • Self-Paced
upGradupGradFull Stack Software Development Bootcamp
  • 6 Months
Bestseller
KnowledgeHut upGradKnowledgeHut upGradBackend Development Bootcamp
  • Self-Paced
upGradupGradUI/UX Bootcamp
  • 3 Months
upGradupGradCloud Computing Bootcamp
  • 7.5 Months
PwCupGrad CampusCertification Program in Financial Modelling & Analysis in association with PwC India
  • 5 Months
upGrad KnowledgeHutupGrad KnowledgeHutSAFe® 6.0 POPM Certification
  • 16 Hours
upGradupGradDigital Marketing Accelerator Program
  • 05 Months
upGradupGradAdvanced Certificate Program in GenerativeAI
  • 4 Months
New
upGradupGradData Science Bootcamp with AI
  • 6 Months
Popular
upGradupGradFull Stack Software Development Bootcamp
  • 6 Months
Bestseller
upGradupGradUI/UX Bootcamp
  • 3 Months
PwCupGrad CampusCertification Program in Financial Modelling & Analysis in association with PwC India
  • 4 Months
upGradupGradCertificate Course in Business Analytics & Consulting in association with PwC India
  • 06 Months
upGradupGradDigital Marketing Accelerator Program
  • 05 Months

Naive Bayes Classifier: Pros & Cons, Applications & Types Explained

Updated on 08 November, 2024

37.25K+ views
10 min read

What is the Naive Bayes Classifier?

The Naive Bayes classifier separates data into different classes according to the Bayes’ Theorem, along with the assumption that all the predictors are independent of one another. It assumes that a particular feature in a class is not related to the presence of other features. 

For example, you can consider a fruit to be a watermelon if it is green, round and has a 10-inch diameter. These features could depend on each other for their existence, but each one of them independently contributes to the probability that the fruit under consideration is a watermelon. That’s why this classifier has the term ‘Naive’ in its name.

When you need a fast problem-solving algorithm, where do you go? You go to the Naive Bayes classifier. It’s a quick and simple algorithm that can solve various classification problems. In this article, we’ll understand what this algorithm is, how it works, and what its qualities are. Let’s get started. 

Naive Bayes classifiers are a group of classification algorithms dependent on Bayes’ Theorem. All its included algorithms share a common principle, i.e. each pair of features is categorized as independent of each other. The Naive Bayes is a popular algorithm owing to its speed and high prediction efficiency.

Let’s consider a dataset to understand this algorithm.

Suppose you have a fictional dataset that denotes the weather conditions for playing a cricket game. Based on the weather conditions, every tuple categorizes the conditions as either fit (“Yes”) or unfit(“No”) for playing this game.

The dataset is classified into two parts, i.e. response vector and feature matrix.

The response vector includes the class variable’s value (output or prediction) for every row of the feature matrix. You can consider the class variable name as ‘Play golf’.

Feature matrix includes all the vectors(rows) of the dataset wherein every vector includes dependent features’ value. You can consider the features like ‘Temperature’, ‘Outlook’, ‘Windy’, and ‘Humidity’.

Assumption:

This algorithm assumes that every feature makes an independent and equal contribution to the outcome.

Concerning the given dataset, you can understand this concept as follows:

It is assumed that no pair of features is dependent. For example, the temperature ‘Hot’ is not related to the humidity. The outlook of ‘Rainy’ is not related to the winds. So, the features are expected to be independent.

Every feature is provided with the same weight. For example, you can’t precisely predict the outcome by knowing only humidity and temperature. All the attributes equally contribute to the outcome.

Why is it called Naïve Bayes?

The Naïve Bayes algorithm is composed of two words “Naïve” and “Bayes”. It is named like this because it presumes the occurrence of a certain feature that is independent of the other features’ occurrence. For example, if the fruit is recognized based on shape, colour, and taste, then the sweet fruit is recognized as an apple. So, every feature independently contributes to identifying that it is an apple without relying on each other.

This algorithm is quite popular because it can even outperform highly advanced classification techniques. Moreover, it’s quite simple, and you can build it quickly. 

Here’s the Bayes theorem, which is the basis for this algorithm:

P(c | x) = P(x | c) P(c)/P(x)

In this equation, ‘c’ stands for class, and ‘x’ stands for attributes. P(c/x) stands for the posterior probability of class according to the predictor. P(x) is the prior probability of the predictor, and P(c) is the prior probability of the class. P(x/c) shows the probability of the predictor according to the class. 

Read: Naive Bayes Explained

Advantages of Naive Bayes

The Naive Bayes is a popular algorithm due to its following advantages:

  • This algorithm works very fast and can easily predict the class of a test dataset. 
  • You can use it to solve multi-class prediction problems as it’s quite useful with them. 
  •  Naive Bayes classifier performs better than other models with less training data if the assumption of independence of features holds. 
  • If you have categorical input variables, the Naive Bayes algorithm performs exceptionally well in comparison to numerical variables. 
  • It can be used for Binary and Multi-class Classifications.
  • It effectively works in Multi-class predictions.

Now let’s go through the disadvantages of Naive Bayes classifier MCQ.

Disadvantages of Naive Bayes

  • If your test data set has a categorical variable of a category that wasn’t present in the training data set, the Naive Bayes model will assign it zero probability and won’t be able to make any predictions in this regard. This phenomenon is called ‘Zero Frequency,’ and you’ll have to use a smoothing technique to solve this problem.
  • This algorithm is also notorious as a lousy estimator. So, you shouldn’t take the probability outputs of ‘predict_proba’ too seriously. 
  • It assumes that all the features are independent. While it might sound great in theory, in real life, you’ll hardly find a set of independent features. 

After understanding these disadvantages of Naive Bayes classifier MCQ, you can now better understand this algorithm’s applications.

Applications of Naive Bayes Algorithm

As you must’ve noticed, this algorithm offers plenty of advantages to its users. That’s why it has a lot of applications in various sectors too. Here are some applications of Naive Bayes algorithm:

  • As this algorithm is fast and efficient, you can use it to make real-time predictions.
  • This algorithm is popular for multi-class predictions. You can find the probability of multiple target classes easily by using this algorithm.
  • Email services (like Gmail) use this algorithm to figure out whether an email is a spam or not. This algorithm is excellent for spam filtering.
  • Its assumption of feature independence, and its effectiveness in solving multi-class problems, makes it perfect for performing Sentiment Analysis. Sentiment Analysis refers to the identification of positive or negative sentiments of a target group (customers, audience, etc.)
  • Collaborative Filtering and the Naive Bayes algorithm work together to build recommendation systems. These systems use data mining and machine learning to predict if the user would like a particular resource or not. 

Also Read: Machine Learning Models Explained

How Naïve Bayes’ Classifier works:

Let’s take an example to understand the working of Naïve Bayes’ Classifier.

Suppose you have a dataset consisting of weather conditions and the relevant target variable “GamePlay”. You have to determine whether you must play or not according to the weather conditions of the particular day and based on the dataset. Follow these steps to solve this problem.

  • Transform the given dataset into frequency tables.
  • Generate a Likelihood table by determining the probabilities of the given features.
  • Apply Bayes theorem to determine the posterior probability.

Now suppose your problem is: Should the player play if the weather is sunny? Implementing the above steps gives you a solution to this problem.

Learn about various machine learning techniques, their applications and use cases with Artificial intelligence free course!

 

Types of Naive Bayes Classifier

This algorithm has multiple kinds. Here are the main ones:

You can understand which is not a main type of Naive Bayes classifier after reading this section.

Bernoulli Naive Bayes

Here, the predictors are boolean variables. So, the only values you have are ‘True’ and ‘False’ (you could also have ‘Yes’ or ‘No’). We use it when the data is according to multivariate Bernoulli distribution. 

It is one of the prevalent types of Naive Bayes model: Its working is identical to the Multinomial classifier. However, the predictor variables are the independent Boolean variables. For example, it works as -a specific word exists or not in a document. Moreover, this model is famous for document classification tasks.

Multinomial Naive Bayes

People use this algorithm to solve document classification problems. For example, if you want to determine whether a document belongs to the ‘Legal’ category or ‘Human Resources’ category, you’d use this algorithm to sort it out. It uses the frequency of the present words as features. 

This model is used when the data is multinomial distributed. Primarily, it is used for document classification problems. It denotes that a specific document belongs to which category (like Education, Politics, Sports, etc.). You can easily understand these types of Naive Bayes models with an example.

Suppose there is a text document, and you want to extract all the distinctive words and prepare multiple features such that every feature signifies the word count in the document. The frequency is a feature to consider in this example. When you use multinomial Naive Bayes for this example, it neglects the non-occurrence of the features. Hence, if the e frequency is 0, the probability of occurrence of the particular feature is 0. It is one of those types of Naive Bayes model: that seamlessly works with text classification problems.

FYI: Free Deep Learning Course!

Gaussian Naive Bayes

If the predictors aren’t discrete but have a continuous value, we assume that they are a sample from a gaussian distribution.

Strengthen capabilities with AI for free

Artificial Intelligence free courses online will help you learn about the applications of AI in the service and non-service industries gaining machine learning techniques.

In this Course you will find:

  • Introduction to AI Concepts
  • Real-World Applications
  • Basic Machine Learning Techniques
  • Data Preprocessing and Analysis
  • Ethics in AI

 

Click Now

It is among those types of Naive Bayes models that consider normal distribution. It assumes that the feature adopts a normal distribution. If predictors accept continuous values instead of discrete, the Gaussian Naive Bayes model assumes that such values are sampled through the Gaussian distribution. It is always better to first identify your problem and determine which is not a main type of Naive Bayes classifier.

Implementation of the Naïve Bayes algorithm in Python:

You can use the user data set to implement the Naive Bayes Algorithm in Python. Here are the implementation steps:

  1. Data Pre-processing
  2. Fitting Naive Bayes to the Training set
  3. Predicting the test result
  4. Determining test accuracy of the result
  5. Visual analysis of the training set result
  6. Visual analysis of the test set result

They are briefly explained below.

  1. Data Pre-processing step:

This step allows you to prepare the data to efficiently use in your code.

   2. Fitting Naive Bayes to the Training Set:

You need to fit the Naive Bayes model to the training set after data pre-processing. This step uses the GaussianNB classifier.  But you can use other relevant classifiers according to your example.

   3. Prediction of the test set result:

In this step, you would create a new predictor variable and use the predict function to determine the predictions. The test set result shows that certain predictions are different from the real values. Such obtained predictions are therefore incorrect.

4. Creating Confusion Matrix:

This step involves testing the result’s accuracy. You need to create the Confusion matrix to check the Naive Bayes classifier’s accuracy.

5.Visualizing the training set result:

This step involves visualizing the output of the Naïve Bayes classifier. The output will show a Gaussian curve featuring isolated data points with fine boundaries if you have used the GaussianNB classifier in the code.

   6.Visualizing the Test set result:

This step determines how the curve divides the considered  variables. It may show incorrect predictions being calculated in the Confusion matrix.

The Naive Bayes is a popular algorithm that helps you to visualize both the training set result and the test set results.

Conclusion

We hope you found this article useful. If you have any questions related to the Naive Bayes algorithm, feel free to share them in the comment section. We’d love to hear from you.

If you’re interested to learn more about AI, machine learning, check out IIIT-B & upGrad’s PG Diploma in Machine Learning & AI which is designed for working professionals and offers 450+ hours of rigorous training, 30+ case studies & assignments, IIIT-B Alumni status, 5+ practical hands-on capstone projects & job assistance with top firms.

Frequently Asked Questions (FAQs)

1. What are the limitations of Naive Bayes?

The naive Bayes classifier is an algorithm used to classify new data instances using a set of known training data. It is a good algorithm for classification; however, the number of features must be equal to the number of attributes in the data. It is computationally expensive when used to classify a large number of items. It is not suitable for numerical data. It can only work when the features are independent of each other. It is not suitable when the feature-values are nominal. It requires that the feature-values be mutually exclusive. It requires that the frequency of the feature-values be proportional to the probability that they are correct.

2. What is the biggest advantage and disadvantage of Naive Bayes classifiers?

The biggest advantage of Naive Bayes is that it can work with very small data sets. It is one of the most popular algorithms for spam filtering. Also, it is relatively simple to implement. It is almost always used as a classifier. If a data set is not available, one can still use it as a classification algorithm. This algorithm is used in e-mail spam filtering, it is also used by Google to classify web pages. However, it might not be as effective in more complex classification problems. It can only work when the features are independent of each other.

3. How do I stop Overfitting in Naive Bayes?

One reason for overfitting is having the wrong training data. If you have a training data set with a lot of noise and you have a lot of training examples, the classifier will look at the noise in the training data and not the underlying pattern that you are trying to build a model for. Another reason is that your model is just too complex. If you have a model where a small change in input can cause a large change in output you can get overfitting. Another solution is to use regularization. Regularization will shrink long branches in your model. It smooths out your model and prevents overfitting.