1

我研究word2vec了gensim中的实现,我知道输入向量在syn0,输出向量在syn1syn1neg如果是负采样。

我知道我可以像这样访问输入和输出嵌入之间的相似性:

outv = KeyedVectors()
outv.vocab = model.wv.vocab
outv.index2word = model.wv.index2word  
outv.syn0 = model.syn1neg 
inout_similars = outv.most_similar(positive=[model['cousin']])

我的问题是,是否可以将输出嵌入(来自syn1syn1neg矩阵)保存为最终模型。例如, when model.save(), 以便它输出输出嵌入(或者在word2vec.py我可以访问和修改的代码中的确切位置)。我需要这个才能将这些输出嵌入用作分类器的输入。我以前用蛮力方法完成了它,所以我想轻松访问输出嵌入。

4

1 回答 1

2

outv作为 的实例,您的 objectKeyedVectors具有自己的save()方法(继承自 中SaveLoad定义的超类gensim/utils.py)和save_word2vec_format()方法。每个都会以您以后可以重新加载到 Python 代码中的方式保存它们。

于 2017-03-30T02:52:55.927 回答