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

Keras alternative to ImageDataGenerator for loading arbitrary numpy tensor

Keras 的 ImageDataGenerator 看起来非常适合简单地逐步加载图像并将迭代器传递给 model.fit 函数。但是,它似乎只能用于图像和 class化任务。

我想做回归,即我的标签也是与训练集相同形状的数组。实际上,它们是像图像一样的多维(> 1 个通道)数组,但它们不是图像。

关于 class 使用什么简单地将批量数据吐出到 keras model.fit() 以训练深度神经网络有什么建议吗?

当然,问题是我的数据集太大,无法放入内存,这就是为什么我需要使用这些 generators/iterators。

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

最适合您的情况的解决方案是使用 tf.data.Dataset()

虽然可能需要相对较短的时间来适应它,但这是加载数据并使用 model.fit() 的推荐方式。

您可以在此处查阅文档:https://www.tensorflow.org/api_docs/python/tf/data/Dataset

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

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