《机器学习》周志华--第7章贝叶斯分类器。笔记+习题

在这里插入图片描述
将由结果推原因转化为由原因推结果

  • 适用于多分类任务
  • 目标:寻找一种分类器,使错分类率最小化/精度最大化

这章有点儿乱,不知道怎么总结

7.1贝叶斯决策论(Bayesian decision theory)

在这里插入图片描述

怎样用非数学语言讲解贝叶斯定理(Bayes theorem)?.

在这里插入图片描述

  • 我们的任务是寻找一个判定准则以最小化总体风险:

R ( h ) = E x [ R ( h ( x ) ∣ x ) ] R\left(h\right)=Ex\left[R\left(h\left(x\right)∣x\right)\right] R(h)=Ex[R(h(x)x)]

显然,每个样本最小化条件风险R(h(x)|x),则总体风险R(h)也将会被最小化。

  • 这就产生了贝叶斯判定准则(Bayes decision rule):

为最小化总体风险,只需在每个样本上选择那个能使条件风险R(c|x)最小的类别标记,

h ∗ ( x ) = a r g m i n c h^{*}\left(x\right)=argmin_c h(x)=argminc
h称为贝叶斯最优分类器(Bayes optimal classifier),
与之对应的总体风险 R ( h )称为贝叶斯风险(Bayes risk).
1 − R ( h ∗ )反映了分类器所能达到的最好性能,即通过机器学习所能产生的模型精度的理论上限。

在这里插入图片描述

  • 后验概率 P(c∣x)有两种策略获得:
    在这里插入图片描述
    生成式模型考虑

在这里插入图片描述
在这里插入图片描述

7.2极大似然估计

在这里插入图片描述

估计类条件概率的常用策略:先假定其具有某种确定的概率分布形式,再基于训练样本对概率分布参数估计。

似然是推测参数的分布
而求最大似然估计的问题,就变成了求似然函数的极值。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
此时,取log使连乘变为连加,在求参数。

在这里插入图片描述
推导如下:
在这里插入图片描述

7.3朴素贝叶斯分类器

在这里插入图片描述

7.3.1朴素贝叶斯分类器表达式

贝叶斯公式来估计后验概率 P(c I x) 的主要困难:
类条件概率 P(x I c) 是所有属性上的联合概率,难以从有限的训练样本直接估计而得。

为避开这个障碍,朴素贝叶斯分类器(naÏve Bayes classifier)采用了 “属性条件独立性假设” : 对已知类别,假设所有属性相互独立

假设每个属性独立地对分类结果发生影响,则贝叶斯公式可写成:
在这里插入图片描述

由于对所有类别来说 P(x) 相同,因此贝叶斯判定准则有
在这里插入图片描述

7.3.2朴素贝叶斯分类器的训练过程

在这里插入图片描述
在这里插入图片描述

7.3.3 朴素贝叶斯分类器举例

在这里插入图片描述

1.
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
由于0.063>6.8*10-5,因此该分类器将“测1”判别为“好瓜”

注意
在这里插入图片描述

因此,我们引入了“拉普拉斯修正
在这里插入图片描述
上图的第一个式子有问题。
在这里插入图片描述

在这里插入图片描述
显然,拉普拉斯平滑修正了因训练集样本不充分造成的概率为0的问题,并且在训练集变大时,估计值也逐渐趋向于实际的概率值。

==2.==再来看一个例子
在这里插入图片描述
在这里插入图片描述
因此,这个打喷嚏的建筑工人,有66%的概率是得了感冒。同理,可以计算这个病人患上过敏或脑震荡的概率。比较这几个概率,就可以知道他最可能得什么病。

这就是贝叶斯分类器的基本方法:在统计资料的基础上,依据某些特征,计算各个类别的概率,从而实现分类。

7.3.4其他使用方法

在这里插入图片描述

7.4半朴素贝叶斯分类器

在这里插入图片描述

半朴素贝叶斯分类器”:对属性条件独立性假设进行一定程度的放松.
基本想法是适当考虑一部分属性间的相互依赖信息,从而既不需进行完全联合概率计算,又不至于彻底忽略了比较强的属性依赖关系。

在这里插入图片描述
在这里插入图片描述

7.5贝叶斯网

在这里插入图片描述

贝叶斯网借助有向无环图来刻画属性间的依赖关系,并使用条件概率表来描述属性的联合概率分布。

在这里插入图片描述

一个贝叶斯网 B 由结构 G和参数𝜽 两部分构成,即 B =<G,𝜽 )>.

网络结构 G 是一个有向无环图,其每个结点对应于一个属性,若两个属性有直接依赖关系,则它们由一条边连接起来;参数𝜽 定量描述这种依赖关系。
在这里插入图片描述

  • a. 结构

贝叶斯网结构有效地表达了属性间的条件独立性。给定父结点集,贝叶斯网假设每个属性与它的非后裔属性独立。
在这里插入图片描述

  • b. 学习

首要任务:根据训练数据集来找出结构最恰当的贝叶斯网

评分搜索是求解这一 问题的常用办法。

评分函数(score function): 评估贝叶斯网与训练数据的契合程度,然后基于这个评分函数来寻找结构最优的贝叶斯网。

在这里插入图片描述

== c. 推断==

  1. 通过已知变量观测值来推测待推测查询变量的过程称为“推断” (inference),已知变量观测值称为“证据” (evidence)。

  2. 最理想的是直接根据贝叶斯网定义的联合概率分布来精确计算后验概率,但这样的"精确推断"己被证明是 NP 难的 。

