了解朴素贝叶斯进行文本分类

时间:2015-05-06 17:53:31

标签: machine-learning nlp classification naivebayes

我熟悉机器学习和朴素贝叶斯,但我在理解如何将其用于文档分类方面遇到一些麻烦,其中我的特征向量是一个单词包。

特别是,您如何计算类条件特征可能性Pr(word | class)?在许多文本中,我看到以下术语:

enter image description here

如何实施右侧?它是c类的文档计数,其中特征f出现时除以类c的文档数?

例如,假设您有10个文档,其中7个是C1类,3个是C2类。 “惊人”这个词出现在其中一些中:

C1: ...
C1: ... amazing ...
C1: ...
C1: ... amazing ...
C1: ... amazing ...
C1: ...
C1: ...
C2: ...
C2: ... amazing ...
C2: ...

看起来像:

  • count(惊人,C1)= 3
  • count(惊人,C2)= 1
  • count(C1)= 7
  • count(C2)= 3

Pr(惊人| C1)= 3/7和Pr(惊人| C2)= 1/3?

编辑2015年5月7日

我在“Introduction to Information Retrieval”一书第13章(PDF)中看到了Naive Bayes的文本分类讨论。类条件特征概率有不同的公式:

enter image description here

所以,这里看起来像count(word,class)是类中文档中单词的出现次数,而不是类中文档的数量。

同样,count(class)是类中文档中单词的总数,而不是类中文档的数量。

P(特征)的哪种配方是优选的?

1 个答案:

答案 0 :(得分:3)

是的,您的解释和示例是正确的。当f_i和c_i同时出现时,Count(f_i,c_i)考虑所有这样的事件,即具有特征f_i的类c_i的所有文档(在这种情况下存在单词,但通常它可以存在至少2个单词或其他任何事情)。

实际上,引用的等式是最大似然估计,请参阅论文The Naive Bayes Model, Maximum-Likelihood Estimation, and the EM Algorithm以获取完整的描述和证据。

更新:正如同一章所述(见第13.3节),第一次估算是基于伯努利模型,而第二次估算则是多项式模型。伯努利模型更适用于短文档和#34;对噪声特征特别敏感",再次参阅本书,或论文A comparison of eve nt models for Naive Bayes text classification(也取自本书第13.7节)