您的位置:首页 > 理论基础 > 计算机网络

循环神经网络RNN和长短期循环神经网络LSTM理论学习笔记

2020-03-30 07:29 901 查看

RNN和LSTM理论学习笔记

  • 出现原因:多层全连接的神经网络或者卷积神经网络只能处理当前状态。
  • 时序相关的问题:自然语言处理,视频图像处理、股票交易信息处理等。

循环神经网络RNN(Recurrent Neural Network)

  • 类型:
    (1)单向神经网络或者双向神经网络
    (2)循环神经网络和深度循环神经网络

  • 作用:处理短序列问题


X为输入层,是一系列的特征,用向量的形式表示;
O为输出,依然是一系列的向量,具体可以为物体的分类等;
h为神经元当前的状态;
U为输入X特征与隐藏层神经元全连接的权值矩阵;
V为隐藏层与输出层全连接的权值矩阵;
W为上一次隐藏层的输出到下一隐藏层的输入的权值矩阵;(一直更新)
隐藏层的输出取决于x、U、W;

  • 自己的理解
    隐藏层只是简单执行一个tanh或者Relu操作,里边的计算大部分都是乘法,会形成梯度消失或者梯度爆炸;RNN可以处理短序列问题,但不可处理长序列问题。

长短期循环神经网络LSTM(Long Short-Term Memory)

  • 作用:解决梯度爆炸或消失,处理长序列问题;

  • LSTM主要是对RNN的隐藏层进行了改进;
    LSTM神经元的输入有三部分:当前网络的输入Xt,上一时刻的输出ht、上一时刻的单元状态Ct。

  • LSTM中每一个神经元相当于一个记忆细胞,关键的是细胞状态,细胞状态类似于以时间为基准的传送带,在链路上运行,只有少量的线性交互;

:保护和控制细胞状态

(1)遗忘门
(2)输入门
(3)输出门
a. 门是一种让信息选择式通过的方法。包含一个 Sigmoid神经网络层和一个点乘操作。
b. Sigmoid层输出0到1之间的数值,描述每个部分有多少量可以通过。
0 代表“不许任何量通过”
1 代表“允许任何量通过”

  • 遗忘门:决定丢弃上一步的哪些信息。
    遗忘门读取 ht−1和 xt,输出一个在 0 到 1 之间的数值给每个在细胞状态 Ct−1 中的数字。1 表示“完全保留”,0 表示“完全舍弃”;
  • 输入门:决定加入哪些新的信息。
  1. tanh层创建一个新的候选值向量 Ct~,加到状态中。
  2. 这里sigmoid层称“输入门层”,起到一个缩放的作用。
  3. 这两个信息产生对状态的更新。
  • 更新细胞状态
    1.旧的细胞状态 Ct−1与 ft 相乘来丢弃一部分信息
    2.再加上 it∗Ct~(i是input输入门),生成新的细胞状态Ct

  • 输出门:决定输出哪些信息。
    1.把Ct输给 tanh 函数,得到一个候选的输出值
    2.运行一个 sigmoid 层来确定细胞状态的哪个部分将输出出去

  • 结束

  • 点赞
  • 收藏
  • 分享
  • 文章举报
小风风风风风 发布了4 篇原创文章 · 获赞 1 · 访问量 170 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: