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)