朴素贝叶斯概述
众所周知,朴素贝叶斯是一种简单但是非常强大的线性分类器。它在垃圾邮件分类,疾病诊断中都取得了很大的成功。它只所以称为朴素,是因为它假设特征之间是相互独立的,但是在现实生活中,这种假设基本上是不成立的。那么即使是在假设不成立的条件下,它依然表现的很好,尤其是在小规模样本的情况下。但是,如果每个特征之间有很强的关联性和非线性的分类问题会导致朴素贝叶斯模型有很差的分类效果。
朴素贝叶斯背后的数学原理
后验概率(Posterior Probabilities)
为了更好地了解朴素贝叶斯分类器是怎么工作的,了解贝叶斯法则是很必要的。它可以被简单地描述成下面的公式:
我们可以用一个关于老天是否下雨的例子来解释上面的公式。
我们可以看到,如果我们想要在给定现象下,预测某种结果的概率,我们必须知道:1、在给定这种结果下,出现这种现象的概率。2、出现这种结果的概率。3、出现这种现象的概率。
在实际应用中,我们的现象不可能只有一个,比如,在垃圾邮件分类中,甚至可能有几千个词的特征向量。下面,我将引入一些数学上的记号来统一后面的表达:
- ωj表示属于哪个类别,j∈{ 1,2,3,…,m}
- xi表示特征向量中的第i个特征,i∈{ 1,2,3,…,n}
朴素贝叶斯的目标就是分别求得 P(ωj|给定现象)j∈{ 1,2,3,…,m} ,选出最大的概率。
下面我将分别解释上面的三个概率。
条件概率(Conditional Probabilities)
随机变量的独立性意味着我告诉你一个变量的出现,并不影响你相信另一个出现的可能。最简单的一个例子就是抛硬币,也就是第一次的反正面并不会影响你再一次抛出现反正面的概率(也就是0.5)。
朴素贝叶斯模型中,特征之间不仅仅是独立的,而且是加条件的独立的。比如说:我的特征向量 x中,有n个特征 ,那么我可以把概率写成下面的形式: