2016-11-30 60 views
1

我已使用gensim來訓練Word2Vec模型,並且想要查詢附近的術語。但不是剛開最接近於各個方向的話:在Word2Vec中沿特定方向移動向量空間

model = models.Word2Vec.load('MyModel')  # load up my trained model 
nearest = model.most_similar(['mushroom'])  # nearby words all around 

我想在矢量空間中的特定方向和移動的距離和檢索最近的字,主要有:

nearest = nearest_by_vector(word, direction_vector) 

我的矢量數學是可怕的(即不存在),尤其是在我的模型中有這麼多維度。

回答

0

我認爲你的問題是找到距離最近的矢量(歐氏距離),而不是最接近角度的矢量。這實質上是Nearest Neighbor Search的問題。最壞的情況/蠻力搜索算法將是線性搜索。但是,你可以谷歌上各種先進的圖書館或數據結構,這將找到這些最近的鄰居在一個更優化和成本效益的方式。