@hackage declarative0.1.0.0
DIY Markov Chains.
Categories
License
MIT
Maintainer
jared@jtobin.ca
Links
Versions
Installation
Dependencies (10)
- base <5
- hasty-hamiltonian >=1.1.1
- lens >=4 && <5
- mcmc-types >=1.0.1
- mighty-metropolis >=1.0.1
- mwc-probability >=1.0.1 Show all…
Dependents (1)
@hackage/acme-everything
DIY Markov Chains.
Build composite Markov transition operators from existing ones for fun and profit.
A useful strategy is to hedge one's sampling risk by occasionally interleaving a computationally-expensive transition (such as a gradient-based algorithm like Hamiltonian Monte Carlo or NUTS) with cheap Metropolis transitions.
transition = frequency [
(9, metropolis 1.0)
, (1, hamiltonian 0.05 20)
]Alternatively: sample consecutively using the same algorithm, but over a range of different proposal distributions.
transition = concatAllT [
slice 0.5
, slice 1.0
, slice 2.0
]Or just mix and match and see what happens!
transition =
sampleT
(sampleT (metropolis 0.5) (slice 0.1))
(sampleT (hamiltonian 0.01 20) (metropolis 2.0))Check the test suite for example usage.