机器学习|神经网络(六)循环神经网络

一、增加记忆功能 1.可计算问题 机器学习|神经网络(六)循环神经网络
文章图片

其中函数不涉及记忆问题,可以使用前馈神经网络计算
但是图灵机涉及记忆问题,需要为神经网络增加记忆能力
2.如何增加记忆能力 ①时延神经网络
额外增加一个延时单元(用以存储网络的历史信息<输入、输出、隐状态等>)
机器学习|神经网络(六)循环神经网络
文章图片

②自回归模型
用变量yt的历史信息来预测自己
机器学习|神经网络(六)循环神经网络
文章图片

③有外部输入的非线性自回归模型
机器学习|神经网络(六)循环神经网络
文章图片

f(.)为非线性函数,可以是前馈网络。Kx和Ky为超参数
机器学习|神经网络(六)循环神经网络
文章图片

二、循环神经网络 循环神经网络的神经元自带反馈,可以处理任意长度的时序数据。
机器学习|神经网络(六)循环神经网络
文章图片

循环神经网络比前馈神经网络更符合神生物经网络的结构,被广泛应用在语音设备、预言模型、及自然语言生成等任务。
将循环神经网络按时间展开
机器学习|神经网络(六)循环神经网络
文章图片

其在时间维上极深,同样存在梯度消失问题。在非时间维上较浅,需要适度增加其模型复杂度。
1.简单循环神经网络 机器学习|神经网络(六)循环神经网络
文章图片

一个完全连接的循环网络是任何非线性动力系统的近似器。
循环神经网络通用近似定理
机器学习|神经网络(六)循环神经网络
文章图片
机器学习|神经网络(六)循环神经网络
文章图片

St为每个时刻的隐藏状态,xt为外部输入,g(.)为状态转换函数,O(.)为连续输出函数
图灵完备
可以实现图灵机的所用功能(可以解决所有可以算问题),一个完全连接的循环神经网络可以近似于图灵完备
2.应用到机器学习 ①序列到类别
机器学习|神经网络(六)循环神经网络
文章图片

将所有h进行平均/求和,再送入分类器之中
②同步的序列到序列模式
机器学习|神经网络(六)循环神经网络
文章图片

例如:中文分词、信息抽取(文本中抽取信息,形成知识)、语音识别--等容易出现分歧的问题
③异步的序列到序列模式
机器学习|神经网络(六)循环神经网络
文章图片

例如:机器翻译
3.参数学习与长程依赖问题 ①参数学习
以同步的序列到序列循环神经网络为例,给定一个学习样本(x,y),长度均为T
机器学习|神经网络(六)循环神经网络
文章图片

时刻t的瞬时损失函数为:机器学习|神经网络(六)循环神经网络
文章图片
机器学习|神经网络(六)循环神经网络
文章图片
为后验概率
总损失函数:机器学习|神经网络(六)循环神经网络
文章图片

计算梯度:机器学习|神经网络(六)循环神经网络
文章图片
机器学习|神经网络(六)循环神经网络
文章图片

机器学习|神经网络(六)循环神经网络
文章图片

机器学习|神经网络(六)循环神经网络
文章图片
为第t时刻的损失对第k步隐藏神经元的净输入机器学习|神经网络(六)循环神经网络
文章图片
的导数
机器学习|神经网络(六)循环神经网络
文章图片

tips:diag(x,n):矩阵x上的第n条对角线上的元素
机器学习|神经网络(六)循环神经网络
文章图片

随时间的反向传播算法(BPTT)
机器学习|神经网络(六)循环神经网络
文章图片

机器学习|神经网络(六)循环神经网络
文章图片

机器学习|神经网络(六)循环神经网络
文章图片

