[問題] RNN(GRU)的memory在評估模型中如何工作?
作業系統:Linux
問題類別:RNN中的GRU
使用工具:Pytorch
問題內容:
初學者學習有關RNN在Forward中的過程,
對於memory在評估或是實際應用中如何工作有疑惑。
首先
假設我有一個Batch(6)資料,
其維度分別代表( seq_len(40), batch_size(6), embedding_dim(15) ),
可以理解成(句子長度, batch size, word vector向量長度)。
接著
假設我有一個GRU Layer,他是單向的,一層(沒有堆疊),memory的維度是7。
代碼如下
https://imgur.com/IJoQ9mE
在執行Forward中,我必須給一個初始化的memory,
根據batch(6)、單向、memory維度(7),
我的初始化memory是一個(1, 6, 7)的Tensor。
在執行完之後我會得到輸出值(y)以及更新的memory。
代碼如下
https://imgur.com/3Sr7DId
假設我之後接了一個Fully connected layer結束,使用Log loss當作損失函數。
Train了一發之後,我想找一筆測試資料(batch=1)來輸入給模型。
問題是
我在輸入模型的初始化memory應該選哪一個?
還是我根本不需要去選?但是不選的話,很奇怪。
或是我完全錯誤理解GRU的工作模式了?
請高手指教,謝謝。
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.168.199.15 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/DataScience/M.1608715527.A.872.html
推
12/27 13:42,
3年前
, 1F
12/27 13:42, 1F
→
12/27 13:42,
3年前
, 2F
12/27 13:42, 2F
推
12/27 13:59,
3年前
, 3F
12/27 13:59, 3F
→
12/27 14:00,
3年前
, 4F
12/27 14:00, 4F
→
12/27 18:16,
3年前
, 5F
12/27 18:16, 5F
→
12/27 18:17,
3年前
, 6F
12/27 18:17, 6F
DataScience 近期熱門文章
PTT數位生活區 即時熱門文章