如何保存和加载Glove模型?

时间:2018-02-12 09:24:03

标签: python-3.x word-embedding

我使用Python 3.5进行研究。我想使用手套字嵌入。如何在glove.fit之后保存并加载我的Glove模型? 我已经像这样编码了

glove.fit(corpus.matrix,epochs=1,no_threads=4,verbose=True)
glove.save('glove.model')

2 个答案:

答案 0 :(得分:0)

选中此here

现在,在对数据进行培训之后,请使用以下方法:

from gensim.scripts.glove2word2vec import glove2word2vec
glove2word2vec(glove_input_file=file, word2vec_output_file="gensim_glove_vectors.txt")    
from gensim.models.keyedvectors import KeyedVectors
model = KeyedVectors.load_word2vec_format("gensim_glove_vectors.txt", binary=False)

然后,您可以像使用gensim模型一样使用它。例如,

print("Similarity between {} and {} is {}".format(word1,word2,model.wv.similarity(word1, word2)))
print("Most similar words to {} are :{}\n".format(word1,model.most_similar(positive=[word1],topn=10)))

答案 1 :(得分:0)

from gensim.models import KeyedVectors
# load the Stanford GloVe model
model = KeyedVectors.load_word2vec_format(filename, binary=False)

如果您的模型包含在变量“模型”中

您可以这样保存模型:

model.save('model.bin')

您可以像这样加载保存的模型:

new_model = KeyedVectors.load('model.bin')

您现在可以使用加载的模型:

result = new_model.most_similar(positive=['woman', 'king'], negative=['man'], topn=1)