Stellarpower.fix.new optimiser api for gradient monitoring #7611
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Beginning of some changes needed for compatibility with Keras v3. Feel free to use as a springboard and cherrypick some lines:
Main addition is changing Gradient Callback to use non-Legacy Optimiser API
Also bundled in is a fix for !7578
The legacy optimiser API is gone in Keras v3. This version uses the current API, available in v2 and v3.
The _resource_apply_dense() etc. functions are no longer virtual in the parent class and so we need to use another method. This just overrides the base apply_gradients() function to perform the work.
Performed some basic tests using this gist, but pasted in browser, and may be far from perfect in general. Providing as something to work from at least.
Overriding config and then calling the parent did nothing also so deleted it.
To facilitate debugging, change:
to run eagerly.