我通過了this tutorial。在最後一塊中,它表示dynamic_rnn函數不適用於計算注意力。但是我不明白的是,我們需要的只是解碼器的隱藏狀態,以便找到編碼器符號可以解決的問題。張量流中tf.nn.dynamic_rnn和tf.nn.raw_rnn有什麼區別?
1
A
回答
0
編碼器 - 解碼器環境中的注意機制意味着解碼器在每個時間步「參加」編碼器的「有用」部分。例如,這被實現爲平均編碼器的輸出並且在給定的時間步將該值(稱爲上下文)饋送到解碼器中。
dynamic_rnn
計算所有時間步長的LSTM細胞的輸出並給出最終值。因此,沒有辦法告訴模型,在步驟t
的單元狀態不僅應該依賴於前一個單元和輸入的輸出,還應該依賴於附加信息,例如上下文。您可以使用raw_rnn
來控制編碼器或解碼器LSTM的每個時間步的計算。
如果我理解正確,在本教程中,作者在每個時間步將地面真值輸入作爲輸入提供給解碼器。但是,這不是通常的做法。通常,您想在時間將t
處解碼器的輸出作爲輸入饋送給解碼器。簡而言之,在每個時間步驟對解碼器的輸入是可變的,而在dynamic_rnn
中則是預定義的。
請參考更多的技術細節:https://arxiv.org/abs/1409.0473
相關問題
- 1. 張量流和光流之間有什麼區別?
- 2. 張量流中tf.sub和正減運算有什麼區別?
- 3. Tensorflow中的張量和變量有什麼區別
- 4. 在Tensorflow中,變量和張量之間有什麼區別?
- 5. 運行流量和流量檢查有什麼區別?
- 6. 在張量流中可訓練和停止梯度有什麼區別
- 7. 張量流服務示例中的stub.Predict.future和stub.Predict有什麼區別?
- 8. 這兩個張量之間有什麼區別,爲什麼?
- 9. Twitter流API和REST有什麼區別?
- 10. 流和文件有什麼區別?
- 11. 如何查找張量流庫中的「tf.nn.dynamic_rnn」代碼?
- 12. 兩個張量變量名稱有什麼區別?
- 13. 有什麼區別`和$(Bash中有什麼區別?
- 14. DTR/DSR和RTS/CTS流量控制有什麼區別?
- 15. TARGET_ARCH和TARGET_MACH變量有什麼區別?
- 16. 變量的=和=>有什麼區別?
- 17. definePlugin和env變量有什麼區別?
- 18. 對象和變量有什麼區別?
- 19. 在張量流中,常數和不可訓練變量之間有什麼區別?
- 20. 張量流中shuffle_batch()和batch()之間的區別
- 21. 張量流中var.op.name和var.name有什麼不同?
- 22. 有什麼區別? :和||
- 23. &&和||有什麼區別?
- 24. 「/」和「/ *」有什麼區別?
- 25. 有什麼區別:。!和:r!?
- 26. ==和===有什麼區別?
- 27. Appender和〜有什麼區別?
- 28. $ @和$ *有什麼區別?
- 29. is和=有什麼區別?
- 30. #.00和#。##有什麼區別?
編碼器的隱藏狀態在注意機制 –
好一個使用。這就像我們在5月份玩的原始RNN一樣。新的關注點,編碼方法等等對嗎? –