Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PyAF 5.0 Release Process #228

Closed
antoinecarme opened this issue Mar 9, 2023 · 8 comments
Closed

PyAF 5.0 Release Process #228

antoinecarme opened this issue Mar 9, 2023 · 8 comments

Comments

@antoinecarme
Copy link
Owner

antoinecarme commented Mar 9, 2023

Time to put in a place a final path/countdown through the next PyAF release, expected 2023-07-14

A branch 5.0-Fixes is already in place and will contain the final touches. The CI process is OK.

https://github.com/antoinecarme/pyaf/tree/5.0-Fixes

Only user comments and fixes are welcome and accepted.

No additional/new feature. Early adopters feedback welcome until July.

Versioning Notes :

  1. This version is a major version as in https://semver.org/, like other annual versions (usually released on 20xx-07-14 ;).
  2. It introduces a radical change in the model selection processes (Voting, Model Complexity, MAPE -> MASE by default).
  3. It may not be backwards compatible in some places (reverting to the old behavior may need tweaking options).
@antoinecarme
Copy link
Owner Author

antoinecarme commented Mar 9, 2023

Original planning :

  1. Forecasting Models based on Deep Learning Attention Mechanisms => Delayed to PyAF > 7.0
  2. Recurrent tasks : More hardware architectures, forecasting performance measures, benchmarks, bug fixes, docs and optimization/profiling. OK.
  3. User feedback and issues Ok.

@antoinecarme
Copy link
Owner Author

antoinecarme commented Mar 9, 2023

Implemented/Processed So far :

  1. Python 3.11 support #227
  2. RISC-V Hardware Platform Validation #208
  3. Outlier-resistant forecasting Performance Measures #209
  4. Use PyTorch as the reference deep learning framework/architecture for future projects #211
  5. Investigate Model Esthetics for PyAF #212
  6. Investigate Large Horizon Models #213
  7. Bad plot for shaded area around prediction intervals in hourly data #216
  8. Automate Prototyping Activities - R-based Models #217
  9. Failure to build a multiplicative ozone model with Lag1 trend #220
  10. Add Differentiable Variant of SMAPE Performance Measure #221
  11. Revisit Model Complexity Definition #223
  12. Run some Sanity Checks for PyAF 5.0 #224
  13. Forecast Quantiles Plots can be improved  #225
  14. Re-run the Benchmarking process for PyAF 5.0 #222
  15. Use MASE by default for PyAF Model Selection #229 ?
  16. PyAF 5.0 Final Touch 1 : discard some non-significant components #230
  17. PyAF 5.0 Final Touch 2: Disable alpha in ridge regressions #231
  18. Pyaf 5.0 Final Touch 3 : report plot filenames in the logs #232
  19. Provide some UML docs for PyAF integrators #233
  20. Pyaf 5.0 Final Touch 4 : Add More Tests #234
  21. Use MaxAbsScaler for some Multiplicative Signal Transformations #235
  22. Pyaf 5.0 Final Touch 5 : Add more info about Exogenous Data Used in ARX Models #236
  23. Pyaf 5.0 Final Touch 6 : Disable Timing Loggers by default #237
  24. Pyaf 5.0 Final Touch 7 : Improve the Guess of Window Length for Moving Average Trends #238
  25. Pyaf 5.0 Final Touch 8 : Use an Optimal Choice Rule for the Quantization Signal transform #239

@antoinecarme
Copy link
Owner Author

antoinecarme commented Mar 9, 2023

Created a new release candidate 5.0-rc1.

Will become an official 5.0 on 2023-07-14 if no change until then.

@antoinecarme
Copy link
Owner Author

Can be installed with

pip install --upgrade git+https://github.com/antoinecarme/[email protected]

@antoinecarme
Copy link
Owner Author

antoinecarme commented Mar 24, 2023

Implemented/Processed So far (for changelog):

  1. Python 3.11 Support : Python 3.11 support #227
  2. New Hardware Support : RISC-V Hardware Platform Validation #208
  3. New Performance Measures : Outlier-resistant forecasting Performance Measures #209, Add Differentiable Variant of SMAPE Performance Measure #221
  4. Model Selection Improvement : Investigate Model Esthetics for PyAF #212, Investigate Large Horizon Models #213 , Revisit Model Complexity Definition #223, Use MASE by default for PyAF Model Selection #229
  5. Signal Transformation Improvements : Use MaxAbsScaler for some Multiplicative Signal Transformations #235, Pyaf 5.0 Final Touch 8 : Use an Optimal Choice Rule for the Quantization Signal transform #239
  6. Generic Modeling : PyAF 5.0 Final Touch 1 : discard some non-significant components #230, PyAF 5.0 Final Touch 2: Disable alpha in ridge regressions #231, Pyaf 5.0 Final Touch 5 : Add more info about Exogenous Data Used in ARX Models #236, Pyaf 5.0 Final Touch 7 : Improve the Guess of Window Length for Moving Average Trends #238
  7. Plotting Functions Improvements and Bug Fixes : Bad plot for shaded area around prediction intervals in hourly data #216, Forecast Quantiles Plots can be improved  #225, Pyaf 5.0 Final Touch 3 : report plot filenames in the logs #232
  8. New Docs : Provide some UML docs for PyAF integrators #233
  9. Bug Fixes : Failure to build a multiplicative ozone model with Lag1 trend #220
  10. PyAF "Forecast Tasks" : Use PyTorch as the reference deep learning framework/architecture for future projects #211, Automate Prototyping Activities - R-based Models #217
  11. Recurrent Tasks : Re-run the Benchmarking process for PyAF 5.0 #222, Run some Sanity Checks for PyAF 5.0 #224, Pyaf 5.0 Final Touch 4 : Add More Tests #234, Pyaf 5.0 Final Touch 6 : Disable Timing Loggers by default #237

@antoinecarme
Copy link
Owner Author

@antoinecarme
Copy link
Owner Author

Switched to Github Actions CI/CD. Farewell CircleCI !!!

The switch was smooth.

https://github.com/antoinecarme/pyaf/actions/runs/5501701813/jobs/10025475124

@antoinecarme
Copy link
Owner Author

DONE.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant