← 機械学習テキスト 一覧

🎓 レベル:標準 | 重要度:A(必須)

📎 前提:機械学習とは・3類型 | 数理:期待値の基礎(統計検定サイト

要点(BLUF)

1. 登場人物

代表的な損失:

問題損失関数
回帰二乗損失L(y,y^)=(yy^)2L(y, \hat{y}) = (y - \hat{y})^2
分類0-1損失L(y,y^)=1[yy^]L(y, \hat{y}) = \mathbb{1}[y \neq \hat{y}]
分類(確率)交差エントロピーL(y,p^)=logp^yL(y, \hat{p}) = -\log \hat{p}_y

2. 期待リスクと経験リスク

本当に最小化したいのは、未知データ全体での平均損失=期待リスク(汎化誤差)

R(f)=E(x,y)P[L(y,f(x))]R(f) = \mathbb{E}_{(x,y)\sim P}\big[\, L(y, f(x)) \,\big]

これは「要するに、これから出会うすべてのデータでの平均的な間違いの大きさ」です。しかし PP は未知なので R(f)R(f) は直接計算できません。

そこで、手元の訓練データ {(xi,yi)}i=1n\{(x_i, y_i)\}_{i=1}^{n} での平均損失=経験リスク で代用します:

R^(f)=1ni=1nL(yi,f(xi))\hat{R}(f) = \frac{1}{n}\sum_{i=1}^{n} L\big(y_i, f(x_i)\big)

そして仮説集合の中で経験リスクが最小の ff を選ぶ。これが 経験リスク最小化(Empirical Risk Minimization, ERM) です:

f^=argminfHR^(f)\hat{f} = \arg\min_{f \in \mathcal{H}} \hat{R}(f)

flowchart LR
  D["訓練データ<br/>(xi, yi)"] --> ER["経験リスク R̂(f) を計算"]
  H["仮説集合 H"] --> ER
  ER --> OPT["最小化(学習)"]
  OPT --> FH["選ばれた f̂"]
  FH -. "本当に評価したいのは未知データでの R(f)" .-> R["期待リスク R(f̂)"]

3. なぜ過学習が起きるのか

ERM は R^\hat{R}(訓練データでの誤差)を下げますが、本当に下げたいのは RR(未知データでの誤差)です。両者の差

R(f)R^(f)(汎化ギャップ)R(f) - \hat{R}(f) \quad(\text{汎化ギャップ})

は、仮説集合 H\mathcal{H} が複雑(表現力が高い)ほど大きくなりがちです。表現力が高いモデルは訓練データの偶然のノイズまで「暗記」でき、R^\hat{R} をほぼ 0 にできてしまう一方、RR は下がらない——これが 過学習 です。

逆に H\mathcal{H} が単純すぎると、訓練データすら十分に説明できず R^\hat{R}RR も高い——未学習(underfitting)

この綱引きを定量化するのが次のノートの バイアスバリアンス分解 です。

補足:「あらゆる問題で万能に最良な学習器は存在しない」という ノーフリーランチ定理 は、仮説集合や前提(帰納バイアス)を問題に合わせて選ぶ必要があることを示しています。

⚠️ よくある誤解

関連ノート