Introduction
The Cox model, covered in depth elsewhere on this site, is semi-parametric: it leaves the baseline hazard's shape completely unspecified. That's a genuine strength when you have no reason to assume a particular hazard shape, but it comes at a real cost — a Cox model cannot extrapolate survival beyond the observed follow-up window, because it never estimates what the baseline hazard actually looks like as a function of time, only how covariates shift it. Parametric survival models fill that gap by committing to a specific distributional shape for survival time itself. This tutorial goes slowly and carefully through the two most important such models — Exponential and Weibull — defining every parameter explicitly as it's introduced, working through real fitted examples at each step, and finishing with the single most practically important reason to reach for a parametric model: extrapolation.
The Exponential Model: One Parameter, Fully Explained
The exponential distribution is the simplest possible survival model, built on a single assumption: the hazard is constant over time. If \(\lambda\) denotes this constant hazard (with units of "events per unit time" — for example, 0.045 events per month, meaning that at any instant, an individual currently event-free has a 4.5% chance of experiencing the event per month), the three core functions are:
Walking through what each piece means: \(h(t)\), the hazard function, is flat — it doesn't depend on \(t\) at all, which is the defining (and most restrictive) feature of this model: an individual who has already survived 20 months has exactly the same instantaneous risk as one who just started. \(S(t)\), the survival function, gives the probability of being event-free past time \(t\); it decays exponentially, governed entirely by \(\lambda\). A single parameter, \(\lambda\), therefore fully determines the entire distribution — including a closed-form median survival time:
A real fit. Maximizing the likelihood \(\prod_i \lambda^{d_i} e^{-\lambda t_i}\) (where \(d_i\) is the event indicator and \(t_i\) the observed time for subject \(i\)) directly on a real 300-subject dataset (184 events):
| Parameter | Estimate | What it means here |
|---|---|---|
| λ̂ | 0.04504 | A constant 4.5% instantaneous event rate per month, at every point in follow-up |
| Median survival = ln(2)/λ̂ | 15.39 months | Directly computable in closed form — no numerical integration needed |
The Weibull Model: Two Parameters, Each Explained Separately
Real hazards are rarely constant — risk often changes systematically over time (rising as a disease progresses, or falling after an initial high-risk period following surgery). The Weibull distribution generalizes the exponential with a second parameter that lets the hazard shape itself vary:
Two parameters now, and it's worth pausing on each individually rather than rushing past them:
- λ (scale parameter) — has units of time (months, in this tutorial's examples), and can be read as a "characteristic survival time": at exactly \(t=\lambda\), \(S(\lambda) = e^{-1} \approx 0.368\), regardless of \(k\) — roughly 63.2% of the population has had the event by time \(\lambda\). It plays a role directly analogous to \(1/\lambda\) in the exponential model.
- k (shape parameter) — dimensionless, and it's the parameter that actually determines whether risk rises, falls, or stays flat over time:
- \(k = 1\): the hazard is exactly constant — the Weibull collapses back to the exponential model exactly.
- \(k \gt 1\): the hazard increases over time — appropriate for a progressive condition where risk accumulates.
- \(k \lt 1\): the hazard decreases over time — appropriate for an early high-risk period (e.g., the weeks immediately following major surgery) that fades with time.
A real fit, no covariates yet — isolating what \(k\) and \(\lambda\) look like on their own before adding any regression structure:
| Parameter | Estimate | Interpretation |
|---|---|---|
| k̂ (shape) | 1.515 | Greater than 1 — hazard rises over follow-up, consistent with a progressive condition |
| λ̂ (scale) | 20.79 months | By 20.79 months, about 63.2% of subjects have had the event |
Confirming the \(S(\lambda)=e^{-1}\) relationship directly: \(e^{-1} = 0.3679\) — exactly what the formula predicts, independent of whatever value \(k\) takes.
Adding Covariates: Two Different, Equally Valid Parametrizations
This is where parametric survival models offer something genuinely different from Cox: two distinct ways to let covariates enter the model, each with its own interpretation.
Proportional Hazards (PH) Parametrization
Covariates multiply the hazard, exactly as in the Cox model:
Here \(\beta\) means exactly what it means in a Cox model — \(e^{\beta}\) is a hazard ratio. Fitting this on the real dataset (treatment and age as covariates):
| Parameter | Estimate | True value | Interpretation |
|---|---|---|---|
| k̂ (shape) | 1.574 | 1.6 | Hazard rises over time |
| λ̂0 (baseline scale) | 16.80 | 18.0 | Characteristic survival time for the reference group |
| β̂treatment (log-HR) | −0.626 | −0.5 | HR = e−0.626 = 0.535 — treatment nearly halves the hazard |
| β̂age (log-HR, per year) | 0.0223 | 0.03 | HR = 1.023 per year of age |
Accelerated Failure Time (AFT) Parametrization
Rather than multiplying the hazard, covariates stretch or compress the entire time scale:
Here every symbol means something genuinely different from the PH model: \(\mu\) is a location parameter (related to the baseline scale via \(\lambda_0 = e^{\mu}\)), \(\sigma\) is a scale parameter on the log-time scale (related to the shape parameter via \(k = 1/\sigma\)), and \(\gamma\) is the AFT coefficient — \(e^{\gamma}\) is called the acceleration factor, and it operates on time itself, not the hazard: an acceleration factor of 2 means a subject's entire survival experience is stretched to take twice as long, at every point along the curve, not just that their instantaneous risk is halved.
Fitting the identical dataset under this parametrization:
| Parameter | Estimate | Interpretation |
|---|---|---|
| μ (location) | 2.821 | Baseline scale = eμ = 16.80 (identical to λ̂0 from the PH fit) |
| σ | 0.635 | Shape k = 1/σ = 1.574 (identical to k̂ from the PH fit) |
| γ̂treatment | 0.398 | Acceleration factor = e0.398 = 1.489 — treated subjects' survival time is stretched by a factor of 1.49 |
| γ̂age | −0.014 | Acceleration factor = e−0.014 = 0.986 per year — each additional year of age compresses survival time slightly |
The Exact Relationship Between the Two Scales — Proven, Not Just Stated
Weibull is the only common survival distribution for which the PH and AFT parametrizations describe exactly the same model, related by a precise algebraic identity:
Verifying this directly on the two independent fits above, rather than just asserting the formula:
| Covariate | −γ̂AFT × k | β̂PH (from the separate PH fit) |
|---|---|---|
| Treatment | −(0.398)(1.574) = −0.626 | −0.626 |
| Age | −(−0.014)(1.574) = 0.0223 | 0.0223 |
Exact agreement, computed from two independently-run optimizations — genuine confirmation of the identity, not a coincidence of rounding. For any other parametric family (log-normal, gamma, Gompertz), this equivalence does not hold; PH and AFT would need to be fit as genuinely separate models with different underlying assumptions, which is part of why Weibull holds a special, convenient place among parametric survival models.
Model Comparison: Is the Extra Parameter Worth It?
| Model | Log-likelihood | AIC | Parameters |
|---|---|---|---|
| Exponential (PH) | −746.72 | 1499.44 | 3 |
| Weibull (PH) | −723.16 | 1454.31 | 4 |
Weibull's AIC is decisively lower (by 45 points) despite the one extra parameter — strong evidence the data genuinely has a non-constant hazard, consistent with the shape estimate \(\hat k \approx 1.57\) found throughout.
Checking the Weibull Assumption: The Log-Log Plot
Because \(S(t) = \exp[-(t/\lambda)^k]\), taking logs twice gives a linear relationship if and only if the Weibull model is a good fit:
Plotting \(\log(-\log \hat S(t))\) (from the non-parametric Kaplan-Meier estimate, which makes no distributional assumption) against \(\log(t)\) should trace a straight line with slope \(k\) if Weibull is appropriate:
A real log-log plot from this tutorial's data. The points fall close to a straight line (fitted slope = 1.35), reasonably close to the covariate-adjusted MLE shape estimate of 1.57 — some discrepancy is expected since this diagnostic doesn't adjust for covariates the way the full regression model does, but the overall linear pattern supports the Weibull assumption rather than contradicting it.
Extrapolation: The Practical Payoff
This tutorial's data has a maximum observed follow-up of 30 months. A Cox model has nothing to say about survival past that point — its baseline hazard estimate simply stops. The fitted Weibull model, having committed to a specific functional form, extrapolates directly:
Extrapolated survival curves to 60 months — double the observed follow-up window — using the fitted Weibull PH model. At 60 months, estimated survival is 1.9% (treatment) vs. 0.06% (control). This kind of projection is exactly what health-economic and long-term outcome models need, but it comes with a real assumption: that the same hazard shape observed during the trial continues to hold indefinitely afterward, which is a genuine extrapolation risk that grows the further out the projection extends, and should always be flagged as an assumption rather than a finding.
Shortcomings and Key Details
- Extrapolation is only as good as the shape assumption. If the true hazard shape changes beyond the observed data (e.g., a late-onset secondary risk period the trial never observed), the Weibull extrapolation will be wrong in a way that's impossible to detect from the trial data alone.
- Model misspecification affects the whole curve, not just a local region — unlike Cox's semi-parametric baseline hazard, a wrong parametric family choice biases the fitted survival function everywhere, not just far from the data.
- Other parametric families exist for hazard shapes Weibull can't represent — log-normal and log-logistic allow a hazard that rises then falls (a genuinely non-monotonic shape Weibull cannot produce), and Gompertz is common in mortality modeling. Each has its own PH/AFT relationship (or lack thereof), and the log-log diagnostic above generalizes to a corresponding check for each family.
- AIC comparisons between Cox and a parametric model require care — Cox's partial likelihood doesn't estimate the baseline hazard's parameters directly, so a naive AIC comparison (as shown above, for context) isn't perfectly apples-to-apples; it's informative but shouldn't be over-interpreted as a strict statistical test between the two frameworks.
Summary
Every parameter introduced in this tutorial was tied to a concrete number from a real fit: λ as a characteristic survival time (confirmed via \(S(\lambda)=e^{-1}=0.368\)), k as the shape parameter directly determining whether hazard rises or falls (estimated at 1.57, confirmed by AIC and the log-log diagnostic), and the AFT acceleration factor (1.489) shown to relate to the PH hazard ratio through an exact, independently-verified algebraic identity. The practical payoff for all of this formality is extrapolation — the one thing a semi-parametric Cox model fundamentally cannot do, demonstrated here by projecting survival to twice the observed follow-up window.
References
Collett, D. (2015). Modelling Survival Data in Medical Research (3rd ed.). CRC Press.
Klein, J.P. & Moeschberger, M.L. (2003). Survival Analysis: Techniques for Censored and Truncated Data (2nd ed.). Springer.
Kalbfleisch, J.D. & Prentice, R.L. (2002). The Statistical Analysis of Failure Time Data (2nd ed.). Wiley.
Royston, P. & Parmar, M.K.B. (2002). Flexible parametric proportional-hazards and proportional-odds models for censored survival data. Statistics in Medicine.