1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

DropOut(ドロップアウト)の役割

Last updated at Posted at 2022-10-31

DropOut(ドロップアウト)の役割

  • ドロップアウト(Dropout)
    • ニューラルネットワークの過学習を防ぐために提案されたテクニックで、一定の確率でランダムにニューロンを無視して学習を進める正則化の一種

図1:softmax関数のグラフ

出典:[https://deepage.net/deep_learning/2016/10/17/deeplearning_dropout.html]

ノード間が全て繋がったニューラルネットワークを上図のように、学習時には一定の確率で無視する。

こうすると一時的に、ニューロンが活性化しなくなり、重みの更新もバックプロパゲーション時にされなくなる。

訓練時にランダムでニューロンを消去していくことで、毎回異なるニューラルネットワークを学習していることになる。

→ アンサンブル学習と同様の効果があり、複数の独立したニューラルネットワークを学習しているとみなすことができる。

Dropoutは、ただ訓練時にランダムでニューロンを選択していくだけなので、手軽にアンサンブル学習できる。

推論時はドロップアウトせずに、すべてのニューロンを使う。
実際には、各ニューロンのウェイトに𝑞=1−𝑝を掛けてやることで、学習時と近い状態にする。

  • dropout適用時のコツ
  1. 控えめなサイズでニューラルネットワークを構築する
  2. 過学習を起こすまでネットワークのサイズを大きくしていく
  3. 過学習を起こしたら、入力層にDropout率0.2、隠れ層に0.5を適用する
  4. パラメータを微調整
  5. テスト時にはDropoutは使わない



参考サイト

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?