F1スコアとは?
F1スコアは、分類モデルの性能評価指標の一つで、特に適合率 (Precision) と再現率 (Recall) のバランスを取りたい場合に用いられます。不均衡データのように精度だけでは評価が難しい場合や、適合率と再現率のどちらか一方だけを最大化するのが適切でない場合に有用です。
適合率と再現率の調和平均
F1スコアは、適合率と再現率の調和平均 (Harmonic Mean) で計算されます。
$ F1 = 2 \times \frac{\text{Precision} \times \text{Recall}}{\text{Precision} + \text{Recall}} = \frac{2 \times TP}{2 \times TP + FP + FN}$
調和平均は、値が小さい方の影響を強く受けるため、適合率と再現率の両方がバランス良く高い場合にF1スコアも高くなります。どちらか一方が極端に低いと、F1スコアも低くなります。
計算ステップ
混同行列: TP=80, FN=20, FP=10, TN=90
1. 適合率 (Precision) の計算: (モデルがPositiveと予測したうち、実際にPositiveだった割合)
$\text{Precision} = \frac{TP}{TP+FP} = \frac{80}{80+10} = \frac{80}{90} = \frac{8}{9}$
2. 再現率 (Recall) の計算: (実際のPositiveのうち、モデルがPositiveと予測できた割合)
$ \text{Recall} = \frac{TP}{TP+FN} = \frac{80}{80+20} = \frac{80}{100} = \frac{4}{5}$
3. F1スコアの計算:
$ F1 = 2 \times \frac{\text{Precision} \times \text{Recall}}{\text{Precision} + \\text{Recall}} = 2 \times \frac{(8/9) \times (4/5)}{(8/9) + (4/5)} \\\
= 2 \times \frac{32/45}{(40+36)/45} = 2 \times \frac{32/45}{76/45} \\\
= 2 \times \frac{32}{76} = \frac{16}{19} \\\
\approx 0.8421...$
したがって、F1スコアは約 0.842 です。
重要ポイント:F1スコアの活用
- バランスの指標: 適合率と再現率のトレードオフを考慮し、両者のバランスを評価します。
- 不均衡データに有効: 精度が機能しにくい不均衡データセットの評価に適しています。
- 利用場面: 情報検索、固有表現抽出、医療診断支援など、偽陽性・偽陰性の両方を避けたい多くのタスクで使われます。
- 一般化 (F-betaスコア): 再現率をより重視する場合は F2 スコア、適合率をより重視する場合は F0.5 スコアなど、重み付けを変えた F-beta スコアも存在します。