StochasticAD.jl

Research package for automatic differentiation of programs containing discrete randomness.
Popularity
199 Stars
Updated Last
3 Months Ago
Started In
September 2022

StochasticAD

Build Status arXiv article

StochasticAD is an experimental, research package for automatic differentiation (AD) of stochastic programs. It implements AD algorithms for handling programs that can contain discrete randomness, based on the methodology developed in this NeurIPS 2022 paper. We're still working on docs and code cleanup!

Installation

The package can be installed with the Julia package manager:

julia> using Pkg;
julia> Pkg.add("StochasticAD");

Citation

@inproceedings{arya2022automatic,
 author = {Arya, Gaurav and Schauer, Moritz and Sch\"{a}fer, Frank and Rackauckas, Christopher},
 booktitle = {Advances in Neural Information Processing Systems},
 editor = {S. Koyejo and S. Mohamed and A. Agarwal and D. Belgrave and K. Cho and A. Oh},
 pages = {10435--10447},
 publisher = {Curran Associates, Inc.},
 title = {Automatic Differentiation of Programs with Discrete Randomness},
 url = {https://proceedings.neurips.cc/paper_files/paper/2022/file/43d8e5fc816c692f342493331d5e98fc-Paper-Conference.pdf},
 volume = {35},
 year = {2022}
}