【问题标题】:Tensorflow Dataset API : CacheTensorFlow 数据集 API:缓存
【发布时间】:2018-06-05 11:32:36
【问题描述】:

我正在尝试使用 tf.Dataset.cache 但它似乎没有任何影响。

我有 3 个问题:

  1. 您希望在什么时候缓存数据集?我假设它将在任何具有随机行为的映射操作之前。是否建议在从 TFRecord 文件初始解析后缓存数据集,然后再进行任何其他映射?

  2. 如何衡量缓存对速度优化的影响?

  3. 我会假设我总是想将我的图像缓存到内存中。至少其中一部分,让管道更快地为网络供电。我什么时候想缓存到文件?

谢谢!

【问题讨论】:

标签: caching tensorflow dataset


【解决方案1】:
  1. .cache 函数的目的是通过将样本缓存到内存/磁盘空间来加速数据管道。因此,对于初始时期之后的所有时期,您的管道将不再需要读取/解析/处理。话虽如此,通常最好将其放在数据管道的末尾。

  2. 你可以对你的第一个 epoch 和你的第二个 epoch 计时,看看是否有速度提升。

  3. 当您的图像太大而无法放入内存时。但是磁盘 I/O 也需要时间。您需要确保您的流水线处理花费的时间比这要长得多。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-02-08
    • 2018-08-22
    • 2020-11-07
    • 1970-01-01
    • 1970-01-01
    • 2017-12-20
    • 2018-12-15
    • 2018-11-04
    相关资源
    最近更新 更多