目录
前言
LSTM(long short term memory)翻译为长短时记忆网络,甚至是一种比GRU(门控循环单元)更有效的方法,让模型在序列中学习非常深的连接。
GRU复习
对于GRU,有
更新门Γu (the update gate)
相关门Γr (the relevance gate)
是代替记忆细胞的候选值,然后使用更新门Γu 来决定是否要用
更新
。
LSTM的基本版本
注意了,这里不再有的情形,现在专门使用
或者
,而不是用
,我们也不用相关门
。
典型的LSTM设置了三个门,都是通过激活函数sigmoid实现的,叫门是因为sigmoid大部分都是非常接近1或者0。
三个门分别是更新门Γu(update)、遗忘门Γf(forget)、输出门Γo(output)。
很多个LSTM单元连接起来就构成了LSTM网络,中间传输的值有两个(之前只有一个值),分别是a<t>, c<t>。
红线表明只要合理地设置了遗忘门和更新门,LSTM是相当容易把 的值一直往下传递到右边,比如
,这也是为什么LSTM和GRU非常擅长于长时间记忆某个值。
LSTM的常用版本
目前更常用的一个版本是加上了窥视孔连接(peephole connection),即三个门值不仅取决于 和
,同时还受
的值影响(可以理解偷窥了一下
)。
一个技术细节:假如有一个100维的向量,那么第50个 的元素只会影响第50个元素对应的那个门,关系是一对一的,
值得一提的是,LSTM的早期版本发明在1997年,但是这两年才开始流行用起来。