Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
加载MNIST.pkl.gz时出现python内存错误_Python_Python 2.7_Out Of Memory_Mnist - Fatal编程技术网

加载MNIST.pkl.gz时出现python内存错误

加载MNIST.pkl.gz时出现python内存错误,python,python-2.7,out-of-memory,mnist,Python,Python 2.7,Out Of Memory,Mnist,我是Python新手,已经下载了代码DBN.py,但是有一个问题:当我试图加载数据集MNIST.pkl.gz时,总是出现一个meomory错误。。 我的代码非常简单: import cPickle, gzip, numpy # Load the dataset f = gzip.open('C:\Users\MAC\Desktop\mnist.pkl.gz', 'rb') train_set, valid_set, test_set = cPickle.load(f) f.close() 误差

我是Python新手,已经下载了代码DBN.py,但是有一个问题:当我试图加载数据集MNIST.pkl.gz时,总是出现一个meomory错误。。 我的代码非常简单:

import cPickle, gzip, numpy
# Load the dataset
f = gzip.open('C:\Users\MAC\Desktop\mnist.pkl.gz', 'rb')
train_set, valid_set, test_set = cPickle.load(f)
f.close()
误差如下:

Traceback (most recent call last):

File "<ipython-input-17-528eea6bbfdd>", line 1, in <module>
runfile('C:/Users/MAC/Documents/Python Scripts/untitled0.py',  wdir='C:/Users/MAC/Documents/Python Scripts')

File "C:\Users\MAC\Anaconda\lib\site-packages\spyderlib\widgets\externalshell\sitecustomize.py", line 699, in runfile
execfile(filename, namespace)

File "C:\Users\MAC\Anaconda\lib\site-packages\spyderlib\widgets\externalshell\sitecustomize.py", line 74, in execfile
exec(compile(scripttext, filename, 'exec'), glob, loc)

File "C:/Users/MAC/Documents/Python Scripts/untitled0.py", line 19, in <module>
train_set, valid_set, test_set = cPickle.load(f)

File "C:\Users\MAC\Anaconda\lib\gzip.py", line 268, in read
self._read(readsize)

File "C:\Users\MAC\Anaconda\lib\gzip.py", line 320, in _read
self._add_read_data( uncompress )

File "C:\Users\MAC\Anaconda\lib\gzip.py", line 338, in _add_read_data
self.extrabuf = self.extrabuf[offset:] + data

MemoryError
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
runfile('C:/Users/MAC/Documents/Python Scripts/untitled0.py',wdir='C:/Users/MAC/Documents/Python Scripts')
文件“C:\Users\MAC\Anaconda\lib\site packages\spyderlib\widgets\externalshell\sitecustomize.py”,第699行,在runfile中
execfile(文件名、命名空间)
文件“C:\Users\MAC\Anaconda\lib\site packages\spyderlib\widgets\externalshell\sitecustomize.py”,第74行,在execfile中
exec(编译(脚本文本,文件名,'exec'),glob,loc)
文件“C:/Users/MAC/Documents/Python Scripts/untitled0.py”,第19行,在
列车组、有效列车组、测试列车组=cPickle.load(f)
文件“C:\Users\MAC\Anaconda\lib\gzip.py”,第268行,已读
自读(readsize)
文件“C:\Users\MAC\Anaconda\lib\gzip.py”,第320行,已读
自我添加读取数据(解压缩)
文件“C:\Users\MAC\Anaconda\lib\gzip.py”,第338行,在添加读取数据中
self.extrabuf=self.extrabuf[offset:]+数据
记忆者

我真的不知道,是因为我的电脑内存太小吗?它在windows 7.32位上

我怀疑在这种情况下问题出在Spyder上。
至于原因,我不知道,要么进程不允许在自己的脚本之外分配足够的内存,要么它只是陷入了一个循环中

例如,通过将代码粘贴到
myscript.py
中,尝试在不使用Spyder的情况下运行代码,然后打开
终端
,导航到保存脚本的文件夹,然后运行
python myscript.py
,查看这是否有效或是否提供相同的输出


这是基于上面评论中的一段对话。

我怀疑问题出在斯派德身上。
至于原因,我不知道,要么进程不允许在自己的脚本之外分配足够的内存,要么它只是陷入了一个循环中

例如,通过将代码粘贴到
myscript.py
中,尝试在不使用Spyder的情况下运行代码,然后打开
终端
,导航到保存脚本的文件夹,然后运行
python myscript.py
,查看这是否有效或是否提供相同的输出


这是基于上面评论中的对话。

mnist.pkl.gz有多大?在*MB*即.eww…中,我刚刚检查过。它是15.4mbt。问题很可能不是在pickle状态,而是在用于运行其他脚本的脚本中。你有一个循环可以遍历很多文件吗?我刚刚发现如果我删除了代码的第三行:“train\u set,valid\u set,test\u set=cPickle.load(f)”,错误将不再存在。是因为这一行涉及一些复杂的内容吗…对不起,我对这一行很陌生…对不起,我不认为我有这种循环…我只写了四行代码…mnist.pkl.gz有多大?在*MB*即.eww…中,我刚刚检查过。它是15.4mbt。问题很可能不是在pickle状态,而是在用于运行其他脚本的脚本中。你有一个循环可以遍历很多文件吗?我刚刚发现如果我删除了代码的第三行:“train\u set,valid\u set,test\u set=cPickle.load(f)”,错误将不再存在。是因为这一行涉及到一些复杂的东西吗…对不起,我对这一行很陌生…对不起,我不认为我有这种循环…四行代码是我写的全部。。。