当网络结点较多、连接稠密时,难以进行精确推断,此时需借助"近似推断"。 通过降低精度要求,在有限时间内求得近似解。在现实应用中,贝叶斯网的近似推断常用吉布斯采样,这是一种随机采样方法。

在这里插入图片描述
步骤如下:
在这里插入图片描述

需注意的是,由于马尔可夫链通常需很长时间才能趋于平稳分布,因此吉布斯采样算法的收敛速度较慢.此外,若贝叶斯网中存在极端概率 “0” 或 “1” ,则不能保证马尔可夫链存在平稳分布,此时吉布斯采样会给出错误的估 计结果.

7.6EM算法

在现实应用中往往会遇到"不完整"的训练样本。

将这种未观测到的变量称为隐变量。

EM 算法是常用的估计参数隐变量的利器,它是一种迭代式的方法。其基本想法是:若参数θ己知, 则可根据训练数据推断出最优隐变量 Z 的值 (E 步);反之,若Z 的值已知,则可方便地对参数θ做极大似然估计 (M 步).
参考link.
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • EM算法的实例:Kmeans聚类、高斯混合模型

习题

转载自https://zhuanlan.zhihu.com/p/51768750
7.1 试使用极大似然法估算回瓜数据集 3.0 中前 3 个属性的类条件概率.
在这里插入图片描述
在这里插入图片描述

7.2* 试证明:条件独立性假设不成立时,朴素贝叶斯分类器仍有可能产生最优贝叶斯分类器.

在这里插入图片描述

在这里插入图片描述

只有在两者决策边界之间(浅黄色区域),其分类情况是不同的,在其他区域,朴素贝叶斯分类结果和最优贝叶斯的分类结果是相同的,因此即便属性之间独立性假设不成立,朴素贝叶斯在某些条件(本例中就是属性概率分布在两者相交区域之外)下任然是最优贝叶斯分类器。

参考:

《On the Optimality of the Simple Bayesian Classifier under Zero-One Loss》

ps.这个例子就是来自该论文,只做了一点翻译工作。论文中给出了更全面的理论证明,和朴素贝叶斯产生最优贝叶斯分类的充分必要条件。本打算看完把理论证明也尝试复述一遍,但能力有限,一方面没有理解很透彻,另一方面证明过程有点长感觉表达能力有点不大够用…

7.3 试编程实现拉普拉斯修正的朴素贝叶斯分类器,并以西瓜数据集 3.0 为训练集,对 p.151 “测1” 样本进行判别.

链接: link.
这里代码很简单。不怎么规范。
或者
链接: link.

其中编写了函数c=nb(x,X,Y,laplace=True),可以通过参数laplace选择是否进行拉普拉斯修正。将其设为False时,可以将计算结果与教材计算结果进行对比,对比发现,教材中对于连续型属性-----密度和含糖率的正态分布参数估计中,对于方差的估计采用了无偏估计,亦即 ( s i g m a c , i 2 = f r a c 1 ∣ D c ∣ − 1 s u m x i n D c ( x − m u c , i ) 2 ) (sigma_{c,i}^{2}=frac{1}{|D_c|-1}sum_{xin D_c}(x-mu_{c,i})^2) (sigmac,i2=frac1Dc1sumxinDc(xmuc,i)2)
在这里插入图片描述

7.5 试证明:二分类任务中两类数据满足高斯分布且方差相同时,线性判别分析产生贝叶斯最优分类器.

答:在这里插入图片描述

再看看线性判别分析:在这里插入图片描述
7.6 试编程实现 AODE 分类器,并以西瓜数据集 3.0 为训练集,对 p.151的"测1" 样本进行判别.

答:代码在link.
或者
link.

提一下关于连续值处理的问题。这个书中和原论文(好像)都没有提交,所以按照自己的理解来处理了。考虑到以下,实现过程中不将连续值作为父属性。

此外AODE本身就是要将取值样本数量低于一定阈值(论文中给出的是30)的属性去除的,从这个角度来说,连续值就不能作为父属性了,当前其实可以按照区间划分将连续值离散化。
另外,虽然在样本这么小的情况下,看预测结果实际意义不大,但相比于朴素贝叶斯,AODE对于西瓜数据集的拟合更好(错误率更低)。在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

7.9 以西瓜数据集 2.0 为训练集,试基于 BIC 准则构建一个贝叶斯网.

答:

关于贝叶斯网结构的构建,书中p160只稍微提了一下,不过还是挺好理解的,《A Tutorial on Learning With Bayesian Networks》11节给出了更详细的描述。比较简单是方法就是贪心法:

  1. 初始化一个网络结构;
  2. 使用E表示当前合法的改变一条边的操作集合,比如若两个节点已经有连接,那么合法操作可以删除或者逆转,如没有连接则可以增加一条边,当前必须是在保证不会形成回路的情况;
  3. 从中选择一个使得BIC下降最大的一个作为实际操作;
  4. 循环2,3直到BIC不再下降。
    论文中也给出了其他算法。
    可以看https://article.itxueyuan.com/QnLpnM里面的第9题

7.10 以西瓜数据集 2.0 中属性"脐部"为隐变量,试基于 EM 算法构建一个贝叶斯网.
同样看https://article.itxueyuan.com/QnLpnM里面的第10题。

  • 14
    点赞
  • 102
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

汪呀呀呀呀呀呀呀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值