統計的学習理論において、汎化誤差(Generalization Error)とは 学習済みモデルが未知のデータに対して示す誤差であり、 過学習(Overfitting)とはモデルが訓練データに過度に適合し 汎化誤差が増大する現象を指す。両者は学習理論における最も根本的な概念であり、 モデル選択・正則化・複雑度制御の出発点となる。
入力空間 $\mathcal{X}$、出力空間 $\mathcal{Y}$、 損失関数 $L: \mathcal{Y} \times \mathcal{Y} \to \mathbb{R}_+$ を固定する。 未知の確率分布 $P(\boldsymbol{x}, y)$ に従う独立同分布(i.i.d.)な標本
\[ \mathcal{D}_n = \{ (\boldsymbol{x}_i, y_i) \}_{i=1}^n, \quad (\boldsymbol{x}_i, y_i) \overset{\text{i.i.d.}}{\sim} P\]が与えられ、仮説空間 $\mathcal{H}$($\mathcal{X}$ から $\mathcal{Y}$ への写像の族) から学習アルゴリズム $\mathcal{A}$ によって仮説 $\hat{f} = \mathcal{A}(\mathcal{D}_n)$ が選択されるとする。
任意の仮説 $f \in \mathcal{H}$ に対して、真のリスク(期待損失)を
\[ R(f) = \mathbb{E}_{(\boldsymbol{X}, Y) \sim P}\bigl[ L(f(\boldsymbol{X}), Y) \bigr]\]と定義する。$R(f)$ は未知の分布 $P$ に依存するため直接評価できない。
観測可能な代理量として、経験リスク(訓練誤差)を
\[ R_n(f) = \frac{1}{n} \sum_{i=1}^n L(f(\boldsymbol{x}_i), y_i)\]と定義する。大数の法則より各点収束 $R_n(f) \to R(f)$($n \to \infty$)が成立するが、 有限標本では $R_n(f)$ は $R(f)$ の偏った推定量となりうる。
学習アルゴリズム $\mathcal{A}$ が $\mathcal{D}_n$ から選択した仮説 $\hat{f} = \mathcal{A}(\mathcal{D}_n)$ に対して、 汎化誤差(Generalization Error)は真のリスクそのもの
\[ R(\hat{f}) = \mathbb{E}_{(\boldsymbol{X}, Y) \sim P}\bigl[ L(\hat{f}(\boldsymbol{X}), Y) \bigr]\]として定義される。汎化誤差は訓練データを生成した同一分布からのテスト標本に対する 平均的な予測誤差を表す。
汎化誤差と経験リスクの差
\[ R(\hat{f}) - R_n(\hat{f})\]を汎化ギャップ(Generalization Gap)と呼ぶ。 汎化ギャップが大きいとき、訓練誤差が小さくても未知データへの予測性能が保証されない。 統計的学習理論の中心的問題はこのギャップを制御することにある。
過学習とは、モデルが訓練データ $\mathcal{D}_n$ 中の ノイズや偶然のパターンまでも学習してしまい、
\[ R_n(\hat{f}) \ll R(\hat{f})\]となる状態、すなわち汎化ギャップが著しく大きくなる現象を指す。 過学習は主に次の二つの要因により生じる。
二乗損失 $L(f(\boldsymbol{x}), y) = (f(\boldsymbol{x}) - y)^2$ の設定において、 真の回帰関数を $f^*(\boldsymbol{x}) = \mathbb{E}[Y \mid \boldsymbol{X} = \boldsymbol{x}]$、 データの不可約ノイズを $\sigma^2 = \mathbb{E}[(Y - f^*(\boldsymbol{X}))^2]$ とおく。 このとき学習済みモデル $\hat{f}$ の汎化誤差は次のように分解される:
\[ R(\hat{f}) = \underbrace{\bigl( \mathbb{E}_{\mathcal{D}_n}[\hat{f}(\boldsymbol{x})] - f^*(\boldsymbol{x}) \bigr)^2}_{\text{Bias}^2(\hat{f})} + \underbrace{\mathbb{E}_{\mathcal{D}_n}\bigl[ \bigl( \hat{f}(\boldsymbol{x}) - \mathbb{E}_{\mathcal{D}_n}[\hat{f}(\boldsymbol{x})] \bigr)^2 \bigr]}_{\text{Variance}(\hat{f})} + \sigma^2\]ここで期待値 $\mathbb{E}_{\mathcal{D}_n}$ は訓練データの確率的変動にわたる平均を表す。 各項の意味は以下の通りである。
このバイアス・バリアンストレードオフは過学習・過小適合の 本質を記述する。モデル複雑度を増すとバイアスは減少するが バリアンスが増大し、逆に単純化するとバイアスが増大してバリアンスが減少する。 最適なモデルは両者のバランスが取れた点に存在する(下図参照)。
有限仮説空間 $|\mathcal{H}| < \infty$、損失が $[0,1]$ に有界な場合、 確率 $1-\delta$($\delta \in (0,1)$)で次の一様上界が成立する:
\[ \sup_{f \in \mathcal{H}} \bigl| R(f) - R_n(f) \bigr| \leq \sqrt{\frac{\ln |\mathcal{H}| + \ln(2/\delta)}{2n}}\]これは Union Bound と Hoeffding の不等式から直接導かれる。 右辺は $n \to \infty$ で $0$ に収束し、標本数が十分大きければ 経験リスクが真のリスクに一様に収束することを保証する。
無限仮説空間($|\mathcal{H}| = \infty$)への拡張として、 VC次元 $h$ を持つ仮説空間では、確率 $1-\delta$ で
\[ R(\hat{f}) \leq R_n(\hat{f}) + \sqrt{\frac{h \left(\ln \dfrac{2n}{h} + 1\right) + \ln \dfrac{4}{\delta}}{n}}\]が任意の $\hat{f} \in \mathcal{H}$ について成立する($h \leq n$ を仮定)。 右辺第2項が複雑度ペナルティであり、$h/n$ が大きいほど 汎化ギャップの上界が大きくなることを示している。 これはERM・SRMにおける汎化誤差上界と整合する。
より精密な上界として、ラデマッハ複雑度
\[ \mathfrak{R}_n(\mathcal{H}) = \mathbb{E}_{\mathcal{D}_n, \boldsymbol{\sigma}}\!\left[ \sup_{f \in \mathcal{H}} \frac{1}{n} \sum_{i=1}^n \sigma_i f(\boldsymbol{x}_i) \right], \quad \sigma_i \overset{\text{i.i.d.}}{\sim} \text{Uniform}(\{-1, +1\})\]を用いた上界
\[ R(\hat{f}) \leq R_n(\hat{f}) + 2\mathfrak{R}_n(\mathcal{H}) + \sqrt{\frac{\ln(2/\delta)}{2n}}\]が知られており(確率 $1-\delta$)、VC次元に基づく上界よりも データ依存的・タイトな評価を与える。 ラデマッハ複雑度はランダムラベルへの適合能力を測る指標であり、 ニューラルネットワーク等への適用が活発に研究されている。
過学習を緩和するための主要な手法を以下に整理する。
三つの状態を汎化誤差の観点から整理すると以下のようになる。
| 状態 | 訓練誤差 $R_n(\hat{f})$ | 汎化誤差 $R(\hat{f})$ | 支配的要因 |
|---|---|---|---|
| 過小適合(Underfitting) | 大 | 大 | 高バイアス |
| 適切な適合(Good Fit) | 中 | 中(最小付近) | バランス |
| 過学習(Overfitting) | 小 | 大 | 高バリアンス |
汎化誤差は学習済みモデルの未知分布に対する真のリスクであり、 経験リスクとの差(汎化ギャップ)を小さく保つことが学習の本質的目標である。 過学習は仮説空間の複雑度と標本数の不均衡から生じ、 バイアス・バリアンス分解によってその構造が明確化される。 汎化誤差の確率的上界はVC次元・ラデマッハ複雑度を通じて理論的に制御可能であり、 ERM・SRM・正則化・交差検証などの実践的手法はすべてこの枠組みの具現化である。 現代の深層学習においては古典的なバイアス・バリアンストレードオフを超える 「二重降下(Double Descent)」現象も報告されており、 汎化誤差の理論は現在も活発に発展し続けている。
Mathematics is the language with which God has written the universe.