LSTM算法与背景知识汇总

LSTM总结目录(持续更新中

背景知识


循环神经网络是神经网络的一种,循环神经网络适合于解决序列问题。传统的神经网络不同层之间是全连接的, 而同一层内的神经元相互之间并无沟通。而在序列处理的过程中,前一阶段的输出会对下一阶段的输出产生影响。鉴于此,可以使用循环神经网络。循环神经网络不仅仅会接受上一层的输入,并且会接受上一时刻本层神经元的信息。循环神经网络可以有效解决之前的神经网络解决序列问题时的缺陷,但也存在着当神经网络过深或者时序数过多时的梯度爆炸或者是梯度消失的问题。

循环神经网络示意图
循环神经网络中的 LSTM 可以解决这种问题,即长短期记忆网络。并且循环神经网络得以广泛应用的关键就在LSTM 。输入门用来接受近期有用的信息,遗忘门用来对久远的、无用的信息选择性的遗忘。输出门的输出为根据当前状态决定的输出。
LSTM示意图

  • 遗忘门:它决定了上一时刻的单元状态1C_(t-1)有多少保留到当前时刻C_t。
  • 输入门:它决定了当前时刻网络的输入X_t 有多少保存到单元状态 C_t。
  • 输出门:控制单元状态C_t有多少输出到LSTM的当前输出值h_t 。
    LSTM 的输入有三个,上一时刻的单元状态C_(t-1),上一时刻的输出h_(t-1),本次的最新输入信息X_t 。
    输出有两个,这一时刻的单元状态C_t , 和这一时刻的单元输出 h t h_{t} ht

LSTM算法

门的表达实际上是系数。如果系数为零,代表与之关联的任何信息均不能通过,如果系数为零,则与之相乘的任何信息均为零,即无法表达到最后的结果中。如果系数为1,则任何信息均不能过滤到最后的结果当中。

  • 遗忘门:
    在这里插入图片描述

  • 输入门:
    在这里插入图片描述

  • 输出门:
    在这里插入图片描述
    总的算法计算公式(已经描述的不再赘述):
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    LSTM 的神经单元示意图如下所示:
    在这里插入图片描述
    对于W权重的维度解析,注解如下:
    在这里插入图片描述
    在这里插入图片描述
    需要确定的参数项共有八个,分别为 W f W_{f} Wf W i W_{i} Wi W c W_{c} Wc W o W_{o} Wo,以及对应的偏置项。
    训练过程可以简述为:
    1、 前向计算每个神经元的输出值,一共有 5 个变量,计算方法就是前一部分,
    2、反向计算每个神经元的误差项值。与 RNN 一样,LSTM 误差项的反向传播也是包括两个方向:
    一个是沿时间的反向传播,即从当前 t 时刻开始,计算每个时刻的误差项;
    一个是将误差项向上一层传播。
    3、根据相应的误差项,计算每个权重的梯度。

训练技巧

  • LSTM 的常见问题是容易过拟合,对待过拟合问题可以通过随机丢失,数据正则化等手段。
    -可以对因子进行单独训练,以获知它们对最终结果的影响大小。

  • 训练的参数应该小于等于样本数。

  • 在一系列超参数中,学习率是最重要的超参数。

  • 多个LSTM 层的堆积,可以较快较好的解决问题。

  • 激活函数使用SOFTMAX效果较好。

参考文献

[1]LSTM原理详解:https://blog.csdn.net/qq_31278903/article/details/88690959
[2]理解 LSTM(Long Short-Term Memory, LSTM) 网络:https://www.cnblogs.com/wangduo/p/6773601.html?utm_source=itdadao&utm_medium=referral
[3] 详解LSTM:https://www.jianshu.com/p/dcec3f07d3b5
[4]零基础入门深度学习(6) - 长短时记忆网络(LSTM):https://zybuluo.com/hanbingtao/note/581764


  1. LSTM 中长期状态信息的保留称为注脚 。 ↩︎

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值