Skip to content
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

Support for other distributions #74

Open
5 of 26 tasks
Dpananos opened this issue Feb 3, 2021 · 6 comments
Open
5 of 26 tasks

Support for other distributions #74

Dpananos opened this issue Feb 3, 2021 · 6 comments
Labels
enhancement-distribution New feature or request good first issue Good for newcomers help wanted Extra attention is needed

Comments

@Dpananos
Copy link

Dpananos commented Feb 3, 2021

Hi,

Looks like there is support for lots of common distribution. There are a handful of other distributions which are not presently supported but could (fingers crossed) be easily implemented. Looking at [Stan's Function Reference] I see...

Some multivariate distributions:

  • Multinomial
  • Wishart
  • LKJCorr
  • LKJCholesky

among other even more exotic distributions.

There are also some composite distributions:

  • Bounded distributions (HalfNormal, HalfCauchy, etc)
  • Mixture distributions
  • Random Walks

Is there interest in implementing some of these distributions? A good portion of them are special cases (e.g. the chi-square is a special case of the gamma) and so it might be worth implementing them out of convenience, even if they just wrap their more general distributions.

Is there interest in implementing some of these? If so, I'd be up to implement a portion of them (if not only to familiarize myself the the PDFs but then also to work with JAX some more).

@rlouf
Copy link
Owner

rlouf commented Feb 3, 2021

There definitely is an interest in implementing as many distributions as is possible!

I would first rank roughly by how often you think they're used, if that's not the case already (who am I to know?). Then you can pick whichever you like and open a PR to signal you're working on it.

Also, do you mind if I edit your post to add distributions I think are important and pin it in the issue tracker so others can see what's up for grabs?

@rlouf rlouf added good first issue Good for newcomers help wanted Extra attention is needed enhancement-distribution New feature or request labels Feb 3, 2021
@rlouf rlouf pinned this issue Feb 3, 2021
@Dpananos
Copy link
Author

Dpananos commented Feb 3, 2021

Yea, go ahead and edit if you like.

I recently opened up a PR on jax to add the chisquare. If that goes well, I will make a PR here for chisquare and just go through the list.

@tblazina
Copy link
Contributor

tblazina commented Feb 9, 2021

I'd try my hand at the Beta-Binomial, i'll open a PR for it.

@tblazina
Copy link
Contributor

I'd also try my hand at the Pareto, I'll also open a PR for it.

@tblazina
Copy link
Contributor

tblazina commented Apr 2, 2021

I'll go ahead and try to do Weibull next. Will open another WIP PR

Update:

I just noticed that the min_weibull function has been implemented in jax.random but the pdf/logpdf of the distributions hasn't been implemented in jax.scipy.stats yet. I could either a) implement it here in mcx or b) open a PR in jax to add it there before adding the distribution here. I suppose b is probably the better option.

@rlouf
Copy link
Owner

rlouf commented Apr 15, 2021

I would open a PR in JAX.

@rlouf rlouf mentioned this issue Jul 20, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement-distribution New feature or request good first issue Good for newcomers help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

3 participants