笔者是从这篇博客中学习的:
https://blog.youkuaiyun.com/qq_16234613/article/details/81703228#commentsedit
这里进行言简意赅的总结:
dataset.shuffle: 作用是将数据打乱
dataset.batch: 作用是读取batch_size大小的数据
dataset.repeat: 作用是将数据集重复多少次,即epoch
这里有两种使用情况:
情况一:
dataset.shuffle(3)
dataset.batch(4)
dataset.repeat(2)
将数据取完一个epoch后,再取一个epoch。因此每一个epoch中,最后一个batch大小可能小于等于batch size。
情况二:
dataset.repeat(2)
dataset.shuffle(3)
dataset.batch(4)
先将数据重复2次,成为一个大的数据,最后一个batch大小可能小于等于batch size 。而且一个batch_size中的数据可能会有重复。