![UNCERTAINTY WIZARD](https://github.com/testingautomated-usi/uncertainty-wizard/raw/main/docs/uwiz_logo.PNG)
<p align="center">
<a href="https://black.readthedocs.io/en/stable/" alt="Code Style: Black">
<img src="https://img.shields.io/badge/code%20style-black-000000.svg" /></a>
<a href="https://choosealicense.com/licenses/mit/" alt="License: MIT">
<img src="https://img.shields.io/badge/license-MIT-green.svg" /></a>
<a href="https://github.com/HunterMcGushion/docstr_coverage" alt="Docstr-Coverage: 100%">
<img src="https://img.shields.io/badge/docstr--coverage-100%25-brightgreen.svg" /></a>
<img src="https://github.com/testingautomated-usi/uncertainty-wizard/workflows/Unit%20Tests/badge.svg" />
<a href='https://uncertainty-wizard.readthedocs.io/en/latest/?badge=latest'>
<img src='https://readthedocs.org/projects/uncertainty-wizard/badge/?version=latest' alt='Documentation Status' />
</a>
<a href="https://codecov.io/gh/testingautomated-usi/uncertainty-wizard">
<img src="https://codecov.io/gh/testingautomated-usi/uncertainty-wizard/branch/main/graph/badge.svg?token=TWV2TCRE3E"/>
</a>
<a href="https://pypi.org/project/uncertainty-wizard/">
<img alt="PyPI" src="https://img.shields.io/pypi/v/uncertainty-wizard">
</a>
</p>
<p align="center" style=" height: 40px; line-height: 40px">
<img src="https://github.githubassets.com/images/icons/emoji/unicode/1f389.png" height=40px/>
<img src="https://github.githubassets.com/images/icons/emoji/unicode/1f947.png" height=40px/>
Best Paper Award at ICST 2021 - Testing Tool Track
<img src="https://github.githubassets.com/images/icons/emoji/unicode/1f947.png" height=40px/>
<img src="https://github.githubassets.com/images/icons/emoji/unicode/1f389.png" height=40px/>
</p>
Uncertainty wizard is a plugin on top of `tensorflow.keras`,
allowing to easily and efficiently create uncertainty-aware deep neural networks:
* Plain Keras Syntax: Use the layers and APIs you know and love.
* Conversion from keras: Convert existing keras models into uncertainty aware models.
* Smart Randomness: Use the same model for point predictions and sampling based inference.
* Fast ensembles: Train and evaluate deep ensembles lazily loaded and using parallel processing.
* Super easy setup: Pip installable. Only tensorflow as dependency.
#### Installation
It's as easy as `pip install uncertainty-wizard`
#### Requirements
`uncertainty-wizard` is tested on python 3.8 and a recent tensorflow versions. Earlier versions (python 3.6+ and tensorflow 2.3+) should mostly work as well, but may require some mild tweaks.
Note: There's currently a known issue regarding multi-gpu usage and tensorflow>=2.10. For using Multi-Device GPU config, please
fall back to `tensorflow==2.9.0` and stay tuned for changes in issue [#75](https://github.com/testingautomated-usi/uncertainty-wizard/issues/75).
#### Documentation
Our documentation is deployed to
[uncertainty-wizard.readthedocs.io](https://uncertainty-wizard.readthedocs.io/).
In addition, as uncertainty wizard has a 100% docstring coverage on public method and classes,
your IDE will be able to provide you with a good amount of docs out of the box.
You may also want to check out the technical tool paper [(preprint)](https://arxiv.org/abs/2101.00982),
describing uncertainty wizard functionality and api as of version `v0.1.0`.
#### Examples
A set of small and easy examples, perfect to get started can be found in the
[models user guide](https://uncertainty-wizard.readthedocs.io/en/latest/user_guide_models.html)
and the [quantifiers user guide](https://uncertainty-wizard.readthedocs.io/en/latest/user_guide_quantifiers.html).
Larger and examples are also provided - and you can run them in colab right away.
You can find them here: [Jupyter examples](https://uncertainty-wizard.readthedocs.io/en/latest/examples.html).
#### Authors and Papers
<!--- Dont forget to update sphinx documentation when changing this paragraph -->
Uncertainty wizard was developed by Michael Weiss and Paolo Tonella at USI (Lugano, Switzerland).
If you use it for your research, please cite these papers:
@inproceedings{Weiss2021FailSafe,
title={Fail-safe execution of deep learning based systems through uncertainty monitoring},
author={Weiss, Michael and Tonella, Paolo},
booktitle={2021 14th IEEE Conference on Software Testing, Verification and Validation (ICST)},
pages={24--35},
year={2021},
organization={IEEE}
}
@inproceedings{Weiss2021UncertaintyWizard,
title={Uncertainty-wizard: Fast and user-friendly neural network uncertainty quantification},
author={Weiss, Michael and Tonella, Paolo},
booktitle={2021 14th IEEE Conference on Software Testing, Verification and Validation (ICST)},
pages={436--441},
year={2021},
organization={IEEE}
}
The first paper [(preprint)](https://arxiv.org/abs/2102.00902) provides
an empricial study comparing the approaches implemented in uncertainty wizard,
and a list of lessons learned useful for reasearchers working with uncertainty wizard.
The second paper [(preprint)](https://arxiv.org/abs/2101.00982) is a technical tool paper,
providing a more detailed discussion of uncertainty wizards api and implementation.
References to the original work introducing the techniques implemented
in uncertainty wizard are provided in the papers listed above.
#### Contributing
Issues and PRs are welcome! Before investing a lot of time for a PR, please open an issue first, describing your contribution.
This way, we can make sure that the contribution fits well into this repository.
We also mark issues which are great to start contributing as as [good first issues](https://github.com/testingautomated-usi/uncertainty-wizard/contribute).
If you want to implement an existing issue, don't forget to comment on it s.t. everyone knows that you are working on it.
Raw data
{
"_id": null,
"home_page": "https://github.com/testingautomated-usi/uncertainty_wizard",
"name": "uncertainty-wizard",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": "",
"keywords": "",
"author": "Michael Weiss",
"author_email": "code@mweiss.ch",
"download_url": "https://files.pythonhosted.org/packages/39/b8/f7dc5d5212c1e6d94cae9d151a3fb11c11e32e09c13e517d881529f0c623/uncertainty-wizard-0.3.2.tar.gz",
"platform": null,
"description": "![UNCERTAINTY WIZARD](https://github.com/testingautomated-usi/uncertainty-wizard/raw/main/docs/uwiz_logo.PNG)\n\n<p align=\"center\">\n <a href=\"https://black.readthedocs.io/en/stable/\" alt=\"Code Style: Black\">\n <img src=\"https://img.shields.io/badge/code%20style-black-000000.svg\" /></a>\n <a href=\"https://choosealicense.com/licenses/mit/\" alt=\"License: MIT\">\n <img src=\"https://img.shields.io/badge/license-MIT-green.svg\" /></a>\n <a href=\"https://github.com/HunterMcGushion/docstr_coverage\" alt=\"Docstr-Coverage: 100%\">\n <img src=\"https://img.shields.io/badge/docstr--coverage-100%25-brightgreen.svg\" /></a>\n <img src=\"https://github.com/testingautomated-usi/uncertainty-wizard/workflows/Unit%20Tests/badge.svg\" />\n <a href='https://uncertainty-wizard.readthedocs.io/en/latest/?badge=latest'>\n <img src='https://readthedocs.org/projects/uncertainty-wizard/badge/?version=latest' alt='Documentation Status' />\n </a>\n <a href=\"https://codecov.io/gh/testingautomated-usi/uncertainty-wizard\">\n <img src=\"https://codecov.io/gh/testingautomated-usi/uncertainty-wizard/branch/main/graph/badge.svg?token=TWV2TCRE3E\"/>\n </a>\n <a href=\"https://pypi.org/project/uncertainty-wizard/\">\n <img alt=\"PyPI\" src=\"https://img.shields.io/pypi/v/uncertainty-wizard\">\n </a>\n</p>\n\n<p align=\"center\" style=\" height: 40px; line-height: 40px\">\n <img src=\"https://github.githubassets.com/images/icons/emoji/unicode/1f389.png\" height=40px/>\n <img src=\"https://github.githubassets.com/images/icons/emoji/unicode/1f947.png\" height=40px/>\n Best Paper Award at ICST 2021 - Testing Tool Track\n <img src=\"https://github.githubassets.com/images/icons/emoji/unicode/1f947.png\" height=40px/>\n <img src=\"https://github.githubassets.com/images/icons/emoji/unicode/1f389.png\" height=40px/>\n</p>\n\nUncertainty wizard is a plugin on top of `tensorflow.keras`,\n allowing to easily and efficiently create uncertainty-aware deep neural networks:\n\n* Plain Keras Syntax: Use the layers and APIs you know and love.\n* Conversion from keras: Convert existing keras models into uncertainty aware models.\n* Smart Randomness: Use the same model for point predictions and sampling based inference.\n* Fast ensembles: Train and evaluate deep ensembles lazily loaded and using parallel processing.\n* Super easy setup: Pip installable. Only tensorflow as dependency.\n\n#### Installation\n\nIt's as easy as `pip install uncertainty-wizard`\n\n#### Requirements\n`uncertainty-wizard` is tested on python 3.8 and a recent tensorflow versions. Earlier versions (python 3.6+ and tensorflow 2.3+) should mostly work as well, but may require some mild tweaks.\n\nNote: There's currently a known issue regarding multi-gpu usage and tensorflow>=2.10. For using Multi-Device GPU config, please\nfall back to `tensorflow==2.9.0` and stay tuned for changes in issue [#75](https://github.com/testingautomated-usi/uncertainty-wizard/issues/75).\n\n#### Documentation\nOur documentation is deployed to\n[uncertainty-wizard.readthedocs.io](https://uncertainty-wizard.readthedocs.io/).\nIn addition, as uncertainty wizard has a 100% docstring coverage on public method and classes,\nyour IDE will be able to provide you with a good amount of docs out of the box.\n\nYou may also want to check out the technical tool paper [(preprint)](https://arxiv.org/abs/2101.00982),\ndescribing uncertainty wizard functionality and api as of version `v0.1.0`.\n\n#### Examples\nA set of small and easy examples, perfect to get started can be found in the \n[models user guide](https://uncertainty-wizard.readthedocs.io/en/latest/user_guide_models.html)\nand the [quantifiers user guide](https://uncertainty-wizard.readthedocs.io/en/latest/user_guide_quantifiers.html).\nLarger and examples are also provided - and you can run them in colab right away.\nYou can find them here: [Jupyter examples](https://uncertainty-wizard.readthedocs.io/en/latest/examples.html).\n\n#### Authors and Papers\n<!--- Dont forget to update sphinx documentation when changing this paragraph -->\nUncertainty wizard was developed by Michael Weiss and Paolo Tonella at USI (Lugano, Switzerland).\nIf you use it for your research, please cite these papers:\n\n @inproceedings{Weiss2021FailSafe, \n title={Fail-safe execution of deep learning based systems through uncertainty monitoring},\n author={Weiss, Michael and Tonella, Paolo},\n booktitle={2021 14th IEEE Conference on Software Testing, Verification and Validation (ICST)},\n pages={24--35},\n year={2021},\n organization={IEEE} \n } \n\n @inproceedings{Weiss2021UncertaintyWizard, \n title={Uncertainty-wizard: Fast and user-friendly neural network uncertainty quantification},\n author={Weiss, Michael and Tonella, Paolo},\n booktitle={2021 14th IEEE Conference on Software Testing, Verification and Validation (ICST)},\n pages={436--441},\n year={2021},\n organization={IEEE}\n } \n\nThe first paper [(preprint)](https://arxiv.org/abs/2102.00902) provides \nan empricial study comparing the approaches implemented in uncertainty wizard,\nand a list of lessons learned useful for reasearchers working with uncertainty wizard.\nThe second paper [(preprint)](https://arxiv.org/abs/2101.00982) is a technical tool paper,\n providing a more detailed discussion of uncertainty wizards api and implementation.\n\nReferences to the original work introducing the techniques implemented \nin uncertainty wizard are provided in the papers listed above.\n\n#### Contributing\nIssues and PRs are welcome! Before investing a lot of time for a PR, please open an issue first, describing your contribution.\nThis way, we can make sure that the contribution fits well into this repository.\nWe also mark issues which are great to start contributing as as [good first issues](https://github.com/testingautomated-usi/uncertainty-wizard/contribute).\nIf you want to implement an existing issue, don't forget to comment on it s.t. everyone knows that you are working on it.\n",
"bugtrack_url": null,
"license": "",
"summary": "Quick access to uncertainty and confidence of Keras networks.",
"version": "0.3.2",
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "54f1fb0a89f6352cc7e94e0865df690baaa03ae33147401a3c1eb0e60ad9691b",
"md5": "fc495757910fd0e114bc4f28295e3d7f",
"sha256": "92287a90f9b98903645732f17a76c42bc3ba553508478a8d9727adda8a937a32"
},
"downloads": -1,
"filename": "uncertainty_wizard-0.3.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "fc495757910fd0e114bc4f28295e3d7f",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6",
"size": 49267,
"upload_time": "2023-02-03T09:46:56",
"upload_time_iso_8601": "2023-02-03T09:46:56.026104Z",
"url": "https://files.pythonhosted.org/packages/54/f1/fb0a89f6352cc7e94e0865df690baaa03ae33147401a3c1eb0e60ad9691b/uncertainty_wizard-0.3.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "39b8f7dc5d5212c1e6d94cae9d151a3fb11c11e32e09c13e517d881529f0c623",
"md5": "e1815284ad8046d7b1a811f5fdd3bc84",
"sha256": "13e51097c0f60d57516c86e29aa4ff422be60138ccb681fadce78c08d9a817fb"
},
"downloads": -1,
"filename": "uncertainty-wizard-0.3.2.tar.gz",
"has_sig": false,
"md5_digest": "e1815284ad8046d7b1a811f5fdd3bc84",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6",
"size": 39287,
"upload_time": "2023-02-03T09:46:57",
"upload_time_iso_8601": "2023-02-03T09:46:57.444644Z",
"url": "https://files.pythonhosted.org/packages/39/b8/f7dc5d5212c1e6d94cae9d151a3fb11c11e32e09c13e517d881529f0c623/uncertainty-wizard-0.3.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-02-03 09:46:57",
"github": true,
"gitlab": false,
"bitbucket": false,
"github_user": "testingautomated-usi",
"github_project": "uncertainty_wizard",
"travis_ci": false,
"coveralls": true,
"github_actions": true,
"requirements": [],
"test_requirements": [],
"lcname": "uncertainty-wizard"
}