梯度消失
在反向传播过程中,中间层梯度在传播过程中的绝对值越来越小,使得训练的网络停滞不前。
例如用sigmoid或者tanh非线性,在输入的绝对值很大的时候,会出现“饱和”,即导数趋近于0,造成梯度消失。
ReLu非线性可避免这个情况,因为ReLu不会出现饱和,在激活后导数恒定为1。但在输入为负数时,导数为0,称为死ReLu,往往实在学习率过大时出现,可使用PReLu和RReLu等变种解决,使ReLu在输入为负数时有少量导数。
梯度爆炸
在反向传播过程中,中间梯度在传播过程中的绝对值越来越大,使网络不稳定,性能崩溃。
例如在初始化网络使,参数过大,是网络的权重随着训练越来越大,发生梯度爆炸,在RNN和GAN中较为容易出现这种现象。
改善梯度技巧
批规范化BN,残差网络ResNet,梯度阶段。