Tutorials › Model-Informed Drug Development (MIDD) › Calibration Diagnostics for Probability-of-Success Models

Decision Analysis for Development Programs · Tutorial 373 of 596

Calibration Diagnostics for Probability-of-Success Models

Use calibration plots, intercepts, slopes, and Brier scores to assess whether predicted development-program success probabilities agree with observed outcomes.

Advanced 12 min read

What You'll Learn

  • Distinguish calibration from the ability to rank programs by risk.
  • Construct observed-versus-predicted summaries and interpret their limitations.
  • Define the calibration-in-the-large intercept and the joint calibration intercept and slope.
  • Calculate a Brier score and compare it with a prevalence-based reference.
  • Recognize uncertainty, overfitting, and data-quality problems in small program datasets.
  • Choose diagnostics that match the intended use and validation data.

Why Check Calibration?

A probability-of-success (PoS) model gives a numerical probability for an event such as a development program meeting a prespecified success definition. A model can rank programs well—assigning higher probabilities to programs more likely to succeed—yet systematically overpredict or underpredict their success rates. Calibration concerns agreement between predicted probabilities and observed event frequencies. It is therefore a direct diagnostic when probabilities will inform development planning.

Calibration is meaningful only when predictions and outcomes refer to the same event, population, and time point. For example, a prediction of success through the end of Phase II cannot be assessed against an outcome defined as approval after Phase III. The earlier material on defining success by estimand and endpoint and on predictive probability of trial success provides the context for making these targets explicit.

Definition: Let \(Y_i=1\) indicate that program \(i\) meets a defined success criterion and \(Y_i=0\) otherwise. Let \(p_i\) be its predicted probability, with \(0<p_i<1\). A model is calibrated if, for programs assigned probability \(p\), the event frequency is \(p\): \(P(Y=1\mid p)=p\). In finite data, diagnostics assess how closely observed outcomes agree with this relationship; they cannot prove it exactly.

Calibration differs from discrimination. Discrimination concerns whether successes tend to receive higher predictions than failures; calibration concerns whether the stated probability levels match event frequencies. A model may have one property without the other. Neither is a substitute for checking whether the predictions are relevant to the decision being considered.

A Small Development-Program Dataset

Consider the following entirely hypothetical validation dataset. Ten programs received predictions before their outcomes were known. Five received predicted PoS \(0.20\); of these, one succeeded. Five received predicted PoS \(0.60\); of these, four succeeded. The success definition is assumed to be identical for all ten programs, and predictions are assumed to be genuinely prospective or otherwise obtained without using these outcomes to fit the model.

Predicted PoSProgramsObserved successesObserved success proportion
0.20511/5 = 0.20
0.60544/5 = 0.80
Total1055/10 = 0.50

Worked Example: Building an Observed-Versus-Predicted Summary

For each prediction group, compare the mean predicted probability with the observed success proportion. In the \(0.20\) group, the mean prediction is \(5(0.20)/5=0.20\), and the observed proportion is \(1/5=0.20\). In the \(0.60\) group, the mean prediction is \(5(0.60)/5=0.60\), while the observed proportion is \(4/5=0.80\).

An observed-versus-predicted plot places mean predicted PoS on the horizontal axis and observed proportion on the vertical axis. Its reference line is \(y=x\). The first group falls at \((0.20,0.20)\), on the reference line; the second falls at \((0.60,0.80)\), above it. In this sample, the higher-prediction group had more successes than its mean prediction implied. With only five programs per group, however, the point at \(0.80\) is imprecise; it does not establish that the model systematically underpredicts in this range.

Grouping is useful for communication, but grouping choices affect the plot. Many narrow groups can leave very few programs per group; a few broad groups can hide local miscalibration. State how groups were formed and show group sizes. Where possible, display individual predictions and outcomes alongside summaries, and show uncertainty around observed proportions. A visual pattern is a diagnostic signal, not a formal guarantee of future performance.

Calibration Intercept and Slope

A common parametric diagnostic models the observed binary outcome using the logit of each prediction. Define \(\operatorname{logit}(p)=\log\{p/(1-p)\}\). The joint calibration model is

$$ \operatorname{logit}\{P(Y_i=1)\}=a+b\,\operatorname{logit}(p_i). $$

Here \(a\) is the calibration intercept and \(b\) is the calibration slope. Perfect calibration under this model corresponds to \(a=0\) and \(b=1\): the fitted success probability then equals \(p_i\). A positive or negative intercept indicates an overall shift on the log-odds scale, conditional on the slope used. A slope below 1 commonly indicates predictions that are too extreme (too close to 0 or 1) in relation to outcomes; a slope above 1 commonly indicates predictions that are not extreme enough. Interpret both together, and do not treat these patterns as proof of a particular cause.

