Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement GO/Generalized Stochastic Backpropagation #85

Open
HEmile opened this issue Oct 30, 2020 · 1 comment
Open

Implement GO/Generalized Stochastic Backpropagation #85

HEmile opened this issue Oct 30, 2020 · 1 comment

Comments

@HEmile
Copy link
Owner

HEmile commented Oct 30, 2020

See https://hal.archives-ouvertes.fr/hal-02968975/document

Implement: For multivariate Bernoulli, Sample a single normal sample, then for each dimension, use this sample and flip the corresponding dimension.

Run the normal sample and the flipped samples. Weight the original sample with 1. The multiplicative is: the sum of the parameters for the normal sample. These are negated if the corresponding dimension is 1. Then for the flipped samples, use -parameter if it flipped to 0, otherwise use just the parameter (ie, not negated).

To make the zeroth-order correct, use importance sampling for the flipped samples. In the multiplicative estimator, divide again by this importance sampling to ensure correctness.

This doesn't use a baseline.

@HEmile
Copy link
Owner Author

HEmile commented Mar 4, 2021

For the unbiased GO-gradient implementation, see the paper.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant