本篇内容为西瓜书第 7 章贝叶斯分类器 7.3
,7.1
,7.2
的内容:
- 7.3 朴素贝叶斯分类器
- 7.1 贝叶斯决策论
- 7.2 极大似然估计
如移动端无法正常显示文中的公式,右上角跳至网页即可正常阅读。
贝叶斯法
在对机器学习中的贝叶斯分类器进行介绍前,我们先来看一个统计学中参数估计的贝叶斯法。以方便对后面的知识进行更好的理解。
贝叶斯法的出发点是在进行抽样之前,我们已对 $\theta$ 有一定的知识,叫做先验知识。这种先验知识必须用 $\theta$ 的某种概率分布表达出来,这概率分布叫做 $\theta$ 的“先验分布”或“验前分布”。这个分布总结了我们试验之前对未知参数 $\theta$ 的知识。这是贝叶斯学派处理统计问题的一个基本思想。
而其它参数估计的方法,在我们心目中,未知参数 $\theta$ 就简单的是一个未知数,在抽取样本之前,我们对 $\theta$ 没有任何的了解,所有的信息全来自样本。
贝叶斯学派是数理统计学中的一大学派。
设总体有概率密度 $f(x,\theta)$(或概率函数,若总体分布为离散的),从这总体抽样本 $x_1, x_2, ···,x_n$,则样本密度为 $f(x_1, \theta), f(x_2, \theta), ···, f(x_n, \theta)$。它可视为在给定 $\theta$ 值时 $(x_1, x_2, ···,x_n)$ 的密度,由式 $f(x_1, x_2) = f_2(x_2)f_1(x_1 | x_2)$ 得 $(\theta, x_1, x_2, ···, x_n)$ 得联合密度为
$$ h(\theta)f(x_1,\theta)···f(x_n, \theta) $$
关于式 $f(x_1, x_2) = f_2(x_2)f_1(x_1 | x_2)$:设二维随机变量 $X=(X_1, X_2)$ 有概率密度函数 $f(x_1, x_2)$。
由此,算出 $(x_1, x_2, ···,x_n)$ 的边缘密度为
$$ p(x_1, x_2, ···,x_n)=\quad\int_{}{}h(\theta)f(x_1,\theta)···f(x_n, \theta)d\theta $$
再由 $f_1(x_1 | x_2)=f(x_1, x_2)/f_2(x_2)$ 得在给定 $x_1, x_2, ···,x_n$ 的条件下,$\theta$ 的条件密度为
$$ h(\theta|x_1, x_2, ···, x_n)=\frac{h(\theta)f(x_1,\theta)···f(x_n, \theta)}{p(x_1, x_2, ···,x_n)} $$
这个条件密度代表了我们现在(取得样本 $x_1, x_2, ···,x_n$ 后)对 $\theta$ 的知识,它综合了 $\theta$ 的先验信息与由样本带来的信息。上式称为 $\theta$ 的“后验密度”。
贝叶斯学派的另一个重要观点是:在得出后验分布后,对参数 $\theta$ 的任何统计推断,都只能基于这个后验分布。
那么,如何选择上面提到的先验分布 $h(\theta)$?贝叶斯本人曾提出“同等无知”原则,即事先认为 $\theta$ 取 $[0,1]$ 内一切值都是同等可能,就是说取 $[0,1]$ 内均匀分布 $R(0, 1)$ 作为 $\theta$ 的先验分布。又称贝叶斯原则。被广泛应用到其它情况,不过随着所估计参数的范围和性质不同,具体表现形式也不同。
前面铺垫了这么多,就是为了更好了理解贝叶斯学派的思想,下面我们开始介绍机器学习中的贝叶斯分类器。
朴素贝叶斯分类器
朴素贝叶斯的假设
- 特征独立性:一个特征出现的概率,与其它特征(条件)独立。即对于给定分类的条件下,特征独立。
- 特征均衡性:每个特征同等重要。
基本方法
朴素贝叶斯(naive Bayes) 法是基于贝叶斯定理与特征条件独立假设的分类方法,对于给定的训练数据集,首先基于特征条件独立假设学习输入/输出的联合概率分布:然后基于此模型,对给定的输入 $x$,利用贝叶斯定理求出后验概率最大的输出 $y$。
对于给定的特征向量 $x_1, x_2, ···,x_n$,类别 $c$ 的概率可以根据贝叶斯公式得到:
$$ P(c | x_1, x_2, ···,x_n)=\frac{P(c)P(x_1, x_2, ···,x_n|c)}{P(x_1, x_2, ···,x_n)} $$
贝叶斯公式:$P(B_i|A)=\frac{P(B_i)P(A|B_i)}{\sum_{j=1}^{n}P(B_j)P(A|B_j)}$
其中,$P(c)$ 是先验概率,$P(x_1, x_2, ···,x_n|c)$ 是样本 $x$ 相对于类标记 $c$ 的类条件概率 (class-conditional probability)。
有了先验概率分布和条件概率分布,学习到联合概率分布。
条件概率分布 $P(x_1, x_2, ···,x_n|c)$ 有指数级数量的参数,其估计是不可行的。因此,基于条件独立性假设,上式可重写为:
$$ P(c | x_1, x_2, ···,x_n)=\frac{P(c)P(x_1, x_2, ···,x_n|c)}{P(x_1, x_2, ···,x_n)} \\ =\frac{P(c)}{P(x)}\prod_{i=1}^{d}P(x_i|c) $$
其中,$d$ 为特征数目,$x_i$ 为 $x$ 在第 $i$ 个特征上的取值。
对条件独立性假设通俗的理解就是给定类别 $c$ 时,给不给出 $x_1, ···,x_{i-1},x_{i+1},···,x_n$ 不影响 $x_i$ 的取值。
在给定样本的前提下,$P(x_1, x_2, ···,x_n)$ 是常数,所以有:
$$ P(c | x_1, x_2, ···,x_n) \propto P(c)\prod_{i=1}^{d}P(x_i|c) $$
从而,得到朴素贝叶斯分类器的表达式:
$$ h_{nb}(x)= \begin{equation} \mathop{\arg\max}_{c\in{y}}P(c)\prod_{i=1}^{d}P(x_i|c) \end{equation} $$
显然,朴素贝叶斯分类器的训练过程就是基于训练集 $D$ 来估计类先验概率 $P(c)$,并为每个特征估计条件概率 $P(x_i|c)$。
朴素贝叶斯算法
- 输入:训练数据;实例 x。
- 输出:实例 x 的分类。
1、计算先验概率 $P(c)$ 及条件概率 $P(x_1, x_2, ···,x_n|c)$
2、对于给定的实例 $x$,计算
$$ P(c)\prod_{i=1}^{d}P(x_i|c) $$
3、确定实例 $x$ 的类:
$$ h_{nb}(x)=\mathop{\arg\max}_{c\in{y}}P(c)\prod_{i=1}^{d}P(x_i|c) $$
下面我们看一个例题,就能很好的理解这个过程了。
在学完贝叶斯估计后,我们引入拉普拉斯 (Laplace) 平滑来进行计算:
贝叶斯决策论
后验概率最大化的含义
朴素贝叶斯法将实例分到后验概率最大的类中。这等价与期望风险最小化。
假设有 $N$ 种可能的类别标记,即 $y=\{c_1, c_2, ···, c_N\}$,$\lambda_{ij}$ 是将一个真实标记为 $c_j$ 的样本误分类为 $c_i$ 所产生的期望损失。具体来说,若目标是最小化分类错误率,则误判损失 $\lambda_{ij}$ 可写为
$$ \lambda_{ij}= 0, if i=j \\ \lambda_{ij}=1, otherwise $$
即 0-1 损失函数。
由此可得到期望风险函数。依据贝叶斯判定准则,得到最小化分类错误率的贝叶斯最优分类器为
$$ h^*(x)=\mathop{\arg\max}_{c\in{y}}P(c|x) $$
即对每个样本 $x$,选择能使后验概率 $P(c|x)$ 最大的类别标记。
以上,根据期望风险最小化准则得到了后验概率最大化准则。这就是朴素贝叶斯法所采用的原理。
贝叶斯判定准则:为最小化总体风险,只需在每个样本上选择那个能是条件风险最小的类别标记。
具体推导过程可参照《机器学习》147 页和统计学习方法 49 页,这里不再赘述。
极大似然估计
前面我们介绍了对于参数估计统计学界有两种解决方法。在本篇中对应的为极大似然估计和贝叶斯估计。
极大似然估计的简单介绍
对于极大似然估计来说,首先假设所得样本服从某一分布,为估计出这个分布中的参数,给出似然函数,然后用似然程度最大的那个点去作为真实参数的估计值,即在给定样本的条件下,这个值“看来最像”是真参数值。由于计算过程中的连乘操作易造成下溢,通常使用对数似然函数。
似然函数:当样本固定而将其分布(即概率密度函数或概率函数)看作参数的函数时,它称为“似然函数”。
贝叶斯估计
用极大似然估计可能会出现所要估计的概率值为 0 的情况。这时会影响到后验概率的计算结果,使分类产生偏差。解决这一问题的方法是采用贝叶斯估计。
令 $D_c$ 表示训练集 $D$ 中第 $c$ 类样本组成的集合,若有充足的独立同分布样本,估计出类先验概率
$$ P(c)=\frac{|D_c|+\lambda}{|D|+N\lambda} $$
条件概率 $P(x_i|c)$ 的贝叶斯估计是
$$ P(x_i|c)=\frac{|D_{c,x_i}|+\lambda}{|D_c|+N_i\lambda} $$
其中,$N$表示训练集 $D$ 中可能的类别数,$N_i$ 表示第 $i$ 个特征可能的取值数。
式中 $\lambda\ge0$,等价于在随机变量各个取值的频数上赋予一个正数 $\lambda>0$。
当 $\lambda=0$ 时,就是极大似然估计。
当 $\lambda=1$ 时,称为 Laplace 平滑,也是常取的数值。
当 $\lambda<1$ 时,称为 Lidstone 平滑。
总结
对上述内容进行简单的总结就是:朴素贝叶斯法利用贝叶斯定理与学到的联合概率模型进行分类预测,将输入 $x$ 分到后验概率最大的类 $y$。其原理为后验概率最大等价于 0-1 损失函数时的期望风险最小化。
参考链接:
概率论与数理统计
全概公式和贝叶斯公式的理解
最大似然函数估计
不足之处,欢迎指正。
$$$$
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。