梯度爆炸和梯度消失

有没有大牛详细深入的讲解一下这两个问题的是如何产生的?而有当怎样的避免?
已邀请:

YJango - 在日研究生,人工智能专业

赞同来自: jckzzu caffe csdbsong

backpropagation-through-time-and-vanishing-gradients
概述:梯度消失:一定深度的梯度对模型更新无帮助。
发生地点:梯度消失发生在层数较深的DNN中,最常发生在RNN中(了解Backpropagation Through Time (BPTT)就明白了)


原因简述:更新模型参数的方法是反向求导,而反向求导就是chain rule(形象点说就是“追根溯源”)。越往前梯度越小。而activation function是sigmoid和tanh的时候,这两个函数的导数又是在两端都是无限趋近于0,会使得之前的梯度也朝向0。最终的结果是到达一定”深度“梯度就对模型的更新没有任何贡献。
 
简单解决:用relu激活函数替换sigmoid或tanh(但又会有relu dying问题。。)
看我发的链接。比我讲的清楚。
Commonly used activation functions跳到Commonly used activation functions那里看,有讲解,并且也有解决方式。我在实际中就遇到过dying ReLU problem

要回复问题请先登录注册