您的位置:首页 > 大数据 > 人工智能

机器学习教程之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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