赞
踩
作者:LogM
本文原载于 https://segmentfault.com/u/logm/articles ,不允许转载~
sigmoid 的导数在 [0, 0.25] 范围里;tanh 的导数在 [0, 1] 范围里;ReLU 的导数为 {0, 1}。
如果 CNN 的每一层都使用 sigmoid,小于1的导数的多次连乘引发"梯度消失"。
那为什么不使用 tanh? tanh 的导数虽然可以达到1,但在边缘仍有"梯度消失"的问题出现。只能说 tanh 在一定程度上缓解了"梯度消失"。
ReLU 的正半区没有"梯度消失",但负半区存在"梯度消失",(但也有人认为负半区的存在可以使参数矩阵稀疏,有一定正则化的效果)。
最最重要的是,ReLU 的计算量是远小于 sigmoid 和 tanh 的。
A four-layer convolutional neural network with ReLUs (solid line) reaches a 25% training error rate on CIFAR-10 six times faster than an equivalent network with tanh neurons (dashed line).
ReLU 最先不是针对深度网络发明出来的,所以我们很难从发明者的角度探寻 ReLU 的诞生解决了深度网络的什么问题。事实情况是,当学者们把 ReLU 用在深度网络上发现效果很好,就陆陆续续提出了一些理论来解释为什
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。