我正在寻找一种有效的方法来创建一个句子与句子列表的相似性向量。在
简单的方法是在句子列表中迭代,并检测单个句子和列表中每个句子之间的相似性。这个解决方案太慢了,我正在寻找一种更快的方法。在
我的最终目标是检测句子列表中是否有与我正在检查的句子非常相似的句子,如果有,我将转到下一个句子。在
我现在的解决方案是:
for single_sentence in list_of_sentences:
similarity_score = word2vec.sentences_similarity(sentence2test, single_sentence)
if similarity_score >= similarity_th:
ignore_sent_flag = True
break
list_of_sentences.append(sentence2test)
Iv'e试着把“句子列表”放在字典/集合中,但在时间上的改进很小。在
我遇到了this解决方案,但它是基于Linux的软件包,所以与我无关。在
使用LSH(1)散列你的句子,只测试你的候选人匹配的哈希桶中的句子。不用比较所有的句子,你只需要测试一个小得多的子集。在
(1)How to understand Locality Sensitive Hashing?
我想建议两件事: 1试着把“句子列表”放到一个文件里 2用正则表达式循环文件会更快。在
相关问题 更多 >
编程相关推荐