← AI Terminology
Recall
Recall (also called sensitivity or true positive rate) is a classification evaluation metric that measures the fraction of actual positives that the model correctly identified — answering "of all the truly positive cases, how many did the model catch?"
It is one half of the precision-recall tradeoff, paired with precision.
It is one half of the precision-recall tradeoff, paired with precision.
Why It Matters in AI
Recall matters when false negatives are costly: a cancer screening tool that misses 30% of malignant tumours (low recall) is dangerous even if it never produces false alarms; a fraud detection system that flags only obvious fraud (high precision, low recall) lets most fraud through. High recall means the model is aggressive — it catches most positives but may include false alarms (low precision). Maximising recall requires lowering the classification threshold, which increases false positives.
Key Points
| Aspect | Description |
|---|---|
| Range | [0, 1] — 1.0 = no false negatives; 0 = caught no positives |
| Formula | Recall = TP / (TP + FN) — true positives divided by all actual positives |
| F1 score | Harmonic mean of precision and recall — single balanced metric |
| Sensitivity | Clinical ML name for recall — "the test's sensitivity to detecting the condition" |
| vs Precision | Precision: of predictions; Recall: of actual positives — tuning one usually hurts the other |
| Threshold tuning | Lower classification threshold → higher recall, lower precision — domain tradeoffs decide |
Simple Analogy
A metal detector at airport security: recall measures what fraction of actual weapons it catches — missing a weapon (false negative) is catastrophic, so recall is maximised even at the cost of many false alarms (low precision). A detector that alerts on any metal achieves near-perfect recall but terrible precision.
Common Usage Examples
sklearn.metrics.recall_score(y_true, y_pred, average='binary')— binary recallprecision, recall, f1, _ = sklearn.metrics.precision_recall_fscore_support(y_true, y_pred)- Threshold tuning:
sklearn.metrics.precision_recall_curve(y_true, y_scores)— plot at all thresholds - Medical: "Sensitivity 97%" = the test catches 97% of patients who have the disease
- Fraud detection:
recall_score(y_true, y_pred)— fraction of actual fraud transactions flagged
Summary
In short: Recall measures the fraction of actual positives correctly identified by the model — the metric to maximise when missing a positive is more costly than a false alarm, always evaluated alongside precision to understand the full tradeoff.