《机器学习》周志华-CH7(贝叶斯分类)

7.1贝叶斯决策论

  对分类任务而言,在所有相关概率已知的理想情形下,贝叶斯决策论考虑如何基于这些概率核误判损失来选择最优的类别标记。

  假设有种可能,即
R ( x i ∣ x ) = ∑ j = 1 N λ i j P ( c j ∣ x ) \begin{equation} R(x_{i}|x)=\sum_{j=1}^{N}\lambda_{ij}P(c_{j}|x) \tag{7.1} \end{equation} R(xix)=j=1NλijP(cjx)(7.1)

  寻找一个判定准则,

   h ∗ h^{*} h称为贝叶斯最优分类器

  总体风险 R ( h ∗ ) R(h^{*}) R(h)称为贝叶斯风险。

   1 − R ( h ∗ ) 1-R(h^{*}) 1R(h)反映了分类器所能达到的最佳性能,即模型精度上限。

  具体而言,若目标是最小化分类错误率,则误判损失 λ i j \lambda_{ij} λij可写为:

λ i j = { 0 i f i = j 1 o t h e r \lambda_{ij}= \begin{cases} 0 & if \quad i=j \\ 1 & other \\ \end{cases} λij={01ifi=jother

  条件风险 R ( c ∣ x ) = 1 − P ( c ∣ x ) R(c|x)=1-P(c|x) R(cx)=1P(cx)

  最小化分类错误率的贝叶斯最优分类器为

在这里插入图片描述

  对每个样本 x x x,选后验概率 P ( c ∣ x ) P(c|x) P(cx)最大的类别标记

  机器学习所要实现的是基于有限训练样本集尽可能准确地估计出后验概率 P ( c ∣ x ) P(c|x) P(cx),主要有两种策略
在这里插入图片描述

  类的先验概率 P ( c ) P(c) P(c):表达了各类样本所占比例,根据大数定律,训练集包含充分独立样本, P ( c ) P(c) P(c)可通过各类样本出现频率估计。

  类的条件概率 P ( x ∣ c ) P(x|c) P(xc):由于涉及关于 x x x所有属性的联合概率。直接根据样本估计可能遇到困难,使用频率来估计不可行,因为“未被观测到”与“出现概率为零”通常是不同的。

7.2极大似然估计

  估计类条件概率记关于类别 c c c的类条件概率为 P ( x ∣ c ) P(x|c) P(xc),假设 P ( x ∣ c ) P(x|c) P(xc)具有确定的形式并且被参数向量 θ c \theta_c θc唯一确定,则我们的任务就是利用训练集 D D D估计参数 θ c \theta_c θc,将 P ( x ∣ c ) P(x|c) P(xc)记为 P ( x ∣ θ c ) P(x|\theta_c) P(xθc)

  概率模型的训练过程就是参数估计的过程

  参数估计两种不同方案:

  • 频率主义学派,认为参数虽然未知,但客观存在,可通过优化似然函数等准则确定参数值。
  • 贝叶斯派认为参数是未观察到的随机变量,其本身可有分布,因此可假设服从一个先验分布,然后基于观测到的数据来计算参数的后验分布。

  极大似然估计MLE,根据数据采样来估计概率分布

  令 D c D_c Dc表示训练集 D D D的第 c c c类样本集合,假设样本独立同分布。

  参数 θ c \theta_c θc对数据集 D c D_c Dc的似然说
P ( D c ∣ θ c ) = ∏ x ∈ D c P ( x ∣ θ c ) \begin{equation} P(D_c|\theta_c)=\prod_{x\in{D_{c}}}P(x|\theta_c) \tag{7.9} \end{equation} P(Dcθc)=xDcP(xθc)(7.9)
   θ c \theta_c θc进行极大似然估计,就是去寻找最大化似然 P ( D c ∣ θ c ) P(D_c|\theta_c) P(Dcθc)的参数值 θ c ^ \hat{\theta_c} θc^

  (7.9)连乘造成下溢,通常为对数似然(log-likehood)
L L ( θ c ) = l o g P ( D c ∣ θ c ) = ∑ x ∈ D c l o g P ( x ∣ θ c ) \begin{equation} LL(\theta_c)=logP(D_{c}|\theta_c) \\ =\sum_{x\in{D_c}}logP(x|\theta_c) \tag{7.10} \end{equation} LL(θc)=logP(Dcθc)=xDclogP(xθc)(7.10)
  此时参数 θ c \theta_c θc的极大似然估计 θ c ^ \hat{\theta_c} θc^

θ c ^ = a r g m a x θ c L L ( θ c ) \begin{equation} \hat{\theta_c}=\underset{\theta_c}{argmax}LL(\theta_c) \tag{7.11} \end{equation} θc^=θcargmaxLL(θc)(7.11)

  在连续属性下,假设概率密度函数

  估计结果的准确性严重依赖所假设的概率分布形式是否符合潜在的真实数据分布。

7.3朴素贝叶斯分类器

  贝叶斯公式来估计后验概率 P ( c ∣ x ) P(c|x) P(cx)困难在于 P ( x ∣ c ) P(x|c) P(xc)是所有属性的联合概率,难以从有限训练样本直接估计。

  朴素贝叶斯分类器采用“属性条件独立性假设”对已知类别,假设所有属性相互独立,假设每个属性独立地对分类结果发生影响
在这里插入图片描述

  朴素贝叶斯分类器的训练过程就是基于训练集 D D D来估计类先验概率 P ( c ) P(c) P(c),并为每个属性来估计条件概率 P ( x i ∣ c ) P(x_i|c) P(xic)

   D c D_c Dc表示训练集 D D D中第 c c c类集合,样本充足,则类先验概率:
P ( c ) = ∣ D c ∣ ∣ D ∣ \begin{equation} P(c)=\frac{|D_c|}{|D|} \tag{7.16} \end{equation} P(c)=DDc(7.16)

  离散属性而言, D c , x i D_{c,x_i} Dc,xi表示 D c D_c Dc中在第 i i i个属性上取值为 x i x_i xi的样本组成的集合,则条件概率 P ( x i ∣ c ) P(x_i|c) P(xic):
P ( x i ∣ c ) = ∣ D c , x i ∣ ∣ D c ∣ \begin{equation} P(x_i|c)=\frac{|D_{c,x_i}|}{|D_c|} \tag{7.17} \end{equation} P(xic)=DcDc,xi(7.17)

在这里插入图片描述
  下面用西瓜数据集3.0训练一个朴素贝叶斯分类器,对测试例“测1”进行分类

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

  需注意,若某个属性值在训练中没有与某个类同时出现过,如

   P 清脆 ∣ 是 = P ( 敲声 = 清脆 ∣ 好瓜 = 是 ) = 0 8 = 0 P_{清脆|是}=P(敲声=清脆|好瓜=是)=\frac{0}{8}=0 P清脆=P(敲声=清脆好瓜=)=80=0

  此时乘积永远是 0 0 0,避免这种情况,在估计概率值时通常进行“平滑”,查用“拉普拉斯修正”

  令 N N N表示训练集 D D D中可能的类别数, N i N_i Ni表示第 i i i个属性可能取值
在这里插入图片描述

7.4半朴素贝叶斯分类器

  人们尝试对属性条件独立性假设进行一定程度的放松。

  半朴素贝叶斯分类器基本想法:适当考虑一部分属性间的相互依赖信息,从而既不需要进行完全联合概率计算,又不至于彻底忽略了比较强的属性依赖关系。

  “独依赖估计(One-Dependent Estimator,ODE)” 是半朴素贝叶斯分类器最常用的一种策略。顾名思义,所谓“独依赖”就是假设每个属性在类别之外最多仅依赖一个其他属性,即:
在这里插入图片描述

  如何确定每个属性的父属性?不同策略的独依赖分类器又不同

  所有属性都依赖于同一个属性,称为“超父”, x 1 x_1 x1必是超父属性
在这里插入图片描述
在这里插入图片描述

  AODE(Averaged One-Dependent Estimator) 尝试将每个属性作为超父构建SPODE,然后将那些具有足够训练数据支持的SPODE集成为最终结果,即:
在这里插入图片描述

  其中 D x i D_{xi} Dxi是第 i i i个属性取值为 x i x_i xi样本集合, m ′ m^{'} m为阈值常数
在这里插入图片描述
在这里插入图片描述

  AODE无需模型选择,既能通过预计算节省预测时间,也能采取懒惰学习方法在预测时在再进行计数,易于实现增量学习。

7.5贝叶斯网

  贝叶斯网(Bayesian network) 亦称“信念网”(belief network),借助有向五环图(Directed Acyclic Graph,简称DAG) 刻画属性依赖关系,并使用条件概率表(Conditional Probability Table,简称CPT)来描述属性联合概率分布。

  一个贝叶斯网 B B B 由结构 G G G和参数 θ \theta θ两部分组成, B = < G , θ > B=<G,\theta> B=<G,θ>

  网络结构 G G G是一个有向无环图,其中每个结点对应一个属性,两属性有直接依赖关系则由一条边连接

  参数 θ \theta θ定量描述这种依赖关系,假设属性 x i x_i xi G G G中的父结点集为 π i \pi_{i} πi,则 θ \theta θ包含了每个属性的条件概率表是 θ x i ∣ π i = P B ( x i ∣ π i ) \theta_{x_i|\pi_i}=P_{B}(x_i|\pi_i) θxiπi=PB(xiπi)
在这里插入图片描述

7.5.1结构

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

   B = < G , θ > B=<G,\theta> B=<G,θ>将属性 x 1 , x 2 , . . . , x d x_1,x_2,...,x_d x1,x2,...,xd的联合概率分布定义为
P B ( x 1 , x 2 , . . . , x d ) = ∏ i = 1 d P B ( x i ∣ π i ) = ∏ i = 1 d θ x i ∣ π i \begin{equation} P_{B}(x_1,x_2,...,x_d)=\prod_{i=1}^{d}P_{B}(x_i|\pi_i)=\prod_{i=1}^{d}\theta_{x_i|\pi_i} \tag{7.26} \end{equation} PB(x1,x2,...,xd)=i=1dPB(xiπi)=i=1dθxiπi(7.26)
  以图7.2为例,联合概率分布定义为
P ( x 1 , x 2 , x 3 , x 4 , x 5 ) = P ( x 1 ) P ( x 2 ) P ( x 3 ∣ x 1 ) P ( x 4 ∣ x 1 , x 2 ) P ( x 5 ∣ x 2 ) P(x_1,x_2,x_3,x_4,x_5)=P(x_1)P(x_2)P(x_3|x_1)P(x_4|x_1,x_2)P(x_5|x_2) P(x1,x2,x3,x4,x5)=P(x1)P(x2)P(x3x1)P(x4x1,x2)P(x5x2)
  显然, x 3 x_3 x3 x 4 x_4 x4在给定 x 1 x_1 x1的取值时独立, x 4 x_4 x4 x 5 x_5 x5在给定 x 2 x_2 x2的取值时独立,

在这里插入图片描述

  为了分析有向图中变量间的条件独立性,可使用“有向分离”

  先把有向图转变为一个无向图

  • 找出有向图中所有 V V V型结构,在 V V V型结构两个父结点之间加一条无向边
  • 将所有有向边设为无向边

  由此产生的无向图称为“道德图”,令父结点相连的过程称为“道德化”
在这里插入图片描述

7.5.2学习

  贝叶斯网学习的首要任务就是根据训练数据集来找出结构最“恰当”的贝叶斯网

  “评分搜索” 先定义一个评分函数,以此来评估贝叶斯网与训练数据的契合程度,基于评分函数在寻找结构最优的贝叶斯网

  “最小描述长度” MDL准则

  每个贝叶斯网描述了一个在训练数据上的概率分布,自有一套编码机制能使那些经常出现的样本有更短的编码。选择综合长度最短的网。

  给定训练集 D = { x 1 , x 2 , . . . , x m } D=\{x_1,x_2,...,x_m\} D={x1,x2,...,xm},贝叶斯网 B = < G , θ > B=<G,\theta> B=<G,θ> D D D上的评分函数:

s ( B ∣ D ) = f ( θ ) ∣ B ∣ − L L ( B ∣ D ) \begin{equation} s(B|D)=f(\theta)|B|-LL(B|D) \tag{7.28} \end{equation} s(BD)=f(θ)BLL(BD)(7.28)
  其中 ∣ B ∣ |B| B是贝叶斯网的参数个数; f ( θ ) f(\theta) f(θ)表示描述每个参数 θ \theta θ所需的字节数;
L L ( B ∣ D ) = ∑ i = 1 m l o g P B ( x i ) \begin{equation} LL(B|D)=\sum_{i=1}^{m}logP_B(x_i) \tag{7.29} \end{equation} LL(BD)=i=1mlogPB(xi)(7.29)
   S ( B ∣ D ) S(B|D) S(BD)第1项是描述网 B B B字节数,第2项是 B B B对应概率分布 P B P_B PB的字节数

  • f ( θ ) = 1 f(\theta)=1 f(θ)=1得AIC评分函数
    A I C ( B ∣ D ) = ∣ B ∣ − L L ( B ∣ D ) \begin{equation} AIC(B|D)=|B|-LL(B|D) \tag{7.30} \end{equation} AIC(BD)=BLL(BD)(7.30)
  • f ( θ ) = 1 2 l o g m f(\theta)=\frac{1}{2}log^m f(θ)=21logm得BIC评分函数
    B I C ( B ∣ D ) = 1 2 l o g m ∣ B ∣ − L L ( B ∣ D ) \begin{equation} BIC(B|D)=\frac{1}{2}log^m|B|-LL(B|D) \tag{7.31} \end{equation} BIC(BD)=21logmBLL(BD)(7.31)
  • f ( θ ) = 0 f(\theta)=0 f(θ)=0评分函数退化为负对数似然
      若网 B = < G , θ > B=<G,\theta> B=<G,θ> G G G固定,则 S ( B ∣ D ) S(B|D) S(BD)第1项为常数,参数 θ x i ∣ π i \theta_{x_i|\pi_i} θxiπi可直接由数据集 D D D得到:

θ x i ∣ π i = P ^ D ( x i ∣ π i ) \begin{equation} \theta_{x_i|\pi_i}=\hat{P}_D(x_i|\pi_i) \tag{7.32} \end{equation} θxiπi=P^D(xiπi)(7.32)

7.6EM算法

  前面训练样本都是"完整"的,实际上并不一定都是“完整”。

在这里插入图片描述

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Next---YOLO

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

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

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

打赏作者

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

抵扣说明:

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

余额充值