損失関数にペナルティ項を加えなくても、学習の止め方や学習の設定そのものが正則化として働くことを学ぶ項目です。早期終了、バッチサイズ、学習率の調整という3つの要素が汎化性能に与える影響を理解します。

📖 概要

正則化というと、L1・L2正則化のように損失関数へ明示的にペナルティ項を加える方法(陽的な正則化)がまず思い浮かびます。しかし実際の深層学習では、目的関数を一切変えなくても、「いつ学習を止めるか」「どんなバッチサイズ・学習率で最適化するか」といった学習手続きの選択自体が、結果として得られる解の性質を変え、過剰適合を抑える方向に働くことがあります。これを陰的正則化(暗黙的な正則化)と呼びます。

本項目のキーワードは3つです。早期終了 は、検証誤差が悪化し始めた時点で学習を打ち切ることで、訓練データへの過剰な適合を防ぐ最も実用的な手法です。バッチサイズ は勾配推定のノイズの大きさを決め、確率的なゆらぎが解の選ばれ方に影響します。学習率の調整 は、最適化がパラメータ空間のどの解に到達するかを左右し、学習率スケジュールの設計が汎化性能に影響します。いずれも「最適化の設定が正則化を兼ねる」という共通の視点でつながっています。

🔍 キーワード解説

早期終了

早期終了 (early stopping) は、学習中に検証データの誤差を監視し、訓練誤差は下がり続けていても検証誤差が改善しなくなった(または悪化に転じた)時点で学習を打ち切る手法です。実装では、検証誤差が最小だった時点のパラメータを保存しておき、一定エポック改善が見られなければ(patience)、その保存済みパラメータを最終モデルとして採用するのが一般的です。

学習の反復回数を制限することは、初期値から動ける範囲を制限することに相当するため、パラメータが過度に大きく・複雑になるのを防ぐ正則化として働きます。線形モデルの単純な設定では、早期終了がL2正則化と類似の効果を持つことが知られています。追加の計算コストがほとんどかからず、ハイパーパラメータ(いつ止めるか)の決定が学習1回の中で自動的に行えるため、実務でも広く使われます。

バッチサイズ

バッチサイズ は、1回のパラメータ更新に使うサンプル数です。ミニバッチ勾配は全データの勾配の推定値であり、バッチサイズが小さいほど推定のノイズ(ゆらぎ)が大きくなります。この勾配ノイズが探索にランダム性を与え、訓練データに過剰に適合した鋭い解から抜け出しやすくする、という意味で正則化的に働くと考えられています。

一般に、小さいバッチは「ノイズが大きく1ステップは不正確だが、正則化効果と頻繁な更新が得られる」、大きいバッチは「勾配推定が正確で並列計算の効率がよいが、汎化性能が低下する場合がある」という傾向が指摘されています。大きなバッチで学習した解は損失曲面の鋭い(シャープな)極小に到達しやすく、汎化しにくいという議論もありますが、学習率などの調整で差が縮まるとの報告もあり、断定的な優劣ではなく「バッチサイズは汎化に影響するハイパーパラメータである」と理解しておくのが安全です。

学習率の調整

学習率の調整 も汎化性能に影響します。学習率は1ステップの移動量を決めるだけでなく、勾配ノイズとあいまって「どの解に落ち着くか」を左右するためです。大きめの学習率で学習する期間は、鋭い極小を飛び越えて平坦で汎化しやすい領域を探索する効果があるとされ、逆に最初から小さすぎる学習率は訓練誤差を丁寧に下げる一方で過剰適合しやすい解に留まる可能性があります。

実務では、最初は大きめの学習率で学習し、途中で段階的に下げる(ステップ減衰)、滑らかに減衰させる(指数減衰やコサインスケジュール)、学習初期だけ徐々に上げる(ウォームアップ)といった学習率スケジュールが用いられます。また、バッチサイズと学習率には関係があり、バッチサイズを大きくする際に学習率も比例的に大きくする調整が行われることがあります。

📝 試験でのポイント

💡 ポイント
  • 「陽的な正則化(L1/L2などペナルティ項の追加)」と「陰的正則化(学習手続きによる暗黙の正則化)」の区別が前提知識として問われます
  • 早期終了の手順(検証誤差の監視・最良時点のパラメータ保存・patience)と、「訓練誤差は下がり続けるが検証誤差が上がり始めたら止める」という判断基準は頻出です
  • 早期終了がL2正則化と類似の効果を持つとされる点は、正則化どうしの関係を問う問題で出やすいポイントです
  • バッチサイズと勾配ノイズの関係(小バッチ = ノイズ大 = 正則化的、大バッチ = 推定精度高いが汎化が課題になり得る)を説明できるようにしましょう
  • 学習率スケジュール(ステップ減衰・ウォームアップ等)の目的と、バッチサイズ変更時に学習率も調整するという実務的知識も確認しておきましょう

📚 まとめ

陰的正則化とは、損失関数を変えずに学習手続きの設計によって過剰適合を抑える働きの総称です。早期終了は検証誤差を監視して最適な時点で学習を打ち切り、L2正則化に似た効果を持ちます。バッチサイズは勾配ノイズの大きさを通じて解の選ばれ方に影響し、学習率の調整(スケジュール)はどの解に到達するかを左右します。最適化の設定そのものが汎化性能を決める要素だと理解しておきましょう。