《机器学习:算法视角(原书第2版)》 —2.3.2 朴素贝叶斯分类
2.3.2 朴素贝叶斯分类
我们现在返回到执行分类而不担心结果,以便计算MAP的结果,见公式(2.14)。我们可以完全按照上面的描述进行计算,它会正常工作。然而,假设特征值的向量有许多元素,有许多不同的特征需要被度量。这会如何影响分类器?我们试着通过查看所有训练数据的直方图来估计P(XjCi)=P(X1j,X2j,…,XnjCi)(上标索引是向量的元素)。随着X的维度增加(随着n变大),直方图的每个区间中的数据量缩小。这是维度灾难(2.1.2节),意味着随着维度的增加我们需要更多的数据。
我们可以做出一个简单的假设。在给定分类的情况下,假设特征向量的元素在条件上彼此独立。因此,给定类Ci,不同特征的值不会相互影响。这是分类器名称中的朴素性,因为它通常没有多大意义——它告诉我们这些特征是相互独立的。如果我们试图对硬币进行分类,则它告诉我们硬币的重量和直径是相互独立的,这显然是错误的。但是,它确实意味着获取特征值字符串的概率P(X1j=a1,X2j=a2,…,Xnj=anCi)恰好等于将所有元素概率相乘的乘积:
这更容易计算,并降低了维度灾难的严重性。因此,朴素贝叶斯分类器的分类器规则是选择使以下式子得到最大值的类Ci:
(2.16)
这显然是对评估全概率的很大的简化,因此出乎意料的是,朴素贝叶斯分类器已被证明与某些领域中的其他分类方法具有可比较的结果。在简化为真的情况下,使得特征在条件上彼此独立,朴素贝叶斯分类器恰好产生MAP分类。
在关于树学习的第12章中,特别是12.4节,有一个例子是关于你在晚上做什么的,这取决于你是否面临着任务截止日期以及正在发生的事情。如下所示,数据包括过去几天的一组先前示例。
在第12章中,我们将看到决策树学习这些数据的结果,但在这里我们将使用朴素贝叶斯分类器。我们输入特征变量的当前值(deadline,is there a party,等),并要求分类器根据训练数据集中的数据计算你在晚上可能执行的四种可能事项中每一项的概率。然后我们选择最有可能的类。请注意,概率会非常小。这是贝叶斯分类器的一个缺点:由于我们将大量概率相乘,这些概率都小于1,因此数字会变得非常小。
假设你有即将到达的最后期限,但没有一个是特别紧急的,没有派对,而且你现在很慵懒。然后分类器需要评估:
●P(Party)×P(NearParty)×P(NoPartyParty)×P(LazyParty)
●P(Study)×P(NearStudy)×P(NoPartyStudy)×P(LazyStudy)
●P(Pub)×P(NearPub)×P(NoPartyPub)×P(LazyPub)
●P(TV)×P(NearTV)×P(NoPartyTV)×P(LazyTV)
使用上面的数据评估:
P(Partynear(not urgent)deadline,no party,lazy)=510×25×05×35=0(2.17)
P(Studynear(not urgent)deadline,no party,lazy)=310×13×33×13=130 (2.18)
P(Pubnear(not urgent)deadline,no party,lazy)=110×01×11×11=0(2.19)
P(TVnear(not urgent)deadline,no party,lazy)=110×11×11×11=110(2.20)
基于此,你今晚将看电视。
- 点赞
- 收藏
- 关注作者
评论(0)