gensim.models.Word2Vec

本文记录gensim.models中Word2Vec的各项参数,以便日后回顾记忆

from gensim.models import Word2Vec
	"""
    训练word to vector 的word embedding
    """
    model = Word2Vec(x, vector_size=50, window=5, min_count=1, workers=4, epoches=10, sg=1)
    return model

参数:

  • x: 训练数据。
  • vector_size: 单词词向量的维度
  • size: 主要是用来设置神经网络的层数,Word2Vec中的默认值是设置为100层。更大的层次设置意味着更多的输入数据,不过也是提升整体的准确度,合理的设置范围为10~数百。
  • window: 一个句子中当前和预测的单词之间的最大距离。
  • min_count: 在不同大小的语料集中,我们对于基准词频需求也是不一样的,譬如在较大的语料集中,我们希望忽略那些只出现一两次的单词,这里我们就可以通过设置min_count参数进行控制,一般而言,合理的参数值会设置在0~100之间。
  • workers: 用于设置并发训练时候的线程数,不过仅当Cpython安装的情况下才会起作用。
  • epoches: 调用Word2Vec(sentences, epoches=1)会调用句子迭代器运行两次(一般来说,会运行iter+1次,默认情况下iter=5)。第一次运行收集单词和它们的出现频率,从而构造一个内部字典树。第二次以后的运行负责训练神经模型。这两次运行(iter+1)也可以被手动初始化,如果输入流是无法重复利用的,也可以用下面的方式对其进行初始化。
    model = gensim.models.Word2Vec(epoches=1)  # an empty model, no training yet
    model.build_vocab(some_sentences)  # can be a non-repeatable, 1-pass generator
    model.train(other_sentences)  # can be a non-repeatable, 1-pass generator
    
  • sg: 训练算法,1 是指skip-gram, 0 是指CBOW。

你可能感兴趣的:(散记cont)