stripe / rainier

Bayesian inference in Scala.
https://rainier.fit
Apache License 2.0
433 stars 51 forks source link

Refactoring Sampler and Progress #484

Closed avibryant closed 4 years ago

avibryant commented 4 years ago

This breaks Sampler into:

There are now warmup steps for the initial "find reasonable step size" phase, dual averaging, and the empirical path length distribution from EHMC. You can now construct a custom sampler by specifying the warmup schedule, ie,

Sampler(iterations)
   .findInitialStepSize
   .dualAverageStepSize(warmupIterations)
   .fixedPathLength(nSteps)