RNN 的shape [B, T, ...]其中B batch size ,T每次输入的长度,如句子单词的长度,剩下的维度取决于数据。 如果说single batch 里面所有的句子长度不同,但是RNN要求必须一样,所以必须填充,因此需要padding 他们,一般填充0. 如果仅有几个句子长度是1000,平均长度是20,如果全部填充到1000,那浪费的很多。因此需要batch padding。 如果设定batches size 为32,那么主要保持这次batch一样就可以了,下次patch可以和上次不一样,这样,只有个别的1ooo需要填充,节约了空间 可以使用 tf.train.batch 和tf.PaddingFIFOQueue. 将参数dynamic_pad=True设定为true就可以了。 当然填充0 未必正确,如果你有一个分类是0 就容易产生混乱
Batching and Padding Data
猜你喜欢
转载自wang-peng1.iteye.com/blog/2394868
今日推荐
周排行