神经网络-ReLU(线性整流器单元)的经典训练规则如何可能工作



我正在努力了解如何训练一个普通的线性整流器单元(而不是泄漏的整流器单元等)。由于当输入的加权和为<0,则其训练规则将说,如果输入的加权和<0,则权重的变化(对于任何权重)为0。那么,如果它一开始就没有为特定的输入输出正值,它怎么能学会为该输入输出正值呢?

直观地说,如果输出为0,目标为1,那么您将希望增加非零输入的权重。但我看不出如何从梯度的角度来证明这一点。

基本上-这个问题被解决了

  1. 良好的初始化:使用所谓的He初始化可以降低网络单元在其立即关闭的区域中的可能性
  2. 关闭单元检测:很容易检测到持续输出0的单元。当这些单位的数量过大时,您可以更改它们的权重
  3. 增加单位数量:一个简单的解决方案是增加网络中的单位数量。然后,大多数单元将被关闭的概率会降低。此外,这也是relu被发明的真正原因。relu值和梯度的计算速度比经典的激活函数快得多,这使得增加网络规模成为可能

最新更新