【LSTM】LSTM cell的门结构学习笔记

1. LSTM cell

  • 如文章 LSTM网络与参数学习笔记 中介绍, LSTM cell指的是一个包含隐藏层所有神经元的结构.
  • 但是LSTM门控单元的公式如何理解、门和LSTM cell神经元如何对应、门函数的参数维度、不同时间步不同隐藏层之间数据如何传递等, 这些问题将在本文厘清

2. 门结构

  • RNN存在长期记忆逐渐消失以及梯度消失/爆炸的问题

  • LSTM通过引入cell state保存长期记忆, 通过设置精妙的门控机制很大程度缓解梯度消失/爆炸问题.

  • LSTM中有三个门, 分别是遗忘门, 输入门和输出门

    • 遗忘门: f门

      • 决定我们会从细胞状态中丢弃什么信息
      • 它接收 h t − 1 h_{t-1} ht1 x t x_{t} xt作为输入参数,通过 s i g m o i d sigmoid sigmoid层得到对应的遗忘门的参数
      • 弄清楚今天发生的事情(输入 x x x)和最近发生的事情(隐藏状态 h h h),二者会影响你对情况的长期判断(细胞状态 C C C
    • 输入门: i门

      • 确定什么样的新信息被存放在细胞状态中
      • s i g m o i d sigmoid sigmoid层得到输入门参数 i t i_t it, 确定要更新的信息, t a n h tanh tanh层产生新的候选值 C ~ t \widetilde{C}_t C t. 最后将 i t i_t it C ~ t \widetilde{C}_t C t相乘得到更新的信息;同时将上面得到的遗忘门 f t f_t ft和旧元胞状态 C t − 1 C_{t-1} Ct1相乘,以忘掉其中的一些信息。二者相结合,便得到更新后的状态 C t C_t Ct
      • 最近发生的事情(隐藏状态 h h h)和今天发生的事情(输入 x x x)中的哪些信息需要记录到你对所处情况的长远判断中(细胞状态 C C C)
    • 输出门:o门

      • 计算最后的输出信息
      • 通过 t a n h tanh tanh层将细胞状态的值规范到 − 1 ∼ 1 -1\sim 1 11之间, 然后由 s i g m o i d sigmoid sigmoid层得到输出门参数 o t o_t ot, 最后将 o t o_t ot与规范化后的细胞状态点乘, 得到最终过滤后的结果 h t h_t ht
      • 得到所处情况的短期判断, 比如近期跟老板提加薪会不会答应

3. 门的公式

  • 首先回顾输入和输出的维度

    • batch_first = true

      input(batch_size, seq_len, input_size)
      output(batch_size, seq_len, hidden_size * num_directions)
      
    • batch_first = false

      input(seq_len, batch_size, input_size)
      output(seq_len, batch_size, hidden_size * num_directions)
      
  • 遗忘门

    • 公式:

    • 输入: h t − 1 h_{t-1} ht1, x t x_{t} xt的联合,即 [ h t − 1 , x t ] [h_{t-1}, x_{t}] [ht1,xt]

    • 输出:由于使用了 s i g m o i d sigmoid sigmoid函数,输出值在 0 ∼ 1 0\sim 1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值