使用gensim从未知向量中获取最接近的向量

时间:2020-04-03 23:21:08

标签: python-3.x nlp gensim word2vec

我目前正在为学校项目实施自然文本生成器。我有一个预定长度的句子和关键字的数据集,由于gensim和GoogleNews-vectors-negative300.bin.gz,我将它们转换为向量。我训练一个递归神经网络来创建一个向量列表,并将其与真实句子的向量列表进行比较。因此,我尝试尽可能接近“真实”向量。

当我必须将向量转换回单词时,就会发生我的问题:我的向量不一定在Google集中。因此,我想知道是否有一种有效的解决方案,可以将Google集合中最接近的向量设置为outpout向量。

我使用python 3和Tensorflow

非常感谢,随时询问有关该项目的任何问题

查尔斯

1 个答案:

答案 0 :(得分:0)

gensim方法.most_similar()(在KeyedVectors和类似的类上)还将接受原始向量作为搜索的“来源”。

只需确保明确命名positive参数-一系列目标词/向量即可组合以查找起点。

例如:

gvecs = KeyedVectors.load_word2vec_format('GoogleNews-vectors-negative300.bin.gz')
target_vec = gvecs['apple']
similars = gvecs.most_similar(positive=[target_vec,])
相关问题