For the augmentation workflow,
SynAugment fits each training series
independently and creates candidate counterparts. We retain one
counterpart from each of the six M4 domain categories, so synthetic
series make up only 20% of the combined panel instead of half of it.
This category-balanced ratio is fixed before evaluation, and the
official holdout is never passed to the augmenter.
For synthetic pretraining, we deliberately avoid the generic balanced
pool. The custom pool below contains monthly SARIMA, ETS, and seasonal
processes with 12-step seasonality and training lengths comparable to
the selected M4 histories. These synthetic series are generated
independently of both the M4 training observations and the holdout.
predict(df=train_df) then applies those
learned weights to the previously unseen M4 panel. Calling fit again
with use_init_models=False retains the pretrained weights and
fine-tunes them on the observed training split.

SynAugment on the official holdout.
When does synthetic data help?
reports the multi-seed augmentation and pretraining results, including
the history lengths where the pretraining edge reverses.
