在 gensim 中使用向量的相似性度量
Similarity measure using vectors in gensim
我有一对词和这些词的语义类型。我正在尝试使用语义类型计算这两个词之间的相关性度量,例如:word1=king, type1=man, word2=queen, type2=woman
我们可以使用 gensim word_vectors.most_similar 从 'king-man+woman' 得到 'queen'。但是,我正在寻找 'king-man+woman' 和 'queen'.
表示的向量之间的相似性度量
我正在寻找上述(或)的解决方案
计算代表 'king-man+woman' 的向量的方法(和)
使用gensim(或)中的向量值计算两个向量之间的相似度
计算投影权重向量的简单平均值的方法(即 king-man+woman)
你应该看看gensim most_similar()
方法的源代码,它是用来提出此类类比问题的答案的。具体来说,当您尝试...
sims = wv_model.most_similar(positive=['king', 'woman'], negative=['man'])
...最高结果(在经过充分训练的模型中)通常是 'queen' 或类似结果。因此,您可以查看源代码以准确了解它如何计算 wv('king') - wv('man') + wv('woman')
的目标组合,然后再搜索所有已知向量以寻找最接近该目标的向量。见...
...请注意,局部变量 mean
是所提供的 positive
和 negative
值的组合。
您可能还会发现其他有用的方法,直接使用或作为您自己代码的模型,例如 distances()
...
...或n_similarity()
...
我有一对词和这些词的语义类型。我正在尝试使用语义类型计算这两个词之间的相关性度量,例如:word1=king, type1=man, word2=queen, type2=woman 我们可以使用 gensim word_vectors.most_similar 从 'king-man+woman' 得到 'queen'。但是,我正在寻找 'king-man+woman' 和 'queen'.
表示的向量之间的相似性度量我正在寻找上述(或)的解决方案 计算代表 'king-man+woman' 的向量的方法(和) 使用gensim(或)中的向量值计算两个向量之间的相似度 计算投影权重向量的简单平均值的方法(即 king-man+woman)
你应该看看gensim most_similar()
方法的源代码,它是用来提出此类类比问题的答案的。具体来说,当您尝试...
sims = wv_model.most_similar(positive=['king', 'woman'], negative=['man'])
...最高结果(在经过充分训练的模型中)通常是 'queen' 或类似结果。因此,您可以查看源代码以准确了解它如何计算 wv('king') - wv('man') + wv('woman')
的目标组合,然后再搜索所有已知向量以寻找最接近该目标的向量。见...
...请注意,局部变量 mean
是所提供的 positive
和 negative
值的组合。
您可能还会发现其他有用的方法,直接使用或作为您自己代码的模型,例如 distances()
...
...或n_similarity()
...