-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Missing Features #38
Comments
Hi, I like this project! I'd like to add some bullet points to this list:
I'm looking at implementing some MCMC kernels like RWM, MALA, SM-MALA, HMC and some adaptive schemes for these I have looked at pymc3 and pyro in python but find python is very slow for reverse mode autodiff. While I am here, is this project aiming to replicate the features of say STAN or pymc3, or focused on just MCMC say? |
Hey, thanks for checking it out (and also contributing)! I'll append the list for sure - those are great points. A big goal of mine is to add a lot more kernels, some of them you already mentioned above. Feel free to put up an issue about any of them as an enhancement and take a crack at it! We have also looked at pymc3 and indeed it was very very slow. I think it was like 40x slower than autoppl and STAN with the gaussian model benchmark example in the README. But a bigger issue was that it actually crashed on some examples (linear regression benchmark example), so it's just not as stable. I kept the pymc3 code for both examples as souvenir here - you can try running it too. At the moment, I have no particular direction I'm thinking of with this project. But I will say that the end-goals I had in mind were 1) to allow researchers to compare accuracy and performance among different MCMC methods and 2) allow researchers to extend the library to implement their own MCMC method. While it does sound like I am focused purely on MCMC, I definitely think supporting other features in STAN and pymc3 would be attractive, so I am open to that as well. I just had the impression that posterior sampling was the main objective for those two. Did you have something in mind? |
That is exactly what I had in mind! A test bed library for adding new samplers is what I would love (STAN seems like a closed system...) Right now I am looking at adding HMC with adaptive covariance to my fork of the library. |
Awesome, sounds great! Yeah, I had the same impression of STAN. I wrote an adaptive method for NUTS which may be useful for your HMC method. It should be under mcmc/hmc. Looking forward to seeing your HMC implementation! |
#46 adds support for matrix for existing operations |
Even more optimizations for when variable expressions are of fixed sizenot needed based on new designThe text was updated successfully, but these errors were encountered: