2017-02-13 101 views
0

隨着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:「單詞'電池壽命'不在詞彙表」, 所以有可能與word2vec做到這一點?

回答

0

這取決於當前word2vec模型中的單詞。如果在那裏,您可以使用model.most_similar("battery_life")來訪問它,因爲該庫使用下劃線以n-gram爲單位分隔單詞。

+1

電池壽命已經在我的訓練語料庫中,使用model.most_similar(「battery_life」)仍然給我KeyError :(雖然你的答案thx。 –

0

你需要明白,word2vec可以讓你嵌入單詞,而不是短語。在現有技術中有幾種方法可以生成短語嵌入。其中一些是:

這些都是產生短語的嵌入好方法。

但是,如果你簡單地想從單詞嵌入中獲得一個短語嵌入,那麼可能你可以在詞組中嵌入單詞的單詞。

例如:

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

這裏,'+'表示兩個詞矢量的串聯。

相關問題