2016-07-14 52 views
0

我想知道爲什麼在Seq2Seq TensorFlow教程中引入了水桶。我瞭解不處理填充符號的效率增益,但如果使用rnn並指定sequence_length參數,則可以避免處理填充。或者如果您使用dynamic_rnnSeq2Seq在TensorFlow中使用水桶教程

這是因爲它有助於跨多個設備/機器分發培訓嗎?

回答

0

一個原因是seq2seq在動態rnn可用之前創建。另一個是,即使是動態的,如果你的批次是按桶組織的話,它仍然有助於提高速度。

+0

我同意第一個理由:)但爲什麼桶會有幫助?即使桶大小接近短語大小,仍然有一些填充處理。假設在運行時您想要執行單個短語處理,以簡化事情。這個短語有7個單詞,因此它必須填充到第一個桶的10個,導致3個pad被處理。我的注意是動態rnn只會處理7個,對嗎? – RaduK

+0

我翻遍了代碼,現在我明白了你的觀點。剷鬥不會幫助執行一次(我給出的例子),但他們會批量執行。 – RaduK

相關問題