probcomp / GenExperimental.jl

Featherweight embedded probabilistic programming language and compositional inference programming library
MIT License
17 stars 2 forks source link

Clean up differentiable trace #4

Closed marcoct closed 7 years ago

marcoct commented 7 years ago

Currently every trace stores its log weight in a GenNum, and has a tape for AD. Check if this causes any performance issues and consider making a separate Differentiable if it does.

marcoct commented 7 years ago

For the path planner example, anecdotally it does not seem to introduce any perceptible overhead.

marcoct commented 7 years ago

For now, using separate Trace and DifferentiableTrace types. There is also an AbstractTrace. New users who are not using gradients can just write their models to accept Trace argument.