下面介绍五种激活函数:
Sigmoid
Sigmoid非线性激活函数的数学表达式是,其图形如下.sigmoid函数是将一个实数输入转化到0-1之间的输出,负数越大转化越靠近于0,越大的正数越靠近1.
sigmoid 函数有两大缺点:
- sigmoid 函数会造成梯度消失,当它靠近1和0的时候,梯度基本上会变为0 ,如果用梯度下降法的话,如果梯度接近0,那么没有任何信息来更新参数,这样会造成模型的不收敛。另外在初始化权重的时候也要注意,如果初始化权重过大,激活函数会导致大多数的神经元饱和,无法更新参数。
- sigmoid 输出不以0为均值,这就会导致sigmoid激活函数之后的输出作为后面一层的输入全是整的,这就会导致梯度全都是正的,那么在更新参数的时候永远是正的。怎么理解呢?比如进入下一层神经元的输入是x,参数是w和b,那么输入就是f=wx+b,这个时候