Forecasting¶
Performance snapshots for this task, comparing deep-river models against strong baselines on standard river datasets.
AirlinePassengers (target only)¶
Summary¶
| Model | MAE | RMSE | SMAPE | Memory in Mb | Time in s |
|---|---|---|---|---|---|
| Deep River GRU | 294.115 | 315.123 | 197.554 | 0.0329781 | 18.9884 |
| Deep River LSTM | 295.086 | 316.16 | 198.842 | 0.03298 | 13.5827 |
| Deep River Linear | 57.66 | 72.2396 | 33.7468 | 0.0158186 | 3.74214 |
| Deep River Liquid | 293.711 | 314.679 | 197.037 | 0.0328302 | 32.3297 |
| Deep River MLP | 67.8867 | 82.534 | 40.9045 | 0.0372353 | 6.61261 |
| Deep River N-BEATS | 48.5183 | 60.8551 | 21.0501 | 0.0746565 | 11.7495 |
| Deep River RNN | 294.655 | 315.604 | 198.381 | 0.0330992 | 11.1271 |
| Holt-Winters | 39.4407 | 50.5302 | 13.2046 | 0.0044384 | 0.566215 |
| SNARIMAX | 32.7727 | 41.7392 | 11.378 | 0.00846672 | 1.02697 |
Charts¶
TrumpApproval (target only)¶
Summary¶
| Model | MAE | RMSE | SMAPE | Memory in Mb | Time in s |
|---|---|---|---|---|---|
| Deep River GRU | 21.7723 | 23.6523 | 81.9672 | 0.0334435 | 106.264 |
| Deep River LSTM | 22.4099 | 24.1704 | 84.935 | 0.0334454 | 71.471 |
| Deep River Linear | 1.33074 | 4.49723 | 4.06335 | 0.0162611 | 18.1434 |
| Deep River Liquid | 21.9987 | 23.7984 | 82.7777 | 0.0332499 | 201.501 |
| Deep River MLP | 1.82508 | 5.54169 | 5.73855 | 0.0376472 | 33.3228 |
| Deep River N-BEATS | 1.06645 | 2.67359 | 2.80861 | 0.0751066 | 64.0395 |
| Deep River RNN | 22.1253 | 24.0073 | 83.9181 | 0.0335493 | 59.1101 |
| Holt-Winters | 0.393099 | 0.517923 | 0.970281 | 0.00443077 | 0.721287 |
| SNARIMAX | 0.310209 | 0.414372 | 0.765805 | 0.00873375 | 2.70793 |
Charts¶
Datasets¶
AirlinePassengers (target only)
Monthly number of international airline passengers.
The stream contains 144 items and only one single feature, which is the month. The goal is to predict the number of passengers each month by capturing the trend and the seasonality of the data.
Name AirlinePassengers
Task Regression
Samples 144
Features 1
Sparse False
Path /Users/cedrickulbach/Documents/Projects/deep-river/.venv/lib/python3.12/site-packages/river/datasets/airline-passengers.csv
Forecasting benchmark variant: only the historical target values are used.
TrumpApproval (target only)
Donald Trump approval ratings.
This dataset was obtained by reshaping the data used by FiveThirtyEight for analyzing Donald Trump's approval ratings. It contains 5 features, which are approval ratings collected by 5 polling agencies. The target is the approval rating from FiveThirtyEight's model. The goal of this task is to see if we can reproduce FiveThirtyEight's model.
Name TrumpApproval
Task Regression
Samples 1,001
Features 6
Sparse False
Path /Users/cedrickulbach/Documents/Projects/deep-river/.venv/lib/python3.12/site-packages/river/datasets/trump_approval.csv.gz
Forecasting benchmark variant: only the historical target values are used.
Models¶
Holt-Winters
HoltWinters ( alpha=0.3 beta=0.1 gamma=0.1 seasonality=12 multiplicative=False )
SNARIMAX
SNARIMAX (
p=1
d=1
q=0
m=12
sp=1
sd=0
sq=0
regressor=Pipeline (
steps=OrderedDict({'StandardScaler': StandardScaler (
with_std=True
), 'LinearRegression': LinearRegression (
optimizer=SGD (
lr=Constant (
learning_rate=0.01
)
)
loss=Squared ()
l2=0.
l1=0.
intercept_init=0.
intercept_lr=Constant (
learning_rate=0.01
)
clip_gradient=1e+12
initializer=Zeros ()
)})
)
)
Deep River Linear
LinearForecaster ( n_features=0 window_size=12 loss_fn="mse" optimizer_fn="sgd" lr=0.005 is_feature_incremental=False device="cpu" seed=42 gradient_clip_value=1. )
Deep River MLP
MLPForecaster ( n_features=0 window_size=12 n_width=16 n_layers=2 loss_fn="mse" optimizer_fn="adam" lr=0.001 is_feature_incremental=False device="cpu" seed=42 gradient_clip_value=1. )
Deep River RNN
RNNForecaster ( n_features=0 window_size=12 hidden_size=32 num_layers=1 nonlinearity="tanh" dropout=0. loss_fn="mse" optimizer_fn="adam" lr=0.001 is_feature_incremental=False device="cpu" seed=42 gradient_clip_value=1. )
Deep River GRU
GRUForecaster ( n_features=0 window_size=12 hidden_size=32 num_layers=1 dropout=0. loss_fn="mse" optimizer_fn="adam" lr=0.001 is_feature_incremental=False device="cpu" seed=42 gradient_clip_value=1. )
Deep River LSTM
LSTMForecaster ( n_features=0 window_size=12 hidden_size=32 num_layers=1 dropout=0. loss_fn="mse" optimizer_fn="adam" lr=0.001 is_feature_incremental=False device="cpu" seed=42 gradient_clip_value=1. )
Deep River Liquid
LiquidForecaster ( n_features=0 window_size=12 hidden_size=32 num_layers=1 dropout=0. time_delta=1. loss_fn="mse" optimizer_fn="adam" lr=0.001 is_feature_incremental=False device="cpu" seed=42 gradient_clip_value=1. )
Deep River N-BEATS
NBEATSForecaster ( n_features=0 window_size=12 n_width=32 n_layers=2 n_blocks=2 loss_fn="mse" optimizer_fn="adam" lr=0.001 is_feature_incremental=False device="cpu" seed=42 gradient_clip_value=1. )
Environment¶
Python implementation: CPython Python version : 3.12.13 IPython version : 9.6.0 river : 0.25.0 numpy : 2.5.0 scikit-learn: 1.5.2 pandas : 2.2.3 scipy : 1.16.2 Compiler : Clang 22.1.3 OS : Linux Release : 6.17.0-1018-azure Machine : x86_64 Processor : x86_64 CPU cores : 4 Architecture: 64bit