Releases: ourownstory/neural_prophet
Releases · ourownstory/neural_prophet
1.0.0rc3
What's Changed
Major
- [major] Speed up split_df by vectorizing for loops by @leoniewgnr in #1356
Minor
- update selective forecasting tests by @ourownstory in #1312
- [devops] Remove macos and windows from Github actions by @noxan in #1325
- [devops] Add ruff github action by @noxan in #1324
- [refactor] Ruff fixes by @noxan in #1327
- Remove type conversion for _stride_lagged_features and _stride_future… by @hxyue1 in #1331
- [minor] fixed prediction_frequency when quantiles are set by @leoniewgnr in #1347
- Update poetry dependencies by @noxan in #1390
- [minor] fix sum of components by @leoniewgnr in #1349
Bug fixes
- [bug] Fix pyright and flake8 warnings by @leoniewgnr in #1392
- [bug] Trend plotting when using numpy 1.24 by @leoniewgnr in #1395
- (Fix) pytorch_lightning<2.0.0 callbacks named ProgressBarBase instead of ProgressBar by @JSarsfield in #1344
- Fixes failing tests by @leoniewgnr in #1381
Docs
- [docs] fix showing of plots in tutorials and feature guides by @leoniewgnr in #1322
- [docs] prettify application examples by @leoniewgnr in #1328
- [docs] Fix prophet tutorial by @leoniewgnr in #1332
- [docs] update prophet tutorials by @leoniewgnr in #1334
- [docs] Clear plotting tutorial by @leoniewgnr in #1343
- fix tutorials link in readme by @ShreyaKhurana in #1353
- [docs] ar layers fixed in uncertainty tutorial by @leoniewgnr in #1364
- [docs] Small fixes in documentation by @leoniewgnr in #1380
- [docs] New feature guide with industry application and tool by @leoniewgnr in #1369
New Contributors
- @ShreyaKhurana made their first contribution in #1353
Full Changelog: 1.0.0rc2...1.0.0rc3
Beta 0.6.2
What's Changed
- fixed assert error by @leoniewgnr in #1354
- fixed component computation by @leoniewgnr in #1350
1.0.0rc2
What's Changed
Full Changelog: 1.0.0rc1...1.0.0rc2
1.0.0rc1
What's Changed
Features
- [major] speed up nested additive model by @LeonieFreisinger in #1311
- [major] Drop Python 3.7 support and complete poetry migration by @noxan in #1271
- [minor] Add static plotly backend by @hxyue1 in #1286
- [minor] Update dependencies to latest versions by @noxan in #1305
- [minor] Unify version number handling, remove setup.py and migrate content by @noxan in #1316
Docs
- [docs] Revamp of feature guides by @leoniewgnr in #1301
- [website] Fix the deployment of the website with poetry by @noxan in #1307
- [docs] Uncertainty quantification tutorial by @christymctse in #1225
- [docs] Update documentation website by @leoniewgnr in #1309
- [docs] added reproducibility to tutorial 10 by @leoniewgnr in #1310
Refactor
- [refactor] Uncertainty streamline naming by @leoniewgnr in #1262
New Contributors
Full Changelog: 0.6.0...1.0.0rc1
Beta 0.6.0
What's Changed
- [major] Nested Additive Model by @karl-richter in #1216
- [major] Allow user to set prediction frequency as a dict: {freq: forecast origin} by @judussoari in #1187
- [major] lagged regressor with interaction modeling (shared NN) by @karl-richter in #903
- [feature] Support for asymmetrical interval in conformal quantile regression by @leoniewgnr in #1215
- [minor] Allow lagged regressors with only unique values for global modeling by @judussoari in #1267
- [minor] Dependency management with poetry by @noxan in #1202
- [minor] Allow lagged regressors with only unique values for global modeling by @judussoari in #1256
- [minor] Repeat static trend component n_forecasts times instead of only once by @judussoari in #1254
- [minor] add docstring examples by @LeonieFreisinger in #1295
- [minor] Address warnings by @leoniewgnr in #1276
- [minor] lighten forecaster step 2 - encapsulate _get_maybe_extend_periods and _maybe_extend_df by @LeonieFreisinger in #1278
- [minor] Update dependencies to latest versions by @noxan in #1280
Fixes
- [fix] Calculate major frequency percentage properly by @noxan in #1264
- [fix] Matplotlib and plotly plot showing aligned by @leoniewgnr in #1266
- [fix] Remove regressor config if all regressors are removed due to unique values by @judussoari in #1272
- [fix] Unregister plotly resampler directly after usage by @LeonieFreisinger in #1277
- [fix] Raise Exception again to avoid UnboundLocalError by @noxan in #1282
- [fix] Remove SmoothL1Loss from Tutorial by @judussoari in #1298
- [fix] Raise ValueError when df contains not enough rows by @judussoari in #1300
Tests
- [tests] Remove unneeded logs by @karl-richter in #1207
Documentation
- [docs] outdated labels in contributing.md by @leoniewgnr in #1242
- [docs] Create new tutorials content by @noxan in #1183
- [docs] add note on flexible multiplicativity from prophet by @noxan in #1268
- [docs] Add next steps to tutorials by @noxan in #1274
- [docs] Improve conformal prediction tutorial by adding marginal before coverage by @noxan in #1284
Website
Refactors
- [refactor] Removed plotting in test_uncertainty.py. by @Kevin-Chen0 in #1246
- [refactor] Changed int() to round() for q_hat_idx in uncertainty.py. by @Kevin-Chen0 in #1248
- [refactor] Lighten forecaster.py by @LeonieFreisinger in #1255
- [refactor] Encapsulate _make_future_dataframe and _check_dataframe by @LeonieFreisinger in #1279
- [refactor] Encapsulate _validate_column_name by @LeonieFreisinger in #1289
- [refactor] Encapsulate _normalize by @LeonieFreisinger in #1287
- [refactor] Encapsulate _handle_missing_data and _handle_missing_data_single_id by @LeonieFreisinger in #1288
- [refactor] Encapsulate _prepare_dataframe_to_predict by @LeonieFreisinger in #1290
- [refactor] Encapsulate _convert_raw_predictions_to_raw_df by @LeonieFreisinger in #1291
- [refactor] Encapsulate _reshape_raw_predictions_to_forecst_df by @LeonieFreisinger in #1293
Full Changelog: 0.5.3...0.6.0
Beta 0.5.4
What's Changed
Documentation
- [docs] Create new tutorials content by @noxan in #1183
- [docs] outdated labels in contributing.md by @leoniewgnr in #1242
Refactors
- [refactor] Removed plotting in test_uncertainty.py. by @Kevin-Chen0 in #1246
- [refactor] Changed int() to round() for q_hat_idx in uncertainty.py. by @Kevin-Chen0 in #1248
Tests
- [tests] Remove unneeded logs by @karl-richter in #1207
Full Changelog: 0.5.3...0.5.4
Beta 0.5.3
What's Changed
Bugfixes
Minor features
- [minor] Adjust seasonality reg to modularized code by @judussoari in #1203
Documentation
- [docs] Style fixes in tutorial notebooks when dark mode is active by @leoniewgnr in #1199
- [typing] Add typing for user facing functions by @noxan in #1193
Under the hood changes
- [refactor] Move evaluate method outside of Conformal class and rename it as conformal_evaluate by @Kevin-Chen0 in #1210
- [refactor] Renamed conformal.py to uncertainty.py and conformal_evalute() to uncertainty_evaluate(). by @Kevin-Chen0 in #1213
- [refactor] Modified n_forecasts in _infer_evaluate_params_from_dataset() method in conformal.py by @Kevin-Chen0 in #1212
- [refactor] Add quantile regression (QR) as an uncertainty evalution metric in uncertainty.py by @Kevin-Chen0 in #1214
Full Changelog: 0.5.2...0.5.3
Beta 0.5.2
What's changed
[breaking] Breaking changes
- Change default plotting backend to plotly-resample by @LeonieFreisinger in #1149
[major] Major features
- Trend modularization by @karl-richter in #1078
- Seasonality modularization by @karl-richter in #1141
- Future regressors modularization by @alfonsogarciadecorral in #1144
[minor] Minor changes
- Allow unique values for future regressor of one time series in global modeling by @judussoari in #1146
- Added ability to pass custom callbacks while adhering to callback con… by @JSarsfield in #1122
- [minor] Add get function for parameters by @noxan in #1175
- Improve usability for conditional seasonality by @judussoari in #1116
- [Feature] Enable own NN configuration for lagged regressors by @judussoari in #1154
- [Minor] Convert timezones to UTC by default by @christymctse in #1085
- Typing improvements by @noxan in #1121
- Typing conformal prediction by @noxan in #1124
- [refactor] create dict for events or regressors by @noxan in #1123
- [refactor] Extract holiday getter helper to single function by @noxan in #1072
- black edited utils.py by @ourownstory in #1160
- Uncertainty: Conformal Prediction V1.2 - move conformal evaluation performance metrics inside of Conformal class in conformal.py by @Kevin-Chen0 in #1155
- [refactor] incorporate typing for time_net.py by @Kevin-Chen0 in #1105
- [refactor] Update python-holidays integration by @arkid15r in #1176
[fix] Bugfixes
- Fix ipython version for plotly-resampler by @LeonieFreisinger in #1119
- Deactivate plotly resampler for static image export by @karl-richter in #1114
- Lightning version by @karl-richter in #1145
- Avoidance of duplicate code in regularisation by @leoniewgnr in #1110
[docs] Documentation
- Created narratives and simplified code for quantile regression tutorial material by @christymctse in #1091
- Update CONTRIBUTING.md by @noxan in #1169
- [fix] default value of n_changepoints given correctly in the docs by @leoniewgnr in #1128
- [docs] Readme library purpose by @leoniewgnr in #1140
[tests] Tests
- [tests] Added info logs to regularisation tests by @leoniewgnr in #1148
[devops] Github workflows
- Fixed pyright error raised from unbound list by @judussoari in #1156
New Contributors
- @JSarsfield made their first contribution in #1122
- @arkid15r made their first contribution in #1176
Full Changelog: 0.5.1...0.5.2
Beta 0.5.1
New / major improvements
- Introduce conditional seasonality by @judussoari in #1067
- add plotly resampler by @LeonieFreisinger in #1083
- Uncertainty: Conformal Prediction V1.1 - extend to multiple forecast steps by @Kevin-Chen0 in #1073
Breaking changes
- Progress bar in minimal mode is default instead of deactivated by @karl-richter in #1059
List of all changes
- Uncertainty: Conformal Prediction V1.1 - add Conformal class to conformal_prediction.py and rename file to conformal.py by @Kevin-Chen0 in #1074
- [Fix] Fixed error in plot loss by @karl-richter in #1064
- Restict numpy version to <1.24.0 by @karl-richter in #1080
- remove default settings (None for calibration df and 0.1 for alpha) by @christymctse in #1079
- [Bug-fix] Enable test_plot_conformal_prediction with auto-regression on plot_latest_forecast by @judussoari in #1096
- [refactor] incorporate typing for Conformal class and conformal_predict method by @Kevin-Chen0 in #1104
- [Bug-fix] Enable holidays when using global/glocal modeling by @judussoari in #1100
- [Bug-fix] Refactor warning about global normalization to forecaster.py by @judussoari in #1109
New Contributor
- @christymctse made their first contribution in #1079
Full Changelog: 0.5.0...0.5.1
Beta 0.5.0
New / major improvements
- Lightning Migration by @karl-richter in #837
- GPU support by @karl-richter in #961
- Support plotting of only specific panels in plot_parameters and plot_components by @LeonieFreisinger in #884
- Uncertainty: Conformal Prediction V1 with .conformal_predict() by @Kevin-Chen0 in #802 and #1044
- Support for holidays of multiple countries by @leoniewgnr in #1001
- Deep model parameter interpretation by @karl-richter in #883
- Add type annotations for main NeuralProphet class by @noxan in #981
Breaking changes
- Remove support for df dict as an input by @judussoari in #929
- Change plotting_backend deprecation warning for implicit and explicit matplotlib use by @LeonieFreisinger in #1006
- Refactored fit() interface by @karl-richter in #1039
- Remove residuals in forecast dataframe returned by m.predict() by @judussoari in #927
List of all changes
- [lightning] Remove rich progress bar by @karl-richter in #952
- Improvement/type annotations by @noxan in #954
- Commented out test_progress_display in test_integration.py. by @Kevin-Chen0 in #956
- Added plot param of the NeuralProphet fit() and uncomment test_progress_display in test_integration.py. by @Kevin-Chen0 in #958
- [lightning] refactored Trainer args by @karl-richter in #959
- refactored test failure by @karl-richter in #960
- Add alias function plot_last_forecast() for plot_latest_forecast() and give deprecation warning by @judussoari in #919
- Mask seasonality on Sat/Sun when data frequency is Business days by @judussoari in #808
- [bug] Forecast output dataframe contains all float dtypes instead of having some objects by @Kevin-Chen0 in #978
- Fix labels of yhatx and origin-x in plots by @judussoari in #942
- Improve github action speed for docs test by @noxan in #936
- Resolved discontinuous trend when changepoints are not sorted chronologically by @leoniewgnr in #968
- Address small tech debt to use a conditional instead of try/except for Python 3.7 support by @kapoor1992 in #934
- [dev-ops] Collapsible metrics reports by @noxan in #926
- Cleanup document files by @noxan in #975
- Rename plot_forecast.py and plot_model_parameters.py to xxx_matplotli… by @SaumyaBhushan in #971
- [naming] Renamed tutorial notebooks by @karl-richter in #921
- Labels in CONTRIBUTING.md by @karl-richter in #946
- [enhancement] add pytests for matplotlib by @LeonieFreisinger in #914
- [devops] Improve codecov threshold by @noxan in #980
- [devops] Upgrade GitHub action versions by @noxan in #979
- change deprecation message to switch plotting backend to plotly by @LeonieFreisinger in #984
- [feature] Plot components of averaged df (and quants) if multiple IDs, but no df_name specified in plot_components() by @judussoari in #888
- [devops] Code coverage threshold fix by @noxan in #990
- Time in model training benchmark by @karl-richter in #995
- Unified the naming of variables - num and nb by @SaumyaBhushan in #994
- [tests] Add tests for configure by @noxan in #983
- [cleanup] Remove unused from_kwargs config function by @noxan in #988
- [devops] Add shell script to setup basic development environment by @noxan in #986
- [lightning] Speed-up by @karl-richter in #973
- Update progress bar only every epoch by @karl-richter in #1003
- [typing] Resolve type annotation issues in configure file by @noxan in #987
- [typing] Add ConfigEvents type annotations by @noxan in #989
- [refactor] Extract plot utils into dedicated file by @LeonieFreisinger in #1000
- [website] Fix typo in preview of website description by @noxan in #1012
- Move tensors to correct device by @karl-richter in #1010
- [docs] New tutorials section for docs by @noxan in #976
- Meta name bool by @alfonsogarciadecorral in #997
- [feature] Add a main script to print neuralprophet version by @noxan in #974
- [dev-ops] Type annotation validation GitHub action by @noxan in #902
- Add pull request template for Github by @karl-richter in #915
- [typing] fix typings and constructor super call for pinnball loss by @noxan in #1019
- Follow-up tensors on wrong device by @karl-richter in #1023
- Fix string Interpolation by @poweroftrue in #1026
- Fix label links in contributing guidelines by @noxan in #1024
- [bugfix] enable events while predicting into known future by @judussoari in #1029
- [fix] Replace all deprecated plot_last_forecast with plot_latest_forecast by @noxan in #1022
- [refactor] Rename config_seasonality and add typings by @noxan in #1021
- [refactor] Remove duplicate season reg lambda by @noxan in #1020
- [fix] Renamed remaining self.config_season variables to self.config_seasonality in time_net.py by @Kevin-Chen0 in #1035
- Removed commented tests in test_uncertainty.py. by @Kevin-Chen0 in #1032
- [refactor] Rename uncertainty_estimation.ipynb to uncertainty_quantile_regression.ipynb by @Kevin-Chen0 in #1034
- Normalize training speed metric by @karl-richter in #1041
- Improved system performance tracker by @karl-richter in #1042
- Update metrics.yml by @karl-richter in #1043
- [devops] Cleanup and limit CodeQL Github action to main branch by @noxan in #1031
- [docs] Tuturials use prepared dataset by @noxan in #1037
- Refactored dataloader by @karl-richter in #1040
- Normalize training time metric by @karl-richter in #1045
- Removed unnecessary if statement in predict_season_from_dates by @judussoari in #1049
New Contributors
- @leoniewgnr made their first contribution in #968
- @SaumyaBhushan made their first contribution in #971
- @poweroftrue made their first contribution in #1026
Full Changelog: 0.4.2...0.5.0