Venturecxx icon indicating copy to clipboard operation
Venturecxx copied to clipboard

Gradients through expressions of ESRs are lost

Open axch opened this issue 9 years ago • 1 comments

To keep track of them I would need to adjust the custom automatic differentiation system to propagate gradients from evaluation to constant nodes, read and them off the constant nodes when computing the gradient of the request PSP.

  • This problem can be largely avoided by writing request PSPs to place any potentially continuous-valued input objects into the environment and refer to them by synthetic names; then the expression itself is discrete and has no derivative, and derivatives do propagate through lookups to environments of ESRs.
    • However, not all extant requesters obey this convention
  • This convention will not work for eval. Gradients through eval are potentially useful for "inverse interpretation" types of structure learning projects, though they can work around it by writing their own metacircular evaluators.

axch avatar Feb 02 '16 08:02 axch

By code inspection, I assume that mapv currently has this problem, but it is masked by its output PSP not defining a gradient method at all.

axch avatar Feb 02 '16 08:02 axch