[问题] np.zeros memory error

楼主: yowantl (加油)   2018-04-19 12:04:24
如标题 以下是我的code
出现下面错误
ML_CROSS
Traceback (most recent call last):
File "D:\Curry\DCIM\lab1\FINAL2\ML.py", line 27, in <module>
designM=np.zeros((Train,M))
MemoryError
>>>
请问大大 该如何解
谢谢
***************************
import csv
import math
import numpy as np
print " ML_CROSS "
Train=35000
Verif=5000
M=6400
D=80
s1=100
s2=100
pos=13.5
dim=0
lam=0
dim_cross=1
coordinate=[]
target=[]
#init_a = np.zeros((10000*10000),4096),np.dtype='float16'))
target_v=np.zeros(Verif)
target_t=np.zeros(Train)
designM=np.zeros((Train,M))
*****************************************
作者: gmccntzx1 (o.O)   2018-04-19 12:42:00
内存不足. designM有35000*6400*8(byte)=1.792e9(byte) 约1.67GB...(np.zeros的dtype默认是np.float64)
楼主: yowantl (加油)   2018-04-19 13:48:00
那请问 有什么解法吗而且我这边内存是32GB
作者: gmccntzx1 (o.O)   2018-04-19 14:25:00
先试着改用np.float32或np.float16看看因为你的code看起来就是要这么大的阵列另外可以试试用memory_profiler确认,看执行到designM这行前,已经用掉多少内存了https://pypi.org/project/memory_profiler/再不然,可能要改存成sparse matrix的方式去计算

Links booklink

Contact Us: admin [ a t ] ucptt.com