LSTM简介
一个目前很火的特殊的RNN结构, 有效解决了RNN的梯度爆炸和长序列记忆问题
优势
LSTM 通过引入遗忘门、输入门、输出门, 来实现对特殊特征的记忆和遗忘,来达到更好的对序列数据的处理和记忆效果。
原理图:
总结公式:
大概就是这样的一个公式
简单来说就是,LSTM一共有三个门,输入门,遗忘门,输出门,
分别为三个门的程度参数,
g 是对输入的常规RNN操作。
公式里可以看到LSTM的输出有两个,细胞状态C’
和隐状态 h’
c’是经输入、遗忘门的产物,也就是当前cell本身的内容,经过输出门得到h’,就是想输出什么内容给下一单元
那么实际应用时,我们并不关心细胞本身的状态,而是要拿到它呈现出的状态
h’作为最终输出.
实现
利用pytorch 手动实现lstm
构建公式
class myLstm(nn