2016-07-14 72 views
0

我想知道为什么在Seq2Seq TensorFlow教程中引入了水桶。我了解不处理填充符号的效率增益,但如果使用rnn并指定sequence_length参数,则可以避免处理填充。或者如果您使用dynamic_rnnSeq2Seq在TensorFlow中使用水桶教程

这是因为它有助于跨多个设备/机器分发培训吗?

回答

0

一个原因是seq2seq在动态rnn可用之前创建。另一个是,即使是动态的,如果你的批次是按桶组织的话,它仍然有助于提高速度。

+0

我同意第一个理由:)但为什么桶会有帮助?即使桶大小接近短语大小,仍然有一些填充处理。假设在运行时您想要执行单个短语处理,以简化事情。这个短语有7个单词,因此它必须填充到第一个桶的10个,导致3个pad被处理。我的注意是动态rnn只会处理7个,对吗? – RaduK

+0

我翻遍了代码,现在我明白了你的观点。铲斗不会帮助执行一次(我给出的例子),但他们会批量执行。 – RaduK

相关问题