gensim Word2vec转移学习(来自非gensim模型)

时间:2017-12-24 09:58:49

标签: python word2vec gensim

我有一套用神经网络训练的嵌入,与gensim的word2vec无关。

我想将这些嵌入用作gensim.Word2vec中的初始权重。

现在我所看到的是我可以model.load(SOME_MODEL)然后继续训练,但它需要一个gensim模型作为输入。同样reset_from()似乎只接受其他gensim模型。 但就我而言,我没有一个gensim模型可以从中开始,而是一个嵌入word2vec格式的文本文件。

那么如何开始将word2vec文本文件的学习转移到gensim.Word2vec

1 个答案:

答案 0 :(得分:1)

您可以使用原始Word2Vec模型的密钥矢量格式加载其他模型

import io

from gensim.models.keyedvectors import KeyedVectors

# first line is vocab size and vector dim
model_buf = io.StringIO("""
2 3
word0 -0.000737 -0.002106 0.001851
word1 -0.000878 -0.002106 0.002834
""".lstrip())

model = KeyedVectors.load_word2vec_format(model_buf, binary=False)

model['word0']