読み方 : リーキーレルーかんすう
Leaky ReLU関数【Leaky Rectified Linear Unit】
概要
Leaky ReLU関数とは、入力が0以下なら1以下の係数を掛けて返し、0より大きければその値をそのまま返す関数。ニューラルネットワークで用いられる活性化関数の一つで、ReLU関数の改良版である。負の値でも傾きを維持し、特定のノードで学習が停止してしまう問題を解消している。

ニューラルネットワークで各ノードが上位層のノードから受け取った値の和を非線形変換するために用いる「活性化関数」の一つである。研究初期に用いられたシグモイド関数やtanh関数では、出力層から誤差を遡って伝達していくと微分値の掛け算が繰り返されて初期層側で誤差が0に近くなってしまう「勾配消失」が大きな課題となった。
そこで、入力が0以下なら0を返し、0より大きければその値をそのまま返す「ReLU関数」(Rectified Linear Unit)が考案された。正の領域で微分値が常に1となるため勾配の消失が起こりにくく、単純であるため計算が容易で学習速度が速いという利点があった。
しかし、ReLU関数でも負の領域では微分値が0となるため、入力が負になるノードがあるとそれより前の層に誤差が伝わらなくなってしまう「死んだReLU問題」(dying ReLU)と呼ばれる現象が生じることがある。これを改善するため、負の領域でもわずかに傾いた直線となるように勾配を設けたのがLeaky ReLU関数である。関数の形としては、x>0 では 、x≦0 では (ただし、0<a<1)となっている。
(2025.11.27更新)