Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/349.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
Python 加载图像时出现numpy内存错误_Python_Numpy_Memory - Fatal编程技术网

Python 加载图像时出现numpy内存错误

Python 加载图像时出现numpy内存错误,python,numpy,memory,Python,Numpy,Memory,我想在numpy数组中加载一个巨大的图像数据集,使其成为我试图训练的cnn模型的训练数据。当我尝试创建一个numpy数组时,它给了我内存错误,如下所示。 np.ndarray(形状=(250000,35151512)) 我还可以用python加载这么大的数据集吗?请告诉我们您使用的是哪种机器学习框架(例如Keras、Tensorflow、Pytorch)。根据框架的不同,有几种方法可以避免将整个数据集加载到RAM上(对于大型数据集,这是不可能的) 在这种情况下,可以使用Keras的fit_生成

我想在numpy数组中加载一个巨大的图像数据集,使其成为我试图训练的cnn模型的训练数据。当我尝试创建一个numpy数组时,它给了我内存错误,如下所示。
np.ndarray(形状=(250000,35151512))

我还可以用python加载这么大的数据集吗?

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


在这种情况下,可以使用Keras的fit_生成器函数。这将允许您批量加载图像,而不是在RAM中加载完整的数据集。生成器可以是任何python函数,但在您的示例中,可能会实现一个with flow\u from\u目录方法

请看以下示例:


尝试使用
dtype=np.uint8
。这是RGB图像所能达到的最低值。它不能很好地工作,如果你没有用于numpy的~24GB RAM,你将无法加载1/4mio。图像。如果你没有相应的PC规格,你就不能一次加载那么多。构造一个生成器,输出你在一个批次中使用的图像数量。在生成器中循环时调用fit()方法。这对我来说很有效。将评论作为答案发布并不能更快地获得您的评论权限。我正在使用无框架工作之上的keras。我需要加载数据集来训练CNN回归模型