Dice Lossは、予測マスクと正解マスクがどれだけ重なるか——Dice係数——を直接学習目標にする損失関数です。分類で使う交差エントロピーが「画素ごとの正誤」を積み上げるのに対し、Dice Lossは領域全体の一致を測る——本記事は係数の導出式の暗記ではなく、「なぜセグメンテーションで重なりを損失にするのか」に焦点を当てます。
セグメンテーションというタスク
セグメンテーションは、画像の各画素にクラスを割り当てるタスクです。物体検出が「どこに何があるか」を矩形で示すのに対し、セグメンテーションは輪郭に沿った領域を推定します(G-317、TF-116)。
G-325のFCNやTF-122のU-Netは、画素単位の予測を行うセグメンテーション向けモデルです。モデルが出力するのは「この画素は腫瘍か背景か」といったマスク——Dice Lossはこのマスク同士の重なりを評価します。
重なりで測る発想
Dice係数は、2つの領域 A(正解)と B(予測)の重なりの度合いを 0〜1 で表します。
Dice係数 ≈ 2 ×(重なり画素数)÷(Aの画素数 + Bの画素数)
完全に一致すれば1、全く重ならなければ0に近づきます。学習ではDice Loss = 1 − Dice係数として、この値を小さくする——つまり重なりを大きくする——方向へ誤差逆伝播します(G-204)。
評価指標のIoU(Intersection over Union)と親戚関係にあり、どちらも「領域の一致」を測ります。試験では係数の厳密な式より、重なりを直接最適化する損失という位置づけが要点です。
交差エントロピーとの違い
| 損失 | 何を測るか | 典型タスク |
|---|---|---|
| 交差エントロピー | 各画素のクラス確率と正解ラベルのずれ | 分類・セグメンテーション全般(G-194) |
| Dice Loss | 予測領域と正解領域の重なり率 | セグメンテーション(特に小さな領域) |
| CTC | 整列なしの系列ラベル学習 | 音声認識(G-358) |
| MSE | 予測値と正解値の二乗誤差 | 回帰 |
G-194が示すように、損失はタスクの性質に合わせて選ぶ必要があります。セグメンテーションでも交差エントロピーだけでは、前景画素が少ない(不均衡な)画像で学習が偏ることがあります。Dice Lossは領域全体の一致を直接押し上げる補助輪として使われます。
いつ効くか
- 小さな病変・細い血管 — 正解領域が画像全体に対して極端に小さい医用画像
- 境界の精度 — 輪郭のズレを、画素正解率より重なりで厳しく評価したいとき
- 組み合わせ学習 — 交差エントロピーとDice Lossを併用し、局所分類と領域一致の両方を狙う設計
Dice LossはCNNやU-Netなどどのモデルにも付けられる損失の選択肢であり、モデル名そのものではありません。Mask R-CNNのインスタンスセグメンテーション(TF-124)でもマスク品質の評価・学習に類似の考え方が使われます。
試験で押さえるポイント
- 定義 — セグメンテーションで重なり(Dice係数)を直接最適化する損失
- タスク — 画素単位の領域推定。物体検出のバウンディングボックス損失ではない
- 対比 — 交差エントロピー=画素分類、Dice=領域一致(G-194の文脈)
- すり替え回避 — CTC・MSE・評価指標のF値そのものではない
すり替えに注意
| 誤った説明 | 正しい理解 |
|---|---|
| Dice Loss=交差エントロピー | 画素分類 vs 領域重なり |
| Dice Loss=CTC | セグメンテーション vs 音声系列(G-358) |
| Dice Loss=物体検出損失 | マスクの重なり vs バウンディングボックス |
| Dice Loss=U-Net | 損失関数 vs モデル名(G-324) |
| 重なり=交差検証 | 損失の話 vs 評価手法(G-112) |
よくある質問
Dice Lossは何をする損失関数ですか?
画像セグメンテーションで、モデルが出力した領域マスクと正解マスクがどれだけ重なるか(Dice係数)を直接評価し、その重なりを大きくする方向へ学習する損失です。画素ごとの分類誤差だけでなく、領域全体の一致を重視します。
Dice Lossと交差エントロピーは同じですか?
同じではありません。交差エントロピーは各画素のクラス予測確率と正解ラベルのずれを積み上げます。Dice Lossは予測領域と正解領域の重なり率を直接最適化します。セグメンテーションでは両方を組み合わせることもありますが、目的の測り方が異なります。
Dice Lossは物体検出の損失ですか?
主にセグメンテーション向けです。物体検出はバウンディングボックスの位置とクラスを扱い、Dice Lossは画素単位の領域マスクの重なりを扱います。タスクと損失の対応を混同しないことが重要です(G-194)。