首先,我们知道机器学习分为监督学习和非监督学习两大类。在监督学习中,我们主要面对的是拟合问题(regression)和分类问题(classification)。在本节中,我们先来了解一下如何使用贝叶斯规则进行分类。
通常,我们会采集到许多的样本向量 x 并生成样本集X,然后我们给它们加上对应的标签(label) y ,标签表示该样本对应的分类结果,这样我们就获得了一个样本向量和分类结果一一对应的数据集。我们先来考虑一下二分类问题(标签的取值只有两种),下面给出贝叶斯公式:
上式中, x 是我们要进行分类的特征向量,wi是样本所属的类别。
我们的目标是:当得到一个新的样本 x 时,能从已有的数据集中推断出该样本属于某一类的可能性大小,即推断出P(wi|x)的大小。通过对数据集进行统计,我们可以得到给定某一类时,样本 x 出现的概率(P(x|wi)),以及数据集中某一类样本的数据出现的概率 P(x) 。通过对 P(x|wi) 进行边沿积分,我们可以得到某个样本 x 的出现概率,边沿积分公式下面给出:
(这里考虑离散的情况,积分变为求和,同时只考虑二分类问题)
到这里,我们就可以通过对 P(w1|x) 和 P(w2|x) 的大小进行比较,从而得出分类结果了,我们的分类规则为:如果 P(w1|x) > P(w2|x) ,则 x 属于w1;如果 P(w1|x) < P(w2|x) ,则 x 属于w2。
知道了判决规则之后,将贝叶斯公式代入进行推导,获取一个等价的判决规则
直观上,我们认为尽可能的使分类正确才是衡量分类器好坏的标准,但在某些情况下,使用分类正确率来衡量分类器好坏是不合适的。比如根据癌症患者的一些信息,判断该患者是早期还是晚期患者,如果我们一味的准求准确率,而将部分晚期患者错判为早期患者,这将是致命的错误。因此这里我们引出了两种衡量分类器好坏
上式中 λki 是惩罚项,是将属于第k类的 x 分到第i类中所收到的惩罚。故我们可以定义一个惩罚矩阵
如果正确分类的话惩罚项为0,表示不受惩罚,根据需要去定义分类错误时收到的惩罚大小。
因此在分类时,我们要计算k=1和2时的损失大小,将x分给使损失最小的那一类,这就是最小平均风险。但是,要注意的是此时的损失 li 是没有概率意义的。
我们在获取到大量的样本数据 x 之后,想知道x是服从什么样的分布的,了解概率分布将更好的帮助我们改进我们的分类器模型。所以,从样本中估计出概率分布的参数就变得尤为重要。
在介绍估计方法之前,我们要先了解一些概念:
下面会介绍四种参数估计方法。
因为我们的样本是随机获得的,样本间是独立同分布的,所以我们可以写出似然函数
通过该方法的名字我们就可以知道,我们是要使参数的后验概率达到最大。和极大似然估计最大的不同是,这里我们认为 θ 是一个随机向量,也是具有某种形式概率分布的。极大似然估计中仅仅将 θ 认为是一个变量,是没有统计特性的,这一点要尤其注意。
根据贝叶斯公式,我们可以得到参数 θ 的表达式:
首先引入熵的概念,熵表示一个系统的混乱程度,这是从物理学中借鉴过来的概念,下面给出表达式:
这是一种非常直观的估计方法,引入下面这张图来进行说明
我们只需要合理选择x的间隔即可,间隔小,可以得到更加精确的估计,但是如果样本数量较少的话,概率密度函数会出现很多毛刺。间隔大,估计出的概率密度函数更加平滑,但是精度较低,解决方法只有增大样本数量。
估计一维概率密度函数时,我们需要观察样本在x的一小段线段上的分布情况,估计二维概率密度函数时,由于特征数量从1变成了2,于是我们要观察样本在x1,x2的线段组成的一个小方块上的分布情况,到了三维概率密度函数时,观测区间变成了一个立方体,再到高维情况下,观测区间是超立方体(超球体)。
到这就出现问题了,虽然该方法的计算十分简单,但是随着特征数量的增长,观测区间的个数也是指数增长的,同时区间间隔的大小也影响观测区间的个数。
因此,当特征数量很多时,这种方法的效率可能是很低的。
现在很多邮箱系统都由垃圾邮件自动屏蔽功能,但是系统是怎么知道一封邮件是不是垃圾邮件呢?
这里引出了朴素贝叶斯技术,朴素贝叶斯和贝叶斯最大的不同在于给定了一个很强的条件,就是条件概率之间是相互独立的,下面给出具体的公式:
首先,我们来关注一下概率的链式规则:
正如图中所示,概率是一级一级传递下来的,在这个类似于决策树的结构中,可以计算出端点上的概率值,这就是我们进行判断的依据。
[1]: 模式识别第四版
[2]: 统计学习方法