-
Notifications
You must be signed in to change notification settings - Fork 126
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
DLM gradients #161
DLM gradients #161
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Look good so far. After adding discussed things and adding unit tests, you can try with the tactile example which we are using for the backward experiments.
Also CI fails linting. Make sure you are using git precommit hooks. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is great! Left some comments/questions.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks great! Thanks @rtqichen for adding DLM.
* DLM gradients hacky example * implement DLM using autograd.Function * make soln a bit more accurate * minor; removed unnecessary code * lower case for dlm_epsilon * backward test for DLM * fix imports * rename and make linter happy * filter for tensors that require grad * Construct the bwd objective only once * minor * remove print statements * Fix DLM when using gpu; cost function shape; and handle case when no differentiable tensor * Fix memory leak by removing dict input_data from input arguments * preserve ordering * Expand batch dim if possible * undo * use lower case * reduce a bit of python overhead * explicit one step
Motivation and Context
Implements support for the "direct loss minimization" gradient computation for theseus.
How Has This Been Tested
Tested in
theseus/optimizer/nonlinear/tests/test_backwards.py
, and ran the following examples:examples/backward_mode.py
examples/tactile_pose_estimation.py
Types of changes
Checklist