当前位置:   article > 正文

Gensim Word2vec 模型的训练和保存_model.build_vocab(train_corpus)

model.build_vocab(train_corpus)

模型保存

在使用Word2vec 进行模型保存的时候,有两种保存方法:

  1. 加载保存的模型,如果再训练,会更新原来模型的向量,例如,原始的模型有预料你好, 将这个模型保存后,加载后新的预料里也有你好 ,那么下面的形式将会更新你好的Embedding
from gensim.models import Word2Vec
# 假设已经有了一个模型叫 model
model.wv.save(file_path)
  • 1
  • 2
  • 3

对应的加载方法:

model = Word2Vec.load(file_path)
# 接下来整理一些自己的语料
corpus = [['你好', '我爱', 'python'], ['编程', '很美']]
model.build_vocab(corpus, update=True)
model.train(corpus, total_examples=model.corpus_count, epochs=model.iter)
  • 1
  • 2
  • 3
  • 4
  • 5
  1. 加载保存的模型,再训练,不会更新原有的向量表示
    保存成 orginal C word2vec-tool 的格式,网上很多预训练模型都保存成了这种模式
model.wv.save_word2vec_format(file_path)
  • 1

加载模式如下:

from gensim.models import Word2Vec
from gensim.models import KeyedVectors
model = Word2Vec(size=300, sg=1, min_count=1)
# 这里设置的维数必须和预训练的模型一致才行

# 加载预训练的模型
pre_model = KeyedVectors.load_word2vec_format(model_path,  binary=False)

# 训练新的模型
model.build_vocab([list(pre_model.vocab.keys())], update=True)
# 加载预训练模型
model.intersect_word2vec_format(model_path, binary=False, lockf=1.0)
model.train(corpus=新的预料, total_examples=model.corpus_count, epochs=model.epochs)



  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/354249
推荐阅读
相关标签
  

闽ICP备14008679号