Ensemble Forecasting with IBM Granite Time-Series Models
Ensemble Forecasting with IBM Granite Time Series Models Pre trained time series models can forecast without being trained on a specific dataset, but selecting the right model r...
By AI Engineering Team
Ensemble Forecasting with IBM Granite Time-Series Models
Pre-trained time-series models can forecast without being trained on a specific dataset, but selecting the right model remains difficult. A model that performs well on smooth industrial signals may be less effective for noisy retail demand or long seasonal horizons.
Granite Timeseries Ensemble provides a default approach by combining four complementary IBM Granite architectures. It produces median and quantile forecasts without retraining or fitting ensemble weights. The default Probabilistic Ensemble uses uniform probability pooling, while the adaptive Inter Quartile Range (IQR) Ensemble offers an alternative weighting strategy. The same interface can also be extended with compatible forecasters. The ensemble recipe and its default Granite members are permissively licensed.
Ensemble forecasting follows an idea also used in weather prediction. Systems such as the North American Multi-Model Ensemble combine different models for seasonal forecasts. In time-series forecasting, models can capture different aspects of trends, seasonality, and local variation. Combining their outputs can reduce dependence on any one architecture.
Try Granite Timeseries Ensemble
Install Granite TSFM with:
pip install "granite-tsfm>=0.3.11"
The following example loads the recommended four-model recipe from Hugging Face and forecasts the OT target in the ETTh1 dataset:
import pandas as pd
from tsfm_public.models.ensemble.modeling_ensemble import QuantileEnsembleForecaster
df = pd.read_csv(
"https://raw.githubusercontent.com/zhouhaoyi/ETDataset/main/ETT-small/ETTh1.csv",
parse_dates=["date"],
)
ensemble = QuantileEnsembleForecaster.from_pretrained(
"ibm-granite/granite-timeseries-ensemble-r1",
)
result = ensemble(
df.tail(1024),
timestamp_column="date",
target_columns=["OT"],
context_length=1024,
prediction_length=24,
)
print(result.prediction_outputs) # point forecast
print(result.quantile_outputs) # quantiles
The recipe stores the ensemble configuration rather than merged model weights. The four member checkpoints are downloaded at runtime, so the first execution may take longer.
result.prediction_outputs contains the point forecast. result.quantile_outputs contains quantile predictions that, by default, range from 0.1 to 0.9. An application can use the point forecast as a central estimate and selected quantiles to represent uncertainty. For example, the 0.1 and 0.9 quantiles define an interval with nominal 80% coverage.
The Ensemble Members
The default recipe combines four pre-trained Granite models:
| Model | Architecture |
|---|---|
| Granite PatchTST-FM-r1 | Patched Transformer |
| Granite PatchTST-FM-r2 | Patched Conformer |
| Granite FlowState-r1.1 | State-space model |
| Granite TTM-r3 | Tiny Time Mixers, an MLP mixer |
The models represent trends, seasonality, and local variation differently, so their errors do not necessarily coincide. Research covering more than 50 years of forecast combinations indicates that combining forecasts can reduce the risk of selecting an unsuitable individual model, although member quality and diversity remain important.
Two Ways to Combine the Forecasts
Each member returns quantile forecasts. The two recipes use different methods to combine those forecasts into one predictive distribution and its median.
Probabilistic Ensemble: The Recommended Default
The Probabilistic Ensemble, also called uniform probability pooling, gives every member equal influence. It pools their quantile forecasts in probability space and extracts the requested quantiles from the combined values.
Because the weights are fixed, the method requires no fitting step and has no weighting hyperparameters to tune for a new series. This follows the broader observation that simple equal-weight combinations can perform well in point forecasting compared with methods that estimate weights.
IQR Ensemble: An Adaptive Alternative
The IQR Ensemble assigns weights according to forecast spread, giving narrower intervals greater influence. It estimates each member's interquartile range from the closest available quantiles around the 25th and 75th percentiles.
Weights can vary by sample, target, and forecast horizon. Like the Probabilistic Ensemble, the method does not fit weights from historical forecast errors. Isotonic regression prevents the combined quantiles from crossing.
A narrower interval is not necessarily more accurate or better calibrated, so IQR weighting can favor an overconfident member. The recipe exposes a temperature setting, where higher values move the weights toward uniform, along with an optional cap on any individual member's weight.
The evaluated IQR recipe can be loaded by changing the subfolder:
ensemble = QuantileEnsembleForecaster.from_pretrained(
"ibm-granite/granite-timeseries-ensemble-r1",
subfolder="recipes/granite-iqr",
)
Choosing a Method
| Goal | Starting point | Reason |
|---|---|---|
| A simple default | Probabilistic Ensemble | Equal influence and no fitted weights |
| Adaptive weighting based on forecast spread | IQR Ensemble | Influence varies with each member's predicted spread |
The Probabilistic Ensemble is the recommended starting point. If forecast spread appears useful for a particular application, compare the IQR Ensemble with it on representative data. Accuracy and calibration depend on the series and forecast horizon.
Evaluation Against Individual Members
Both recipes were evaluated on 97 GIFT-Eval dataset configurations. The models forecast without fine-tuning, and test targets were not used to select or fit the aggregation method. The comparison below uses published leaderboard scores and ranks captured on October 20, 2026.
GIFT-Eval reports MASE for point forecasts and CRPS/MWQL, the benchmark's mean_weighted_sum_quantile_loss metric, for probabilistic forecasts. Scores are normalized to Seasonal Naive and geometrically averaged across configurations. Lower values are better.
| Forecast | MASE | MASE Rank | CRPS / MWQL | CRPS Rank |
|---|---|---|---|---|
| Granite Ensemble R1, Probabilistic | 0.683 | 47.175 | 0.471 | 50.948 |
| Granite Ensemble R1, IQR | 0.684 | 48.773 | 0.471 | 47.619 |
| Granite PatchTST-FM-r2 | 0.685 | 51.371 | 0.467 | 48.918 |
| Granite FlowState-r1.1 | 0.701 | 66.474 | 0.490 | 69.485 |
| Granite PatchTST-FM-r1 | 0.717 | 74.794 | 0.488 | 68.134 |
| Granite TTM-r3 | 0.724 | 83.062 | 0.520 | 88.959 |
The rank columns are average per-configuration ranks against the full GIFT-Eval reference leaderboard, not only the six forecasts shown. These values can change as new entries are added.
Both ensembles outperform all four individual members on aggregate MASE and average MASE Rank. The Probabilistic Ensemble has the lowest MASE among the six forecasts, at 0.683 compared with 0.685 for PatchTST-FM-r2. Lower average MASE Rank indicates stronger relative point-forecast performance across GIFT-Eval's varied dataset configurations.
The margin over the best individual member is small. The primary benefit is therefore robustness: the ensemble provides comparable or better aggregate accuracy without requiring a user to know in advance which architecture will best suit a dataset.
PatchTST-FM-r2 has the lowest aggregate CRPS/MWQL score. The IQR Ensemble has the lowest average CRPS Rank among the six forecasts, while the Probabilistic Ensemble ranks behind PatchTST-FM-r2 on that measure. Aggregate error and average rank therefore favor different choices.
In the October 20, 2026 comparison, the ensemble approach ranks third among eligible systems on both MASE Rank and CRPS Rank. Some systems excluded from this comparison, including fine-tuned systems and systems with non-permissive licenses or member dependencies, score better than either recipe. The ensemble's role is not to top the leaderboard, but to provide a single default with consistent results across many series.
Extending the Recipe to Other Forecasters
The default recipe uses four Granite models, but the shared Forecaster interface also supports compatible external models. Members and aggregation methods can be changed while preserving the downstream forecast format. Member checkpoints do not need to be merged or retrained.
The repository also includes expanded recipes with IBM Research checkpoints. These have separate license terms, including non-commercial and research-use restrictions. Each member's model card should be reviewed before use.
For a new combination, verify:
- Forecast compatibility
- Accuracy
- Calibration
- Latency
- Licensing
Evaluating the Recipe for an Application
GIFT-Eval is a broad benchmark, but aggregate gains do not mean that every series benefits. Average ranks also do not establish calibration. Application-specific backtesting should use representative data and historical forecast windows.
- Match the use case: Use historical windows that reflect the data available at each forecast origin, the required horizon, and the series expected in production.
- Compare equivalent setups: Run the Probabilistic Ensemble, IQR Ensemble, and a strong individual member, such as PatchTST-FM-r2, on the same windows.
- Assess more than point error: Measure quantile loss alongside MASE and compare empirical coverage of the 0.1 to 0.9 interval with its nominal 80% coverage.
- Measure resource costs: Record runtime and memory use to determine whether combining four models is suitable for the workload.
The current recipe has several limitations. It forecasts multivariate channels independently and does not use cross-channel information. It also loads four member checkpoints, increasing inference time and memory use compared with a single model.
Member context limits, forecast horizons, preprocessing, and missing-value handling can differ. Neither aggregation method guarantees calibration or robustness under distribution shift, so forecasts should continue to be monitored after deployment.
Resources
- Granite Timeseries Ensemble on Hugging Face
- Getting-started notebook
- Granite TSFM repository
- GIFT-Eval benchmark
References
- ECMWF: Ensemble weather forecasting
- NOAA: North American Multi-Model Ensemble
- FlowState: Sampling-Rate-Equivariant Time-Series Forecasting
- Tiny Time Mixers: Fast Pre-trained Models for Enhanced Zero/Few-Shot Forecasting of Multivariate Time Series
- Revisiting the Generic Transformer: Deconstructing a Strong Baseline for Time Series Foundation Models
- Forecast combinations: An over 50-year review
- Smith and Wallis (2009), A Simple Explanation of the Forecast Combination Puzzle