分類の評価指標(混同行列・Precision/Recall/F1)

分類モデルの良し悪しを多面的に測る指標。混同行列から各値を計算する手順を完全マスター。

分類モデルの評価で必出、混同行列とPrecision/Recall/F1スコア。計算問題対策の核。

白峰 リリ(普段) 白峰 リリ

正答率(Accuracy)だけじゃダメなの?

神楽 モニカ 先生(普段) 神楽 モニカ 先生

不均衡データだとAccuracyは頼りにならないのよ。 例えば99%が陰性のとき、全部『陰性』と予測すればAccuracyは99%になるけれど、肝心の陽性が1つも検出できていないでしょう?

紅林 かえで(普段) 紅林 かえで

そこで使うのが混同行列と派生指標。 まず混同行列は4マスで、TP=真陽性、FP=偽陽性、FN=偽陰性、TN=真陰性 を集計する。

藍沢 しずく(しょんぼり) 藍沢 しずく

頭文字、覚えにくいですぅ…

紅林 かえで(普段) 紅林 かえで

TP=正しく陽性と判定、FN=陽性なのに陰性と判定(見逃し)、FP=陰性なのに陽性と判定(誤検出)、TN=正しく陰性と判定。 『TF=正誤、PN=予測』と分解して読めばいい。

白峰 リリ(普段) 白峰 リリ

Precisionと Recallって何が違うの?

神楽 モニカ 先生(普段) 神楽 モニカ 先生

Precision(適合率)= TP / (TP + FP) = 『陽性と予測したもののうち本当に陽性の割合』。 Recall(再現率)= TP / (TP + FN) = 『本当に陽性のもののうち検出できた割合』。

紅林 かえで(普段) 紅林 かえで

Precisionは『間違った陽性判定が少ない方が良い時』(例: スパム判定で誤って正規メールを排除しない)。 Recallは『本物の陽性を見逃さない方が良い時』(例: 病気の見逃し回避)。

藍沢 しずく(普段) 藍沢 しずく

F1スコアは?

紅林 かえで(普段) 紅林 かえで

Precision と Recall の{kw('調和平均')} = 2·P·R/(P+R)。 両者のバランスを1つの数字で見たいときに使う。

白峰 リリ(普段) 白峰 リリ

Precision と Recall ってトレードオフあるんだよね?

神楽 モニカ 先生(普段) 神楽 モニカ 先生

そうなのよ。
閾値を厳しくすればPrecisionは上がるけどRecallは下がる、緩めればその逆ね。 これを可視化したのがPR曲線よ。

紅林 かえで(普段) 紅林 かえで

DS検定で頻出: 混同行列から各指標を計算する問題、トレードオフを問う問題。 公式とトレードオフの方向はしっかり押さえておこう。

藍沢 しずく(笑顔) 藍沢 しずく

暗記しますぅ♪

病気判定の混同行列(100人):
                    予測:陽性    予測:陰性
    実際:陽性 (10人)    8 (TP)        2 (FN)
    実際:陰性 (90人)    5 (FP)       85 (TN)

Accuracy  = (TP+TN)/100 = (8+85)/100 = 93%
Precision = TP/(TP+FP) = 8/(8+5)    = 8/13 ≈ 0.615
Recall    = TP/(TP+FN) = 8/(8+2)    = 0.80
F1        = 2·P·R/(P+R) = 2·0.615·0.80 / (0.615+0.80) ≈ 0.696

確認クイズ

TP=20, FP=5, FN=10, TN=65 のとき、Precision はいくらか。

  1. 0.667
  2. 0.80
  3. 0.85
  4. 0.20
こたえを見る

正解: 2. 0.80

0.80。 Precision = TP/(TP+FP) = 20/(20+5) = 20/25 = 0.80。 これは『陽性と予測したものの80%が本当に陽性だった』ことを意味します。

🔖 この記事の関連書籍

Amazonアソシエイトリンクを含みます。他分野は おすすめ書籍ページ へ。