印象中一般都是说sigmoid会在两端梯度消失,dying relu这个该怎么理解?
1个回答
假设一个神经元(neuron)是$Relu(wx+b)$。因为一般用mini batch(SGD)优化算法,每次计算gradient只用一组(batch)数据点。假如用一组数据点更新$w,b$后,其余数据点$wx+b<0$,那么只会有一组点能通过这个neuron并更新它的参数,对于绝大多数点来说,不能通过这个neuron,也不能更新参数,相当于“死掉”。如果dying relu 很多,对于大多数数据来说神经网络大部分通路断掉,学习能力就变弱了。
解决办法是用leakyRelu等;bias的初始值设为正数,比如1;减小learning rate。
SofaSofa数据科学社区DS面试题库 DS面经