【问题标题】:Google word2vec load error谷歌 word2vec 加载错误
【发布时间】:2016-10-19 02:42:17
【问题描述】:

我想使用 Google word2vec (GoogleNews-vectors-negative300.bin)
我是从https://code.google.com/archive/p/word2vec/下载的
当我加载它时,发生内存错误
(进程以退出代码 139 结束(被信号 11:SIGSEGV 中断))

from gensim.models.word2vec import Word2Vec
embedding_path = "data/GoogleNews-vectors-negative300.bin"
word2vec = Word2Vec.load_word2vec_format(embedding_path, binary=True)
print word2vec

我使用 ubuntu 16.04 / GTX-1070(8gb) / Ram(16gb)。 我该如何解决?!

【问题讨论】:

  • 你能发布错误的完整堆栈跟踪吗?
  • @TheM00s3 很抱歉,我怎样才能获得错误的完整堆栈跟踪?实际上,我使用 Pycharm 作为 python ide。唯一的错误语句是“进程以退出代码 139 完成(被信号 11 中断:SIGSEGV)”
  • 你可以尝试通过终端调用`python //myScript.py之类的命令来运行它,然后看看是否出现错误。
  • @TheM00s3 感谢您的回复!当我在终端上运行它时,它只是说“使用 gpu 设备 0:GeForce GTX 1070(CNMeM 启用初始大小:80.0% 的内存,cuDNN 5105)分段错误(核心转储)”
  • 我认为这与您使用 Cuda 和 word2vec 有关。我会继续将此作为一个问题发布在 Gensim 的 github 页面上,这可能与实现和使用 cuda 有关。

标签: gpu segmentation-fault gensim word2vec


【解决方案1】:

SIGSEGV 是当进程试图访问它没有权限的特定内存段时发生的错误。
因此,您应该检查权限,并通过调试查看哪个内存位置出现错误。
这样您就可以了解是否有其他程序在干扰。
正如@TheM00s3 建议的那样,问题也可能与 CUDA 相关

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-11-07
    • 2013-09-08
    • 2015-04-03
    • 2016-04-07
    • 2019-02-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多