gpt4 book ai didi

tensorflow - TensorFlow 数据集的函数 cache() 和 prefetch() 有什么作用?

转载 作者:行者123 更新时间:2023-12-04 13:17:15 31 4
gpt4 key购买 nike

我正在关注 TensorFlow 的 Image Segmentation教程。在那里有以下几行:

train_dataset = train.cache().shuffle(BUFFER_SIZE).batch(BATCH_SIZE).repeat()
train_dataset = train_dataset.prefetch(buffer_size=tf.data.experimental.AUTOTUNE)
  • cache() 有什么用功能呢? official documentation是相当晦涩和自我引用的:

  • Caches the elements in this dataset.


  • prefetch() 有什么用功能呢? official documentation又很晦涩:

  • Creates a Dataset that prefetches elements from this dataset.

    最佳答案

    tf.data.Dataset.cache转换可以在内存或本地存储中缓存数据集。这将避免在每个 epoch 期间执行一些操作(如文件打开和数据读取)。下一个时期将重用缓存转换缓存的数据。

    您可以找到有关 cache 的更多信息在 tensorflow 中 here .
    Prefetch重叠训练步骤的预处理和模型执行。当模型执行训练步骤 s 时,输入管道正在读取步骤 s+1 的数据。这样做可以将步骤时间减少到训练的最大值(而不是总和)和提取数据所需的时间。

    您可以找到有关 prefetch 的更多信息在 tensorflow 中 here .

    希望这能回答你的问题。快乐学习。

    关于tensorflow - TensorFlow 数据集的函数 cache() 和 prefetch() 有什么作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59228816/

    31 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com