前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >[机器学习算法]朴素贝叶斯

[机器学习算法]朴素贝叶斯

作者头像
TOMOCAT
发布2020-06-09 18:06:22
7510
发布2020-06-09 18:06:22
举报

以二分类问题为例,我们假设特征集合为

x
x

,样本所属类别为

c
c

,后验概率

P(c|x)
P(c|x)

为:

P(c|x)=\frac{P(c)P(x|c)}{P(x)}
P(c|x)=\frac{P(c)P(x|c)}{P(x)}

其中

P(c)
P(c)

是类的先验概率;

P(x|c)
P(x|c)

是样本

x
x

相对于类标记

c
c

的类条件概率;

P(x)
P(x)

代表样本x出现的概率,但是给定样本x,

P(x)
P(x)

与类标记无关。因此我们只需要计算先验概率

P(c)
P(c)

和类条件概率

P(x|c)
P(x|c)

。计算方法如下:

P(c)
P(c)

表示样本空间中各类别样本所占的比例,根据大数定律,当训练集包含充分的独立同分布样本时,因此

P(c)
P(c)

可以根据各类样本出现的频率来进行估计。

P(x|c)
P(x|c)

设计到关于

x
x

所有属性的联合概率,如果直接根据样本出现的频率来估计会遇到极大的困难(比如假设样本的

d
d

个属性都是二值的,那么样本空间就有

2^d
2^d

种可能的取值,这个值往往远大于训练样本数,因此很多样本取值在训练中可能根本不会出现),因此我们直接用频率来估计

P(x|c)
P(x|c)

是不可行的。 为解决这个问题,朴素贝叶斯提出了“属性条件独立性假设”:对已知类别,假设所有属性相互独立。于是贝叶斯公式可以改写成:

P(c|x)=\frac{P(c)P(x|c)}{P(x)}=\frac{P(c)}{P(x)}\prod_{i=1}^{d}P(x_i|c)
P(c|x)=\frac{P(c)P(x|c)}{P(x)}=\frac{P(c)}{P(x)}\prod_{i=1}^{d}P(x_i|c)

其中我们用样本频率估计

P(c)
P(c)

P(x_i|c)
P(x_i|c)

P(c)=\frac{|D_c|}{|D|},P(x_i|c)=\frac{|D_{c,x_i}|}{|D_c|}
P(c)=\frac{|D_c|}{|D|},P(x_i|c)=\frac{|D_{c,x_i}|}{|D_c|}

其中

|D_c|
|D_c|

表示类别为

c
c

的样本数,

|D|
|D|

表示训练集总样本数,

|D_{c,x_i}|
|D_{c,x_i}|

表示类别

c
c

样本中在第

i
i

个特征值取值为

x_i
x_i

的样本数。 求出所有类别的

P(c|x)
P(c|x)

后取后验概率最大的类别

c
c

为最近预测类别。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档