贝叶斯分类器


总结

本节从贝叶斯公式出发,通过最小化错误分类概率得到贝叶斯决策理论。进一步定义决策面和决策函数,基于正态分布讨论了贝叶斯分类的样子,但实际情况下,不一定是正态分布的,此时就需要对概率密度函数进行估计。最经典的,如果数据点都来自同一个分布,就是使用最大似然估计,如果数据点不是来自同一个分布,我们引入混合模型,采用EM算法来非线性迭代优化求解。之前都是假设属于某个分布来计算参数,但我们如果在没有假设基于什么分布的情况下,一维我们用直方图统计,高维时用超立方体,但是这是个非连续的阶跃函数,进一步引入了有更好的数学性质的核。这叫做核密度估计,这个过程中,围绕点的volume时固定的,落在这个里面的点数时变化的,如果把这个过程反过来,就成了KNN密度估计,直观上来说是给定某个点,统计距它最近的k个点的类别,判断这个点为类别数最多的那个类。最后讨论了极端情况假设,各个特征分量相互独立,称为朴素的贝叶斯分类器,这个条件太苛刻,在实际情况下少见,所以引入贝叶斯网络,能够让我们能够在两个极端的任意位置停留。


贝叶斯决策理论

贝叶斯公式
先验概率,类的概率密度函数。给定贝叶斯公式,其中那么根据贝叶斯分类法则,将分类到。

分类错误概率
分类器若把空间分为两部分,

示意图
那么如果但判别为类,且则就算产生了错误分类。
那么总的错误概率为:

最小化错误分类概率
被分类到是被错误分类的概率是
那么按贝叶斯分类则变成了最小化错误分类

最小化风险
假设是本属于第类的样本错分到第类的风险。
那么原有的最小化分类错误概率
变成最小化平均风险

总共个样本,第类个样本,第类错误分到第类的样本数
带来的惩罚
错误分类的总惩罚为\sum_{k=1}^{M} \sum_{i=1}^{M} N P\left(\omega_{\mathrm{k}}\right) \lambda_{\mathrm{ki}} \int_{R_{i}} p\left(\boldsymbol{x} | \omega_{\mathrm{k}}\right) d \boldsymbol{x}=N \sum_{i=1}^{M} \int_{R_{i}}\left(\sum_{k=1}^{M} \lambda_{\mathrm{ki}} p\left(\boldsymbol{x} | \omega_{\mathrm{k}}\right) P\left(\omega_{k}\right)\right) d \boldsymbol{x}
平均惩罚是

