首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >计算概率分布

计算概率分布
EN

Stack Overflow用户
提问于 2011-07-07 09:47:32
回答 1查看 1.4K关注 0票数 2

我有一个简单(可能很愚蠢)的问题。我想计算两个文件上的Kullback-Leibler散度。它要求每个文档的概率分布。

我不知道如何计算每个文档的概率。任何简单的答案与外行的例子将非常感谢。

假设我们遵循以下两个文档:

代码语言:javascript
复制
1 - cross validated answers are good 
2 - simply validated answers are nice

(为了给你举个例子,文档的措辞只是一句废话)

我们如何计算这些文档的概率?

假设我们再添加一个文档:

代码语言:javascript
复制
3 - simply cross is not good answer

如果我们添加另一个文档,那么它将如何影响概率分布?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-07-07 11:27:52

如果将文档添加到文档集合中,除非该文档与文档集合完全相同,否则分发中的单词或术语的分布将发生变化,以适应新添加的单词。问题出现了:“这真的是您想要处理第三个文档的原因吗?”

Kullback-Leibler divergence是对两个分布的分歧的度量。你的两个发行版是什么?

如果你的分布是文档中某个词被随机选择的概率,那么你拥有概率值的空间就是组成你的文档的词的集合。对于前两个文档(我假设这是您的整个集合),您可以构建一个包含7个术语的单词空间。从文档中随机选择一个单词作为词袋的概率为:

代码语言:javascript
复制
            doc 1     doc 2            doc 3   (lem)
answers      0.2       0.2              0.0     0.2
are          0.2       0.2              0.0     0.2
cross        0.2       0.0              .33     0.2
good         0.2       0.0              .33     0.2
nice         0.0       0.2              0.0     0.0
simply       0.0       0.2              .33     0.2
validated    0.2       0.2              0.0     0.0

这是通过词频除以文档长度来计算的。请注意,新文档的word形式与文档1和文档2中的单词不同。(lem)列将是概率,如果您将词干或词汇化为相同的术语对(are/is)和(回答/回答)。

在场景中引入第三个文档,您可能希望使用Kullback-Liebler分歧执行的典型活动是将新文档或文档集合与已知文档或文档集合进行比较。

计算Kullback-Liebler散度D(P||Q)产生一个值,该值表示通过使用替代分布P捕获真实分布Q的情况。因此,Q1可以是文档1中单词的分布,Q2可以是文档2中单词的分布。使用P作为新文档(文档3)中单词的分布来计算KL散度,可以测量新文档与文档1以及文档2之间的差异。使用这些信息,您可以说新文档与已知文档/集合有多相似。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6604979

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档