Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This adds a reparametrizer for the Gumbel-Softmax trick.
The reparametrizer replaces a d-dimensional
RelaxedOneHotCategorical
with a d-dimensionalUniform(0,1)
distribution whose samples are first transformed to be Gumbel distributed and then passed through the softmax trick.The motivation is that, when unimodal autoguides try to learn the posterior of a R.O.H.C. distribution they are only able to capture a single mode, i.e. a single category. By instead learning the posterior in pre-softmax space, a single mode can then be softmax-transformed to a multimodal posterior, with one mode per category. Thus this reparametrizer allows naive autoguides like
AutoNormal
to capture multimodal posteriors.Tested