如何用word2vec找到两个单词短语的相似度得分?

时间:2017-02-13 07:32:35

标签: text-mining gensim word2vec

使用word2vec,可以通过

来查找单个单词的相似性得分/大多数相似单词
model.most_similar('man')
model.similarity('man', 'woman')

但是,现在我想找到单词短语的相似度得分,例如,

model.most_similar('battery life')
model.similarity('battery life', 'battery')
model.similarity('battery life', 'sound quality')

我得到了KeyError:"字'电池寿命'不在词汇表#34; 那么有可能用word2vec吗?

2 个答案:

答案 0 :(得分:0)

这取决于当前word2vec模型中的单词。如果它在那里,您可以使用model.most_similar("battery_life")访问它,因为库使用下划线来分隔n-gram中的单词。

答案 1 :(得分:0)

您需要了解word2vec为您提供嵌入字词,而不是短语。在现有技术中有几种方法来产生短语嵌入。其中一些是:

这些是生成短语嵌入的好方法。

但是,如果您只是希望通过单词嵌入来嵌入短语,那么您可以concatenate/add/average在短语中嵌入单词。{/ p>

例如:

phrase_embedding['battery life'] = word_embedding['battery'] + word_embedding['life']

这里,'+'表示两个单词向量的连接。