您好,登錄后才能下訂單哦!
小編給大家分享一下如何使用tf.nn.dynamic_rnn展開時間維度,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
對于單個的 RNNCell , 使用色的 call 函數進行運算時 ,只是在序列時間上前進了一步 。
如使用 x1、 ho 得到此h2, 通過 x2 、 h2 得到 h3 等 。
tf.nn.dynamic_rnn的作用:
如果序列長度為n,要調用n次call函數,比較麻煩。對此,TensorFlow提供了一個tf.nn.dynamic_mn函數,使用該函數相當于調用了n次call函數。通過{ho, x1 , x2,…, xn} 直接得到{h2 , h3,…, hn} 。
具體來說,設輸入數據的格式為(batch_size, time_steps, input size),
其中batch_size表示batch的大小,即包含幾個序列。
time_steps表示序列長度,
input_size表示輸入數據單個序列單個時間維度上固有的長度。
此時,得到的outputs是time_steps步里所有的輸出。它的形狀為(batch_size, time_steps, cell.output size)。state 是最后一步的隱狀態,形狀為(batch_size, cell . state_size) 。
至此,在對每一步的輸出進行變換,可以得到損失并進行訓練模型了。
以上是“如何使用tf.nn.dynamic_rnn展開時間維度”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。