当前位置:首页 > Web开发 > 正文

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

2024-03-31 Web开发

一.RNN简介

  1.)什么是RNN?

RNN是一种特殊的神经网络布局,考虑前一时刻的输入,且赋予了网络对前面的内容的一种‘记忆‘成果.

  2.)RNN可以解决什么问题?

时间先后挨次的问题都可以使用RNN来解决,好比:音乐,翻译,,造句,语音识别,视频图像预测,语言措置惩罚惩罚等等,后来颠末变种甚至可以到达CNN的感化

具编制子1 Car which.............,() .........。使用RNN可以预测括号里面的内容应该为 is/was.

    2 学习莎士比亚写的诗词,然后进行仿照

    3 你想为伴侣的生日创作一段爵士乐,然而,你不会任何乐器、乐理,幸运的是,你了解深度学习并将使用LSTM网络来解决这个问题

二.RNN道理   1.)RNN单元图(上)和完整布局图(下)以及前向流传

技术图片

技术图片

   RNN单元理解:

    上一时间t-1隐藏状态与本时刻t的输入xt 乘以权重矩阵Wa,加上一个偏置ba,再使用tanh激活函数得到本时间t得隐藏状态at。

    使用本时间的隐藏状态at预测出yt

 疑问1:它是如何进行“记忆”的呢?

答:我们称a^t为隐藏状态,由图可知,它是按照X^t计算得到的,也就是说它保存了上一个单元的输入信息,这就是它记忆的道理

 疑问2:为什么使用tanh不使用sigmod激活函数呢?(RNN的激活函数除了双曲正切,RELU函数也用的非常多)

答:sigmod导数庞大,使用sigmod函数容易呈现梯度消掉,(tanh也会有此问题,lstm网络解决此问题)

, 

,                  

  2.)反向流传和损掉函数 选用交叉熵(Cross Entropy) 反向流传

pass

损掉函数

t时刻的损掉值

总损掉值

 三 RNN的升级

RNN根本版,存在着一些问题, 此中较为严重的是容易呈现梯度消掉或者梯度爆炸的问题. 注意: 这里的梯度消掉主要指由于时间过长而造成记忆值较小的现象,例如Car 和 后面的 距离太远了,网络无法记住

  1.)是非时记忆(Long Short-Term Memory (LSTM))网络                                    参考 https://www.jianshu.com/p/95d5c461924c

技术图片

我们称Ct为细胞状态

LSTM的理解   1)第一步决定细胞状态需要抛弃哪些信息

温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/web/31238.html