Hamiltonian Monte Carlo For Dummies (Statisticians / Pharmacometricians / All)
HTML-код
- Опубликовано: 8 авг 2024
- Hamiltonian Monte Carlo (HMC) is the best MCMC method for complex, high dimensional, Bayesian modelling. This tutorial aims to provide an introduction to HMC through worked examples ranging from elementary to complex models.
- Наука
Thank goodness for RUclips recommendation.
Bonjour, Alan Maloney. this is a colorful video. thanks. :)
Great blog. The best HMC video I have seen before. Thanks.
Thanks for the friendly feedback...delighted you liked it!
Jeez after watching this and Ben's Lambert, I am ready to try by my own the HMC, thanks a lot that sucha good presentation on the intuition of the HMC.
Glad you found it useful!
Thank you for this very illustrative and insightful video.
Great to hear - delighted someone thought it was useful!
Video aside, I don't think any real dummy is interested in HMC, lol.
Thanks for the amazing video. It helped a lot!!
Thank you for great explanation ❤
Thanks for the insightful video. Could you please provide some sample codes of the figures you show on the slides? Thank you
Sorry may be I missed it but did you discuss how it can traverse other contours? Your example showed how it can stay in its contour plane.
Hi Y. Good question. HMC follows the joint contour 'within' an iteration (i.e. for the L=15 steps) ...see the video at around 9:48, where it followed the contour with m=1.00 for iteration 1 to yield the new value for theta (e.g. -0.65 in the video). For the next iteration, it will sample a new m variable (say m=0.00). This will 'shift' us to a new joint contour for iteration 2 (the intersection of theta = -0.65 and m=0.00 on the graph). Thus 'between' iterations is when we "jump" between the joint contours. Hope this is clear.
I have some doubts. What does stan do that other languages like R or python doesn't?
Can I use stan for constrained optimisation? I have a problem I need help with. Its about maximising an objective function subject to set of inequality constraints. Would you be abe to help or give some directions?
Hello. R currently doesn't have anything like Stan. I am not sure about Python, but I doubt it. Stan is not built to solve constrained optimisation problems - rather to fit complex Bayesian models. My only advice would be to google for tools/packages to solve constrained optimisation problems like yours. For simple problems, I expect many tools would have something. However for more complex problems, you may need more specialised software. Good luck. Al
@@alanmaloney2791
My maximisation function is a log likelihood function, similar to how we solve MLE, but subject to some constraints regarding a distribution parameter theta.
So not sure if it counts as a "Bayesian".
Hello. If the constraint is on a parameter, Stan can handle that (see their website). If you have many constraints like theta1+theta2+theta3 = 100, theta1*theta3 = 10 etc., I think it may be more tricky to code in Stan. If you are wishing to do MLE, other software may be easier. Cheers Al
very confusing