-
Major update to align with tune 2.0.0.
- Updated internal logic for compatibility with the new column naming conventions in resampling results (
.model_descvs.row). - Improved handling of
.resample_idand.row_idto ensure keys remain unique across resamples. - Adjusted recipe preparation to exclude
.resample_idconsistently. - Refined model tuning vs non-tuning workflows for clarity and stability.
- Enhanced error reporting and verbose output for improved user feedback.
- Updated internal logic for compatibility with the new column naming conventions in resampling results (
-
Dependency updates:
tune (>= 2.0.0)modeltime.resample (>= 0.3.0)
-
Version bump to 1.1.0 for CRAN submission.
- Development release with early updates for upcoming
tunechanges (@hfrick, #32).
- Updates for the next version of
tune(@hfrick, #32)
- #31 Fixes issue with metric argument not being specified:
Error in `tune::show_best()`:
! `...` must be empty.
✖ Problematic argument:
• ..1 = metric
ℹ Did you forget to name an argument?- Resubmit to CRAN (following timetk archival)
- Update tests for
workflowsmode = "regression"
- Updates for
hardhat 1.0.0
In modeltime 1.0.0, we introduced Nested Forecasting as a way to forecast many time series iteratively. In modeltime.ensemble 1.0.0, we introduce nested ensembles that can improve forecasting performance and be applied to many time series iteratively. We have added:
ensemble_nested_average(): Apply average ensembles iterativelyensemble_nested_weighted(): Apply weighted ensembles iteratively
- Calibration: Added "id" feature to enable accuracy and confidence intervals by time series ID.
- Improvements for parallel processing during refitting (available in
modeltime0.6.0). - Requires
modeltime0.6.0 andparsnip0.1.6 to align with xgboost upgrades.
Recursive Ensembles
recursive()- Therecursive()function is extended to recursive ensembles for both single time series and multiple time series models (panel data).- "Forecasting with Recursive Ensembles" - A new forecasting vignette for using
recurive()with ensembles.
Fixes
modeltime_forecast()now returnsNAwhen missing values are present in the sub-model predictions.
Panel Data
- Improvements made to
ensemble_average(),ensemble_weighted()andensemble_model_spec()to support Panel Data (i.e. when data sets with multiple time series groups that have possibly overlapping time stamps).
Changes
modeltime.ensemblenow depends onmodeltime.resamplefor themodeltime_fit_resamples()functionality.modeltime_fit_resamples()moved to a new packagemodeltime.resample.ensemble_weighted(): Now removes models that have no weight (e.g. loading = 0). This speeds up refitting.
Stacked Ensembles (Breaking Changes)
The process for creating stacked ensembles is split into 2 steps:
- Step 1: Use
modeltime_fit_resamples()to generate resampled predictions - Step 2: Use
ensemble_model_spec()to apply stacking using amodel_spec
Note - modeltime_refit(stacked_ensemble) is still one step, which is the best way to handle refitting since multiple stacked models may have different submodel compositions. An additional argument, resamples can be provided to train stacked ensembles made with ensemble_model_spec().
- Initial release of
modeltime.ensemble.