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

Contribute ! #154

Open
2 of 5 tasks
rlouf opened this issue Dec 30, 2021 · 0 comments
Open
2 of 5 tasks

Contribute ! #154

rlouf opened this issue Dec 30, 2021 · 0 comments
Labels
community good first issue Good for newcomers help wanted Extra attention is needed

Comments

@rlouf
Copy link
Member

rlouf commented Dec 30, 2021

Hey 👋

You are here because you considered contributing to blackjax for at least a split second. Thank you! But sometimes we are just not quite sure what to work on/don't want to bother the maintainer. We've been there. That is why we put together a list of the projects that are up for grabs on blackjax.

You can pick any of these, open an issue to signal you are working on it and run with it.

Documentation 📖

Documentation is obviously lacking, and as the user base is expanding, writing documentation is probably the biggest contribution one could make. Even setting things up (with Sphinx) would be a huge help!

  • Move the documentation to ReadTheDocs (but still execute the examples)
  • Move examples to a different repo to ease CI
  • Add a mat plot l’on style sheet for the plots in doc
  • Use daft to represent models in the examples
  • Better API documentation

Examples 🎡

Examples are useful not only to get to know the library, but also to learn about the pros and cons of different algorithms. We are looking for any example contribution, and would be extra happy with:

  • Any comparison with optimization (looking at you, neural networks!);
  • Comparisons between sampling algorithm;
  • Examples with many dimensions / big datasets; problems where you typically wouldn't use bayesian inference;
  • Examples that explains how an algorithm works.

For instance:

Algorithms 🔨

We are of course always looking for new algorithms! The library currently has a focus on gradient-based algorithms and SMC, and we are currently looking for the following to expand the library's scope:

Adaptation ✨

In practice adaptation algorithms (that compute reasonable values for the sampling algorithms' parameters) are as important as samplers. Here are the algorithms that we know of and would like to implement:

Approximation 🍰

The next best thing when you can't easily sample from the posterior! There are a lot of exciting new algorithms that could be use alone or combine with MCMC

Meta-algorithms ☁️

  • Gibbs sampling
  • HMC coupling
  • Parallel tempering (replica exchange)

Testing 🔎

Performance is good, accuracy and correctness is often better. We welcome implementations of the following algorihms:

@rlouf rlouf pinned this issue Dec 30, 2021
@rlouf rlouf changed the title Contribute ! 🤗 Contribute ! Dec 30, 2021
@rlouf rlouf added community help wanted Extra attention is needed good first issue Good for newcomers labels Dec 31, 2021
@miclegr miclegr mentioned this issue Jan 17, 2022
@rlouf rlouf unpinned this issue Sep 19, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
community good first issue Good for newcomers help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

1 participant