我正在尝试使用预先训练的模型并为其添加额外的词汇 . 我有一个csv文件,里面有一列句子 .
import gensim
existing_model_fr = gensim.models.Word2Vec.load('./fr/fr.bin')
new_sentences = gensim.models.word2vec.LineSentence('./data/french.csv')
existing_model_fr.build_vocab(new_sentences, update=True)
existing_model_fr.train(new_sentences, total_examples=existing_model_fr.corpus_count, epochs=5)
existing_model_fr.save('new_model_fr')
我在existing_model_fr.train()行上遇到以下错误 . 我错过了什么?
()/usr/local/lib/python3.5/dist-packages/gensim/models/word2vec.py in train(自我,句子,total_examples,total_words,epochs,start_alpha,end_alpha)中的> AttributeError Traceback(最近一次调用) ,word_count,queue_factor,report_delay,compute_loss)863只被调用一次,模型的缓存iter值应作为epochs值提供 . 864“”“ - > 865 if self.model_trimmed_post_training:866引发RuntimeError(”使用model_trimmed_post_training方法丢弃训练参数“)867如果FAST_VERSION <0:AttributeError:'Word2Vec'对象没有属性'model_trimmed_post_training'
1 回答
它's likely you'从早期版本的gensim重新加载模型,其中未定义属性
model_trimmed_post_training
. 您可以通过在加载之后但在train()
之前设置属性来解决此问题: