机器学习与深度学习系列连载: 第二部分 深度学习(十三)循环神经网络 1(Recurre Neural Network 基本概念 )

循环神经网络 1(Recurre Neural Network 基本概念 )

在这里插入图片描述

循环神经网络的特点:
• RNNs 在每个时间点连接参数值,参数只有一份
• 神经网络出了输入以外,还会建立在以前的“记忆”的基础上
• 内存的要求与输入的规模有关

当然,他的深度不只有一层:
在这里插入图片描述

1. 公式表达

对于输入x1…xT , 我们有记忆h和分类结果yhat
在这里插入图片描述
在这里插入图片描述

2 .RNN 语言处理模型

在自然语言处理中,RNN和它的模型变种,是主力军。
(1) 输入层、隐藏层、参数设置
在这里插入图片描述
是初始化的在时间点0的隐藏层向量
在这里插入图片描述
是在时间点t的输入向量

在这里插入图片描述
是其中各参数集的维度设置:

(2) Loss
在这里插入图片描述
是在整个词汇表中的概率分布
整个Loss函数:
在这里插入图片描述

整体的Loss:
在这里插入图片描述

3 .RNN 训练

RNN的训练比较难,原因如下:

  1. 每次前向传播的时候,乘以的都是同一个参数矩阵W
  2. 好多步以前的输入,可能会影响现在的结果
  3. 求导的过程非常长

相应的就会出现梯度消失或者爆炸的问题(vanishing/exploding)

原因推导:

  1. 总的误差是每一个时间点的误差的和

在这里插入图片描述

  1. 根据chain-rule:

在这里插入图片描述

很多数值的相乘,如果乘数大于1,结果容易爆炸,如果小于1,结果趋近于0

本专栏图片、公式很多来自台湾大学李弘毅老师、斯坦福大学cs229,斯坦福大学cs231n 、斯坦福大学cs224n课程。在这里,感谢这些经典课程,向他们致敬!

猜你喜欢

转载自blog.csdn.net/dukuku5038/article/details/83830994