基于sklearn的朴素贝叶斯_sklearn 朴素贝叶斯

朴素贝叶斯是基于贝叶斯理论的一种监督学习算法,『朴素』意思是假设所有特征两两相互独立,给出类别y和一组依赖特征[x1..xn],根据贝叶斯理论,他们有如下的关系。

P(y|x1,...xn)=P(y)P(x1,...xn|y)P(x1,...xn)

根据贝叶斯独立性假设

P(xi|y,x1,...,xi−1,...,xn)=P(xi|y)

对于所有的i,关系可以简化为

P(y|x1,...xn)=P(y)∏ni=1P(xi|y)P(x1,....,xn)

因为P(x1,…,xn)}是给出的,所以我们可以做如下的近似

P(y|x1,...xn)=P(y)∏ni=1P(xi|y)P(x1,....,xn)

yˆ=argmaxyP(y)∏i=1nP(xi|y)

我们可以用最大后验估计去估计P(Y)和P(xi | y),前者的相对频率可以通过训练数据集计算出来。

不同的朴素贝叶斯分类器的差异主要在于用了不同的关于P(xi|y)分布的假设。

尽管朴素贝叶斯过于简化假设,但在实际文件分类和垃圾邮件过滤中分类效果相当不错。朴素贝叶斯只需要少量的训练数据来估计必要的参数。(朴素贝叶斯效果好以及它适合哪种类型的数据理论解释,可参考下面的文献)

朴素贝叶斯学习器和分类器和一些复杂的方法相比,可以做到非常快。每个特征分布的解耦,意味着每个分布可以独立地当成一维去估计。这反过来又有助于缓解来自维数灾难的问题。

另一方面,虽然朴素贝叶斯以分类器著称,但它是一个坏的估计,所以不必计较从predict_proba得到的概率输出。

References:

H. Zhang (2004). The optimality of Naive Bayes. Proc. FLAIRS.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值