【发布时间】:2013-07-20 07:10:37
【问题描述】:
我有一个学习人工神经网络的程序,它需要一个二维 numpy 数组作为训练数据。我要使用的数据数组的大小约为 300,000 x 400 浮点数。我不能在这里使用分块,因为我使用的库 (DeepLearningTutorials) 将单个 numpy 数组作为训练数据。
当此进程的 RAM 使用量约为 1.6Gb 时,代码显示 MemoryError(我在系统监视器中检查过),但我的总 RAM 为 8GB。另外,系统是 Ubuntu-12.04 32-bit。
我检查了或其他类似问题的答案,但在某处它说没有什么比为你的 python 程序分配内存更重要,而在某处答案不清楚如何增加进程内存。
一个有趣的事情是我在不同的机器上运行相同的代码,它可以毫无问题地使用几乎 1,500,000 x 400 浮点数的 numpy 数组。基本配置类似,只是另一台机器是64位的,而这台机器是32位的。
有人可以给出一些理论上的答案,说明为什么会有这么大的差异,或者这是我的问题的唯一原因吗?
【问题讨论】:
标签: python numpy ubuntu-12.04 32-bit