【问题标题】:Error loading Pretrained vectors on gensim 0.12在 gensim 0.12 上加载预训练向量时出错
【发布时间】:2017-03-16 11:18:20
【问题描述】:

我是这样调用负载的。

.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 数组。谁能帮我解决这个问题

【问题讨论】:

    标签: gensim word2vec


    【解决方案1】:

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

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

    (如果您真的需要解决方法,您可以在更高版本中加载模型,del model.call_on_class_only 以消除非严格需要的函数引用,然后重新保存... 可能 然后将load() 转换为旧版本。但是在任何地方都保持版本等效和最新版本会更好。)

    【讨论】:

    • 嗨,gojomo,我遇到了同样的问题。但我的版本是相似的(0.12.3)。如果您知道答案,请告诉我:stackoverflow.com/questions/47978579/…
    • 您的代码没有显示您尝试上述解决方法。你试过了吗?
    • 我更新了问题。如果您知道解决此问题的方法,请告诉我:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-06-17
    • 2016-08-17
    • 1970-01-01
    • 2017-12-15
    • 1970-01-01
    • 1970-01-01
    • 2016-10-14
    相关资源
    最近更新 更多