首先,我们有贝叶斯公式(Bayes theorem):
然后,给出我们的假设:我们的输入x中的数据是两两条件独立的,因此:
现在我们以一个多变量的Bernoulli模型为例:
对给定的i,对每一个j,相互独立,有
数据的联合似然:
使其取得最大值,解得:
既然已经得到了参数,当我们有一个新的x,我们就可以计算:
实践证明,贝叶斯是快的,空间效率高,我们可以把所有的概率存入到数据库中的表里:
然而,贝叶斯方法对不相关的特征不敏感,比如说,你想基于眼睛的颜色而对性别进行分类时:
朴素贝叶斯的优缺点:
优点:
1. 对数据的训练快,分类也快
2. 对不相关的数据不敏感
3. 处理实数,也可以处理离散的数据
4. 处理流数据的性能不错
缺点:
假设特征相互独立(事实却远非如此)
朴素贝叶斯可以处理很多模型: