You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As discussed on Slack, it is sometimes annoying to use reverse mode because you need autodiff_thunk whenever
the function output is a number and the cotangent is different from 1.0
the function output is anything but a number
A solution suggested by @wsmoses would be syntactic sugar for vjp (and maybe jvp but that is less necessary cause autodiff gets the job done every time). There are a few design questions around this:
Should we put dreturn together with the return activity?
Good: 1 argument instead of 2
Bad: in the case of Duplicated returns, we would have to specify dreturn = Duplicated(whatever, actual_thing_we_care_about).
Can we generalize this to batch mode vjp? How do we pass several cotangents if the return value is Active?
The text was updated successfully, but these errors were encountered:
Uh oh!
There was an error while loading. Please reload this page.
As discussed on Slack, it is sometimes annoying to use reverse mode because you need
autodiff_thunk
whenever1.0
A solution suggested by @wsmoses would be syntactic sugar for
vjp
(and maybejvp
but that is less necessary causeautodiff
gets the job done every time). There are a few design questions around this:dreturn
together with the return activity?Duplicated
returns, we would have to specifydreturn = Duplicated(whatever, actual_thing_we_care_about)
.vjp
? How do we pass several cotangents if the return value isActive
?The text was updated successfully, but these errors were encountered: