評価指標 II(分類)
混同行列を起点に、Accuracy・Precision・Recall・F1・ROC-AUC・LogLoss を理解します。
すべては混同行列から#
分類の指標は混同行列(予測と正解の組み合わせ)から導かれます。
| 予測:陽性 | 予測:陰性 | |
|---|---|---|
| 実際:陽性 | TP(真陽性) | FN(偽陰性) |
| 実際:陰性 | FP(偽陽性) | TN(真陰性) |
Accuracy / Precision / Recall / F1#
正解率(Accuracy)は全体のうち当たった割合。ただし不均衡データでは誤解を招きます (99% が陰性なら「全部陰性」で 99% になる)。
両者はトレードオフの関係にあり、その調和平均が F1 スコアです。
ROC-AUC と LogLoss#
from sklearn.metrics import accuracy_score, f1_score, roc_auc_score, log_loss
acc = accuracy_score(y_true, y_pred)
f1 = f1_score(y_true, y_pred)
auc = roc_auc_score(y_true, y_proba) # 確率を渡す
ll = log_loss(y_true, y_proba) # 確率を渡す注意
AUC と LogLoss は予測ラベルではなく確率で計算します。predict ではなく predict_proba
の出力を渡しましょう。
理解度チェック#
次のステップ#
次は、これらのモデルを実際に動かす scikit-learn の基本 API を学びます。