gpt4 book ai didi

python - TensorFlow TFRecordDataset shuffle buffer_size 行为

转载 作者:行者123 更新时间:2023-12-04 01:58:43 25 4
gpt4 key购买 nike

我不清楚 tf.TFRecordDataset 中的 buffer_size 参数是什么做。假设我们有以下代码:

dataset = dataset.shuffle(buffer_size=10000).repeat().batch(batch_size)

这是否意味着只有前 10k 个样本将被使用并永远重复,或者我将遍历整个数据集?如果不是,它到底是做什么用的?那么这段代码呢?

dataset = dataset.repeat().shuffle(buffer_size=10000).batch(batch_size)

我注意到了 this post ,但它没有说明任何关于 buffer_size 的内容。

最佳答案

answer可能有助于更好地理解 shuffle 方法的 buffer_size 参数。

简而言之,数据集的缓冲区中总是有超过 buffer_size 个元素,并且每次添加元素时都会打乱这个缓冲区。

因此,缓冲区大小为 1 就像没有洗牌,缓冲区长度为数据集的长度就像传统的洗牌。


要了解改组和重复数据集之间的正确顺序,请查看官方 performance guide .

最佳做法通常是先洗牌再重复,因为这将确保您在每个时期都能看到整个数据集。

关于python - TensorFlow TFRecordDataset shuffle buffer_size 行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48817125/

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