Metrics

Condensed inventory of supervised ML evaluation metrics. Test performance metrics are usually model-agnostic; diagnostics (OOB, importances…) depend on the family. Protocol: train / validation / test, stratified CV when needed, baseline, uncertainty (bootstrap or CV), hold-out test once.

Master table

MetricMeasuresProbThresholdProblem
Accuracy, F1, MCCErrors @ τ—yesBinary, multiclass
AUC-ROC, Gini (model)RankingnonoBinary
AUC-PR, APRanking (rare class)nonoBinary
Log loss, Brier, ECEProbs & calibrationyesnoBinary, multiclass
Lift, quantile buckets, KS, PSIScore ranking / stabilityscoreoptionalBinary
MAE, RMSE, R²Continuous error——Regression
OOB, Gini MDI, XGB gainModel diagnostic——RF, XGBoost

Threshold & confusion matrix

Require a predicted class ŷ (threshold τ on p̂ in binary). Define the positive class (1).

MetricDefinition (binary)Note
TP, TN, FP, FNCounts @ τThreshold block basis
Accuracy(TP+TN)/NWeak under imbalance
Precision (PPV), Recall (TPR), Specificity (TNR)TP/(TP+FP), TP/(TP+FN), TN/(TN+FP)—
NPV, FDR, FORTN, FP variantsMedical, niche
F1, FβHarmonic P/Rβ > 1 → recall
Balanced accuracy, MCC, Cohen κ½(TPR+TNR), Matthews, agreementκ extends to multiclass
Expected cost, optimal τC_FP·FP + C_FN·FNτ chosen on validation

Discrimination & ranking

Input: score or p̂ — no fixed τ. Gini (model) = 2×AUC−1 ≠ Gini MDI (RF importance).

MetricIdeaNote
ROC, AUC-ROCTPR vs FPRGlobal ranking
Gini (model)2×AUC−1Credit scoring
PR curve, AUC-PR, APPrecision vs recallRare class 1
Partial AUC, KSFPR band; max|CDF₁−CDF₀|Business / banking
Lift, cumulative gainsPositives in top k%Campaigns, triage
Quantile buckets (deciles)Observed rate, lift per bucketScore monotonicity

Probabilistic & calibration

Require interpretable p̂. High AUC does not imply calibrated probabilities.

MetricRole
Log lossCross-entropy; penalizes confident wrong probs
Brier scoreMSE(y, p̂); decomposable (Murphy)
Reliability diagram, ECE, MCEObserved vs predicted gap per bin
SharpnessSpread of p̂ (≠ calibration)
Hosmer–LemeshowGoodness-of-fit test by bins
Recalibration (Platt, isotonic)Post-hoc on validation

Multiclass classification

Y ∈ , K > 2.

MetricVariantNote
Accuracy, K×K matrix—Global
Precision / Recall / F1macro, micro, weightedMacro = equal classes
Log lossmulticlassK-way probabilities
AUCOvR, OvOMacro-average
Top-k accuracy—Label in top k logits
Hamming lossmulti-labelWrong labels

Regression

Y ∈ ℝ — distinct metric set.

MetricIdeaNote
MAE, MedAE|y−ŷ|, medianRobust (MedAE)
MSE, RMSE(y−ŷ)²Outlier-sensitive
MAPE, SMAPERelative % errorUnstable if y≈0
R², adjusted R²Explained varianceAdjusted penalizes complexity
Pinball lossQuantile τQuantile models
Interval scoreCoverage + widthPrediction intervals

Comparison & robustness

ItemUse
Bootstrap CI, CV std devUncertainty on AUC, F1…
McNemar, Delong, paired bootstrapCompare A vs B (same examples)
Learning curvesBias / variance vs train size
Out-of-time, FP/FN analysisTemporal drift, error segments
PSI, calibration driftp̂ distribution stability over time

Diagnostics — Random Forest

≠ test performance. See Random Forest.

ItemNote
OOB score / errorInternal perf; not a test/CV substitute
Gini importance (MDI)Impurity decrease; biased if correlated
Permutation importanceMore reliable out-of-sample
Gini impurity (node)Tree build ≠ model Gini

Diagnostics — XGBoost

See XGBoost.

ItemNote
Gain / cover / weight importanceWeight favors high cardinality
Early stopping (eval metric)logloss, auc, rmse… → # rounds
Train vs val curveOverfitting by iteration
SHAP (optional)Local interpretation

sklearn references

confusion_matrix, classification_report, roc_auc_score, average_precision_score, log_loss, brier_score_loss, CalibrationDisplay, CalibratedClassifierCV, f1_score, mean_absolute_error, r2_score, permutation_importance, StratifiedKFold