正則化とは、機械学習において、モデルが訓練データに過度に適合することを防ぎ、新しいデータに対してより良く汎化できるようにするために、過学習を低減するために使用される広範な手法群を指す。モデルが学習しようとする内容を変更するのではなく、ほとんどの正則化手法は、学習の行われ方を変更する。具体的には、複雑さに直接ペナルティを課す、トレーニング中に管理されたノイズを注入する、またはモデルがトレーニングセットの特異性を記憶する機会を得る前にトレーニングを停止する、といった方法である。
重みに基づく手法
最も古く、最も直接的なアプローチは、モデルの重みのサイズに基づいたペナルティ項を損失関数に追加し、データが強い正当性を支持しない限り、より小さく単純な重み値を好むようオプティマイザーに促すものである。L2正則化は、重み減衰またはリッジ正則化とも呼ばれ、重みの二乗和にペナルティを科し、すべての重みをゼロに向かって滑らかに縮小させる傾向がある。L1正則化は、重みの絶対値の合計にペナルティを科し、一部の重みを正確にゼロに押し出す傾向があり、事実上特徴選択を実行する。現代のディープラーニングでは、重み減衰は、通常、損失関数に明示的な項として追加するのではなく、最適化アルゴリズム内に直接適用される。例えば、AdamWとして知られるAdamへの変更として適用される。
構造的および確率的手法
ドロップアウトは、Geoffrey Hintonのグループによって2012年頃に導入され、2014年の広く引用される論文で正式化された。この手法は、各トレーニングステップでニューラルネットワークのユニットの一部をランダムに無効化し、ネットワークが単一ユニットまたは固定のユニット組み合わせに過度に依存することを防ぎ、結果的に重みを共有するサブネットワークの暗黙の混合集団をトレーニングする効果を持つ。バッチ正規化とその後続法は、主にトレーニングの開始時安定化と高速化を目的として導入されたが、トレーニング中に各層の入力にノイズを加えることで正則化の側面効果も持つ。データオーグメンテーションは、回転やクロップされた画像、パラフレーズされたテキストなど、トレーニング例の変更コピーを作成することで、トレーニングデータの実質的な多様性を人工的に拡張し、モデルが表面的、非汎化可能なパターンに固定する可能性を低減させる。
早期停止とモデル選択
早期停止法は、検証用に分離されたセットで性能の向上が止まると、トレーニング損失がまだ下がり続けていてもトレーニングを停止する。これは、過学習を定義するトレーニングと検証のパフォーマンスの乖離を直接ターゲットにしている。これには、トレーニング全体を通じて検証損失を監視する必要があり、最後にのみ監視するのではなく、モデルや損失関数自体の変更を必要としないため、最もシンプルで広く使用される正則化技術の1つであり、停止規則のみが変更される。
大規模モデルにおける正則化
やや直感に反するが、最大の大規模言語モデや深層学習システムは、しばしば小規模モデルよりも軽い明示的な正則化を使用する。その理由は、広大で多様なTraining dataを限られた回数でトレーニングすることで、自然な正則化が提供されるためである。モデルが同じ例を二度と見ることはほぼなく、記憶する機会が少なくなる。ドロップアウトは特に、スケールの大規模なTransformer (architecture)事前トレーニングでは削減または完全に削除されることが多いが、小規模なファインチューニング段階では依然として一般的であり、より狭いデータセットに対する過学習がより現実的なリスクとなる。