# SPROUT - a Safety wraPper thROugh ensembles of UncertainTy measures
Python Framework to improve safety of classifiers by computing quantitative uncertainty in their predictions
## Aim/Concept of the Project
SPROUT implements quantitative uncertainty/confidence measures and integrates well with existing frameworks (e.g., Pandas, Scikit-Learn, PYOD, AutoGluon, and many more) that are commonly used in the machine learning domain for classification.
While designing, implementing and testing such library we made sure it would work with supervised classifiers, as well as unsupervised classifiers. Also, we created connectors for tabular datasets as well as image datasets such that those classifiers can be fed with different inputs and provide confidence measures related to the execution of many classifiers on datasets with a different structure
## Dependencies
SPROUT needs the following libraries:
- <a href="https://numpy.org/">NumPy</a>
- <a href="https://scipy.org/">SciPy</a>
- <a href="https://pandas.pydata.org/">Pandas</a>
- <a href="https://scikit-learn.org/stable/">SKLearn</a>
## Usage
SPROUT can wrap any classifier you may want to use, provided that the classifier implements scikit-learn like interfaces, namely
- classifier.predict(test_set): takes a 2D ndarray and returns an array of predictions for each item of test_set
- classifier.predict_proba(test_set): takes a 2D ndarray and returns a 2D ndarray where each line contains probabilities for a given data point in the test_set
Assuming the classifier has such a structure, a SPROUT analysis with three calculators can be set up as it can be seen in the `examples` folder
## Credits
Developed @ University of Florence, Florence, Italy
Contributors
- Tommaso Zoppi
- Leonardo Bargiotti
Raw data
{
"_id": null,
"home_page": "https://github.com/tommyippoz/SPROUT",
"name": "sprout-ml",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "machine learning,safety wrapper,safety monitor,uncertainty measures,ensamble",
"author": "Tommaso Zoppi",
"author_email": "tommaso.zoppi@unifi.it",
"download_url": "",
"platform": null,
"description": "# SPROUT - a Safety wraPper thROugh ensembles of UncertainTy measures\n\nPython Framework to improve safety of classifiers by computing quantitative uncertainty in their predictions\n\n## Aim/Concept of the Project\n\nSPROUT implements quantitative uncertainty/confidence measures and integrates well with existing frameworks (e.g., Pandas, Scikit-Learn, PYOD, AutoGluon, and many more) that are commonly used in the machine learning domain for classification. \n\nWhile designing, implementing and testing such library we made sure it would work with supervised classifiers, as well as unsupervised classifiers. Also, we created connectors for tabular datasets as well as image datasets such that those classifiers can be fed with different inputs and provide confidence measures related to the execution of many classifiers on datasets with a different structure\n\n## Dependencies\n\nSPROUT needs the following libraries:\n- <a href=\"https://numpy.org/\">NumPy</a>\n- <a href=\"https://scipy.org/\">SciPy</a>\n- <a href=\"https://pandas.pydata.org/\">Pandas</a>\n- <a href=\"https://scikit-learn.org/stable/\">SKLearn</a>\n\n## Usage\n\nSPROUT can wrap any classifier you may want to use, provided that the classifier implements scikit-learn like interfaces, namely\n- classifier.predict(test_set): takes a 2D ndarray and returns an array of predictions for each item of test_set\n- classifier.predict_proba(test_set): takes a 2D ndarray and returns a 2D ndarray where each line contains probabilities for a given data point in the test_set\n\nAssuming the classifier has such a structure, a SPROUT analysis with three calculators can be set up as it can be seen in the `examples` folder\n\n## Credits\n\nDeveloped @ University of Florence, Florence, Italy\n\nContributors\n- Tommaso Zoppi\n- Leonardo Bargiotti\n",
"bugtrack_url": null,
"license": "",
"summary": "SPROUT - a Safety wraPper thROugh ensembles of UncertainTy measures",
"version": "0.1",
"split_keywords": [
"machine learning",
"safety wrapper",
"safety monitor",
"uncertainty measures",
"ensamble"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "6b8323eee7d4256fca0f61eb25f09f5af822f34615e0ebd7127637aec4dae66f",
"md5": "47996738674cb3cabe992be4cd84feef",
"sha256": "cbf0a17e2cedfcfb332531ed1a84b8a18a79b7624ba83409e6f7581029faa272"
},
"downloads": -1,
"filename": "sprout_ml-0.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "47996738674cb3cabe992be4cd84feef",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 2793,
"upload_time": "2023-01-12T15:26:02",
"upload_time_iso_8601": "2023-01-12T15:26:02.095210Z",
"url": "https://files.pythonhosted.org/packages/6b/83/23eee7d4256fca0f61eb25f09f5af822f34615e0ebd7127637aec4dae66f/sprout_ml-0.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-01-12 15:26:02",
"github": true,
"gitlab": false,
"bitbucket": false,
"github_user": "tommyippoz",
"github_project": "SPROUT",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "sprout-ml"
}