評価指標

F1スコア えふわんすこあ

F1スコアFスコア適合率再現率調和平均
F1スコアについて教えて

簡単に言うとこんな感じ!

「適合率」と「再現率」のバランスを1つの数値にまとめた指標だよ。両方が高いと高いF1スコアになるけど、どちらかが極端に低いと引きずられて低くなる。不均衡データの分類モデルを評価するときの定番指標なんだ!


F1スコアとは

F1スコアは、適合率(Precision)と再現率(Recall)の調和平均です。2つの指標を1つの数値でバランスよく表現します。

F1 = 2 × Precision × Recall / (Precision + Recall)

または

F1 = 2TP / (2TP + FP + FN)

調和平均を使う理由:算術平均と違い、どちらかが極端に低いと全体の値が低くなるため、「一方だけ高い」モデルを高く評価しません。

例:
  Precision = 0.9, Recall = 0.1
  算術平均 = 0.5(高く見える)
  調和平均(F1) = 0.18(低く、実態を反映)

F1スコアの計算例

モデルPrecisionRecallF1スコア
A(バランス型)0.750.750.75
B(積極型)0.400.950.56
C(慎重型)0.950.400.56

モデルBとCは一方の指標は高いが、F1は低い評価になります。


Fβスコア:重みを変えた応用版

Fβ = (1 + β²) × Precision × Recall / (β² × Precision + Recall)

β = 1 → F1スコア(PrecisionとRecallを等しく重視)
β = 2 → Recall を2倍重視(見逃しを避けたい場合)
β = 0.5 → Precision を2倍重視(誤検知を避けたい場合)

多クラス分類でのF1

複数クラスがある場合、各クラスのF1をどう集約するかで種類があります。

集計方法説明
Macro平均各クラスのF1の単純平均。少数クラスを等しく重視
Weighted平均各クラスのサンプル数で重み付け平均
Micro平均全クラスのTP/FP/FNを合算して計算

歴史と背景

  • 情報検索分野で1960年代から使われていたFスコアが起源
  • Van Rijsbergenが1979年に定式化
  • 2000年代以降機械学習の分類評価の標準指標として定着

関連用語