MemoryError:无法为形状为(72500027776)、数据类型为float64的数组分配30.4 GiB



它给出了内存错误,但从未达到内存容量。我在SSH上有60 GB的ram,整个数据集进程消耗30我正在尝试用k折叠训练一个自动编码器。没有k倍数,训练效果很好。原始数据集在hdf5中包含250000个数据。使用K-fold,如果我使用的总数据少于100000,它就可以工作。我已经将其转换为float32,但仍然不起作用。我也尝试过echo 1,但它会自动杀死python程序

考虑到您提供的数据集的维度(725000x277x76(及其数据类型(float64-8字节(,似乎您需要(至少(大约114GB才能将数据集加载/存储在RAM中。

克服这一限制的解决方案是:1(通过超实验室选择读取一定数量的数据集(例如,一次1 GB的块(,并将其加载/存储在内存中,2(对其进行处理,3(重复该过程(即,转到步骤1(,直到数据集被完全处理。这样,您就不会耗尽RAM内存。

相关内容

最新更新