相关疑难解决方法(0)

gensimmost_similar有正负,它是如何工作的?

我正在阅读这个关于 Gensim 的答案most_similar

它执行向量算术:添加正向量,减去负向量,然后从结果位置列出最接近该角度的已知向量。

但当我测试时,情况并非如此。我使用 Gensim 数据集训练了 Word2Vec"text8"并测试了这两个:

model.most_similar(positive=['woman', 'king'], negative=['man'])

>>> [('queen', 0.7131118178367615), ('prince', 0.6359186768531799),...]
Run Code Online (Sandbox Code Playgroud)
model.wv.most_similar([model["king"] + model["woman"] - model["man"]])

>>> [('king', 0.84305739402771), ('queen', 0.7326322793960571),...]
Run Code Online (Sandbox Code Playgroud)

它们显然不一样。0.713甚至第一个和第二个中的皇后得分0.732也不相同。

所以我再次问这个问题,Gensim 是如何most_similar工作的?为什么上面两者的结果不同呢?

python nlp gensim word2vec

4
推荐指数
1
解决办法
2711
查看次数

标签 统计

gensim ×1

nlp ×1

python ×1

word2vec ×1