損失関数 そんしつかんすう
誤差最適化平均二乗誤差交差エントロピー勾配降下法コスト関数
損失関数について教えて
簡単に言うとこんな感じ!
AIの「答え合わせのスコア」だよ!予測が正解からどれだけズレているかを数値で表すもので、この数値が小さくなるようにAIが学習を繰り返すんだ。テストの点数を0点に近づけるイメージ——つまり「ズレ=損失」を最小化するのが学習の目標ってこと!
損失関数とは
損失関数(Loss Function)とは、機械学習モデルの予測値と正解値の「ズレ(誤差)」を定量化する関数です。コスト関数や目的関数とも呼ばれます。モデルは損失関数が返す値(損失値)を小さくするようにパラメータを更新していくため、損失関数の設計がモデルの学習方向を決定づけます。
損失関数は「学習の羅針盤」です。どんなに高度なニューラルネットワークも、損失関数がなければどの方向に改善すればよいか分かりません。逆に言えば、損失関数を適切に選ぶことが、モデルを目的に合わせて正しく育てる鍵になります。
業務でAIシステムを発注・評価するときも、「どの損失関数を使っているか」は重要な確認ポイントです。たとえば外れ値(異常値)が多いデータには外れ値に強い損失関数を使うべきで、選択が間違っていると本番精度が大きく落ちることがあります。
代表的な損失関数の種類
| 損失関数 | 英語名 | 主な用途 | 特徴 |
|---|---|---|---|
| 平均二乗誤差 | Mean Squared Error (MSE) | 回帰問題 | 大きな誤差を強く罰する |
| 平均絶対誤差 | Mean Absolute Error (MAE) | 回帰問題 | 外れ値に強い |
| 交差エントロピー誤差 | Cross-Entropy Loss | 分類問題 | 確率出力に適している |
| 二値交差エントロピー | Binary Cross-Entropy | 二値分類 | Yes/No判定に使う |
| ヒンジ損失 | Hinge Loss | SVM・分類 | マージン最大化を促す |
| Huber損失 | Huber Loss | 回帰問題 | MSEとMAEの中間的特性 |
損失関数の選び方
問題の種類
├── 回帰(数値予測)
│ ├── 外れ値が少ない → MSE(平均二乗誤差)
│ └── 外れ値が多い → MAE または Huber損失
└── 分類(カテゴリ予測)
├── 二値分類(Yes/No) → 二値交差エントロピー
└── 多クラス分類 → 交差エントロピー誤差
歴史と背景
- 1800年代:最小二乗法(ガウス・ルジャンドル)が誤差最小化の概念を確立。損失関数の原型
- 1950〜60年代:統計学の最尤推定と損失関数の関係が理論化される
- 1986年:バックプロパゲーション(誤差逆伝播法)の実用化により、ニューラルネットワークでの損失関数最適化が可能になる
- 1990年代:サポートベクターマシン(SVM)の登場でヒンジ損失が注目される
- 2010年代:ディープラーニングの普及に伴い、焦点損失(Focal Loss) など不均衡データ向けの損失関数が多数提案される
- 現在:タスクに合わせたカスタム損失関数の設計が一般的になり、損失関数そのものを学習する手法(メタ学習)も登場
損失関数と学習の流れ
関連する規格・RFC
| 規格・RFC番号 | 内容 |
|---|---|
| ISO/IEC 22989:2022 | AI概念・用語(損失関数の定義を含む) |