朴素贝叶斯分类器(一)

朴素贝叶斯分类器(一)

1 原理

贝叶斯分类器,使用贝叶斯定律,计算文档d分别属于各个类别的概率,把d归类为概率最大的类别。
它用途广泛,比如可以用于垃圾邮件判断,邮件自动分组,单词纠正...

贝叶斯定律:有条件事件A和B

P(AB) = P(A) * P(B|A)
	  = P(B) * P(A|B)
=>
 P(B|A) =  P(B) * P(A|B) / P(A)

其中, P(AB)表示A和B同时发生的概率
P(A)表示A发生的概率
P(B)表示B发生的概率
P(B|A)表示,A发生的条件下, B发生的概率
P(A|B)表示,B发生的条件下, A发生的概率

2 建模

贝叶斯分类问题转化为:

D: 出现文档d的事件
C: 属于类别ci的事件

P(Ci): 属于类别ci的概率
P(D|Ci): 属于类别ci的文档, d出现的概率

P(Ci|D): 出现文档d, 属于类别ci的概率

只要针对每个类别,分别求出P(Ci|D),把文档d归为概率最大的类别。

因为在各个类别中,没办法找到和d一模一样的文档,所以我们把文档的概率转化为单词的概率。

P(C1|D) = P(C1) * P(D|C1) / P(D) = P(C1) P(W1|C1) P(W2|C1) P(W3|C1) ... P(Wn|C1) / P(D)

P(C2|D) = P(C2) * P(D|C2) / P(D) = P(C2) P(W1|C2) P(W2|C2) P(W3|C2) ... P(Wn|C2) / P(D)

Wj表示文档d中出现的单词。可以使用分词器得到文档d的所有单词。

因为P(D)是一个常量,要比较P(C1|D) 和P(C2|D) , 可以忽略。
***因此,贝叶斯分类只需要计算P(Ci) P(W1|Ci) P(W2|Ci) P(W3|Ci) ... P(Wn|Ci) ***

posted @ 2016-07-28 19:06  Ivan.Jiang  阅读(245)  评论(0编辑  收藏  举报