朴素贝叶斯分类器.docx
文本预览下载声明
朴素贝叶斯概率模型
理论上,概率模型分类器是一个条件概率模型。
独立的类别变量有若干类别,条件依赖于若干特征变量 ,,...,。但问题在于如果特征数量较大或者每个特征能取大量值时,基于概率模型列出概率表变得不现实。所以我们修改这个模型使之变得可行。 贝叶斯定理有以下式子:
用朴素的语言可以表达为:
实际中,我们只关心分式中的分子部分,因为分母不依赖于而且特征的值是给定的,于是分母可以认为是一个常数。这样分子就等价于联合分布模型。
重复使用链式法则,可将该式写成条件概率的形式,如下所示:
现在“朴素”的条件独立假设开始发挥作用:假设每个特征对于其他特征,是条件独立的。这就意味着
对于,所以联合分布模型可以表达为
这意味着上述假设下,类变量的条件分布可以表达为:
其中(证据因子)是一个只依赖与等的缩放因子,当特征变量的值已知时是一个常数。 由于分解成所谓的类先验概率和独立概率分布,上述概率模型的可掌控性得到很大的提高。如果这是一个分类问题,且每个可以表达为个参数,于是相应的朴素贝叶斯模型有(k ? 1) + n r k个参数。实际应用中,通常取(二分类问题), (伯努利分布作为特征),因此模型的参数个数为,其中是二值分类特征的个数。
参数估计
所有的模型参数(例如,类的先验概率和特征的概率分布)都可以通过训练集的相关频率来估计。这些方法是概率的最大似然估计。类的先验概率可以通过假设各类等概率来计算(先验概率 = 1 / (类的数量)),或者通过训练集的各类样本出现的次数来估计(A类先验概率=(A类样本的数量)/(样本总数))。为了估计特征的分布参数,我们要先假设训练集数据满足某种分布或者非参数模型。[3] 如果要处理的是连续数据一种通常的假设是这些连续数值为高斯分布。 例如,假设训练集中有一个连续属性,。我们首先对数据根据类别分类,然后计算每个类别中的均值和方差。令 表示为在c类上的均值,令为 在c类上的方差。在给定类中某个值的概率,,可以通过将表示为均值为方差为正态分布计算出来。如下, 处理连续数值问题的另一种常用的技术是通过离散化连续数值的方法。通常,当训练样本数量较少或者是精确的分布已知时,通过概率分布的方法是一种更好的选 择。在大量样本的情形下离散化的方法表现更优,因为大量的样本可以学习到数据的分布。由于朴素贝叶斯是一种典型的用到大量样本的方法(越大计算量的模型可 以产生越高的分类精确度),所以朴素贝叶斯方法都用到离散化方法,而不是概率分布估计的方法。
样本修正
如果一个给定的类和特征值在训练集中没有一起出现过,那么基于频率的估计下该概率将为0。这将是一个问题因为与其他概率相乘时将会把其他概率的信息统统去除。所以常常要求要对每个小类样本的概率估计进行修正,以保证不会出现有为0的概率出现。
从概率模型中构造分类器
讨论至此为止我们导出了独立分布特征模型,也就是朴素贝叶斯概率模型。朴素贝叶斯分类器包括了这种模型和相应的决策规则。一个普通的规则就是选出最有可能的那个:这就是大家熟知的最大后验概率(MAP)决策准则。相应的分类器便是如下定义的公式:
讨论
尽管实际上独立假设常常是不准确的,但朴素贝叶斯分类器的若干特性让其在实践中能够取得令人惊奇的效果。特别地,各类条件特征之间的解耦意味着每个特征的分布都可以独立地被当做一维分布来估计。这样减轻了由于维数灾带 来的阻碍,当样本的特征个数增加时就不需要使样本规模呈指数增长。然而朴素贝叶斯在大多数情况下不能对类概率做出非常准确的估计,但在许多应用中这一点并 不要求。例如,朴素贝叶斯分类器中,依据最大后验概率决策规则只要正确类的后验概率比其他类要高就可以得到正确的分类。所以不管概率估计轻度的甚至是严重 的不精确都不影响正确的分类结果。在这种方式下,分类器可以有足够的鲁棒性去忽略朴素贝叶斯概率模型上存在的缺陷。关于朴素贝叶斯能取得成功的其他原因将 会在后文中进一步讨论。
实例
性别分类
问题描述:通过一些测量的特征,包括身高、体重、脚的尺寸,判定一个人是男性还是女性。
训练
训练数据如下:
性别
身高(英尺)
体重(磅)
脚的尺寸(英尺)
男
6
180
12
男
5.92 (511)
190
11
男
5.58 (57)
170
12
男
5.92 (511)
165
10
女
5
100
6
女
5.5 (56)
150
8
女
5.42 (55)
130
7
女
5.75 (59)
150
9
假设训练集样本的特征满足高斯分布,得到下表:
性别
均值(身高)
方差(身高)
均值(体重)
方差(体重)
均值(脚的尺寸)
方差(脚的
尺寸)
男性
5.855
3.5033e-02
176.25
1.2292e+02
11.25
9.1667e-01
女性
5.4175
9.7225e-0
显示全部