0

我对我一直在网上关注的这个例子有点困惑。在我回答我的问题之前,如果有任何问题,请纠正我!我知道贝叶斯定理是这样的:

P(A│B)= P(B│A) * P(A)  
         ----------             
            P(B)

在我正在查看的示例中,正在对文本文档进行分类。文本文件都是“恐怖主义”或“娱乐”,所以:

Prior probability for either, i.e. P(A) = 0.5

有六个文档的词频如下:

在此处输入图像描述

该示例继续分解这些单词与每个类别相关的频率,应用拉普拉斯估计:

在此处输入图像描述

因此,据我了解,这些数字中的每一个都代表 P(B|A),即给定特定类别(恐怖主义或娱乐)该词出现的概率。

现在一个新的文件来了,有这个细分:

在此处输入图像描述

该示例通过以下方式计算此新文本文档与恐怖主义有关的概率:

P(Terrorism | W) = P(Terrorism) x P(kill | Terrorism) x P(bomb | Terrorism) x P(kidnap | Terrorism) x P(music | Terrorism) x P(movie | Terrorism) x P(TV | Terrorism)

结果如下:

0.5 x 0.2380 x 0.1904 x 0.3333 x 0.0476 x 0.0952 x 0.0952

同样,到目前为止,我认为我正在关注。P(Terrorism | W) 为 P(A|B),P(Terrorism) = P(A) = 0.5 且 P(B|A) = 上表中“恐怖主义”的所有结果相乘。

但是为了将其应用于这个新文档,该示例计算了上面的每个 P(B|A) 到新频率的幂。于是上面的计算就变成了:

0.5 x 0.2380^2 x 0.1904^1 x 0.3333^2 x 0.0476^0 x 0.0952^0 x 0.0952^1

从那里他们做了一些我得到的总和并找到了答案。我的问题是:

公式中哪里说将新频率作为功率应用于当前 P(B|A)?

这只是我不知道的统计数据吗?这是普遍的还是只是如何做到这一点的特定示例?我之所以问是因为我发现的所有示例都略有不同,使用的关键字和术语略有不同,我发现它有点令人困惑!

4

1 回答 1

1

首先,公式

P(Terrorism | W) = P(Terrorism) x P(kill | Terrorism) x P(bomb | Terrorism) x P(kidnap | Terrorism) x P(music | Terrorism) x P(movie | Terrorism) x P(TV | Terrorism)

不太对。您需要将其除以P(W)。但是当它说“他们做了一些总和”时,你暗示这会得到照顾,所以我们可以继续讨论你的主要问题。


传统上,在对文本分类进行朴素贝叶斯时,您只查看单词的存在,而不是它们的计数。当然,您需要P(word | class)在训练时估计计数,但在测试时P("music" | Terrorism)通常意味着“音乐”一词在 Terrorism 文档中至少出现一次的概率。

看起来您正在处理的实现正在尝试考虑P("occurrences of kill" = 2 | Terrorism)P("at least 1 occurrence of kill" | Terrorism). 那么,为什么他们最终会提高权力的概率呢?看起来他们的推理是P("kill" | Terrorism)(他们在训练时估计的)代表了恐怖主义文档中任意单词被“杀死”的概率。因此,通过简化假设,Terrorism 文档中第二个任意词被“杀死”的概率也是P("kill" | Terrorism).

对于文档中没有出现单词的情况,这会留下一个小问题。使用这种方案,相应的概率被提高到 0 次方,换句话说,它消失了。换句话说,它近似于P("occurrences of music" = 0 | Terrorism) = 1。应该清楚的是,总的来说,这严格来说是错误的,因为它意味着P(occurrences of music" > 0 | Terrorism) = 0. 但是对于拥有长文档和数千或数万单词的实际示例,大多数单词不会出现在大多数文档中. 因此,不必费心准确地计算所有这些概率(这将在计算上很昂贵),它们基本上被扫到了地毯下,因为对于绝大多数情况,它无论如何都不会改变分类结果。还要注意,除了计算密集型之外,它在数值上也是不稳定的,因为如果你将数千或数万个小于 1 的数字相乘,你会下溢,它会吐出 0;如果您在日志空间中执行此操作,您仍然会将数以万计的数字加在一起,从数字稳定性的角度来看,这些数字必须小心处理。因此,“将其提升到幂”方案固有地消除了不必要的绒毛,降低了计算强度,提高了数值稳定性,并且仍然产生几乎相同的结果。


我希望美国国家安全局不会因为我在这个答案中大量使用恐怖主义这个词而认为我是恐怖分子:S

于 2013-08-29T17:22:55.023 回答