700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 西瓜书+实战+吴恩达机器学习(八)监督学习之朴素贝叶斯 Naive Bayes

西瓜书+实战+吴恩达机器学习(八)监督学习之朴素贝叶斯 Naive Bayes

时间:2019-09-08 20:22:08

相关推荐

西瓜书+实战+吴恩达机器学习(八)监督学习之朴素贝叶斯 Naive Bayes

文章目录

0. 前言1. 朴素贝叶斯算法2. 半朴素贝叶斯算法2.1. ODE2.2. SPODE2.3. TAN2.4. AODE

如果这篇文章对你有一点小小的帮助,请给个关注,点个赞喔,我会非常开心的~

0. 前言

贝叶斯算法根据概率,选择概率最大的一类。

1. 朴素贝叶斯算法

朴素贝叶斯(naive Bayes)采用了属性条件独立性假设:对已知类别,假设所有属性相互独立。

P(c∣x)=P(c)P(x∣c)P(x)=P(c)P(x)∏i=1dP(xi∣c)P(c\mid x)=\frac{P(c)P(x\mid c)}{P(x)}=\frac{P(c)}{P(x)}\prod_{i=1}^dP(x_i\mid c) P(c∣x)=P(x)P(c)P(x∣c)​=P(x)P(c)​i=1∏d​P(xi​∣c)

P(c)P(c)P(c):类先验概率,表达了各类样本所占比例,根据大数定律,可通过频率估计概率P(x∣c)P(x\mid c)P(x∣c):样本xxx相对于类别ccc的条件概率,根据假设,每个属性独立对结果影响P(x)P(x)P(x):归一化证据因子,与类别标记无关

朴素贝叶斯的判定准则为:

hnb(x)=arg⁡max⁡c∈CP(c)∏i=1dP(xi∣c)h_{nb}(x)=\arg \max_{c\in C}P(c)\prod_{i=1}^dP(x_i\mid c) hnb​(x)=argc∈Cmax​P(c)i=1∏d​P(xi​∣c)

其中,P(c)=∣Dc∣∣D∣P(c)=\frac{|D_c|}{|D|}P(c)=∣D∣∣Dc​∣​,对于离散属性P(xi∣c)=∣Dc,xi∣∣Dc∣P(x_i\mid c)=\frac{|D_{c,x_i}|}{|D_c|}P(xi​∣c)=∣Dc​∣∣Dc,xi​​∣​,对于连续属性采用概率密度函数。

若某个属性值没有与每个类同时出现,则会造成连乘计算为零,可采用拉普拉斯修正,令NNN表示训练集DDD中可能的类别数,NiN_iNi​表示第iii个属性可能的取值数目:

P^(c)=∣Dc∣+1∣D∣+NP^(xi∣c)=∣Dc,xi∣+1∣Dc∣+Ni\hat{P}(c)=\frac{|D_c|+1}{|D|+N}\\ \hat{P}(x_i\mid c)=\frac{|D_{c,x_i}|+1}{|D_c|+N_i} P^(c)=∣D∣+N∣Dc​∣+1​P^(xi​∣c)=∣Dc​∣+Ni​∣Dc,xi​​∣+1​

2. 半朴素贝叶斯算法

半朴素意味着适当考虑一部分属性间的相互依赖信息

2.1. ODE

ODE(One-Dependent Estimator)假设每个属性在类别之外最多依赖于一个其他属性。

P(c∣x)∝P(c)∏i=1dP(xi∣c,pai)P(c\mid x)\propto P(c)\prod_{i=1}^dP(x_i\mid c,pa_i) P(c∣x)∝P(c)i=1∏d​P(xi​∣c,pai​)

2.2. SPODE

SPODE(Super-Parent ODE)是假设所有属性都依赖于同一个属性,称为“超父”。

可以通过交叉验证的方式确定超父。如下图所示(图源:机器学习):

2.3. TAN

TAN(Tree Augmented naive Bayes)通过以下方式构建:

计算任意两个属性之间的条件互信息I(xi,xj∣y)=∑xi,xj;c∈CP(xi,xj∣c)log⁡P(xi,xj∣c)P(xi∣c)P(xj∣c)I(x_i,x_j\mid y)=\sum_{x_i,x_j;c\in C}P(x_i,x_j\mid c)\log \frac{P(x_i,x_j\mid c)}{P(x_i\mid c)P(x_j\mid c)}I(xi​,xj​∣y)=∑xi​,xj​;c∈C​P(xi​,xj​∣c)logP(xi​∣c)P(xj​∣c)P(xi​,xj​∣c)​以属性为节点构建完全图,边的权重设置为I(xi,xj∣y)I(x_i,x_j\mid y)I(xi​,xj​∣y)构建最大带权生成树,挑选根变量,将边设置为有向加入类别节点yyy,增加从yyy到每个属性的有向边

2.4. AODE

AODE(Average One-Dependent Estimator)是基于集成学习的分类器,AODE尝试将每个属性作为超父构建SPODE,然后将具有足够训练数据支撑的SPODE集成起来。

P(c∣x)∝∑i=1∣Dxi∣⩾m′dP(c,xi)∏j=1dP(xj∣c,xi)P(c\mid x)\propto \sum_{i=1\ |D_{x_i}|\geqslant m'}^dP(c,x_i)\prod_{j=1}^dP(x_j\mid c,x_i) P(c∣x)∝i=1∣Dxi​​∣⩾m′∑d​P(c,xi​)j=1∏d​P(xj​∣c,xi​)

如果这篇文章对你有一点小小的帮助,请给个关注,点个赞喔,我会非常开心的~

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。