来源:数据分析师 CPDA | 时间:2015-07-24 | 作者:
三 朴素贝叶斯分类器
给定类标号y,朴素贝叶斯分类器在估计类条件概率时假设属性之间条件独立。条件独立假设可形式化的表达如下:
其中每个属性集X={X1,X2,…,Xd}包含d个属性。
1 条件独立性
在深入研究朴素贝叶斯分类法如何工作的细节之前,让我们先介绍条件独立概念。设X,Y和Z表示三个随机变量的集合。给定Z,X条件独立于Y,如果下面的条件成立:
条件独立的一个例子是一个人的手臂长短和他(她)的阅读能力之间的关系。你可能会发现手臂较长的人阅读能力也较强。这种关系可以用另一个因素解释,那就是年龄。小孩子的手臂往往比较短,也不具备成人的阅读能力。如果年龄一定,则观察到手臂长度和阅读能力之间的关系就消失了。因此,我们可以得出结论,在年龄一定时,手臂长度和阅读能力二者条件独立。
X和Y之间的条件独立也可以写成类似于下面公式的形式:
2 朴素贝叶斯分类器如何工作
有了条件独立假设,就不必计算X的每一个组合的类条件概率,只需对给定的Y,计算每一个Xi的条件概率。后一种方法更实用,因为它不需要很大的训练集就能获得较好的概率估计。
分类测试记录时,朴素贝叶斯分类器对每个类Y计算后验概率:
由于对所有的Y,P(X)是固定的,因此只要找出使分子最大的类就足够了。在接下来的两部分,我们描述几种估计分类属性和连续属性的条件概率的方法。
3 估计分类属性的条件概率
对分类属性Xi,根据类y中的属性值等于xi的训练实例的比例来估计条件概率P(Xi=xi|Y=y)。例如,在下图给出的训练集中,还清贷款的7个人中3个人有房,因此,条件概率P(有房=是|no)等于3/7。同理,拖欠还款的人中单身的条件概率P(婚姻状况=单身|yes)=2/3。
tid | 有房 | 婚姻状况 | 年收入 | 拖欠贷款 |
1 | 是 | 单身 | 125k | 否 |
2 | 否 | 已婚 | 100k | 否 |
3 | 否 | 单身 | 70k | 否 |
4 | 是 | 已婚 | 120k | 否 |
5 | 否 | 离异 | 95k | 是 |
6 | 否 | 已婚 | 60k | 否 |
7 | 是 | 离异 | 220k | 否 |
8 | 否 | 单身 | 85k | 是 |
9 | 否 | 已婚 | 75k | 否 |
10 | 否 | 单身 | 90k | 是 |
4 估计连续属性的条件概率
朴素贝叶斯分类法使用两种方法估计连续属性的类条件概率。
参数μij可以用类yj的所有训练记录关于Xi的样本均值()来估计。同理,参数可以用这些训练记录的样本方差()来估计。例如,考虑上表中年收入这一属性。该属性关于类no的样本均值和方差如下:
给定一测试记录,应征税的收入等于120k美元,其类条件概率计算如下:
注意,前面对类条件概率的解释有一定的误导性。下面这个公式的右侧是一个概率密度函数f(xi,μij,σij)。
因为该函数是连续的,所以随机变量xi取某一特定值得概率为0。取而代之,我们应该计算xi落在区间xi到xi+ε的条件概率,其中ε是一个很小的常数:
由于ε是每个类的一个常量乘法因子,在对后验概率P(Y|X)进行规范化的时候就抵消掉了。因此,我们仍然可以使用这个公式来估计类条件概率P(Xi|Y)。
下一节,我们将对朴素贝叶斯分类器进行举例,并进一步描述条件概率的m估计和朴素贝叶斯分类器的特征。
本文由 项目数据分析师(CPDA)整理完成,严禁转载