1 torch
與keras
的不同
- pytorch的LSTM初始化時的句子長度不是固定的,是可以動態調整的,只是作為batch訓練時,需要保證句子的長度是統一的。
- keras初始化模型是必須傳入句子長度,也就是lstm的單元數,這個是模型參數的一部分
- 經實驗證明,不同的輸入長度,對於lstm網絡的參數總量是一樣的,lstm的參數在於神經元內部的參數,句子長度並不是lstm網絡的參數
2 代碼講解
state,(h_t,c_t) = nn.LSTM(embeded) ```
- state 是完整的隱狀態 (seq_len,batch_size,num_directions*hidden_size)
- h_t 是隱藏層輸出 (num_layers * num_directions, batch, hidden_size) 即每一層的lstm最后一個狀態
- c_t 是細胞狀態 這個不常用
## [參考連接](https://zhuanlan.zhihu.com/p/39191116)