ReLU
大于0则原样输出,小于0,截断
Sigmoid函数
ReLU相比于Sigmoid几乎是碾压的,如果能用ReLU且能用Sigmoid直接ReLU
效果上:
1.sigmoid函数反向传播时,很容易就会出现梯度消失的情况(在sigmoid接近饱和区时,变换太缓慢,导数趋于0,这种情况会造成信息丢失,从而无法完成深层网络的训练;而ReLU就不会
2.Relu会使一部分神经元的输出为0,这样就造成了网络的稀疏性(对于特征选取更好),并且减少了参数的相互依存关系,缓解了过拟合问题的发生
性能上:
采用sigmoid等函数,算激活函数时(指数运算),计算量大,反向传播求误差梯度时,求导涉及除法,计算量相对大,而采用Relu激活函数,整个过程的计算量节省很多
那么Sigmoid存在的意义呢?
对于二元分类问题,输出层的激活函数只能是sigmoid