# beetroots
[![PyPI version](https://badge.fury.io/py/beetroots.svg)](https://badge.fury.io/py/beetroots)
[![Documentation Status](https://readthedocs.org/projects/beetroots/badge/?version=latest)](https://beetroots.readthedocs.io/en/latest/?badge=latest)
Beetroots (BayEsian infErence with spaTial Regularization of nOisy multi-line ObservaTion mapS) is a Python package that performs Bayesian inference of physical parameters from multispectral-structured cubes with a dedicated sampling algorithm.
Thanks to this sampling algorithm, `beetroots` provides maps of credibility intervals along with estimated maps.
The sampling algorithm is introduced in
> \[1\] P. Palud, P.-A. Thouvenin, P. Chainais, E. Bron, and F. Le Petit - **Efficient sampling of non log-concave posterior distributions with mixture of noises**, *IEEE Transactions on Signal Processing*, vol. 71, pp. 2491 -- 2501, 2023. [doi:10.1109/TSP.2023.3289728](https://doi.org/10.1109/TSP.2023.3289728)
Such inversions rely on a forward model that is assumed to emulate accurately the physics of the observed environment.
In parallel of the inversion, `beetroots` tests this hypothesis to evaluate the validity of the inference results.
The testing method is described in (in French)
> \[2\] P. Palud, P. Chainais, F. Le Petit, P.-A. Thouvenin and E. Bron - **Problèmes inverses et test bayésien d'adéquation du modèle**, *GRETSI - Groupe de Recherche en Traitement du Signal et des Images* in *29e Colloque sur le traitement du signal et des images*, Grenoble, pp. 705 -- 708, 2023.
This package was applied e.g., to infer physical conditions in different regions of the interstellar medium in
> \[3\] P. Palud, P.-A. Thouvenin, P. Chainais, E. Bron, F. Le Petit and ORION-B consortium - **Bayesian inversion of large interstellar medium observation maps**, in prep
It was also exploited to assert and compare the relevance of tracers and combination of tracers to constrain physical conditions in
> \[4\] L. Einig, P. Palud, A. Roueff, P.-A. Thouvenin, P. Chainais, E. Bron, F. Le Petit, J. Pety, J. Chanussot and ORION-B consortium - **Entropy-based selection of most informative observables for inference from interstellar medium observations**, in prep
## Complex forward models
In numerous real-life applications, the forward model is a complex numerical simulation.
In the astrophysics applications presented in the documentation, the numerical simulation is replaced with a neural network-based approximation of the forward model for
- faster evaluation
- ability to evaluate derivatives
The package used to derive this approximation is `nnbma` (Neural Network-Based Model Approximation).
The GitHub repository can be found [here](https://github.com/einigl/ism-model-nn-approximation), the package [here](https://pypi.org/project/nnbma/) and the corresponding documentation [here](https://ism-model-nn-approximation.readthedocs.io/en/latest/?badge=latest).
The paper presenting this package is
> \[5\] P. Palud, L. Einig, F. Le Petit, E. Bron, P. Chainais, J. Chanussot, J. Pety, P.-A. Thouvenin and ORION-B consortium - **Neural network-based emulation of interstellar medium models**, *Astronomy & Astrophysics*, 2023, 678, pp.A198. [doi:10.1051/0004-6361/202347074](https://doi.org/10.1051/0004-6361/202347074)
## Installation and testing
To prepare and perform an inversion, we recommend installing the package.
The package can be installed with `pip`:
```shell
pip install beetroots
```
or by cloning the repo.
To clone, install and test the package, run:
```shell
git clone git@github.com:pierrePalud/beetroots.git
cd beetroots
poetry install # or poetry install -E notebook -E docs for extra dependencies
poetry shell
pytest
```
Raw data
{
"_id": null,
"home_page": "https://github.com/pierrePalud/beetroots",
"name": "beetroots",
"maintainer": null,
"docs_url": null,
"requires_python": "<3.12,>=3.9",
"maintainer_email": null,
"keywords": "Bayesian inference, statistics, artificial intelligence, multi-line maps, interstellar medium",
"author": "Pierre Palud",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/0d/66/6ce7618804360b1b2854257564d9aa77ae1e35eb660679fed9f50d9325da/beetroots-1.0.2.tar.gz",
"platform": null,
"description": "# beetroots\n\n[![PyPI version](https://badge.fury.io/py/beetroots.svg)](https://badge.fury.io/py/beetroots)\n[![Documentation Status](https://readthedocs.org/projects/beetroots/badge/?version=latest)](https://beetroots.readthedocs.io/en/latest/?badge=latest)\n\nBeetroots (BayEsian infErence with spaTial Regularization of nOisy multi-line ObservaTion mapS) is a Python package that performs Bayesian inference of physical parameters from multispectral-structured cubes with a dedicated sampling algorithm.\nThanks to this sampling algorithm, `beetroots` provides maps of credibility intervals along with estimated maps.\n\nThe sampling algorithm is introduced in\n\n> \\[1\\] P. Palud, P.-A. Thouvenin, P. Chainais, E. Bron, and F. Le Petit - **Efficient sampling of non log-concave posterior distributions with mixture of noises**, *IEEE Transactions on Signal Processing*, vol. 71, pp. 2491 -- 2501, 2023. [doi:10.1109/TSP.2023.3289728](https://doi.org/10.1109/TSP.2023.3289728)\n\nSuch inversions rely on a forward model that is assumed to emulate accurately the physics of the observed environment.\nIn parallel of the inversion, `beetroots` tests this hypothesis to evaluate the validity of the inference results.\nThe testing method is described in (in French)\n\n> \\[2\\] P. Palud, P. Chainais, F. Le Petit, P.-A. Thouvenin and E. Bron - **Probl\u00e8mes inverses et test bay\u00e9sien d'ad\u00e9quation du mod\u00e8le**, *GRETSI - Groupe de Recherche en Traitement du Signal et des Images* in *29e Colloque sur le traitement du signal et des images*, Grenoble, pp. 705 -- 708, 2023.\n\nThis package was applied e.g., to infer physical conditions in different regions of the interstellar medium in\n\n> \\[3\\] P. Palud, P.-A. Thouvenin, P. Chainais, E. Bron, F. Le Petit and ORION-B consortium - **Bayesian inversion of large interstellar medium observation maps**, in prep\n\nIt was also exploited to assert and compare the relevance of tracers and combination of tracers to constrain physical conditions in\n\n> \\[4\\] L. Einig, P. Palud, A. Roueff, P.-A. Thouvenin, P. Chainais, E. Bron, F. Le Petit, J. Pety, J. Chanussot and ORION-B consortium - **Entropy-based selection of most informative observables for inference from interstellar medium observations**, in prep\n\n## Complex forward models\n\nIn numerous real-life applications, the forward model is a complex numerical simulation.\nIn the astrophysics applications presented in the documentation, the numerical simulation is replaced with a neural network-based approximation of the forward model for\n\n- faster evaluation\n- ability to evaluate derivatives\n\nThe package used to derive this approximation is `nnbma` (Neural Network-Based Model Approximation).\nThe GitHub repository can be found [here](https://github.com/einigl/ism-model-nn-approximation), the package [here](https://pypi.org/project/nnbma/) and the corresponding documentation [here](https://ism-model-nn-approximation.readthedocs.io/en/latest/?badge=latest).\nThe paper presenting this package is\n\n> \\[5\\] P. Palud, L. Einig, F. Le Petit, E. Bron, P. Chainais, J. Chanussot, J. Pety, P.-A. Thouvenin and ORION-B consortium - **Neural network-based emulation of interstellar medium models**, *Astronomy & Astrophysics*, 2023, 678, pp.A198. [doi:10.1051/0004-6361/202347074](https://doi.org/10.1051/0004-6361/202347074)\n\n## Installation and testing\n\nTo prepare and perform an inversion, we recommend installing the package.\nThe package can be installed with `pip`:\n\n```shell\npip install beetroots\n```\n\nor by cloning the repo.\nTo clone, install and test the package, run:\n\n```shell\ngit clone git@github.com:pierrePalud/beetroots.git\ncd beetroots\npoetry install # or poetry install -E notebook -E docs for extra dependencies\npoetry shell\npytest\n```\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Beetroots (BayEsian infErence with spaTial Regularization of nOisy multi-line ObservaTion mapS)",
"version": "1.0.2",
"project_urls": {
"Bug Tracker": "https://github.com/pierrePalud/beetroots/issues",
"Documentation": "https://beetroots.readthedocs.io/en/latest/",
"Homepage": "https://github.com/pierrePalud/beetroots",
"Repository": "https://github.com/pierrePalud/beetroots"
},
"split_keywords": [
"bayesian inference",
" statistics",
" artificial intelligence",
" multi-line maps",
" interstellar medium"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "3406cfc0ec513b7579b98cd534166be517a84366ffa2dd70fb73fca4e13362d1",
"md5": "44e595ca68238fda0851c03c83516eb9",
"sha256": "34673afc773b8c604d020ead1981309704485e30fdfcc0dbc1665e1d81d092a9"
},
"downloads": -1,
"filename": "beetroots-1.0.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "44e595ca68238fda0851c03c83516eb9",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<3.12,>=3.9",
"size": 171541,
"upload_time": "2024-11-27T09:00:30",
"upload_time_iso_8601": "2024-11-27T09:00:30.701558Z",
"url": "https://files.pythonhosted.org/packages/34/06/cfc0ec513b7579b98cd534166be517a84366ffa2dd70fb73fca4e13362d1/beetroots-1.0.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0d666ce7618804360b1b2854257564d9aa77ae1e35eb660679fed9f50d9325da",
"md5": "a666ec9071bc1d8e7f4b50284ef650fb",
"sha256": "acfac93c9d655571b908bac54ad06103a8048dd9ca3f9005f18039531929efe9"
},
"downloads": -1,
"filename": "beetroots-1.0.2.tar.gz",
"has_sig": false,
"md5_digest": "a666ec9071bc1d8e7f4b50284ef650fb",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<3.12,>=3.9",
"size": 114505,
"upload_time": "2024-11-27T09:00:32",
"upload_time_iso_8601": "2024-11-27T09:00:32.870724Z",
"url": "https://files.pythonhosted.org/packages/0d/66/6ce7618804360b1b2854257564d9aa77ae1e35eb660679fed9f50d9325da/beetroots-1.0.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-11-27 09:00:32",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "pierrePalud",
"github_project": "beetroots",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "beetroots"
}