训练word2vec语义向量

72 阅读1分钟

训练word2vec语义向量

class gensim.models.word2vec.Word2Vec(sentences=None, size=100, alpha=0.025, window=5, min_count=5,  
                   max_vocab_size=None, sample=1e-3, seed=1, workers=3, min_alpha=0.0001,  
                     sg=0, hs=0, negative=5, ns_exponent=0.75, cbow_mean=1, hashfxn=hash, iter=5,                       null_word=0,trim_rule=None, sorted_vocab=1, batch_words=MAX_WORDS_IN_BATCH, 
                    compute_loss=False, callbacks=(),  
                   max_final_vocab=None)
  • sentence(iterable of iterables):可迭代的句子可以是简单的list,但对于较大的语料库,可以考虑直接从磁盘/网络传输句子的迭代。见BrownCorpus,Text8Corpus 或LineSentence.
  • SG(INT {1 ,0}) -定义的训练算法。如果是1,则使用skip-gram; 否则,使用CBOW。
  • hs:是否采用基于Hierarchical Softmax的模型。参数为1表示使用,0表示不使用
  • size(int) - 特征向量的维数。
  • window(int) - 句子中当前词和预测词之间的最大距离。
  • min_count(int) - 忽略总频率低于此值的所有单词。

保存模型

model.save(file_name)

  • file_name:存储模型的名称

加载模型

word2vec.Word2Vec.load(file_name)

  • file_name:存储的模型的名称