【问题标题】:how does Keras flow_from_directory affect computer storage?Keras flow_from_directory 如何影响计算机存储?
【发布时间】:2018-06-26 17:21:50
【问题描述】:

我试图找出在我的机器上训练神经网络所需的最小空间。通常(图像)数据集的原始形式相对较小,但是当我们转换它们时(在带有 flow_from_dir 的 keras 中),我们会增加图像并将数据集的大小乘以我们的期望。

我的问题是:flow_from_directory 如何存储增强图像?如果我没有指定需要存储图像(类的参数),keras 是否会增强图像,使用它进行训练并丢弃它,或者将其保存一段时间,直到训练结束为止?

另外,这些图像会在持久内存或 RAM 中吗?先感谢您。

【问题讨论】:

  • 当您无法在数据集上训练模型并将其保存在内存中时,flow_from 目录会很有帮助。这就像一块数据被取出并存储在内存中,然后训练并丢弃新的块
  • 听起来好像是存储在 RAM 中的吧?您是否正在使用此表格的任何特定资源? @user5722540
  • 我发现了一些可能有帮助的信息(并且当你想到它时,它是有意义的。)图像数据集(例如来自 Kaggle)包含相对相似的图像或相同类型的图像。然而,这并不意味着它们占用相同的存储空间。我发现数据集中这些单独的图像占用的存储范围非常大。在预处理增强后,作为旧图像增强版本的图像集具有更多更可预测的存储大小。
  • 这意味着即使您的初始数据集可能很大,由于它具有可预测性,因此可以对其进行扩充并生成新数据。

标签: python-3.x tensorflow machine-learning neural-network keras


【解决方案1】:

默认情况下,ImageDataGenerator 会即时进行数据扩充,并且不会将扩充后的图像存储在任何地方。正如您所提到的,这样做需要太多空间。所以你应该只担心有足够的 RAM 来容纳一定数量的增强批次,而不是整个数据集。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-08-07
    • 1970-01-01
    • 2017-10-04
    • 2018-06-28
    • 2017-09-05
    • 1970-01-01
    • 2019-05-28
    相关资源
    最近更新 更多