Tensorflow Keras替代ImageDataGenerator加载任意numpy张量

Tensorflow Keras替代ImageDataGenerator加载任意numpy张量,tensorflow,keras,tensorflow2.x,Tensorflow,Keras,Tensorflow2.x,Keras的ImageDataGenerator非常适合逐步加载图像并将迭代器传递给model.fit函数。然而,它似乎只适用于图像和分类任务 我想做回归,也就是说,我的标签也是和训练集形状相同的数组。实际上,它们是多维(>1通道)数组,类似于图像,但它们不是图像 关于使用什么类简单地向keras model.fit()输出成批数据以训练深层神经网络,有什么建议吗 当然,问题是我的数据集太大,无法放入内存,这就是我需要使用这些生成器/迭代器的原因。一个快速解决方案是使用Colab,它的GPU实例

Keras的ImageDataGenerator非常适合逐步加载图像并将迭代器传递给model.fit函数。然而,它似乎只适用于图像和分类任务

我想做回归,也就是说,我的标签也是和训练集形状相同的数组。实际上,它们是多维(>1通道)数组,类似于图像,但它们不是图像

关于使用什么类简单地向keras model.fit()输出成批数据以训练深层神经网络,有什么建议吗


当然,问题是我的数据集太大,无法放入内存,这就是我需要使用这些生成器/迭代器的原因。

一个快速解决方案是使用Colab,它的GPU实例有24 GB RAM可供使用。当您像我那样加载numpy数组时,也可以减少内存

对于您的情况,最好的解决方案是使用
tf.data.Dataset()

虽然适应它可能需要相对较短的时间,但建议您加载数据并使用model.fit()

您可以在此处查阅文档:

是新的、快速的、设计精美的、易于扩展的


例如,对于您的问题,您可能需要使用
tf.data.Dataset.from_tensor_slices()
;我会让你发现它的功能:D.

哈哈,谢谢,但我已经可以访问一个64GB内存的服务器,我希望需要256GB或512GB内存,我会看看这个。不客气。我相信它会满足你的需求。你知道卡林(c–lin)在法国理工学院的意思是拥抱,尽管我是罗马尼亚人,不是法国人;在我的语言中,它没有任何意义;它应该来自一种药用植物:)啊哈,可爱:))