ドロップアウト
読み: どろっぷあうと
学習時にニューロンの一部をランダムに無効化することで、特定のニューロンへの過度な依存を防ぎ、過学習を抑制する正則化手法。
ドロップアウト (Dropout) は、ニューラルネットワークの学習時に各ニューロンを一定の確率 (ドロップ率) でランダムに無効化する正則化手法である。2014 年の Srivastava らの論文では、過学習を大きく減らす効果が報告されている。無効化されたニューロンは順伝播 / 逆伝播の両方で計算から除外される。
直感的には、毎回異なるサブネットワークで学習することに相当し、多数のモデルのアンサンブル効果を 1 つのネットワークで近似していると解釈できる。推論時にはすべてのニューロンを使用し、出力に (1 - ドロップ率) を乗じてスケーリングする (または学習時に逆スケーリングを行う Inverted Dropout)。
- ドロップ率の設定: タスクやデータ量に応じてチューニングする
- Spatial Dropout: 畳み込み層向けに、個々のニューロンではなくチャンネル全体を丸ごとドロップする手法。空間的な相関を考慮した正則化が可能
- DropPath (Stochastic Depth): ResNet や Vision Transformer で使われる手法で、残差ブロック全体をランダムにスキップする
ドロップアウトの発展形には、DropKey (アテンション重みへの適用) や R-Drop (出力分布の一貫性を強制) などがある。