-
Couldn't load subscription status.
- Fork 146
Use vectorized jacobian in minimize ops #1558
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
base: main
Are you sure you want to change the base?
Use vectorized jacobian in minimize ops #1558
Conversation
|
Check out this pull request on See visual diffs & provide feedback on Jupyter Notebooks. Powered by ReviewNB |
53721c4 to
f1a8ae1
Compare
|
This is hitting #1550 I don't know if because I introduced a bug that triggers it or what not. Let's fix that first and then come back to this |
Also cover cases of AdvancedIncSubtensor with batch indices that were not supported before
f1a8ae1 to
7a7ad7a
Compare
|
Is this PR superseded by #1582 ? |
|
I wanted to rerun the notebook example, but that's blocked by the mentioned bug |
|
It has some other changes we may want to cherry-pick to other PRs |
This PR uses the more new experimental vectorized jacobian in the minimize/root Ops, with the goal of getting it more tested, as it won't be breaking any people's code.
The existing notebook revealed we were missing some rewrites to avoid Blockwise(IncSubtensor), that this PR also addresses. In the printed example we can see that the vectorized jacobian replaces a Scan with two IncSubtensors by two IncSubtensors on an expanded buffer. This should be much more performant for this sort of small graphs.
Either my chages introduce or reveal a bug on the notebook, so this is still a draft
📚 Documentation preview 📚: https://pytensor--1558.org.readthedocs.build/en/1558/