All Projects → cdslaborg → Paramonte

cdslaborg / Paramonte

Licence: mit
ParaMonte: Plain Powerful Parallel Monte Carlo and MCMC Library for Python, MATLAB, Fortran, C++, C.

Programming Languages

python
139335 projects - #7 most used programming language
c
50402 projects - #5 most used programming language
cpp
1120 projects
matlab
3953 projects
fortran
972 projects

Projects that are alternatives of or similar to Paramonte

blangSDK
Blang's software development kit
Stars: ✭ 21 (-76.14%)
Mutual labels:  bayesian-inference, mcmc, bayesian-statistics
Rstan
RStan, the R interface to Stan
Stars: ✭ 760 (+763.64%)
Mutual labels:  mcmc, bayesian-inference, bayesian-statistics
Turing.jl
Bayesian inference with probabilistic programming.
Stars: ✭ 1,150 (+1206.82%)
Mutual labels:  mcmc, bayesian-inference, bayesian-statistics
Shinystan
shinystan R package and ShinyStan GUI
Stars: ✭ 172 (+95.45%)
Mutual labels:  mcmc, bayesian-inference, bayesian-statistics
Bat.jl
A Bayesian Analysis Toolkit in Julia
Stars: ✭ 82 (-6.82%)
Mutual labels:  mcmc, bayesian-inference, bayesian-statistics
Jsat
Java Statistical Analysis Tool, a Java library for Machine Learning
Stars: ✭ 683 (+676.14%)
Mutual labels:  machine-learning-algorithms, machine-learning-library
Pytorch Bayesiancnn
Bayesian Convolutional Neural Network with Variational Inference based on Bayes by Backprop in PyTorch.
Stars: ✭ 779 (+785.23%)
Mutual labels:  bayesian-inference, bayesian-statistics
Bda py demos
Bayesian Data Analysis demos for Python
Stars: ✭ 781 (+787.5%)
Mutual labels:  mcmc, bayesian-inference
Rhat ess
Rank-normalization, folding, and localization: An improved R-hat for assessing convergence of MCMC
Stars: ✭ 19 (-78.41%)
Mutual labels:  bayesian-inference, bayesian-statistics
Bayesian Analysis Recipes
A collection of Bayesian data analysis recipes using PyMC3
Stars: ✭ 479 (+444.32%)
Mutual labels:  bayesian-inference, bayesian-statistics
Bayesflare
A python module to detect stellar flares using Bayesian model comparison
Stars: ✭ 6 (-93.18%)
Mutual labels:  bayesian-inference, bayesian-statistics
Scikit Stan
A high-level Bayesian analysis API written in Python
Stars: ✭ 22 (-75%)
Mutual labels:  bayesian-inference, bayesian-statistics
Pymc3
Probabilistic Programming in Python: Bayesian Modeling and Probabilistic Machine Learning with Aesara
Stars: ✭ 6,214 (+6961.36%)
Mutual labels:  mcmc, bayesian-inference
Dbda Python
Doing Bayesian Data Analysis, 2nd Edition (Kruschke, 2015): Python/PyMC3 code
Stars: ✭ 502 (+470.45%)
Mutual labels:  mcmc, bayesian-inference
Bayesian Stats Modelling Tutorial
How to do Bayesian statistical modelling using numpy and PyMC3
Stars: ✭ 480 (+445.45%)
Mutual labels:  bayesian-inference, bayesian-statistics
Bayesian Neural Networks
Pytorch implementations of Bayes By Backprop, MC Dropout, SGLD, the Local Reparametrization Trick, KF-Laplace, SG-HMC and more
Stars: ✭ 900 (+922.73%)
Mutual labels:  mcmc, bayesian-inference
Dblink
Distributed Bayesian Entity Resolution in Apache Spark
Stars: ✭ 38 (-56.82%)
Mutual labels:  mcmc, bayesian-inference
Autoppl
C++ template library for probabilistic programming
Stars: ✭ 34 (-61.36%)
Mutual labels:  bayesian-inference, bayesian-statistics
Php Ml
PHP-ML - Machine Learning library for PHP
Stars: ✭ 7,900 (+8877.27%)
Mutual labels:  machine-learning-algorithms, machine-learning-library
Bda r demos
Bayesian Data Analysis demos for R
Stars: ✭ 409 (+364.77%)
Mutual labels:  mcmc, bayesian-inference

ParaMonte: Plain Powerful Parallel Monte Carlo Library

ParaMonte is a serial/parallel library of Monte Carlo routines for sampling mathematical objective functions of arbitrary-dimensions, in particular, the posterior distributions of Bayesian models in data science, Machine Learning, and scientific inference, with the design goal of unifying the automation (of Monte Carlo simulations), user-friendliness (of the library), accessibility (from multiple programming environments), high-performance (at runtime), and scalability (across many parallel processors).

For more information on the installation, usage, and examples, visit: https://www.cdslab.org/paramonte

ParaMonte design goals

ParaMonte has been developed while bearing the following design goals in mind:

  • Full automation of all Monte Carlo simulations to the highest levels possible to ensure the highest level of user-friendliness of the library and minimal time investment requirements for building, running, and post-processing of simulation models.

  • Interoperability of the core library with as many programming languages as currently possible, including C, C++, Fortran, MATLAB, Python, with ongoing efforts to support other popular programming languages.

  • High-Performance meticulously-low-level implementation of the library to ensure the fastest-possible Monte Carlo simulations.

  • Parallelizability of all simulations via two-sided and one-sided MPI/Coarray communications while requiring zero-parallel-coding efforts by the user.

  • Zero-dependence on external libraries to ensure hassle-free ParaMonte library builds and ParaMonte simulation runs.

  • Fully-deterministic reproducibility and automatically-enabled restart functionality for all simulations up to 16 digits of precision as requested by the user.

  • Comprehensive-reporting and post-processing of each simulation and its results, as well as their automatic storage in external files to ensure the simulation results will be comprehensible and reproducible at any time in the distant future.

Installation

The pre-built ready-to-use libraries are available on the release page of the ParaMonte library on GitHub. Each prebuilt ParaMonte library automatically ships with a full-fledged set of example codes and build scripts.

Alternatively, you can build the library from the source in the GitHub repository of the project. The ParaMonte library installation/build process is fully automated for all of the supported programming languages. Currently, the following compiler suites are supported for builds from source:

Compiler Suite Linux macOS Windows (64bit)
GNU Compiler Collection > 8.4
Intel Parallel Studio > 19.1.1

For more information and quick-start in the programming language of your choice, visit the ParaMonte library homepage.

Dependencies

Beyond an optional MPI runtime library for parallel simulations, the ParaMonte kernel has zero dependency on external third-party libraries or packages.

Parallelism

The ParaMonte library relies on the Message Passing Interface (MPI) standard for inter-processor communications. To run a parallel simulation, you will have to have a compatible MPI runtime library installed on your system. In most cases, ParaMonte will automatically install the required missing libraries on your system (with your permission). These automatic checks and installations happen when you download and install or use the library on your system, for the first time. If the automatic installation is unsuccessful, you can also install the libraries manually on your system:

  • On Windows and Linux operating systems, we highly recommend downloading and installing the Intel MPI runtime libraries, which is available to the public free of charge, also available in the latest release of the ParaMonte library on the GitHub release page (For Windows, look for the executable file that ends with .exe. For Linux, look for the file that ends with .tgz, like l_mpi-rt_2018.2.199.tgz).
  • On macOS, the Intel MPI library is not available. Therefore, we recommend installing either Open-MPI or MPICH MPI runtime libraries depending the prebuilt version of the ParaMonte library that you have downloaded or the configuration with which you intend to build the library.

For more information, visit https://www.cdslab.org/paramonte/.

Example usage instructions

Citing ParaMonte

The ParaMonte library is an honor-ware and its currency is acknowledgment and citations.

If you use ParaMonte, please acknowledge it by citing the ParaMonte library's main publications as listed in ACKNOWLEDGMENT.md.

Visit the ParaMonte library homepage to access the PDF version of these files free of charge.

License

MIT License

What does this license mean?

Essentially, all we are asking from the users or developers is to

explicitly acknowledge the use of this library or any concepts or parts of it in their education, research, or software (free or commercial).

This is a free software, so help us keep it freely available to the public by redistributing the library and contributing to it. If you have questions or concerns about the license, do not hesitate to contact us ([email protected]).

Authors and contributors

  • Amir Shahmoradi

    • astrophysicist/bioinformatician by training (and a science-lover in general),
    • Ph.D. in computational physics/bioinformatics from the University of Texas at Austin,
    • currently a faculty member of Physics and Data Science at The University of Texas at Arlington,
    • with teaching/research experience/background in computational and data sciences, statistics, data analysis, and modeling, stochastic processes, Monte Carlo Methods, Bayesian probability theory, high energy physics, astronomy and astrophysics, computational physics, Molecular Dynamics simulations, biomedical science and MRI data analysis, bioinformatics and evolutionary biology (viral evolution, protein dynamics, and interactions),
    • contact: [email protected]
  • Fatemeh Bagheri

    • physicist / cosmologist by training,
    • currently a UTA Physics member,
    • deep philosophical thinker,
    • contact: [email protected]
  • Shashank Kumbhare

    • physicist / Computational Data Scientist,
    • currently a UTA Physics member,
    • contact: [email protected]
  • Joshua Osborne

    • physicist / Computational Data Scientist by training,
    • currently a UTA Physics member,
    • contact: [email protected]

For more information, visit cdslab.org/pm or contact Amir Shahmoradi: [email protected]

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].