我一直在关注一些参考文献,比如在https://github.com/tensorflow/tensorflow/issues/2354和https://indico.io/blog/tensorflow-data-inputs-part1-placeholders-protobufs-queues/中,看看我们如何在批处理中同时执行填充和混洗。第一个链接更接近我的预期,但填充不会在批处理中混洗。单个批次被混洗,但不是批次元素。
在第二个链接中,使用了标准的tensorflow,如tf.train.batch和tf.train.suffle_batch,前者只做填充,但不做混洗。
是否有其他方法可以在批处理中同时执行填充和混洗操作
发布于 2017-06-25 04:47:59
关于您在评论中询问的dynamic_rnn,请查看此处的文档:dynamic_rnn
需要指定的参数为sequence_length=[],默认为None。您需要向dynamic_rnn传递一个包含与每次调用中相同数量的序列的向量,其中每个向量元素都是表示每个序列的步数的数字。我认为最终应该使它们的长度相等,并用零填充,但重点是避免在空步数上更新状态。
我从来没有亲自做过这件事,但是我已经看过各种各样的例子了,所以你可能会想去找找看。这里有一个例子:Variable Length Sequences。希望这能帮到你。
https://stackoverflow.com/questions/44736478
复制相似问题