考虑拒绝分类
\lambda_{k l}=\left\{\begin{array}{ll}{0} & {\text { if } l=k \text { (correct) }} \\ {1} & {\text { if } l \neq k, l \neq \mathcal{D}(\text { wrong })} \\ {d} & {\text { if } l \neq k, l=\mathcal{D}(\text { in doubt } / \text { reject })}\end{array}\right.
拒绝分类的一般惩罚矩阵:\omega^{*}=\left\{\begin{array}{cc}{\arg \min _{\omega} \sum_{k} \lambda_{k i} P\left(\omega_{k} | \mathbf{x}\right)} & {\text { if the min is less than } d} \\ {\mathcal{D}} & {\text { otherwise }}\end{array}\right.

决策面和决策函数

决策面
对于类问题,最小化错误概率会将特征空间分为个区域,,若恰巧是临近的,那么把它们划分开,使错误概率最小化的决策面是
判别函数
有时不直接使用概率,而是从数学角度直接等价使用概率的函数

正态分布下的贝叶斯分类器

多元高斯分布x维空间的多元高斯概率密度函数是
其中是的均值,是的协方差矩阵。
两个例子:
例1.

image.png

例2.
image.png

高斯分布下的判别函数
使用判别函数
在高斯分布下变为了
g_{i}(\boldsymbol{x})=-\frac{1}{2} \boldsymbol{x}^{T} \Sigma_{i}^{-1} \boldsymbol{x}+\frac{1}{2} \boldsymbol{x}^{T} \Sigma_{i}^{-1} \boldsymbol{\mu}_{i}+\frac{1}{2} \boldsymbol{\mu}_{i}^{T} \Sigma_{i}^{-1} \boldsymbol{x}-\frac{1}{2} \boldsymbol{\mu}_{i}^{T} \Sigma_{i}^{-1} \boldsymbol{\mu}_{i}+\ln P\left(\omega_{i}\right)+c_{i}其中为常数
在的情况下,对应的决策曲线是二次曲线,此时贝叶斯分类器是二次分类器。特别的,协方差矩阵相同时,决策面变成一个超平面。

然而,概率密度函数通常是未知的,可能并非正态分布,此时就需要估计。

概率密度函数的估计

最大似然估计

关于的似然函数,任务为通过一组已知特征向量来估计未知的参数。
最大似然估计,使似然函数取最大值,为了使似然函数最大化,。进一步,使用对数似然函数,它关于的导数为0,\frac{\partial L(\boldsymbol{\theta})}{\partial \boldsymbol{\theta}}=\sum_{k=1}^{N} \frac{\partial \ln p\left(\boldsymbol{x}_{k} ; \boldsymbol{\theta}\right)}{\partial \boldsymbol{\theta}}=\sum_{k=1}^{N} \frac{\mathbb{1}}{p\left(\boldsymbol{x}_{k} ; \boldsymbol{\theta}\right)} \frac{\partial p\left(\boldsymbol{x}_{k} ; \boldsymbol{\theta}\right)}{\partial \boldsymbol{\theta}}=0

混合模型

  • 假设是以的概率分别从个分布中抽取出来的。
  • 那么未知的可以写成多个密度函数的线性组合,其中。
  • 首先要选择参数形式合适的密度函数,然后基于一组训练样本计算未知参数和
  • 然后根据参数和最大化似然函数。
  • 未知参数以非线性方式进入最大化任务中,因此需要采用非线性优化迭代技术。

存在问题:

  • 训练样本的哪个样本属于个分布的哪一个分布是未知的。
  • 如果是已知的,那么最大化任务就可以分解为个最大似然估计任务。
  • 这种未知使得现在的问题变成一个不完整数据集问题。一个完整的数据样本是,表示是属于第个分布的,但是未知的。

EM算法

  • E-step:在第(t+1)轮迭代中,是已知的,这一步计算期望值



    把换成,
  • M-step:通过最大化期望值计算第(t+1)轮迭代的值,即。
    求使得期望最大化的,即。
    考虑约束,利用拉格朗日乘数法可以求出。而的计算依赖于具体分布。
  • 初始估计开始迭代,直到参数稳定。

假设分布为正态分布p\left(\boldsymbol{x} | j ; \boldsymbol{\mu}_{j}, \Sigma_{j}\right)=\frac{1}{\sqrt{|2 \pi \Sigma|}} \exp \left(-\frac{1}{2}\left(\boldsymbol{x}-\boldsymbol{\mu}_{j}\right)^{T} \Sigma_{j}^{-1}(\boldsymbol{x}-\boldsymbol{\mu})\right)

由得,\Sigma_{j}(t+1)=\frac{\sum_{k=1}^{N} P\left(j | \boldsymbol{x}_{k} ; \mathbf{\Theta}(t)\right)\left(\boldsymbol{x}_{k}-\boldsymbol{\mu}_{j}(t+1)\right)\left(\boldsymbol{x}_{k}-\boldsymbol{\mu}_{j}(t+1)\right)^{T}}{\sum_{k=1}^{N} P\left(j | \boldsymbol{x}_{k} ; \mathbf{\Theta}(t)\right)}为进行迭代,需要计算

直方图

一维情况,将x轴划分为长度为的,假设总的样本数为,有落在某个里,那么对应的概率近似为。
若为这个的中心点,在这个里的概率密度值近似为。

核密度估计(parzen窗)

因高维不能取大小为的bin,把维空间划分为边长为,容积为的超立方体,令为可用的特征向量。定义函数,。
换句话说,在以原点为中心的单位超立方体内部,这个函数等于1,在外部等于0.
那么处的概率密度变为,即取一个以为中心的边长为的超立方体,看看有多少在这个超立方体里面。
原来的是非连续的阶跃函数,现在考虑将改成平滑函数,它满足。
高斯核是一个典型的核,此时概率密度的展开为,也就是说,的估计是个高斯的均值,每个高斯以训练集的不同样本为中心。

在核密度估计中,围绕点的是固定的,而落在这个里的特征点数量在不同点之间是变化的。现在反过来,固定,而每次调节围绕的的大小使它包含个点。

KNN密度估计

调节围绕的使它包含个点,假设这个的大小为,概率密度的估计值可以写为。
概率密度最大,即使最小。

KNN估计变体及KNN分类器

  1. 在N个训练向量中,找出最近的k个,不管其类标注
  2. 在k个样本中,识别出属于的样本数。很明显,。
  3. 假设包含这k个样本的volume大小为V,则。
    KNN分类器:
    是最大的,那么就属于.

朴素的贝叶斯分类器

  • 为了得到好的对概率密度函数的估计结果,就要求训练集的样本数足够多。
  • 如果一维空间里需要个样本,才能确保得到准确的估计,那么维空间就至少需要个样本。需要的样本数随着维数增大呈指数量级上升。
  • 假设各特征分量相互独立,那么。
  • 如果这样的话,我们只需要为每个类估计l个一维概率密度函数,为了得到好的估计,个点就够了,这种独立性假设得到的分类器就是朴素贝叶斯分类器。

朴素贝叶斯分类器让我们从一个极端走向另一个极端,完全相互依赖的特征到相互独立。而贝叶斯网络让我们停留在两个极端之间的某个位置。

贝叶斯网络

贝叶斯网络:通过表示变量之间的依赖关系来表示完全联合概率分布。
概率链式规则


image.png


你可能感兴趣的:(贝叶斯分类器)