转自:http://blog.sina.com.cn/s/blog_6e32babb0102y1om.html
深度神经网络训练的时候,采用的是反向传播方式,该方式背后其实是链式求导,计算每层梯度的时候会涉及一些连乘操作,因此如果网络过深,
那么如果连乘的因子大部分小于1,最后乘积的结果可能趋于0,也就是梯度消失,后面的网络层的参数不发生变化,后面的层学不到东西,
那么如果连乘的因子大部分大于1,最后乘积可能趋于无穷,这就是梯度爆炸
为了防止梯度爆炸,一种方式是设置梯度剪切阈值,如果超过了该阈值,直接将梯度置为该值。
同时可以参考 VDSR的调整梯度裁剪