0.概述
朴素贝叶斯法基于贝叶斯定理与特征条件独立假设的分类方法。
对于给定的训练数据集,首先基于特征条件独立假设学习输入/输出的联合概率分布;然后基于此模型,对给定的输入x,利用贝叶斯定理求出后验概率最大的输出y。
优点:
原理简单
实现简单
学习与预测的效率都很高
是一种常用的方法
缺点:
1.朴素贝叶斯法的学习与分类
要点:
1)朴素贝叶斯法通过训练数据集学习联合概率分布P(X,Y)。具体地,学习先验概率分布及条件概率分布。
2)假设分类的特征都是条件独立的,这往往会牺牲一定的分类准确性。
2.自问自答
1)朴素贝叶斯算法为什么要通过数据集学习**联合概率分布P(X,Y)?
2)先验概率和后验概率怎么理解,区别是什么?
3)为什么需要贝叶斯算法,贝叶斯算法的定义是什么?
答:我们经常需要在已知P(y|x)时计算P(x|y)。幸运的是,如果还知道P(x),我们可以用贝叶斯算法来实现这一目的:
注意到 P(y) 出现在上面的公式中,它通常使用 来计算,所以我们并不需要事先知道 P(y) 的信息。
3.代码
说明:代码有详细注释,易于阅读、理解。
1)我的朴素贝叶斯法简单的使用例子:
naive_bayes-1.ipynb
2)我的kaggle比赛代码之朴素贝叶斯法的sklearn实现:
naive_Bayes_2.ipynb
4.总结
5.参考资料
[1] 统计学习方法 李航
[2] sklearn-8.20.1. sklearn.naive_bayes.GaussianNB
[3] kaggle-Naive Bayes - MultinomailNB