# GO Gradient for Expectation-Based Objectives

arXiv: https://arxiv.org/abs/1901.06020 · HTML: https://mlsanity.com/paper/1901.06020/

## Key facts

- Cited by 5 papers in the map (data through 14 Oct 2026).
- First posted on arXiv 17 Jan 2019.

## Built on by (most cited first, 5 of 5)

- [Gradient Estimation with Discrete Stein Operators](https://mlsanity.com/paper/2202.09497/) (2022)
- [A unified view of likelihood ratio and reparameterization gradients](https://mlsanity.com/paper/2105.14900/) (2021)
- [Storchastic: A Framework for General Stochastic Automatic Differentiation](https://mlsanity.com/paper/2104.00428/) (2021)
- [Learning to segment from object sizes](https://mlsanity.com/paper/2207.00289/) (2022)
- [Stochastic automatic differentiation for Monte Carlo processes](https://mlsanity.com/paper/2307.15406/) (2023)

## Abstract (arXiv)

Within many machine learning algorithms, a fundamental problem concerns efficient calculation of an unbiased gradient wrt parameters gammav for expectation-based objectives Ebb_qgammav (yv) [f(yv)]. Most existing methods either (i) suffer from high variance, seeking help from (often) complicated variance-reduction techniques; or (ii) they only apply to reparameterizable continuous random variables and employ a reparameterization trick. To address these limitations, we propose a General and One-sample (GO) gradient that (i) applies to many distributions associated with non-reparameterizable continuous or discrete random variables, and (ii) has the same low-variance as the reparameterization trick. We find that the GO gradient often works well in practice based on only one Monte Carlo sample (although one can of course use more samples if desired). Alongside the GO gradient, we develop a means of propagating the chain rule through distributions, yielding statistical back-propagation, coupling neural networks to common random variables.
