版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Solo95/article/details/86515900
整理并翻译自吴恩达深度学习系列视频:序列模型第一周。
Prerequisite:Gated Recurrent Unit(GRU)
Long Short term memory unit(LSTM)
GRU 和 LST的对比。
LTSM计算公式如下:
C~<t>=tanh(Wc[C<t−1>,x<t>]+bc)
Γu=σ(Wu[C<t−1>,x<t>]+bu)
Γf=σ(Wf[C<t−1>,x<t>]+bf)
Γo=σ(W0[C<t−1>,x<t>]+bo)
C<t>=ΓuC~<t>+(1−Γu)C<t−1>
a<t>=Γo∗C<t>
LSTM有三个门控值,使用
Γf替换GRU里的
1−Γu,并且增加一个新的
Γo来控制输出的值。
LSTM的图示结构如下图所示:
如图红色直线所示,只要三个门控值
Γu、
Γf、
Γo设置得当,我们需要的信息可以一直向后传递。
这种结构的常见变种是peephole connection,即计算门控值时,也使用了前一层的
C<t−1>,如图中绿色圈起来的部分。
GRU其实是LSTM的一种简化版本,事实上LTSM先于GRU被发明出来。
GRU只有2个门控值,简单,计算快,可以扩展到更大的模型上;LSTM有三个门控值,更强大,更灵活。历史上,LTSM经常被当做首位的默认选择,但最近几年GRU获得了很多团队的支持,因为它很简单,也能做出很好地效果,更容易扩展到更大的问题。