A related quantity, often called the calibration-in-the-large intercept, is estimated with slope fixed at 1. It is the intercept \(c\) in

$$ \operatorname{logit}\{P(Y_i=1)\}=c+\operatorname{logit}(p_i). $$

The joint-model intercept \(a\) and the calibration-in-the-large intercept \(c\) answer different questions. The former is estimated while the slope is also free to change; the latter asks whether a common log-odds shift is needed when the prediction scale is held fixed. Always state which one is reported.

The model’s likelihood also gives a short justification for what the intercept estimates. For independent binary outcomes, the log-likelihood for parameters \(a,b\) is \(\ell=\sum_i[y_i\eta_i-\log\{1+\exp(\eta_i)\}]\), where \(\eta_i=a+b\operatorname{logit}(p_i)\). Differentiating with respect to \(a\) gives

$$ \frac{\partial \ell}{\partial a} =\sum_i\{y_i-\operatorname{expit}(\eta_i)\}, \qquad \operatorname{expit}(z)=\frac{1}{1+\exp(-z)}. $$

At a fitted maximum, this score is zero, so the fitted probabilities sum to the observed number of successes. This matching of totals does not ensure calibration at every probability level: the slope and the distribution of predictions matter too. The derivation assumes the logistic calibration model and independent Bernoulli outcomes; dependence among programs or model misspecification can make ordinary uncertainty estimates misleading.

Worked Example: Fitting Calibration Intercept and Slope to Two Groups

Use the two prediction groups above. Their observed proportions are \(0.20\) and \(0.80\), so the corresponding observed logits are \(\operatorname{logit}(0.20)=\log(0.25)=-1.3863\) and \(\operatorname{logit}(0.80)=\log(4)=1.3863\). The prediction logits are \(\operatorname{logit}(0.20)=-1.3863\) and \(\operatorname{logit}(0.60)=\log(1.5)=0.4055\).

With just two distinct prediction values and two observed proportions strictly between 0 and 1, the fitted line passes through those two points. Its slope is

$$ \hat b=\frac{1.3863-(-1.3863)}{0.4055-(-1.3863)} =\frac{2.7726}{1.7918}=1.547. $$

The joint-model intercept is

$$ \hat a=-1.3863-(1.547)(-1.3863)=0.759. $$

Thus this small dataset produces a slope above 1, consistent in direction with outcomes that vary more sharply across these two groups than the predictions do. It also produces a positive joint intercept. These are descriptive estimates, not reliable evidence of general miscalibration: the fitted line is determined by only two group-level points, each based on five outcomes.

For the calibration-in-the-large intercept, fix the slope at 1 and solve for \(c\). The fitted probabilities in the two groups must sum to the observed five successes, so their two fitted probabilities must average \(0.50\). Here they are complementary when the logits sum to zero:

$$ (-1.3863+c)+(0.4055+c)=0 \quad\Longrightarrow\quad \hat c=0.4904. $$

This is not the same as the joint intercept \(0.759\). The estimates differ because the calibration-in-the-large fit fixes the slope, whereas the joint fit estimates both parameters.

Brier Score: Overall Probability Accuracy

The Brier score is the mean squared difference between predicted probabilities and binary outcomes. For \(n\) programs it is

$$ \operatorname{BS}=\frac{1}{n}\sum_{i=1}^{n}(p_i-y_i)^2. $$

The score ranges from 0 to 1, with lower values indicating smaller average squared probability errors in the evaluated dataset. It reflects both calibration and the ability to distinguish outcomes; it is not a pure calibration measure. Its value depends on the event frequency and on the population being evaluated, so comparisons should use the same outcome definition and preferably the same validation cases.

Worked Example: Calculating the Brier Score

In the \(0.20\) group, one program succeeded and four failed. The squared errors are \((0.20-1)^2=0.64\) for the success and \(4(0.20-0)^2=4(0.04)=0.16\) for the failures, giving a group total of \(0.80\). In the \(0.60\) group, four succeeded and one failed: the total is \(4(0.60-1)^2+(0.60-0)^2=4(0.16)+0.36=1.00\). Therefore,

$$ \operatorname{BS}=\frac{0.80+1.00}{10}=0.180. $$

