【发布时间】:2020-11-28 02:05:49
【问题描述】:
我在 pandas 中有一个组织描述和项目名称的数据框,如下所示:
列是df['org_name']、df['org_description']、df['proj_title']。我想为每个项目(每一行)添加一列,其中包含组织描述和项目标题之间的相似度分数。
我正在尝试使用gensim:https://radimrehurek.com/gensim/auto_examples/core/run_similarity_queries.html。但是,我不确定如何根据我的用例调整本教程,因为在本教程中我们得到了一个新查询 doc = "Human computer interaction",然后将其与语料库中的文档单独进行比较。不确定在哪里做出这个选择 (sims?vec_lsi?)
但我只希望数据框df 的给定行中的两个项目的相似度得分,而不是其中一个与整个语料库的相似度得分,对于每一行,然后将其作为一列附加到df。我该怎么做?
【问题讨论】:
-
附加的教程是使用 LSI(潜在语义索引)查询语料库(文本集合)。如果你想执行 doc-doc 相似性,有更合适的算法来做到这一点。
-
@thorntonc 如果更好,请随时用不同的算法更新/替换您的答案。例如,我发现了这个:stackoverflow.com/questions/22433884/…。可能所有需要的只是在这里应用这些功能的某种方式吗? (例如,参见 'eng.mrgh' 的帖子)
标签: python