机器学习教程之12-朴素贝叶斯(naive Bayes)法的sklearn实现
2017-07-23 20:12
507 查看
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
相关文章推荐
- 机器学习教程之1-感知器(Perceptron)的sklearn实现
- 机器学习教程之2-k近邻模型的sklearn实现
- 机器学习教程之9-SVM的sklearn实现
- 机器学习教程之2-线性回归(linear regression)的sklearn实现
- 机器学习教程之3-逻辑回归(logistic regression)的sklearn实现
- 机器学习教程之10-聚类(Clustering)-K均值聚类(K-means)的sklearn实现
- 机器学习教程之13-决策树(decision tree)的sklearn实现
- NeHe教程Qt实现——lesson12
- 12、ABPZero系列教程之拼多多卖家工具 拼团提醒功能登录拼多多实现
- scikit-learn机器学习(六)--朴素贝叶斯分类原理及python实现
- 机器学习教程 之 SKlearn 中 PCA 算法的运用:人脸识别实例
- 机器学习之-朴素贝叶斯-具体怎么实现及应用
- Python实现基于朴素贝叶斯的垃圾邮件分类 标签: python朴素贝叶斯垃圾邮件分类 2016-04-20 15:09 2750人阅读 评论(1) 收藏 举报 分类: 机器学习(19) 听说
- 用Python从零实现贝叶斯分类器的机器学习的教程
- 斯坦福机器学习实现与分析之六(朴素贝叶斯)
- 机器学习之用sklearn实现knn
- 机器学习之&&贝叶斯定理、朴素贝叶斯实现、贝叶斯网络等知识博客整理
- 机器学习|朴素贝叶斯算法(二)-用sklearn实践贝叶斯
- 机器学习经典算法详解及Python实现---朴素贝叶斯分类及其在文本分类、垃圾邮件检测中的应用
- 机器学习--朴素贝叶斯的分析与实现