1 Naive Bayes算法介绍
说起贝叶斯算法,不得不先提到概率论与数理统计课程里面的条件概率公式,对于随机试验E有两个随机事件A,B,且P(B) > 0 那么在B事件发生的条件下A发生的概率为:
其中P(AB)为A,B两个事件的联合概率。对上式利用乘法公式可以变形为:
这样就得到了贝叶斯公式。贝叶斯文本分类就是基于这个公式,利用先验概率来得到文本的分类。
其中 为第i个文本类别出现的概率, 为文本类别为Ci时出现特征向量(w1,w2…wn)的概率,P(w1,w2…wn)为特征向量出现的概率。一般的会假设特征——词,在文本中出现的概率是独立的,也就是说词和词之间是不相关的(虽然这个不一定成立,但是为了简化计算往往又不得不这么做),那么这时候的联合概率就可以表示为乘积的形式,如下:
对于特定的训练集合来说,上式中P(w1)P(w2)…P(wn)是一个固定的常数,那么在进行分类计算的时候可以省略掉这个分母的计算,如是得到:
这样,只需要计算给定文本和各个类别之间的条件概率值,取最大的那个概率值所在的类别代表文本的类别就行了。
2 参数训练
在贝叶斯分类器训练的时候,依照前面的公式可以知道,需要训练的参数有:
1. P(Ci) : 各个类别在所有的文档中出现的概率,这个只需要统计各个文本类别的数量,然后除以所有文档数就是需要的参数了。
2. P(w|C): 各个词在各个类别中出现的概率,在类别C中出现了w的文档数除以C类文档总数