Combining forecasts into ensembles

Several models, one forecast. The deep question is what you average. Average the probabilities and you get a linear opinion pool (a mixture). Average the quantiles and you get a Vincent average (the mean/median ensembles). They can look strikingly different — this page shows why, with the maths and live figures.

Two philosophies for combining forecasts

It comes down to what you think the disagreement between models means

Different models disagree. How you combine them should depend on why you think they differ (Howerton et al., 2023):

"One truth, noisy estimates"

Each model is a slightly-off measurement of the same underlying predictive distribution. Averaging should sharpen the estimate, cancelling noise — like averaging repeated readings. → quantile / Vincent averaging.

"Which model is right?"

The models represent genuinely different stories about the system, and we are uncertain which one holds. We should keep all their possibilities on the table. → linear opinion pool (a probability mixture).

These are two independent choices, not one. A second, separate axis is weighting — do you trust every model equally, prune the worst, or optimise the weights?

What you average →
Weights ↓
Quantiles (Vincent)Probabilities (LOP)
EqualMean / median ensembleUnweighted opinion pool
PrunedFiltered mean ensembleFiltered opinion pool
OptimisedInverse-WIS, QRACRPS-tuned opinion pool
The rest of this page focuses on the top axis — quantiles vs probabilities — because that is where the mathematics (and the surprises) live. Weighting is revisited at the end.

Quantile averaging the mean / median ensemble

Average the forecasts horizontally — line up the quantiles and average them

Take each model's value at a given quantile level p — say every model's 90th percentile — and average those numbers. Do it for every level and you have the ensemble's quantiles. Writing Qi for model i's quantile function:

Qens(p) = Σi wi Qi(p)   // average the inverse-CDFs, level by level

This is the Vincent average (Stella Vincent, 1912). Two flavours appear in the course:

Key property — it preserves shape and stays sharp. Averaging quantiles of models that share a shape returns that same shape, recentred. Average two Normals this way and you get a single Normal whose spread is the average of the inputs' spreads — never wider. It assumes the models are really estimating one common distribution.

Linear opinion pool the mixture

Average the forecasts vertically — average the probabilities at each value

Instead of averaging the quantiles, average the distribution functions themselves. At every value x, take each model's cumulative probability Fi(x) and average them. The word "linear" refers to this linear combination of the distributions:

Fpool(x) = Σi wi Fi(x)     fpool(x) = Σi wi fi(x)

The clearest way to picture it is as a sampling recipe — exactly what lopensemble does with the posterior samples:

To draw one sample from the pool: (1) pick a model at random, choosing model i with probability wi; (2) draw a value from that model. Repeat. The pool is a mixture: every model's samples survive, simply diluted by its weight.

Because each model keeps its own samples, a pool is at least as wide as its members and can be multi-modal. The law of total variance makes the cost precise:

Varpool = Σi wi σi² within-model (avg spread) + Σi wii − μ̄)² between-model (disagreement)

The first term is the models' own uncertainty; the second is an extra chunk of variance the pool adds simply because the models disagree. Quantile averaging has no such term — that single equation is the whole difference between the two methods.

See the difference

Two component forecasts, combined both ways at once

Two models, A and B, each a Normal. The opinion pool averages them vertically; the Vincent average averages them horizontally. Pull the two means apart and watch the pool split into two humps while the Vincent average stays a single sharp peak — even though both share the exact same mean.

model A (× weight) model B (× weight) linear opinion pool Vincent (quantile) average

Top: densities. Bottom: the same forecasts as CDFs — the pool (purple) is the curves averaged ↕ vertically; the Vincent average (green) is the curves averaged ↔ horizontally.

shared mean = SD Vincent = SD pool =

Where the pool's extra width comes from

The pool's variance is the models' average spread plus their disagreement. Drag the means together and the orange (between-model) part vanishes — only then do the two methods nearly coincide.

within-model var = between-model var = pool var =

Weighting — the other axis

Trust the models equally, prune the worst, or optimise

Weighting is orthogonal to what you average: you can weight either a quantile average or an opinion pool. The course covers three schemes:

Below: three component models pooled with weights you control. Watch how re-weighting slides the opinion pool between its humps, while the Vincent average just glides along — and how an "optimised" winner-take-all weighting collapses both onto a single model.

model 1 model 2 model 3 opinion pool Vincent average
SD Vincent = SD pool =

Side by side

Quantile averaging (Vincent)Linear opinion pool
You average…Quantiles (horizontally ↔)Probabilities (vertically ↕)
Result is a…Single re-centred distributionMixture of the components
Spread vs membersAverage of their spreads — stays sharpAverage spread + disagreement — wider
Can be multi-modal?No (shape preserved)Yes, if models disagree
Built fromQuantile forecastsSamples (a mixture draw)
Assumes models are…Noisy estimates of one truthRival candidates for the truth
In the courseMean / median ensemble, inverse-WIS, QRAlopensemble mixture
Watch out forOver-confidence if models genuinely disagreeUnder-confidence / fat tails; multi-modality may be unrealistic
Rule of thumb (Howerton et al., 2023): treat between-model differences as noise → average the quantiles to sharpen; treat them as structural uncertainty → pool the probabilities to keep every possibility alive. And remember the course's empirical punchline: well-built simple, equally-weighted ensembles are hard to beat.