nlp - LDA对于短文本有什么缺点?

标签 nlp lda topic-modeling

我试图理解为什么潜在狄利克雷分配(LDA)在 Twitter 等短文本环境中表现不佳。我读过论文“短文本的双项主题模型”,但是,我仍然不明白“单词共现的稀疏性”。

从我的角度来看,LDA 的生成部分对于任何类型的文本都是合理的,但导致短文本结果不佳的原因是采样过程。我猜测 LDA 基于两个部分对一个单词的主题进行采样:(1)同一文档中其他单词的主题(2)该单词其他出现的主题分配。由于短文本的(1)部分无法反射(reflect)其真实分布,这会导致每个单词的主题分配不佳。

如果您发现了这个问题,请随时发表您的想法并帮助我理解这一点。

最佳答案

LDA 等概率模型利用统计推断来发现数据的潜在模式。简而言之,他们从观察中推断出模型参数。例如,有一个黑盒子,里面有许多不同颜色的球。您从盒子中取出一些球,然后推断球的颜色分布。这是一个典型的统计推断过程。统计推断的准确性取决于您的观察数量。

现在考虑短文本上的 LDA 问题。 LDA 将文档建模为主题的混合体,然后每个单词都从其主题之一中提取。您可以想象一个黑匣子包含由此类模型生成的大量单词。现在您已经看到了一份只有几个字的简短文档。观察结果显然太少,无法推断参数。就是我们提到的数据稀疏问题。

其实,除了缺乏观察之外,问题还来自于模型过于复杂。通常,更灵活的模型需要更多的观察才能推断。 Biterm Topic Model试图通过降低模型复杂性来使主题推理变得更容易。首先,它将整个语料库建模为主题的混合体。因为在语料库上推断主题混合比在短文档上推断主题混合更容易。其次,它假设每个双项都来自一个主题。在 LDA 中推断双项的主题也比推断单个单词的主题更容易,因为添加了更多上下文。

我希望这个解释对你来说有意义。感谢您提及我们的论文。

关于nlp - LDA对于短文本有什么缺点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29786985/

相关文章:

python - 朴素贝叶斯 nltk python 中如何计算最多信息的特征百分比?

python - 无法使用 Python 检测乱码名称

python - 使用 LDA 和 Gensim 推断新的、未见过的文档的主题分布

r - R 中的词干补全替换名称,而不是数据

topic-modeling - Mallet 主题建模 - 主题键输出参数

machine-learning - 如何使用 Mallet 获取给定查询的主题概率

deep-learning - BERT 分词器如何生成 (b, 24, 768) 的输入张量形状?

python - 如何匹配同一 token 中的数字和文本 - Spacy Matcher?

scala - 将主题映射回 Spark LDA 中的文档

r - 如何使用 R 的 topicmodels 包中的 LDA 函数重现精确结果