The Confidence Gate Theorem: When Should Ranked Decision Systems Abstain?
Organizations: Haske Labs
Abstract
Ranked decision systems -- recommenders, ad auctions, clinical triage queues -- must decide when to intervene in ranked outputs and when to abstain. We study when confidence-based abstention monotonically improves decision quality, and when it fails. The formal conditions are simple: rank-alignment and no inversion zones. The substantive contribution is identifying why these conditions hold or fail: the distinction between structural uncertainty (missing data, e.g., cold-start) and contextual uncertainty (missing context, e.g., temporal drift). Empirically, we validate this distinction across three domains: collaborative filtering (MovieLens, 3 distribution shifts), e-commerce intent detection (RetailRocket, Criteo, Yoochoose), and clinical pathway triage (MIMIC-IV). Structural uncertainty produces near-monotonic abstention gains in all domains; structurally grounded confidence signals (observation counts) fail under contextual drift, producing as many monotonicity violations as random abstention on our MovieLens temporal split. Context-aware alternatives -- ensemble disagreement and recency features -- substantially narrow the gap (reducing violations from 3 to 1--2) but do not fully restore monotonicity, suggesting that contextual uncertainty poses qualitatively different challenges. Exception labels defined from residuals degrade substantially under distribution shift (AUC drops from 0.71 to 0.61--0.62 across three splits), providing a clean negative result against the common practice of exception-based intervention. The results provide a practical deployment diagnostic: check C1 and C2 on held-out data before deploying a confidence gate, and match the confidence signal to the dominant uncertainty type.
Figures & tables
| Split | MF | Global | User | Item |
|---|---|---|---|---|
| Temporal | 1.027 | 1.119 | 1.126 | 1.037 |
| Cold-user | 1.057 | 1.154 | 1.154 | 1.051 |
| Cold-item | 1.068 | 1.123 | 1.039 | 1.123 |
| Split | KS stat | -value | Exception rate (train test) |
|---|---|---|---|
| Temporal | 0.185 | 5.0% 14.0% | |
| Cold-user | 0.184 | 5.0% 15.0% | |
| Cold-item | 0.199 | 5.0% 15.8% |
| Split | AUC (train) | AUC (test) |
|---|---|---|
| Temporal | 0.711 | 0.624 |
| Cold-user | 0.708 | 0.613 |
| Cold-item | 0.701 | 0.606 |
| Split | |||
|---|---|---|---|
| Temporal | 1.28 | 0.13 | 0.03 |
| Cold-user | 1.25 | 0.12 | 0.02 |
| Cold-item | 0.74 | 0.04 | 0.03 |
| Abstain % | Temporal | Cold-user | Cold-item |
|---|---|---|---|
| 0% | 1.027 | 1.057 | 1.068 |
| 5% | 1.023 | 1.034 | 1.067 |
| 10% | 1.021 | 1.027 | 1.063 |
| 15% | 1.028 | 1.021 | 1.063 |
| 20% | 1.034 | 1.015 | 1.062 |
| 25% | 1.035 | 1.012 | 1.062 |
| Method | 0% | 5% | 10% | 15% | 20% | 25% | Viol. |
|---|---|---|---|---|---|---|---|
| Random (control) | 1.027 | 1.028 | 1.026 | 1.024 | 1.025 | 1.028 | 3 |
| Count-based | 1.027 | 1.023 | 1.021 | 1.028 | 1.034 | 1.035 | 3 |
| Residual-predicted | 1.027 | 1.026 | 1.022 | 1.023 | 1.018 | 1.016 | 1 |
| Ensemble (5 seeds) | 1.024 | 1.014 | 1.008 | 1.003 | 1.004 | 1.001 | 1 |
| Method | HIGH CVR | MED CVR | Lift | Monotonic | HIGH Coverage |
|---|---|---|---|---|---|
| Random (3 seeds) | 3.86% | 3.59% | 1.08 | No | 33% |
| Session length | 10.24% | 2.20% | 4.65 | Yes | 30% |
| IntentLens | 4.40% | 0.90% | 4.89 | Yes | 80% |
| Dataset | Sessions | HIGH CVR | MED CVR | LOW CVR | HIGH/MED Lift |
|---|---|---|---|---|---|
| RetailRocket | 20,000 | 4.4% | 0.9% | 0.0% | 4.9 |
| Criteo | 844,059 | 14.48% | 7.56% | 4.79% | 1.92 |
| Yoochoose | 150,000 | 11.57% | 3.40% | 1.73% | 3.40 |
| Zone | Confidence Range | Mean Accuracy | |
|---|---|---|---|
| 0 | 5,561 | 0.231 | |
| 1 | 2,913 | 0.359 | |
| 2 | 869 | 0.648 | |
| 3 | 424 | 0.861 | |
| 4 | 233 | 0.939 |
| Threshold | Coverage | Selective Accuracy |
|---|---|---|
| 0.0 | 100% | 0.348 |
| 0.2 | 84% | 0.387 |
| 0.4 | 23% | 0.643 |
| 0.6 | 8% | 0.864 |
| 0.8 | 3% | 0.930 |
| 0.95 | 0.9% | 0.986 |
| Domain | Dataset | C1 ( ) | C2 (inversions) | Monotonic? |
| Rec. (MovieLens) | Temporal | 0.043 | 3 | No (contextual) |
| Cold-user | 0.061 † | 0 | Yes (structural) | |
| Cold-item | 0.015 † | 1 ‡ | Yes ‡ (structural) | |
| E-commerce | RetailRocket | 0 | Yes | |
| Yoochoose | 0 | Yes | ||
| Criteo | 0 | Yes |
| Block 1 | Block 2 | Block 3 | Block 4 | |
| Full RMSE (no abstention) | 1.030 | 1.015 | 1.016 | 1.047 |
| Static 15% abstain | 1.027 | 1.026 | 1.020 | 1.040 |
| Adaptive 15% abstain | 1.042 | 1.025 | 1.020 | 1.040 |
| Monotonicity violations (static) | 1 | 5 | 2 | 3 |
| Monotonicity violations (adaptive) | 5 | 4 | 2 | 3 |
| Confidence features | 0% | 5% | 10% | 15% | 20% | 25% | Viol. |
|---|---|---|---|---|---|---|---|
| Count-based (Table 5 ) | 1.027 | 1.023 | 1.021 | 1.028 | 1.034 | 1.035 | 3 |
| Recency-only | 1.027 | 1.021 | 1.017 | 1.017 | 1.017 | 1.018 | 2 |
| Ensemble (Table 6 ) | 1.024 | 1.014 | 1.008 | 1.003 | 1.004 | 1.001 | 1 |
| Struct. + recency (LogReg) | 1.027 | 1.032 | 1.035 | 1.037 | 1.037 | 1.043 | 4 |
| Struct. + recency (GBT) | 1.027 | 1.028 | 1.033 | 1.035 | 1.034 | 1.032 | 3 |
Decision-Making under Uncertainty
Decision-making under uncertainty studies how to choose actions when outcomes, states, or models are imperfectly known.
See all 201 papers