---
title: "汎化性能"
description: "汎化性能は、学習に使っていない未知データに対してモデルが正しく予測できる能力です。訓練誤差が小さいだけでは高いといえず、訓練性能と検証・テスト性能の差から過学習を見抜く考え方を確認し、交差検証、正則化、データ拡張が未知データへの適応を支える理由を結び付けます。"
canonical_url: "https://stemtazoo.github.io/gk/generalization/"
section: "gk"
---

## まず結論

* **汎化性能とは、未知データに対する性能**
* 学習データではなく **テストデータでの精度が重要**
* 過学習・未学習の判断基準になる

---

## 直感的な説明

汎化性能は、

> **初めて見る問題でも解ける力**

のことです。

* 練習問題だけ解ける → 汎化性能が低い  
* 本番の問題も解ける → 汎化性能が高い  

というイメージです。

---

## 定義・仕組み

### 汎化性能とは？

モデルが、

* 学習に使っていないデータ
* 未知の入力データ

に対しても、**適切な予測ができる能力**を  
**汎化性能（Generalization Performance）** といいます。

---

### なぜ汎化性能が重要？

機械学習の目的は、

* 学習データを覚えること ❌
* **未知データに対応できること ⭕**

だからです。

---

## 汎化性能と学習・検証誤差の関係

### 理想的な状態

* 学習誤差：低い
* 検証誤差：低い

👉 汎化性能が高い

---

### 過学習の場合

* 学習誤差：低い
* 検証誤差：高い

👉 汎化性能が低い

---

### 未学習の場合

* 学習誤差：高い
* 検証誤差：高い

👉 モデルが機能していない

---

## 汎化性能を高める代表的な方法

### 正則化

* L1 / L2 正則化
* 重みの過度な増大を防ぐ

---

### ドロップアウト

* 学習中にランダムにニューロンを無効化
* モデルの依存を減らす

---

### 早期終了（Early Stopping）

* 検証誤差が悪化し始めたら学習を停止

---

### データを増やす

* 学習データ数を増やす
* データ拡張（Data Augmentation）

---

## G検定ひっかけポイント

* ❌「汎化性能＝学習精度」→ **誤り**
* ❌「学習データで精度が高ければ良い」→ **誤り**
* ✅ 汎化性能は **未知データへの性能**
* ✅ 過学習は汎化性能を下げる

---

## 未学習・過学習との関係（頻出）

| 状態 | 学習誤差 | 検証誤差 | 汎化性能 |
|---|---|---|---|
| 未学習 | 高い | 高い | 低い |
| 過学習 | 低い | 高い | 低い |
| 適切 | 低い | 低い | 高い |

---

## まとめ（試験直前用）

* 汎化性能＝**未知データへの対応力**
* 学習精度だけでは判断できない
* 過学習・未学習の回避が重要

👉 次は **学習曲線（Learning Curve）** で可視化して理解する。
