我们在训练深度模型时,常常会遇到这样的问题,那就是最后一批数据不够一个batch_size的时候,应该怎么做?
- 有的大佬说,可以对最后一批数据进行补充,让其满足一个batch_size大小;
- 有的人说不设置batch_size的值,设为None;
我想到的方法是:丢弃不足一个batch_size大小的数据,具体做法如下:
假设dataset是我们的数据集
//可以利用tensorflow提供的函数进行操作
dataset=dataset.apply(tf.contrib.data.batch_and_drop_remainder(batch_size) #核心代码
iterator=dataset.make_initalizable_iterator()
next_elm=iterator.get_next()
.....