forked from pyro-ppl/numpyro
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
1. Added a specialized constructor for SVGD. - The SVGD constructor does not require a guide because it's always a delta - It correctly sets the scaling on the attractive force to `1/m` for `m` particles. - It doesn't allow users to change `num_elbo_particles` because it's always 1 for SVGD. 2. Added a `setup_run` method to SteinVI. - The method encapsulates a step of SteinVI, which inheriting constructors can manipulate. 3. Added a constructor for ASVGD. - ASVGD introduces an annealing schedule on the attractive force. - This inherits from SVGD and overwrites `setup_run` to change the `loss_temperature`. 3. Removed [Jacobian projection from the Stein force](https://github.com/pyro-ppl/numpyro/blob/master/numpyro/contrib/einstein/steinvi.py#L337-L339) - The projection is unnecessary as we do not allow `AutoIAFNormal`, `AutoBNAFNormal`, `AutoDAIS`, `AutoSemiDAIS` and `AutoSurrogateLikelihoodDAIS`. - This simplifies the force computation to attractive+repulsive. ### Misc changes 1. The normalization factor in the `ProbabilityProductKernel` has been removed. The kernel is still a proper kernel; however, this version avoids vanishing/exploding when the guide variances deviate from 1 for "high" dimensional models. 2. Added a rng_key to the kernel. This is convenient when experimenting with kernels. 3. Removed the `enum` parameter as it is currently unsupported. 4. Kernel smoothing of the attractive force and the repulsion is now computed on particles in unconstraint space, consistent with particles moving in unconstraint space. **NB: Constraint particles are removed from the test**. 5. Added the manual computation for kernel tests as comments.
- Loading branch information
1 parent
d867c54
commit 8ace34f
Showing
11 changed files
with
755 additions
and
405 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.