-
Notifications
You must be signed in to change notification settings - Fork 33
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
Numerical issue with random walk for Dirichlet #12
Comments
|
Just checked - this happens when the step size is tuned to something like |
I think NUTS adaption needs some further improvement. Before that happens, perhaps we can heuristically upper bound step size, e.g. Dirichlet distribution is a very nasty one for transforms, I suspect it'll be hard to make it stable in all cases. If it occasionally throws off the edges, we can try to reject a Hamiltonian simulation. |
2 still seems to be too high. 1 works.
Then we need to do a catch-exception which is slow. Alternatively we can make |
Sounds good to me! |
We can just do |
This sounds good to me. Perhaps give it a try and see whether it can fix TuringLang/Turing.jl#621? |
@yebai I will take a try today |
@mohamed82008 @yebai great it works |
Ok the root cause of this error AFAICT is https://github.com/TuringLang/Bijectors.jl/blob/master/src/Bijectors.jl#L221. The |
Ok, so after trying so many things, I came to a realization that we cannot support all of the Eucledian space with the I will make a PR to get your feedback. |
I've noticed a numeric issue when using this package with random walk algorithm. The code below is the minimal example to produce the bug:
I don't know if a stepsize of 10 is too high or not but it seems to be possible to have this kind of values during adaptation.
The text was updated successfully, but these errors were encountered: