我有一套用神经网络训练的嵌入,与gensim的word2vec无关。
我想将这些嵌入用作gensim.Word2vec
中的初始权重。
现在我所看到的是我可以model.load(SOME_MODEL)
然后继续训练,但它需要一个gensim模型作为输入。同样reset_from()
似乎只接受其他gensim模型。
但就我而言,我没有一个gensim模型可以从中开始,而是一个嵌入word2vec格式的文本文件。
那么如何开始将word2vec文本文件的学习转移到gensim.Word2vec
?
答案 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']