機械学習の基礎

多くの層を重ねたニューラルネットワークで、活性化関数にシグモイド関数を使うと、入力に近い層の学習が進みにくくなる理由として、適切なものはどれか。

  1. Aシグモイド関数の微分は最大でも0.25なので、逆伝播で層を通るたびに勾配が小さくなり、入力に近い層ではほとんど0になるから
  2. Bシグモイド関数は出力が0から1の範囲に収まらないので、層を通るたびに値が大きくなり、計算があふれてしまうから
  3. Cシグモイド関数には微分できない点があるので、逆伝播で勾配を求められない層が出てくるから
答えと解説を見る

正解:A. シグモイド関数の微分は最大でも0.25なので、逆伝播で層を通るたびに勾配が小さくなり、入力に近い層ではほとんど0になるから

逆伝播では、各層の活性化関数の微分が勾配に次々と掛け合わされます。シグモイド関数の微分は σ(z)(1 − σ(z)) で最大でも0.25なので、例えば10層を通ると 0.25¹⁰ ≈ 9.5 × 10⁻⁷ と、勾配は非常に小さくなります。これを勾配消失と呼びます。対策として、正の範囲で微分が1になるReLUを使う、層を飛び越えて信号を伝える残差接続(スキップ接続)を入れる、重みの初期値を工夫する、バッチ正規化を使う、といった方法があります。

  • A. 正しい。1より小さい微分の掛け算が続いて、勾配が消えていきます。
  • B. シグモイド関数の出力は0から1の範囲に収まるので、値があふれることはありません。
  • C. シグモイド関数はすべての点で微分できます。
この分野を解く 分野ページへ

関連する計算ツール

機械学習の基礎の参考書を探す PR

Amazonの検索結果へのリンクです。Amazonのアソシエイトとして、半導体教室は適格販売により収入を得ています。

機械学習の基礎のほかの問題

  1. 1万件の学習用データを、ミニバッチの大きさ(バッチサイズ)50で学習する。1エポックでの重みの更新の回数はどれか。
  2. 入力が64個、出力が32個の全結合層(各出力にバイアスが1つずつある)の、学習するパラメータの数はどれか。
  3. 28×28の1チャネルの画像に、5×5のフィルタで畳み込み(ストライド1、パディングなし)を行い、続けて2×2の最大値プーリング(ストライド2)を行う。出力の縦と横の大きさはどれか。
  4. 再帰型ニューラルネットワーク(RNN)とLSTMの説明として、適切なものはどれか。
  5. Transformerで使われるセルフアテンション(自己注意機構)の説明として、適切なものはどれか。