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

Step-size methods and preconditoners for GD #1768

Merged

Conversation

MargaretDuff
Copy link
Member

@MargaretDuff MargaretDuff commented Mar 28, 2024

Currently a draft for discussion purposes

TODO:

  • testing the preconditioners
  • Unit tests for the preconditioners
  • Documentation for the preconditioners
  • Unit tests for the step-size methods
  • Think about efficiency for the Armijo rule
  • Think about efficiency for safe division in preconditioners
  • Documentation for the step-size rules
  • Testing for ISTA and FISTA with step sizes and preconditioners
  • 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

Checklist

  • I have performed a self-review of my code
  • I have added docstrings in line with the guidance in the developer guide
  • I have updated the relevant documentation
  • I have implemented unit tests that cover any new or modified functionality
  • CHANGELOG.md has been updated with any functionality change
  • Request review from all relevant developers
  • Change pull request label to 'Waiting for review'

Contribution Notes

Please read and adhere to the developer guide and local patterns and conventions.

  • 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
  • I confirm that the contribution does not violate any intellectual property rights of third parties

--->

@MargaretDuff MargaretDuff self-assigned this Mar 28, 2024
@MargaretDuff MargaretDuff added the enhancement New feature or request label Mar 28, 2024
@MargaretDuff MargaretDuff marked this pull request as ready for review May 2, 2024 15:22
Copy link
Contributor

@paskino paskino left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I suggest to remove a couple of else statements, but other than that it looks good to me|!

@MargaretDuff
Copy link
Member Author

Closes #1817

Copy link
Contributor

@epapoutsellis epapoutsellis left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved, we only need to test #1818 for CIL+SIRF (precond+step_sizes) but I am almost certain that it will work. Once merged, please remind me again and we can add this test in test_SIRF

Signed-off-by: Margaret Duff <43645617+MargaretDuff@users.noreply.github.com>
@MargaretDuff MargaretDuff added Merge pending jenkins Once jenkins is happy with can be merged and removed Waiting for review labels May 24, 2024
@MargaretDuff
Copy link
Member Author

Jenkins is happy
image

Signed-off-by: Margaret Duff <43645617+MargaretDuff@users.noreply.github.com>
@MargaretDuff MargaretDuff merged commit 531f1aa into TomographicImaging:master May 24, 2024
8 checks passed
@KrisThielemans
Copy link
Contributor

Thanks a lot all! Yet another major milestone

@paskino paskino removed the Merge pending jenkins Once jenkins is happy with can be merged label Jun 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
No open projects
Archived in project
5 participants