我有一个深度学习课的作业,他们提供了一个木星笔记本作为一个基本代码,事情是在运行数据导入和重塑之后,Jupyter笔记本通过一个“内存错误”,经过一些分析,试图在一个普通的.py文件中编译相同的代码,一切都运行良好。
问题是,我需要(最好)使用木星笔记本作为开发的基础,因为这类任务更具有交互性。
<ipython-input-2-846f80a40ce2> in <module>()
2 # Load the raw CIFAR-10 data
3 cifar10_dir = 'datasets\\'
----> 4 X, y = load_CIFAR10(cifar10_dir)
C:\path\data_utils.pyc in load_CIFAR10(ROOT)
18 f = os.path.join(ROOT, 'cifar10_train.p')
19 print('Path: ' + f );
---> 20 Xtr, Ytr = load_CIFAR_batch(f)
21 return Xtr, Ytr
22
C:\path\data_utils.pyc in load_CIFAR_batch(filename)
10 X = np.array(datadict['data'])
11 Y = np.array(datadict['labels'])
---> 12 X = X.reshape(-1, 3, 32, 32).transpose(0,2,3,1).astype("float")
13 return X, Y
14
MemoryError: 这个错误发生在第12行,我知道这是一个占用内存的分配,但这并不意味着4GB的RAM就不够了,这是在代码运行时在木星之外没有问题的时候确认的。
我猜想这与朱庇特或Chrome的内存限制有关,但我不确定,也不知道如何解决。
顺便问一下:
发布于 2018-07-12 12:05:02
我只比这个问题晚了一年零两个月。关于为什么的技术答案在这里解释得很好:https://superuser.com/questions/372881/is-there-a-technical-reason-why-32-bit-windows-is-limited-to-4gb-of-ram
它还暗示了conda解决方案的工作原理。
但是对于一个懒惰的工程师来说,关闭Chrome选项卡并不是绝对必要的,重新启动你的内核,这样它就重新开始了。
Kernel > Restart (& Run All)发布于 2017-08-02 23:54:13
显然,当python安装不是最好的时候,就会发生这种情况。
事实上,在解决这个问题之前,我已经在windows上手动安装了python2.7和我需要的包,在花了将近两天的时间试图找出问题所在之后,我用Conda重新安装了所有的东西,问题就解决了。
我想Conda正在安装更好的内存管理包,这是主要原因。
发布于 2018-01-29 10:25:03
尝试以管理员权限运行。为我工作过。
https://stackoverflow.com/questions/43866413
复制相似问题