## Saturday, 2 March 2019

### Advantages and Disadvantages of Naive Bayes in Machine Learning

Bayes theorem is an extension of the conditional probability. While using Bayes theorem you use one conditional probability to calculate another one.

Bayes theorem is represented with the following expression:

P(A|B) = P(B|A) * P(A) / P(B)

Here, we calculate the probability of event A given that event B has occurred. The right hand side of the equation consists of the probability of event B given event A has occurred multiplied by the ratio of probability of event A to Probability of event B.

Advantages of Naive Bayes

1. When assumption of independent predictors holds true, a Naive Bayes classifier performs better as compared to other models.

2. Naive Bayes requires a small amount of training data to estimate the test data. So, the training period is less also easy to implement.

Disadvantages of Naive Bayes

1. Main imitation of Naive Bayes is the assumption of independent predictors. Naive Bayes implicitly assumes that all the attributes are mutually independent. In real life, it is almost impossible that we get a set of predictors which are completely independent.

2. If categorical variable has a category in test data set, which was not observed in training data set, then model will assign a 0 (zero) probability and will be unable to make a prediction. This is often known as Zero Frequency. To solve this, we can use the smoothing technique. One of the simplest smoothing techniques is called Laplace estimation.