モデル・技術

Focal Lossとは?易しい例を遠ざける——不均衡検出で難例だけ学習を強める損失

読み:フォーカルロス / 英:Focal Loss

更新日: 読了目安:約6分

Focal Lossは、すでに正しく分類できている易しい例の損失寄与を抑え、難しい例に学習を集中させる分類用の損失関数です。物体検出では背景候補が前景より圧倒的に多く、交差エントロピーだけでは「当たり前の負例」に勾配が吸われる——Focal Lossは難易度で損失を再配分する——本記事はγやαの式より、「なぜ易しい例が学習を阻むか」に焦点を当てます。

不均衡が起きる場面

G-316が示す物体検出では、画像内の各候補位置について「物体か背景か」を分類します。前景(物体)の候補は少なく、背景の候補は膨大——クラス不均衡が構造的に起きます。

教師あり分類全般でも、正例が極端に少ないデータでは正解率だけでは性能を見誤ります(G-064G-108)。Focal Lossは学習段階でこの偏りに対処する損失の一つです。評価段階のF値やAUCとは別のレイヤーです。

易しい例が支配する理由

交差エントロピーは、予測が正解に近いほど損失が小さくなります——これは正常な挙動です。しかし物体検出では次の問題が起きます。

  1. 候補が大量 — アンカーやグリッドから数万の分類対象が出る
  2. 背景が大半 — その多くは「明らかな背景」で正解率が高い
  3. 勾配の偏り — 易しい負例の損失が積み上がり、本当に難しい前景候補への更新が相対的に弱くなる

二段検出のFaster R-CNNも一段のYOLOも、この不均衡に直面します。Focal LossはRetinaNet(一段検出)とともに広く知られましたが、損失そのものはモデルに依存しない分類ヘッドへの付け替え可能な部品です。

Focal Lossの直感

Focal Lossは、ざっくり言えば「当たり前に正解できている例の損失をさらに小さくする」係数を交差エントロピーに掛けます。

予測の状態従来の交差エントロピーFocal Lossの効果
易しい正例(高確信で正解)すでに損失は小さいさらに重みを下げ、学習から遠ざける
難しい正例(低確信・誤り気味)損失は大きい重みを保ち、学習の主役にする
易しい負例(背景を高確信で外す)大量に積み上がる寄与を大幅に削り、前景学習にリソースを回す

試験では係数γ・αの暗記より、難易度で損失を再配分するという設計思想が要点です。G-194が示すように、損失はタスクの性質に合わせて選びます——分類の基本は交差エントロピー、不均衡検出ではFocal Lossが代表例の一つです。

他の損失・指標との違い

名前性質関係
交差エントロピー分類の基本損失Focal Lossの土台(G-194、TF-063
Dice Loss領域の重なりを直接最適化セグメンテーション向け。分類の難例重みとは別軸
F値適合率と再現率の評価指標学習後の評価(G-470)。損失ではない
クラス重み付けクラスごとに損失を固定倍率頻度の偏り対策。Focalは例ごとの難易度も見る
MSE回帰の二乗誤差分類損失ではない(G-471)

試験で押さえるポイント

  • 定義 — 難例に重みを置く分類損失。不均衡検出で有効
  • 課題 — 易しい負例が多く、交差エントロピーだけでは学習が偏る
  • 対比 — 損失(学習)≠ F値(評価)≠ 検出モデル名
  • 文脈 — 物体検出タスク(G-316)・代表検出モデル(G-323)とセットで整理

演習で確認する

G検定:G-194G-064G-316G-323TF-063TF-462

すり替えに注意

誤った説明正しい理解
Focal Loss=F値損失関数 vs 評価指標
Focal Loss=交差エントロピー難例重み付き拡張 vs 基本形
Focal Loss=Dice Loss分類の難易度 vs 領域重なり
Focal Loss=RetinaNet/YOLO損失 vs 検出モデル(G-323)
Focal Loss=FCN分類損失 vs セグメンテーションモデル

よくある質問

Focal Lossは何をする損失関数ですか?

分類タスクで、すでに正しく予測できている易しい例の損失寄与を小さくし、誤分類しやすい難しい例により学習が集中するよう設計された損失です。物体検出では背景画素が圧倒的に多く、交差エントロピーだけでは易しい負例に学習が偏る問題への対策として知られます。

Focal Lossと交差エントロピーは同じですか?

同じではありません。交差エントロピーは予測確率と正解ラベルのずれを測る基本的な分類損失です。Focal Lossは交差エントロピーを土台に、予測の確信度(易しさ)に応じて損失を減衰させる係数を掛けた拡張です。目的は「難例への注目」です。

Focal LossとF値は同じですか?

同じではありません。F値は適合率と再現率の調和平均であり、学習後のモデル評価指標です。Focal Lossは学習中に使う損失関数であり、名前に「Focal」があっても評価指標のF値とは無関係です。