我正在使用gensim分析大型语料库中的文档相似性。每个文档都有一个“标题”,或者更具体地说,一个唯一的 ID 字符串以及内容文本。
在浏览了几个关于顶级建模、索引和检索以及维基百科的教程之后,我仍然不清楚的是如何获得可解释的结果来构建 LSI 模型,并在索引中查询一些搜索向量。在我看到前 N 个最相似的文档索引及其相似度分数后,我如何查找这些文档的标题?
例如,在这段代码中:
index.num_best = 10
print(index[query_lsi])
INFO:gensim.utils:loading MatrixSimilarity object from ./data/wiki_index.0
INFO:gensim.utils:loading MatrixSimilarity object from ./data/wiki_index.1
INFO:gensim.utils:loading MatrixSimilarity object from ./data/wiki_index.2
[(4028, 0.82495784759521484), (52384, 0.82495784759521484), (13582, 0.8166358470916748), (61938, 0.8166358470916748), (0, 0.80658835172653198), (48356, 0.80658835172653198), (85, 0.8048851490020752), (48441, 0.8048851490020752), (115, 0.79446637630462646), (48471, 0.79446637630462646)]
例如,我将如何查找以最相似结果返回的文档 #61938 的标题?
在该教程的前一部分中,该iter_wiki()
函数产生了一个 (title, tokens) 的元组。这title
就是我想要的。