ReLU(Rectified Linear Unit)とは、f(x) = max(0, x)で定義される活性化関数です。入力が正ならそのまま出力し、負なら0を出力するシンプルな関数ですが、深層学習の性能を大幅に向上させた革新的な存在です。
ReLUの利点
計算が高速(条件分岐のみ)、勾配消失問題を大幅に軽減(正の領域で勾配が1)、スパースな活性化パターンを生み出す(一部のニューロンのみ活性化)という3つの大きな利点があります。
Dying ReLU問題
負の入力に対して勾配が常に0となるため、学習中に一度「死んだ」ニューロン(常に0を出力)は二度と回復しない「Dying ReLU」問題があります。
ReLUの変種
Dying ReLU問題を解決するため、Leaky ReLU(負の領域に小さな勾配)、Parametric ReLU(勾配を学習可能に)、ELU、GELU、Swishなどの変種が提案されています。特にGELUはTransformerで標準的に使用されています。