CIL
CIL copied to clipboard
Step-size methods and preconditoners for GD
Currently a draft for discussion purposes
TODO:
- [x] testing the preconditioners
- [x] Unit tests for the preconditioners
- [x] Documentation for the preconditioners
- [x] Unit tests for the step-size methods
- [ ] Think about efficiency for the Armijo rule
- [x] Think about efficiency for safe division in preconditioners
- [x] Documentation for the step-size rules
- [x] Testing for ISTA and FISTA with step sizes and preconditioners
- [x] Documentation for ISTA and FISTA
- [ ] Think of a new name for the preconditioner class - it does more than precondition, it can modify the gradient (or anything else) in any way it wants
Changes
Added step-size methods and preconditioners for GD
Testing you performed
Please add any demo scripts to https://github.com/TomographicImaging/CIL-Demos/tree/main/misc
Related issues/links
Closes #1762, #1592, #1588 #1359
Checklist
- [x] I have performed a self-review of my code
- [x] I have added docstrings in line with the guidance in the developer guide
- [x] I have updated the relevant documentation
- [x] I have implemented unit tests that cover any new or modified functionality
- [ ] CHANGELOG.md has been updated with any functionality change
- [x] Request review from all relevant developers
- [x] Change pull request label to 'Waiting for review'
Contribution Notes
Please read and adhere to the developer guide and local patterns and conventions.
- [x] The content of this Pull Request (the Contribution) is intentionally submitted for inclusion in CIL (the Work) under the terms and conditions of the Apache-2.0 License
- [x] I confirm that the contribution does not violate any intellectual property rights of third parties
--->
Preconditioner -> SearchDirectionUpdater or something?
Closes #1817
Jenkins is happy
Thanks a lot all! Yet another major milestone