如何确定每个测试Tweet是针对哪个主题?



我使用python实现了LDA,并为一组推文建模主题,并试图将每个推文映射到主题,以查看推文属于哪个主题,但我在网上找不到任何帮助。

虽然我发现这可以为NMF完成,但我找不到任何函数或python中的任何特定选项用于此特定情况,我使用gensim使用LDA生成主题

使用您训练过的模型来获取任何特定文本的最相关主题在LdaModel类的Gensim文档中有介绍,在"用法示例"下- https://radimrehurek.com/gensim/models/ldamodel.html#usage-examples -但是那里的处理可能有点单一,因为:

  • 它将您可能正在分析的任何文本称为"看不见的"文档,但同样的过程适用于作为培训语料库一部分的文档;和
  • 像许多其他Gensim类一样,分析是通过Python的索引查找习惯用法完成的。也就是说,用括号括起来的[]访问(也就是调用.__getitem__()的快捷方式),使用文本的正确表示,就像一样它是一个查找键,尽管实际上它是模型分析的一个参数,而不是严格地查找一些存储的响应。

所以这部分的例子是你需要遵循的:

查询,模型使用新的,未见过的文档

>>> # Create a new corpus, made of previously unseen documents.
>>> other_texts = [
...     ['computer', 'time', 'graph'],
...     ['survey', 'response', 'eps'],
...     ['human', 'system', 'computer'] 
... ]
>>> other_corpus = [common_dictionary.doc2bow(text) for text in other_texts]
>>>
>>> unseen_doc = other_corpus[0]
>>> vector = lda[unseen_doc]  # get topic probability distribution for a document

只需记住:

  • other_texts&本例中的unseen_document也可以从训练语料库中重复,以询问训练模型它认为这些文档的主题应该是什么;和
  • 您需要使用与训练文档完全相同的字典将任何文本转换为词袋表示,以便单词索引和频率加权适合用于查找的词袋表示。

相关内容

  • 没有找到相关文章

最新更新