基礎・機械学習

過学習とは?Overfitting・汎化性能と対策

読み:かがくしゅう / 英:Overfitting

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

過学習(Overfitting)は、モデルが学習データの細部やノイズまで暗記し、未知データ(テストデータ)での性能が落ちる状態です。本記事は数式の導出ではなく、試験で問われる定義・見分け方・対策の対応表——特に他手法とのすり替え問題——に焦点を当てます。

試験で問われる見方

○:過学習は学習データに適合しすぎ、未知データの性能が低下する(TF-363TF-364)。訓練だけでなく検証・テストで評価する。

○:ドロップアウトは学習時に一部ユニットを無効化する正則化(G-168)。早期終了は検証性能悪化で学習を止める(G-168)。

パスポートHQ-0133では、ドロップアウトの説明が正則化(L1/L2)の説明とすり替えられた不適切肢を見抜く問題があります。

演習で確認する

G検定:TF-363TF-364G-168G-002機械学習の概要

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

過学習とは

機械学習の目的は汎化——学習に使っていないデータでもうまく予測すること——です。過学習では訓練誤差は小さいのに、検証・テスト誤差が大きくなります。モデルが複雑すぎる、データが少ない、学習が長すぎるなどが典型原因です。

見分けるサイン

  • 訓練精度は高いがテスト精度が低い
  • 検証損失が下がり始めたあと再び上昇(早期終了のタイミング)
  • 学習データの個別サンプルを丸暗記したような挙動

だからこそデータを訓練・検証・テストに分割し、ハイパーパラメータ調整は検証セットで行い、最終評価はテストセットで一度だけ、が基本です。

対策一覧

手法要点試験の注意
ドロップアウト学習時にニューロンをランダム無効化推論時に入力を「削除」するわけではない(TF-395は×)
L1/L2正則化重みの大きさにペナルティドロップアウトの説明と混同注意(HQ-0133)
早期終了検証性能悪化で学習停止ドロップアウトとは別手法(G-168)
データ拡張反転・切り出しなどで多様性UP画像などで有効(TF-435)
モデル簡素化層・パラメータを減らす
データ追加学習例を増やす根本対策の一つ

過学習の反対・未学習

未学習(Underfitting)はモデルが単純すぎて、訓練データすら十分に当てはまらない状態です(G-175の(あ)過学習・(い)未学習の対比)。過学習対策を入れすぎると未学習に振れることもあり、バランスが重要です。

よくある質問

LLMのファインチューニングでも過学習する?

はい。少数データでの調整では特に注意が必要で、検証セットでの監視やエポック数の制限が使われます。

正規化層と正則化は同じ?

違います。バッチ正規化などは学習安定化、正則化は過学習抑制(G-299)。名称が似ているので混同注意。

アンサンブルは過学習対策?

ランダムフォレストなどは単木より過学習を抑えやすい、と説明されることがあります(G-038)。