Jupyter |内核似乎已经死了。它会自动重启|

时间:2017-10-30 19:38:32

标签: python-2.7 ipython jupyter-notebook

我已经运行了一段特定的python脚本了一段时间。在此之前的几个月里,所有剧本都运行得非常好(包括在Jupyter中)。现在,不知何故,我的系统中的jupyter已经开始在代码的一个特定行显示以下错误消息(下面提到的代码的最后一行)。代码的所有部分都运行正常,除了代码的最后一行(我称之为用户定义的函数来进行对计数)。用户定义的函数(correlation.polepy)可以从https://github.com/OMGitsHongyu/N-body-analysis

中找到

这是我收到的错误消息:

 Kernel Restarting
 The kernel appears to have died. It will restart automatically.

而且,这是我的Python代码的骨架:

from __future__ import division
import numpy as np
import correlation
from scipy.spatial import cKDTree

File1 = np.loadtxt('/Users/Sidd/Research/fname1.txt')
File2 = np.loadtxt('/Users/Sidd/Research/fname2.txt')

masscut = 1.1*np.power(10,13)
mark1 = (np.where(File1[:,0]>masscut))[0]
mark2 = (np.where(File2[:,0]>masscut))[0]

Data1 = File1[mark1,1:8]
Data2 = File2[mark2,1:8]

Xi_masscut = correlation.polepy(p1=Data1, p2=Data2, rlim=150, nbins=150, nhocells=100, blen=1024, dis_f=100)

当我尝试使用IPython时,会发生类似的问题(代码的最后一行)。当我尝试使用Python(在终端中实现)时,我收到一条错误消息(在最后一行),上面写着“ Segmentation fault:11 ”。我正在使用 Python 2.7.13 :: Anaconda 2.5.0(x86_64)

我已经尝试了以下方法来寻找解决方案:

1.> 我检查了stackoverflow上的一些先前链接,其中询问了此问题:The kernel appears to have died. It will restart automatically

我尝试了上面链接中给出的解决方案;可悲的是,它似乎对我的情况不起作用。这是上面给出的链接中提到的解决方案:

conda update mkl

2.> 为了检查系统是否内存不足,我关闭了所有内存都很重的应用程序。我的系统有16 GB的物理内存,即使有超过9 GB的可用内存,也会出现这个问题(同样,这个问题以前没有发生过,即使我在其他任务中使用14 GB并且少于2 GB非常令人惊讶的是,我之前可以使用给定的输入运行任务,而且我现在无法使用相同的输入复制计算。)

3.> 我看到另一个链接: https://alpine.atlassian.net/wiki/plugins/servlet/mobile?contentId=134545485#content/view/134545485

这个似乎解决了类似的问题,它说的是没有足够的内存容器。我对如何实施那里提到的建议表示怀疑。

总而言之,我不确定这个问题是如何产生的。我该如何解决这个问题?任何帮助将不胜感激。

9 个答案:

答案 0 :(得分:3)

当我在numpy之前导入sklearn PCA时会发生此问题(不确定反向序列是否会解决问题)

但后来我通过重新安装numpy和mkl解决了这个问题: conda install numpyconda install -c intel mkl

答案 1 :(得分:2)

我尝试了conda install tensorflow来解决了我的问题。

答案 2 :(得分:0)

使用conda代替pip安装库 这项工作对我来说

答案 3 :(得分:0)

发生这种情况时,我刚刚将笔记本上传到了Google colab,它开始工作。不过,似乎这是训练这些大型模型时计算/内存资源的瓶颈,而像colab这样的地方所拥有的带宽比您的计算机还大。

答案 4 :(得分:0)

使用conda而不是pip重新安装库。

答案 5 :(得分:0)

conda install -c anaconda keras

此命令对我有用

答案 6 :(得分:0)

要解决此问题,只需使用以下命令升级numpy库:

conda install numpy(如果您使用的是anaconda

pip install -U numpy(如果没有)

答案 7 :(得分:0)

就我而言,该错误是由 hdf5(版本不匹配)库的问题引起的,这表明当内核意外终止时,导入过程中的任何库也可能导致问题。

在这种情况下,最好先检查用于触发 jupyter notebook 的相应命令提示符窗口。它提供此类错误的日志,可用于解决此类问题。

问题原因:import tensorflow
消息:hdf5 库的版本不匹配
解决方案:设置环境变量 'HDF5_DISABLE_VERSION_CHECK' = 2

答案 8 :(得分:-1)

对于macOS版本12.0及更高版本,不支持Tensorflow GPU。 所以尝试这段代码,它对我有用-

VolleySingleton.getInstance(getActivity().getApplicationContext()).getRequestQueue()