【问题标题】:Keras alternative to ImageDataGenerator for loading arbitrary numpy tensor用于加载任意 numpy 张量的 Keras 替代 ImageDataGenerator
【发布时间】:2020-07-22 16:44:57
【问题描述】:

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

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

关于使用什么类来简单地将批量数据发送到 keras model.fit() 以训练深度神经网络的任何建议?

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

【问题讨论】:

    标签: tensorflow keras tensorflow2.x


    【解决方案1】:

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

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

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

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

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

    【讨论】:

    • 谢谢,我会看看这个。
    • 不客气。我相信它会满足您的需求。
    • 你知道calin(câlin)在法语中的意思是拥抱
    • 很好,虽然我是罗马尼亚人而不是法国人;在我的语言中,它没有任何意义;它应该来自药用植物:))
    • 啊啊可爱:))))
    【解决方案2】:

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

    【讨论】:

    • 哈哈,谢谢,但我已经可以访问具有 64GB RAM 的服务器,我宁愿需要 256 GB 或 512GB
    猜你喜欢
    • 2021-10-12
    • 2019-11-21
    • 1970-01-01
    • 1970-01-01
    • 2019-04-04
    • 1970-01-01
    • 2021-09-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多