②长程依赖问题
机器学习|神经网络(六)循环神经网络
文章图片
机器学习|神经网络(六)循环神经网络
文章图片
,机器学习|神经网络(六)循环神经网络
文章图片
时会出现梯度爆炸问题
机器学习|神经网络(六)循环神经网络
文章图片
机器学习|神经网络(六)循环神经网络
文章图片
,机器学习|神经网络(六)循环神经网络
文章图片
时会出现梯度消失问题
梯度爆炸和梯度消失统称为长程依赖问题,由于此问题,实际上只能学习到短周期的依赖关系。
原因是循环神经网络在时间维度上非常深
1.修正梯度爆炸问题
权重衰减、梯度截断
2.修正梯度消失问题
改进模型,使机器学习|神经网络(六)循环神经网络
文章图片
机器学习|神经网络(六)循环神经网络
文章图片
之间的线性关系移动到机器学习|神经网络(六)循环神经网络
文章图片

改进方法①:令梯度机器学习|神经网络(六)循环神经网络
文章图片

将循环边改为线性依赖关系:机器学习|神经网络(六)循环神经网络
文章图片
会削弱非线性性能
其中机器学习|神经网络(六)循环神经网络
文章图片

增加非线性:机器学习|神经网络(六)循环神经网络
文章图片

其中机器学习|神经网络(六)循环神经网络
文章图片

4.常见的循环神经网络 门控机制:控制信息积累的速度。(选择性的加入新的信息,选择性遗忘)
①GRU(门控循环单元)
机器学习|神经网络(六)循环神经网络
文章图片

更新门机器学习|神经网络(六)循环神经网络
文章图片
,值域为[0,1],用于选择性遗忘。机器学习|神经网络(六)循环神经网络
文章图片

机器学习|神经网络(六)循环神经网络
文章图片
,使用tanh实现机器学习|神经网络(六)循环神经网络
文章图片

改进机器学习|神经网络(六)循环神经网络
文章图片
,使机器学习|神经网络(六)循环神经网络
文章图片
仅与机器学习|神经网络(六)循环神经网络
文章图片
相关(去除与机器学习|神经网络(六)循环神经网络
文章图片
的联系)
重置门机器学习|神经网络(六)循环神经网络
文章图片

??????????????机器学习|神经网络(六)循环神经网络
文章图片
,机器学习|神经网络(六)循环神经网络
文章图片

门控循环单元
机器学习|神经网络(六)循环神经网络
文章图片

②LSTM(长短期记忆网络)
机器学习|神经网络(六)循环神经网络
文章图片

引入内部记忆单元机器学习|神经网络(六)循环神经网络
文章图片
用于记忆,解放机器学习|神经网络(六)循环神经网络
文章图片
,使其可以更好的进行非线性拟合
机器学习|神经网络(六)循环神经网络
文章图片
机器学习|神经网络(六)循环神经网络
文章图片

机器学习|神经网络(六)循环神经网络
文章图片

!!! 可以使得机器学习|神经网络(六)循环神经网络
文章图片

各种变体
机器学习|神经网络(六)循环神经网络
文章图片

5.深层循环神经网络 ①堆叠循环神经网络
机器学习|神经网络(六)循环神经网络
文章图片

②双向循环神经网络
【机器学习|神经网络(六)循环神经网络】机器学习|神经网络(六)循环神经网络
文章图片

三、小结 优点:引入记忆功能、图灵完备
缺点:长程依赖问题、记忆容量问题、并行能力问题
四、将循环神经网络扩展到图 序列是最简单的数据结构,更复杂的结构还有树和图
1.递归神经网络 用于处理树结构。
机器学习|神经网络(六)循环神经网络
文章图片

在一个有向无循环图共享一个组合函数
2.图网络 用于处理图结构。
机器学习|神经网络(六)循环神经网络
文章图片

更新序列:先更新点、再更新边、最后更新全局结点
机器学习|神经网络(六)循环神经网络
文章图片

对于任意图结构G(V,E)
更新函数:机器学习|神经网络(六)循环神经网络
文章图片
机器学习|神经网络(六)循环神经网络
文章图片

读出函数:机器学习|神经网络(六)循环神经网络
文章图片
???????

    推荐阅读