Now Loading...

Now Loading...

ReLU 関数

ReLU関数は負の入力は0として、0もしくは正の入力はそのまま出力する関数です。

ランプ関数とも呼ばれます。導関数の最大値が1と大きく、シグモイド関数といった導関数の最大値が小さい活性化関数と比較して勾配消失問題を抑制します。また、計算が単純であるため計算コストが小さいといった利点もあります。ちなみに、入力が丁度0であるときReLU関数は不連続であるため微分は定義できません。実際に運用する際は便宜的に0、0.5、1等の値で定めてしまうのが一般的です。

クイズ

以下の文章を読み,空欄(ア)に最もよく当てはまる選択肢を1つ選べ. 誤差逆伝搬法では,活性化関数としてシグモイド関数のような微分値の最大値が小さい関数を使うと勾配消失が起こりやすく,学習がうまく進まない場合がある.現在活性化関数としてよく使われている(ア)は入力値が0以上では常に微分値が1であり,学習精度の向上と深層化に貢献した.
  • 正解を見る
  • 解説を見る
    シグモイド関数では微分値の最大値が0.25と小さいため,逆伝搬の際に入力層側までうまく誤差が伝搬しない勾配消失問題が生じる可能性が高くなります.そして入力値が0以下では0,0より大きいときには入力値をそのまま返すReLU関数は,微分値が0以上では常に1となり,勾配消失問題を大きく改善しました. (参考:G検定公式テキスト 第2版 第5章 5-4 P176-177) (参考:G検定公式テキスト 第1版 P138-142)

<個人向け>G検定&E資格オンライン講座の紹介