2

我想将文档(由单词组成)分为 3 类(正面、负面、未知/中性)。文档单词的一个子集成为特征。

到目前为止,我已经编写了一个朴素贝叶斯分类器,用作特征选择器信息增益和卡方统计。现在,我想看看如果我使用 Odds ratio 作为特征选择器会发生什么。

我的问题是我不知道实施赔率比很热。我是不是该:

1) 计算每个单词 w、每个类别的 Odds Ratio: 例如对于 w:

   Prob of word as positive Pw,p = #positive docs with w/#docs
   Prob of word as negative Pw,n = #negative docs with w/#docs
   Prob of word as unknown Pw,u = #unknown docs with w/#docs

   OR(Wi,P) = log( Pw,p*(1-Pw,p) / (Pw,n + Pw,u)*(1-(Pw,n + Pw,u)) ) 
   OR(Wi,N) ...
   OR(Wi,U) ...

2)我应该如何决定是否选择这个词作为特征?

提前致谢...

4

2 回答 2

3

由于我花了一段时间独立思考这一切,让我在这里解释一下我的发现,以造福人类。

使用(对数)优势比是在文本分类之前过滤特征的标准技术。它是一个“单边度量”[Zheng et al., 2004],因为它只发现与特定类别正相关的特征。作为在给定类“c”的情况下看到特征“t”的概率的对数优势比,它定义为:

LOR(t,c) = log [Pr(t|c) / (1 - Pr(t|c))] : [Pr(t|!c) / (1 - Pr(t|!c))]
= log [Pr(t|c) (1 - Pr(t|!c))] / [Pr(t|!c) (1 - Pr(t|c))]

这里我使用'!c' 来表示类不是c 的文档。

但是您如何实际计算 Pr(t|c) 和 Pr(t|!c)?

需要注意的一个微妙之处是,通常在文档事件模型上定义特征选择概率[McCallum & Nigam 1998, Manning et al. 2008],即 Pr(t|c) 是看到术语 t一次或多次的概率在给定文档的类是 c 的文档中(换句话说,给定类 c 的 t 的存在)。该概率的最大似然估计 (MLE) 将是包含 t 至少一次的 c 类文档的比例。[从技术上讲,这被称为多元伯努利事件模型,并且与基于单词的多项式事件模型不同,后者将使用整数字数计算 Pr(t|c) - 有关更多详细信息,请参阅 McCallum 论文或 Manning IR 教科书,特别是关于这如何应用于朴素贝叶斯文本分类器。]

有效使用 LOR 的一个关键是平滑这些条件概率估计,因为正如@yura 所指出的,这里的罕见事件是有问题的(例如,Pr(t|!c) 的 MLE 可能为零,导致无限 LOR)。但是我们如何平滑呢?

在文献中,Forman 报告通过“在分母中的任何零计数加一”(Forman,2003)来平滑 LOR,而 Zheng 等人(2004)使用“ELE [预期似然估计] 平滑”,通常相当于增加 0.5到每个计数。

为了以符合概率论的方式进行平滑,我使用多元伯努利事件模型遵循文本分类的标准做法。本质上,我们假设我们已经看到了每个存在计数和每个缺席计数 B 次。所以我们对 Pr(t|c) 的估计可以写成 #(t,c):我们看到 t 和 c 的次数,以及 #(t,!c):我们看到的次数见过没有c的t,如下:

Pr(t|c) = [#(t,c) + B] / [#(t,c) + #(t,!c) + 2B]
 = [#(t,c) + B] / [#(c) + 2B]

如果B = 0,我们有 MLE。如果B = 0.5,我们有 ELE。如果B = 1,我们有拉普拉斯先验。请注意,这看起来与多项式事件模型的平滑不同,其中拉普拉斯先验导致您添加 |V| 在分母中 [McCallum & Nigam, 1998]

您可以选择0.51作为您的平滑值,具体取决于哪些先前的工作最能激发您的灵感,并将其代入上述等式LOR(t,c),并对所有特征进行评分。

通常,然后您决定要使用多少个特征,比如 N,然后根据分数选择 N 个排名最高的特征。

在多类设置中,人们经常使用 1 vs All 分类器,因此为每个分类器独立进行特征选择,因此每个正类都使用单边度量(Forman,2003)。然而,如果你想找到在多类环境中工作的独特的简化特征集,文献中有一些高级方法(例如,Chapelle & Keerthi,2008)。

参考:

郑,吴,斯里哈里,2004

麦卡勒姆和尼甘 1998

Manning, Raghavan & Schütze, 2008

福尔曼,2003

Chapelle & Keerthi, 2008

于 2015-12-31T19:49:54.100 回答
2

奇数比不是特征选择的好衡量标准,因为它只显示特征存在时发生的情况,而当它不存在时什么也不显示。因此它不适用于稀有功能,并且几乎所有功能都是稀有的,因此它不适用于几乎所有功能。以 0.0001 存在的具有 100% 置信度的类别为正的示例特征对分类毫无用处。因此,如果您仍想使用奇数比,请在特征频率上添加阈值,例如 5% 的情况下存在的特征。但我会推荐更好的方法 - 使用自动解决这些问题的 Chi 或信息增益指标。

于 2011-10-10T13:41:16.697 回答