与 Gensim Doc2Vec 最不相似

Least Similar with Gensim Doc2Vec

most_similar 方法找到前 N 个最相似的词。

有没有什么方法或者方法可以找到N个最不相似的词?

您可以通过相似性获得所有向量的完整排名列表,使用与完整向量集一样大的 topn 参数。然后只看最后一个N。例如:

import sys
all_sims = vec_model.most_similar(target_value, topn=sys.maxsize)
last_10 = list(reversed(all_sims[-10:]))

但是,请注意:

  • 这将需要更多的排序,并且暂时需要更多的内存,以 return 完整列表,然后将其修剪到最后几个

  • 这些对于人类感知来说,无论是作为文字还是文档,都不太可能特别有意义。也就是说,它不太可能是我们所感知的单词或文档的 'opposite'。这样的对立面,或者实际上任何与原点有趣对比的 words/docs,通常会非常接近高维 space 中的原点,只是以某种有意义的方式移动。 (例如,一个词的反义词比它会找到的最不相似的词更接近这个词。)