hasty-hamiltonian: Speedy traversal through parameter space.
Gradient-based traversal through parameter space.
This implementation of the HMC algorithm uses lens
as a means to operate over
generic indexed traversable functors, so you can expect it to work if your
target function takes a list, vector, map, sequence, etc. as its argument.
If you don't want to calculate your gradients by hand you can use the handy ad library for automatic differentiation.
Exports a mcmc
function that prints a trace to stdout, a chain
function
for collecting results in memory, and a hamiltonian
transition operator
that can be used more generally.
import Numeric.AD (grad) import Numeric.MCMC.Hamiltonian target :: RealFloat a => [a] -> a target [x0, x1] = negate ((x0 + 2 * x1 - 7) ^ 2 + (2 * x0 + x1 - 5) ^ 2) gTarget :: [Double] -> [Double] gTarget = grad target booth :: Target [Double] booth = Target target (Just gTarget) main :: IO () main = withSystemRandom . asGenIO $ mcmc 10000 0.05 20 [0, 0] booth
Downloads
- hasty-hamiltonian-1.3.2.tar.gz [browse] (Cabal source package)
- Package description (revised from the package)
Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
- No Candidates
Versions [RSS] | 1.1.0, 1.1.1, 1.1.2, 1.1.3, 1.1.4, 1.1.5, 1.2.0, 1.3.0, 1.3.2, 1.3.3, 1.3.4 |
---|---|
Dependencies | base (>=4 && <6), kan-extensions (>=5 && <6), lens (>=4 && <5), mcmc-types (>=1.0.1), mwc-probability (>=2.0 && <3), pipes (>=4 && <5), primitive (>=0.5 && <1.0), transformers (>=0.5 && <1.0) [details] |
License | MIT |
Author | Jared Tobin |
Maintainer | jared@jtobin.ca |
Revised | Revision 1 made by JaredTobin at 2019-09-13T23:56:34Z |
Category | Numeric |
Home page | http://github.com/jtobin/hasty-hamiltonian |
Source repo | head: git clone http://github.com/jtobin/hasty-hamiltonian.git |
Uploaded | by JaredTobin at 2018-03-14T22:05:04Z |
Distributions | LTSHaskell:1.3.4, NixOS:1.3.4, Stackage:1.3.4 |
Reverse Dependencies | 1 direct, 1 indirect [details] |
Downloads | 6663 total (39 in the last 30 days) |
Rating | (no votes yet) [estimated by Bayesian average] |
Your Rating | |
Status | Docs available [build log] Last success reported on 2018-03-14 [all 1 reports] |