行业动态Score B (48)

Ensemble forecasting with IBM Granite time-series models

3 小时前2 viewsSource: HuggingFace Blog

Ensemble forecasting with IBM Granite time-series models

Enterprise Article
Published October 22, 2026

Four open Granite models, one extensible forecasting interface, and less guesswork about which model to use.

Pre-trained time-series models can forecast without training on your dataset, but you still have to choose one. A model that handles smooth industrial signals well may struggle with noisy retail demand or a long seasonal horizon, and the best choice depends on the series and the task.

Granite Timeseries Ensemble reduces that choice to a sensible default. One recipe combines four complementary Granite architectures and returns median and quantile forecasts, with no retraining and no fitted ensemble weights. Start with the Probabilistic Ensemble (uniform probability pooling), compare the adaptive Inter Quartile Range (IQR) Ensemble, and extend the same interface with compatible forecasters. The ensemble recipe and its default Granite members are permissively licensed.

The idea will be familiar from weather forecasting. Ensemble forecasts explore a range of possible outcomes, and systems such as the North American Multi-Model Ensemble combine different models for seasonal prediction. Time-series forecasting benefits in a similar way: complementary models offer different views of what comes next, and an ensemble merges those views into one forecast.

Try Granite Timeseries Ensemble

Install Granite TSFM and load the recommended four-model recipe directly from Hugging Face:

pip install "granite-tsfm>=0.3.11"
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) 
print(result.quantile_outputs)   

The recipe stores the ensemble configuration rather than merged model weights. It downloads the four member checkpoints at runtime, so allow extra time for the first run. For the full configuration, member checkpoints, evaluation details, and limitations, see the model card.

result.prediction_outputs contains the point forecast, while result.quantile_outputs contains the quantile predictions which by default range from 0.1 to 0.9. Applications can use the point value as a central prediction and selected quantiles to express forecast ranges. For example, the 0.1 and 0.9 quantiles define a central forecast interval with nominal 80% coverage.

The ensemble members

The default recipe combines four pre-trained Granite models with different architectures:

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 (MLP mixer)

For background, see the PatchTST-FM-r1 paper, PatchTST-FM-r2 architecture overview, FlowState paper, and Tiny Time Mixers paper.

These architectures capture trends, seasonality, and local variation in different ways, so their errors need not coincide. A 50-year review of forecast combinations describes how combining forecasts can reduce the risk of picking the wrong single model, while stressing that member quality and diversity still matter.

Four Granite forecasting models feed a common quantile interface and one of two aggregation methods.

Two ways to combine the forecasts

Each member returns quantile forecasts. The two main recipes use different rules to turn those forecasts into one predictive distribution and its median.

Probabilistic Ensemble: the recommended default

The Probabilistic Ensemble (uniform probability pooling) gives each member equal influence, pools their quantile forecasts in probability space, and extracts the requested quantiles from the combined values. Because the weights are fixed, there is no fitting step and no weighting hyperparameters to tune for a new series.

The forecast combination puzzle offers useful motivation: in point forecasting, simple equal-weight combinations have often held up well against methods with estimated weights. This recipe applies the same equal-influence idea to probabilistic forecasts. It is the default loaded in the example above.

Read the full original article:

HuggingFace Blog