DEEP LEARNING BOOK 10.7

 

RNN长期依赖问题-保持愤怒 RNN长期依赖问题-保持愤怒

问题: 为什么此处的前向计算inference值 叫“梯度”呢? w本身不是梯度。

自己思考:是不是w确实会影响梯度的结果,w小在该位置梯度也会变小,最初的值到当前节点的影响。所以,很难在此处获取到较远值对当前的梯度。

在对W进行更新时,是对全部的梯度进行加和,比较近的信息对梯度的影响更大。

 

所以,关键点不在于激活函数的梯度。而在于W的迭代连乘。

 

 

 

网上经常有: “RNN不能处理长期依赖的问题(长期依赖指输出的根据离输出时刻太远,可能会造成梯度消失或梯度爆炸)”

这是不对的。如果说sigmod具有梯度消失或梯度爆炸,那么ReLU已经解决了该问题,梯度

 

没有这些问题依旧不能解决长期依赖。这个不是关键。

 

关键是 信息存储、与信息影响。

 

找到一篇文章:https://www.jianshu.com/p/6815da2d413d

我认为说的比较有道理。

因为缺少非线性激活函数,循环链接的单元之间是W的迭代相乘的关系。

越久远的信息,会进行月多次的W连乘。

如果W值小于1,则会使其对当前的影响越来越微弱。

如果W值大于1,则会通过连乘增强其对结果的影响力。  (没有进行实验,一般应该不会)

此处是值,也不叫梯度啊。

 

 

 

LSTM: 增加更多的非线性单元,一定程度上解决。

Attention: 注意力机制更好的解决长期依赖问题。此时,如果长期的信息更有效,则对较久远的权重提升权重。以增加对当前的影响。