Neural networks and deep learningの3章、Improving the way neural networks learn で、ニューラルネットワークの学習を改善する手法がいろいろ述べられている。

クロスエントロピーソフトマックス正則化以外の話について。

ウェイトとバイアスの初期値

  • Chapter1では単にすべてのウェイトとバイアスを平均値0、標準偏差1の正規分布の乱数で初期化していた
  • ウェイトに前の層の入力を掛けて足し合わせたニューロンへの入力は、 シグモイド関数の飽和する範囲になってしまうと、学習が遅くなる問題が発生する
  • クロスエントロピーコスト関数 を用いて解消できるのは出力層だけで、隠れ層には対処できない。
  • ウェイトを標準偏差の乱数で初期化すると飽和する範囲を避けることができ、 学習が遅くなる問題を解消できる。
  • バイアスの初期値はそれほどこだわらない。

ドロップアウト

隠れ層のニューロンの半分を(一時的に)無効にする。

モメンタム

ウェイトやバイアスを直接いじるんじゃなく、傾きによって速度を変化させて 速度によってウェイトやバイアスを変化させる。

  • 簡単に実装に追加できる
  • 学習をスピードアップさせる