基礎・モデル技術

ドロップアウトとは?Dropout・学習時の無効化

読み:どろっぷあうと / 英:Dropout

更新日: 読了目安:約6分

ドロップアウト(Dropout)は、ニューラルネットワークの学習中に一部のニューロン(ユニット)をランダムに無効化し、過学習を抑える正則化手法です。本記事は実装の確率式ではなく、試験で頻出の定義・学習と推論の違い・他手法とのすり替えに焦点を当てます。

試験で問われる見方

○:ドロップアウトは学習時に一部のユニットをランダムに無効化する正則化(G-168TF-437)。

×:推論時に全ての入力データを削除して予測する(TF-395)。推論時は通常、全ユニットを使用。

パスポートHQ-0133:「モデルが複雑になりすぎないよう制約を加える」だけの説明は、L1/L2正則化のイメージで、ドロップアウトの説明として不適切HQ-0133)。

演習で確認する

G検定:TF-394TF-395G-168G-299

生成AIパスポート:HQ-0133

ドロップアウトとは

各学習ステップで、隠れ層のユニットを確率的に「落とす」(出力をゼロにする)ことで、特定のニューロンへの共依存を減らす効果があります。毎回異なる部分ネットワークで学習するイメージで、アンサンブルに近い正則化効果が期待されます。

学習時と推論時

フェーズドロップアウト
学習(訓練)有効。ランダムにユニットを無効化
推論(テスト)通常は無効。全ユニットで予測(スケーリングで補正することも)

「推論時もドロップアウトする」は試験の典型的な×パターンです。

混同しやすい手法

手法要点ドロップアウトとの違い
L1/L2正則化重みにペナルティユニット無効化ではない(HQ-0133のすり替え先)
早期終了検証悪化で学習停止エポック制御(G-168の(い))
バッチ正規化中間表現の分布を整える正則化とは目的が異なる(G-299)

よくある質問

ドロップアウト率は?

隠れ層で0.2〜0.5程度がよく使われます。高すぎると未学習に近づきます。試験では具体値より定義が重要です。

Transformerでも使う?

AttentionやFFN層にDropoutを入れる実装が一般的です。概念は同じく学習時の正則化です。

データ拡張とどちらが先?

併用可能です。画像ならデータ拡張、NN全般ではドロップアウトがセットで語られることが多いです。