加载图像时出现numpy memory错误

问题描述 投票:0回答:1

我想在numpy数组中加载一个庞大的图像数据集,使其成为我正在尝试训练的cnn模型的训练数据。当我尝试创建如下的numpy数组时,它给了我内存错误。 np.ndarray(shape=(250000, 3, 512, 512))我还能在python中加载如此庞大的数据集吗?

python numpy memory
1个回答
-1
投票

请告诉我们您正在使用哪种机器学习框架(例如Keras,Tensorflow,Pytorch)。根据框架,有几种方法可以避免在RAM上加载整个数据集(对于大型数据集是不可能的)


在这种情况下,您可以使用Keras的fit_generator函数。这将允许您将图像加载到批处理中,而不是将完整数据集加载到RAM中。你的生成器可以是任何python函数,但在你的情况下,使用flow_from_directory方法的ImageDataGenerator可以实现。

看看以下示例:

https://blog.keras.io/building-powerful-image-classification-models-using-very-little-data.html

https://stanford.edu/~shervine/blog/keras-how-to-generate-data-on-the-fly.html

© www.soinside.com 2019 - 2024. All rights reserved.