如何使用Mallet计算给定查询的topic概率

我想在专家查找项目中使用Mallet。我对Mallet几乎是个新手,但我知道它可以从一组文档中训练出主题。假设我已经用Mallet训练了50个主题。我想计算这个概率:p(topic|q)或者p(q|topic)

q是查询。它是一个词(如算法、安卓等),我希望找到该领域的专家。

当我阅读这篇文章:如何使用Mallet获取词-主题概率时,有个用户提到我们可以使用--word-topic-counts-file选项来计算概率。假设我已经通过Mallet生成了这个文件。它的结构如下:

0 android 2:211 is 3:3...

我了解这个结构的语义,但我不知道如何计算给定查询的topic概率(即p(topic|q)或者p(q|topic)

附注:我使用“或者”这个词是因为我不确定Mallet计算的是哪个

任何帮助都将不胜感激


回答:

GlieBrt对链接问题的回答中的这一行举例

1 needham 19:2 17:1

这里可以计算p(topic|q)如下:

p(19|needham) = 2/3 = 0.67

p(17|needham) = 1/3 = 0.33

用你自己的例子来说就更简单了:

0 android 2:21

p(2|android) = 1.0

Related Posts

Keras Dense层输入未被展平

这是我的测试代码: from keras import…

无法将分类变量输入随机森林

我有10个分类变量和3个数值变量。我在分割后直接将它们…

如何在Keras中对每个输出应用Sigmoid函数?

这是我代码的一部分。 model = Sequenti…

如何选择类概率的最佳阈值?

我的神经网络输出是一个用于多标签分类的预测类概率表: …

在Keras中使用深度学习得到不同的结果

我按照一个教程使用Keras中的深度神经网络进行文本分…

‘MatMul’操作的输入’b’类型为float32,与参数’a’的类型float64不匹配

我写了一个简单的TensorFlow代码,但不断遇到T…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注