未学習 みがくしゅう
過学習汎化性能バイアス学習不足モデル精度訓練データ
未学習について教えて
簡単に言うとこんな感じ!
AIが「勉強不足」な状態のことだよ!試験に出る問題のパターンをぜんぜん覚えられていないから、簡単な問題も解けない感じ。データから法則を見つけられていないので、予測がいつもハズれちゃうんだ。
未学習とは
未学習(Underfitting)とは、機械学習モデルが訓練データの特徴やパターンを十分に学習できていない状態のことです。モデルが「単純すぎる」か「学習が不十分」なために、訓練データに対してさえも正確な予測ができない状況を指します。
未学習が起きると、新しいデータはもちろん、学習に使ったデータに対しても精度が低くなります。これは「バイアス(偏り)が高い」状態とも表現され、モデルがデータの本質的な構造を捉えられていないことを意味します。逆に「覚えすぎ」の状態である過学習(Overfitting)と対になる概念で、AIモデルの品質を評価する際に必ずセットで確認すべき重要な概念です。
実務的には、「作ったAIモデルが訓練データでも正解率が低い」「何度やっても予測がおかしい」といった場面で未学習を疑います。発注側がAIシステムの品質をチェックする際、訓練精度と検証精度の両方が低い場合は未学習のサインと覚えておくと役立ちます。
未学習の構造と見分け方
| 状態 | 訓練データの精度 | 新しいデータの精度 | 原因のイメージ |
|---|---|---|---|
| 理想的な状態 | 高い | 高い | ちょうどよく学習できている |
| 未学習 | 低い | 低い | 勉強不足・モデルが単純すぎ |
| 過学習 | 高い | 低い | 丸暗記しすぎて応用が利かない |
覚え方:「両方ダメなら未学習、新しいものだけダメなら過学習」
- 訓練データ ✗、新データ ✗ → 未学習(Underfitting)
- 訓練データ ○、新データ ✗ → 過学習(Overfitting)
語呂合わせ:「ウンダー(Under)=下回る=実力が下回っている」と覚えると英語名も忘れにくい!
未学習が起きやすい原因
- モデルが単純すぎる:直線1本で複雑なデータを表現しようとしている状態
- 学習回数(エポック数)が少なすぎる:途中でトレーニングを打ち切ってしまった
- 特徴量(入力データの項目)が少なすぎる:判断に必要な情報がモデルに渡っていない
- データの前処理が不適切:ノイズが多い・スケールがバラバラなまま学習させた
- 正則化が強すぎる:過学習を防ごうとしすぎて逆に学習を制限してしまった
歴史と背景
- 1950年代〜:機械学習の黎明期から「モデルの複雑さと汎化性能のトレードオフ」は研究課題だった
- 1992年:Vapnik(ヴァプニク)らがVC次元の理論を整備し、モデルの表現能力と学習データ量の関係が数学的に定式化される
- 2000年代:サポートベクターマシン(SVM)の普及で、モデルの複雑さ制御(正則化)の重要性が広く認識される
- 2010年代〜:ディープラーニングの台頭により「層を深くする・ニューロン数を増やす」ことで未学習を解消しやすくなる。一方で計算コストや過学習との新たなバランス問題が生まれる
- 現在:AutoML(自動機械学習)ツールが普及し、未学習・過学習の検出と対処を自動化する仕組みが整いつつある
未学習・過学習・汎化性能の関係
未学習と過学習は「バイアス・バリアンストレードオフ」として知られる関係にあります。モデルの複雑さを横軸に取ると、精度がU字型の曲線を描きます。
未学習への主な対処法
| 対処方法 | 具体的な内容 |
|---|---|
| モデルを複雑にする | ニューラルネットの層・ニューロン数を増やす、決定木の深さを増やす |
| 学習回数を増やす | エポック数を増やして学習を続ける |
| 特徴量を増やす | 入力データの項目(変数)を追加する |
| 正則化を弱める | 制約を緩めてモデルが自由に学習できるようにする |
| データを増やす・改善する | より質の高いデータを追加し、前処理を見直す |
関連する規格・RFC
※ 未学習はアルゴリズムの概念であり、特定のIETF RFC・ISO・IEEE規格は定義されていないため、このセクションは省略します。