当前位置:   article > 正文

【Python异常】TypeError: __init__() got an unexpected keyword argument ‘size‘与gensim.models.word2vec 参数___init__() got an unexpected keyword argument 'siz

__init__() got an unexpected keyword argument 'size

一、遇到的异常:

1、TypeError: init() got an unexpected keyword argument ‘size’

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-22-d094f8d99e54> in <module>
      9     iter(int,optional):迭代次数。
     10 '''
---> 11 model = Word2Vec(size=300, min_count=20, window=7, workers=1,iter=15 )
     12 model.build_vocab(text)
     13 
TypeError: __init__() got an unexpected keyword argument 'size'
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

2、TypeError: init() got an unexpected keyword argument ‘iter’

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-23-7c5812c34140> in <module>
      9     iter(int,optional):迭代次数。
     10 '''
---> 11 model = Word2Vec(vector_size=300, min_count=20, window=7, workers=1,iter=15 )
     12 model.build_vocab(text)
     13 

TypeError: __init__() got an unexpected keyword argument 'iter'
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

二、出现原因

from gensim.models import Word2Vecgensim的版本存在差异。导入的Word2Vec函数的参数提示词存在差异。

这是网上参数说明(可以参考,但是旧版本):

class gensim.models.word2vec.Word2Vec(sentences=None, corpus_file=None, size=100, alpha=0.025, window=5, min_count=5, max_vocab_size=None, sample=0.001, seed=1, workers=3, min_alpha=0.0001, sg=0, hs=0, negative=5, ns_exponent=0.75, cbow_mean=1, hashfxn=, iter=5, null_word=0, trim_rule=None, sorted_vocab=1, batch_words=10000, compute_loss=False, callbacks=(), max_final_vocab=None)
  • 1
参数说明:
- sentences (iterable of iterables, optional) – 供训练的句子,可以使用简单的列表,但是对于大语料库,建议直接从磁盘/网络流迭代传输句子。参阅- - word2vec模块中的BrownCorpus,Text8Corpus或LineSentence。
- corpus_file (str, optional) – LineSentence格式的语料库文件路径。
- size (int, optional) – word向量的维度。
- window (int, optional) – 一个句子中当前单词和被预测单词的最大距离。
- min_count (int, optional) – 忽略词频小于此值的单词。
- workers (int, optional) – 训练模型时使用的线程数。
- sg ({0, 1}, optional) – 模型的训练算法: 1: skip-gram; 0: CBOW.
- hs ({0, 1}, optional)1: 采用hierarchical softmax训练模型; 0: 使用负采样。
- negative (int, optional)> 0: 使用负采样,设置多个负采样(通常在5-20之间)。
- ns_exponent (float, optional) – 负采样分布指数。1.0样本值与频率成正比,0.0样本所有单词均等,负值更多地采样低频词。
- cbow_mean ({0, 1}, optional)0: 使用上下文单词向量的总和; 1: 使用均值,适用于使用CBOW。
- alpha (float, optional) – 初始学习率。
- min_alpha (float, optional) – 随着训练的进行,学习率线性下降到min_alpha。
- seed (int, optional) – 随机数发生器种子。
- max_vocab_size (int, optional) – 词汇构建期间RAM的限制; 如果有更多的独特单词,则修剪不常见的单词。 每1000万个类型的字需要大约1GB的RAM。
- max_final_vocab (int, optional) – 自动选择匹配的min_count将词汇限制为目标词汇大小。
- sample (float, optional) – 高频词随机下采样的配置阈值,范围是(0,1e-5)。
- hashfxn (function, optional) – 哈希函数用于随机初始化权重,以提高训练的可重复性。
- iter (int, optional) – 迭代次数。
- trim_rule (function, optional) – 词汇修剪规则,指定某些词语是否应保留在词汇表中,修剪掉或使用默认值处理。
- sorted_vocab ({0, 1}, optional) – 如果为1,则在分配单词索引前按降序对词汇表进行排序。
- batch_words (int, optional) – 每一个batch传递给线程单词的数量。
- compute_loss (bool, optional) – 如果为True,则计算并存储可使用get_latest_training_loss()检索的损失值。
- callbacks (iterable of CallbackAny2Vec, optional) – 在训练中特定阶段执行回调序列。
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25

三、解决方案

3.1 将传入参数格式进行修改

size 改为 vector_size
iter 改为 epochs

model = Word2Vec(vector_size=300, min_count=20, window=7, workers=1,epochs=15)
  • 1

3.2 降低gensim库的版本

gensim库的版本号不一样则参数不一样

pip install gensim==3.0.0
  • 1
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/菜鸟追梦旅行/article/detail/286508
推荐阅读
相关标签
  

闽ICP备14008679号