## Naïve Bayes Algorithm

**Naïve Bayes** is a classification algorithm based on **Bayes' Theorem** that *naively* assumes independency between features and assigns the same weights (degree of importance) to all features. This means that the algorithm assumes that no single feature correlates to or affects another. For example, although weight and height are somehow correlated when predicting a person's age, the algorithm assumes that each feature is independent. Additionally, the algorithm considers all features equally important. For instance, even though the education degree may influence the earnings of a person to a greater degree than the number of children the person has, the algorithm still considers both features equally important.

Although real-life datasets contain features that are not equally important, nor independent, this algorithm is popular among scientists, as it performs surprisingly well over large datasets. Also, it is worth mentioning that thanks to its simplistic approach, it runs...