For context, a constant prediction equal to the observed overall success proportion \(0.50\) would have score \(\{5(0.50-1)^2+5(0.50-0)^2\}/10=0.250\) on these same outcomes. The model’s score of \(0.180\) is lower in this dataset. Because the reference prediction uses the observed proportion, this is a descriptive comparison, not an independent validation result; estimating a reference from the evaluation outcomes can make its apparent performance optimistic.

Assumptions, Diagnostics, and Failure Modes

These diagnostics require outcomes that are defined consistently and predictions recorded before observing those outcomes, or evaluated using a valid design that prevents information leakage. The logistic calibration model additionally assumes that the log-odds of the outcome are adequately described by a straight line in \(\operatorname{logit}(p_i)\). The simple likelihood derivation and usual model-based standard errors assume independent outcomes. Development programs may share mechanisms, sponsors, trial designs, or historical data; such dependence reduces the effective information and can invalidate standard uncertainty calculations.

  • Check data alignment. Confirm the predicted probability, endpoint, success criterion, and assessment horizon match for every program. Missing outcomes or changed definitions can distort the comparison.
  • Inspect coverage. Note the range and distribution of predictions. A dataset concentrated near \(0.5\) says little about calibration near \(0.05\) or \(0.95\).
  • Assess uncertainty. Small samples and few successes or failures produce unstable estimates. Logistic fits can fail or become extreme when outcomes are separated by prediction values. Report uncertainty and the number of programs, not just point estimates.
  • Check functional form. A single intercept and slope summarize a linear relationship on the logit scale. Curvature or subgroup differences can remain hidden; observed-versus-predicted summaries can help reveal patterns but are themselves noisy.
  • Check dependence and reuse. If the same evidence informed both model construction and evaluation, apparent calibration may be optimistic. Related programs may also require validation and uncertainty methods that account for their dependence.

No single diagnostic settles model adequacy. A plot is intuitive but sensitive to grouping and sample size. Intercept and slope offer compact summaries but rely on a parametric form and may be unstable. The Brier score uses individual predictions and outcomes but combines multiple aspects of probability accuracy into one number. Use the diagnostics together, explain their limitations, and avoid interpreting small-sample differences as definitive evidence.

Common pitfall: “The observed success proportion in this group is higher than the predicted probability, so the model is definitely underpredicting.” The correction is that an observed proportion is variable, especially with few programs. Treat the gap as a diagnostic signal, assess its uncertainty and the evaluation design, and look for a reproducible pattern before making a broad claim.

Using Calibration Evidence Responsibly

Calibration evidence is most useful when its scope is explicit: which programs were assessed, how success was defined, when predictions were made, and whether those programs represent the future decisions of interest. A model may be acceptably calibrated in one development setting but not transport to a different disease area, trial design, or evidence base. Recalibration can be considered when a persistent discrepancy is supported, but estimating adjustments and judging their performance on the same small dataset risks overfitting.

For a practical report, give the observed-versus-predicted display with group sizes, the calibration intercept and slope with their definitions and uncertainty, and the Brier score alongside a clearly specified comparison. State limitations that affect interpretation, including small sample size, outcome dependence, restricted prediction range, and any reuse of development data. These are diagnostics of probability performance, not guarantees about the outcome of an individual program.

Check Your Understanding

Answer each question, then compare with the solutions below.

  1. Among 8 programs assigned mean predicted PoS \(0.25\), two succeed. What observed proportion is plotted, and how does it compare with the prediction?
  2. What values of the joint calibration intercept and slope indicate ideal calibration under the logistic calibration model?
  3. A calibration slope below 1 is estimated. What pattern is commonly indicated, and why should the estimate not be interpreted alone?
  4. For a program with predicted PoS \(0.30\) and observed outcome \(Y=1\), what is its contribution to the Brier score?
  5. Why is a Brier score of \(0.18\) not automatically “good” without a comparison and context?

Solutions. (1) The observed proportion is \(2/8=0.25\), equal to the mean prediction; this single group does not establish calibration over other probability levels. (2) Ideal values are \(a=0\) and \(b=1\), giving fitted probability \(p_i\). (3) A slope below 1 commonly indicates predictions that are too extreme. Consider the intercept, uncertainty, data quality, sample size, and functional form as well. (4) The squared error is \((0.30-1)^2=(-0.70)^2=0.49\); its contribution to the mean score is \(0.49/n\) if the evaluation set contains \(n\) programs. (5) The score depends on the outcome frequency and evaluated cases and combines calibration with discrimination; compare it against a relevant reference on the same cases and report the setting.