在gensim 0.12上加载预训练矢量时出错

时间:2017-03-12 21:03:03

标签: gensim word2vec

我正在调用这样的负载。

.7 / dist-packages / gensim / utils.py“,第912行,

  model = gensim.models.Word2Vec.load("F:\\TrialGrounds\\gensimMODEL4\\model4") 

model = super(Word2Vec, cls).load(*args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/gensim/utils.py", line 248, in load
    obj = unpickle(fname)
  File "/usr/local/lib/python2unpickle
    return _pickle.loads(f.read())
AttributeError: 'module' object has no attribute 'call_on_class_only'

该模型已拆分500mb * 2个numpy数组。任何人都可以帮我解决这个问题

1 个答案:

答案 0 :(得分:2)

您是否偶然尝试将更高版本的gensim中的模型加载到早期版本中? (call_on_class_only方法仅用于警告常见错误,仅在2016年12月添加,而最新的0.12.x版本于2016年1月发布。)

虽然gensim试图保持旧版本在较新版本中加载的能力,但反过来可能会相当困难。尝试使用稍后的gensim版本加载模型。

(如果您确实需要一种解决方法,可以在更高版本del model.call_on_class_only中加载模型以消除非严格需要的函数引用,然后重新保存...并且可能然后load()进入旧版本。但是版本等效且版本最新,到处都会更好。)