进程以退出代码134结束(由信号6中断:SIGABRT)

时间:2018-01-16 21:51:29

标签: python pycharm word2vec gensim

我正在研究node2vec。当我使用小数据集时,代码运行良好。但是一旦我尝试在大型数据集上运行相同的代码,代码就会崩溃。

错误:进程以退出代码134结束(由信号6:SIGABRT中断)。

给出错误的行是

model = Word2Vec(walks, size=args.dimensions, window=args.window_size, min_count=0, sg=1, workers=args.workers,
                 iter=args.iter)

我正在使用pycharm和python 3.5。

知道发生了什么事吗?我找不到任何可以解决我问题的帖子。

6 个答案:

答案 0 :(得分:3)

你的内存可能已经不足了。在尝试期间观察Python过程大小的读数,并优化您的walks iterable以不构成大型内存列表。

答案 1 :(得分:1)

如果您运行的是 MacOS Catalina,这可能会对您有所帮助。 对我而言,我在升级到 Catalina 后立即开始看到此错误。

在Terminal上一一执行以下命令,你应该就好了:

brew update && brew upgrade && brew install openssl

cd /usr/local/Cellar/openssl/1.0.2t/lib

sudo cp libssl.1.0.0.dylib libcrypto.1.0.0.dylib /usr/local/lib/

cd /usr/local/lib

mv libssl.dylib libssl_bak.dylib

mv libcrypto.dylib libcrypto_bak.dylib

sudo ln -s libssl.1.0.0.dylib libssl.dylib

sudo ln -s libcrypto.1.0.0.dylib libcrypto.dylib

在其中一个 Apple 论坛中找到了这个(好像记不清具体在哪里了,该死!)

另外,一些有福的灵魂也为此写了一批。 可以在这里找到: https://gist.github.com/llbbl/c54f44d028d014514d5d837f64e60bac

干杯!

答案 2 :(得分:0)

我遇到了同样的问题,最后,我弄清楚了。对我来说,原因是我的Keras version 2.2.0太高了。 之后,我将版本更改为2.0.1,就可以了。 希望这个问题能对您有所帮助!

答案 3 :(得分:0)

答案 4 :(得分:0)

对我来说,问题在于在 Mac OS Catalina 上运行的 Snowflake 连接器 Python 库。

我在回答 59538581 给出的链接中找到了用户 VikR 的解决方案,该链接已从此页面中删除。

链接是 https://dbaontap.com/2019/11/11/python-abort-trap-6-fix-after-catalina-update,标题为“Python 中止陷阱:Catalina 更新后的 6 个修复”,作者是 Danny Bryant。该链接解释了需要将 SSL 库放回 Mac 的操作系统路径并提供执行步骤。它还列出了使用 brewpip3 升级您的库的步骤。

以下是我重新运行 Python 脚本所遵循的步骤。

brew update
brew upgrade
cd /usr/local/lib
ln -s /usr/local/Cellar/openssl\@1.1/1.1.1j/lib/libssl.1.1.dylib libssl.dylib
ln -s /usr/local/Cellar/openssl\@1.1/1.1.1j/lib/libcrypto.1.1.dylib libcrypto.dylib
pip3 install --upgrade snowflake-connector-python

对我来说,我不必安装 openssl,因为我已经安装了它。请阅读布莱恩特的page了解更多详情。

注意

  1. 我的 openssl 版本当然晚于 Bryant 的指示。与我在此使用的版本相比,您的版本很可能也会晚一些。
  2. Homebrew /Cellar/ 目录结构对我来说与 Bryant 编写指令时略有不同。当您阅读本文时,它可能又发生了变化。
  3. 我选择直接链接库,而不是像 Bryant 那样链接到库的副本。
  4. 我的 Homebrew /Cellar//usr/local/lib 文件夹实际上需要大量的用户所有权更改。由于这与原始问题无关,因此我省略了这些步骤。

答案 5 :(得分:0)

导入操作系统

os.environ['KMP_DUPLICATE_LIB_OK'] = '真'