==============================
MMU - Model-Metric-Uncertainty
==============================
**A library for the evaluation of model performance and estimation of the uncertainty on these metrics.**
.. figure:: docs/source/figs/pr_curve_mult_w_points.png
:alt: Uncertainty on the precision-recall curve
:align: center
.. image:: https://github.com/RUrlus/ModelMetricUncertainty/actions/workflows/macos.yml/badge.svg?branch=stable
:target: https://github.com/RUrlus/ModelMetricUncertainty/actions/workflows/macos.yml
:alt: MacOS build
.. image:: https://github.com/RUrlus/ModelMetricUncertainty/actions/workflows/linux.yml/badge.svg?branch=stable
:target: https://github.com/RUrlus/ModelMetricUncertainty/actions/workflows/linux.yml
:alt: Linux build
.. image:: https://github.com/RUrlus/ModelMetricUncertainty/actions/workflows/windows.yml/badge.svg?branch=stable
:target: https://github.com/RUrlus/ModelMetricUncertainty/actions/workflows/windows.yml
:alt: Windows build
.. image:: https://readthedocs.org/projects/mmu/badge/?version=latest
:target: https://mmu.readthedocs.io/en/latest/?badge=latest
:alt: Documentation
.. image:: https://img.shields.io/github/license/RUrlus/modelmetricuncertainty
:target: https://github.com/RUrlus/carma/blob/stable/LICENSE
:alt: License
.. image:: http://img.shields.io/pypi/v/mmu.svg
:target: https://pypi.org/project/mmu/
:alt: PyPi
`Documentation <https://mmu.readthedocs.io/en/latest/>`_
--------------------------------------------------------
Functionality
-------------
On a high level ``MMU`` provides two types of functionality:
* **Metrics** - functions to compute confusion matrix(ces) and binary classification metrics over classifier scores or predictions.
* **Uncertainty estimators** - functionality to compute the joint uncertainty over classification metrics.
We currently focus on binary classification models but aim to include support for other types of models and their metrics in the future.
Confusion Matrix & Metrics
**************************
Metrics consist mainly of high-performance functions to compute the confusion matrix and metrics over a single test set, multiple classification thresholds and or multiple runs.
The ``binary_metrics`` functions compute the 10 most commonly used metrics:
- Negative precision aka Negative Predictive Value (NPV)
- Positive recision aka Positive Predictive Value (PPV)
- Negative recall aka True Negative Rate (TNR) aka Specificity
- Positive recall aka True Positive Rate (TPR) aka Sensitivity
- Negative f1 score
- Positive f1 score
- False Positive Rate (FPR)
- False Negative Rate (FNR)
- Accuracy
- Mathew's Correlation Coefficient (MCC)
Uncertainty estimators
**********************
MMU provides two methods for modelling the joint uncertainty on precision and recall: Multinomial uncertainty and Bivariate-Normal.
The Multinomial approach estimates the uncertainty by computing the profile log-likelihoods scores for a grid around the precision and recall. The scores are chi2 distributed with 2 degrees of freedom which can be used to determine the confidence interval.
The Bivariate-Normal approach models the statistical uncertainty over the linearly propagated errors of the confusion matrix and the analytical covariance matrix. The resulting joint uncertainty is elliptical in nature.
Installation
------------
``mmu`` can be installed from PyPi.
.. code-block:: bash
pip install mmu
We provide wheels for:
* MacOS [x86, ARM]
* Linux
* Windows
Installing the package from source requires a C++ compiler with support for C++14.
If you have a compiler available it is advised to install without
the wheel as this enables architecture specific optimisations.
.. code-block:: bash
pip install mmu --no-binary mmu
Other build options exist, see the `Installation section <https://mmu.readthedocs.io/en/latest/installation.html>`_ of the docs.
Usage
-----
.. code-block:: python3
import mmu
# Create some example data
scores, yhat, y = mmu.generate_data(n_samples=1000)
# Compute the joint uncertainty on precision-recall curve
pr_err = mmu.PrecisionRecallCurveUncertainty.from_scores(y, scores)
# Plot the uncertainty
pr_err.plot()
See `Basics section <https://mmu.readthedocs.io/en/latest/basics.html>`_ of the docs or the `tutorial notebooks <https://github.com/RUrlus/ModelMetricUncertainty/blob/stable/notebooks>`_ for more examples.
Contributing
------------
We very much welcome contributions, please see the `contributing section <https://mmu.readthedocs.io/en/latest/contributing.html>`_ for details.
Raw data
{
"_id": null,
"home_page": "https://github.com/RUrlus/ModelMetricUncertainty",
"name": "mmu",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": "",
"keywords": "uncertainty classification metrics",
"author": "Ralph Urlus",
"author_email": "rurlus.dev@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/50/40/d71f3773b3bd76db632e3f8693a101a8f4a4c0786a9240969ec73cdda6e3/mmu-0.1.2.tar.gz",
"platform": "any",
"description": "==============================\nMMU - Model-Metric-Uncertainty\n==============================\n\n**A library for the evaluation of model performance and estimation of the uncertainty on these metrics.**\n\n.. figure:: docs/source/figs/pr_curve_mult_w_points.png\n :alt: Uncertainty on the precision-recall curve\n :align: center\n\n.. image:: https://github.com/RUrlus/ModelMetricUncertainty/actions/workflows/macos.yml/badge.svg?branch=stable\n :target: https://github.com/RUrlus/ModelMetricUncertainty/actions/workflows/macos.yml\n :alt: MacOS build\n.. image:: https://github.com/RUrlus/ModelMetricUncertainty/actions/workflows/linux.yml/badge.svg?branch=stable\n :target: https://github.com/RUrlus/ModelMetricUncertainty/actions/workflows/linux.yml\n :alt: Linux build\n.. image:: https://github.com/RUrlus/ModelMetricUncertainty/actions/workflows/windows.yml/badge.svg?branch=stable\n :target: https://github.com/RUrlus/ModelMetricUncertainty/actions/workflows/windows.yml\n :alt: Windows build\n.. image:: https://readthedocs.org/projects/mmu/badge/?version=latest\n :target: https://mmu.readthedocs.io/en/latest/?badge=latest\n :alt: Documentation\n.. image:: https://img.shields.io/github/license/RUrlus/modelmetricuncertainty\n :target: https://github.com/RUrlus/carma/blob/stable/LICENSE\n :alt: License\n.. image:: http://img.shields.io/pypi/v/mmu.svg\n :target: https://pypi.org/project/mmu/\n :alt: PyPi\n\n`Documentation <https://mmu.readthedocs.io/en/latest/>`_\n--------------------------------------------------------\n\nFunctionality\n-------------\n\nOn a high level ``MMU`` provides two types of functionality:\n\n* **Metrics** - functions to compute confusion matrix(ces) and binary classification metrics over classifier scores or predictions.\n* **Uncertainty estimators** - functionality to compute the joint uncertainty over classification metrics.\n\nWe currently focus on binary classification models but aim to include support for other types of models and their metrics in the future.\n\nConfusion Matrix & Metrics\n**************************\n\nMetrics consist mainly of high-performance functions to compute the confusion matrix and metrics over a single test set, multiple classification thresholds and or multiple runs.\n\nThe ``binary_metrics`` functions compute the 10 most commonly used metrics:\n\n- Negative precision aka Negative Predictive Value (NPV)\n- Positive recision aka Positive Predictive Value (PPV)\n- Negative recall aka True Negative Rate (TNR) aka Specificity\n- Positive recall aka True Positive Rate (TPR) aka Sensitivity\n- Negative f1 score\n- Positive f1 score\n- False Positive Rate (FPR)\n- False Negative Rate (FNR)\n- Accuracy\n- Mathew's Correlation Coefficient (MCC)\n\nUncertainty estimators\n**********************\n\nMMU provides two methods for modelling the joint uncertainty on precision and recall: Multinomial uncertainty and Bivariate-Normal.\n\nThe Multinomial approach estimates the uncertainty by computing the profile log-likelihoods scores for a grid around the precision and recall. The scores are chi2 distributed with 2 degrees of freedom which can be used to determine the confidence interval.\n\nThe Bivariate-Normal approach models the statistical uncertainty over the linearly propagated errors of the confusion matrix and the analytical covariance matrix. The resulting joint uncertainty is elliptical in nature.\n\nInstallation\n------------\n\n``mmu`` can be installed from PyPi.\n\n.. code-block:: bash\n\n pip install mmu\n\nWe provide wheels for:\n\n* MacOS [x86, ARM]\n* Linux\n* Windows \n\nInstalling the package from source requires a C++ compiler with support for C++14.\nIf you have a compiler available it is advised to install without\nthe wheel as this enables architecture specific optimisations.\n\n.. code-block:: bash\n\n pip install mmu --no-binary mmu\n\nOther build options exist, see the `Installation section <https://mmu.readthedocs.io/en/latest/installation.html>`_ of the docs.\n\nUsage\n-----\n\n.. code-block:: python3\n\n import mmu\n\n # Create some example data\n scores, yhat, y = mmu.generate_data(n_samples=1000)\n\n # Compute the joint uncertainty on precision-recall curve\n pr_err = mmu.PrecisionRecallCurveUncertainty.from_scores(y, scores)\n \n # Plot the uncertainty\n pr_err.plot()\n\nSee `Basics section <https://mmu.readthedocs.io/en/latest/basics.html>`_ of the docs or the `tutorial notebooks <https://github.com/RUrlus/ModelMetricUncertainty/blob/stable/notebooks>`_ for more examples.\n\nContributing\n------------\n\nWe very much welcome contributions, please see the `contributing section <https://mmu.readthedocs.io/en/latest/contributing.html>`_ for details.\n",
"bugtrack_url": null,
"license": "Apache-2",
"summary": "Compute uncertainties on classification model metrics.",
"version": "0.1.2",
"split_keywords": [
"uncertainty",
"classification",
"metrics"
],
"urls": [
{
"comment_text": "",
"digests": {
"md5": "9a1e7dfbe826374809a94aa59e9cadc9",
"sha256": "e14fd704892b576af6de52acff25d9ab5587a249f7092035a6b8c1f047ba64aa"
},
"downloads": -1,
"filename": "mmu-0.1.2-cp310-cp310-macosx_10_13_x86_64.whl",
"has_sig": false,
"md5_digest": "9a1e7dfbe826374809a94aa59e9cadc9",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.7",
"size": 194849,
"upload_time": "2022-12-21T14:15:22",
"upload_time_iso_8601": "2022-12-21T14:15:22.622932Z",
"url": "https://files.pythonhosted.org/packages/7e/95/22be570bbac6e20d18fd282d6bcd14550b71b47499fdd4eac0d041b5d366/mmu-0.1.2-cp310-cp310-macosx_10_13_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "46f92cec6e048cb1aaff1fccdb71b3cd",
"sha256": "af3816287c2b664fa346568baf457f5815334fc9156a3183a8b1c94e7d440749"
},
"downloads": -1,
"filename": "mmu-0.1.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "46f92cec6e048cb1aaff1fccdb71b3cd",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.7",
"size": 313974,
"upload_time": "2022-12-21T14:15:24",
"upload_time_iso_8601": "2022-12-21T14:15:24.292518Z",
"url": "https://files.pythonhosted.org/packages/d1/f2/087630df468c04869b38bbac4d3525e503ba02ad1d027141543ef9853ab6/mmu-0.1.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "4b90a7c6100c3fb5982a7895e2e9d903",
"sha256": "ab95725d1370aea991d6587d0ca924f0631c72ceaf2ca9e7ffbe0ec4af7c3ff2"
},
"downloads": -1,
"filename": "mmu-0.1.2-cp310-cp310-win_amd64.whl",
"has_sig": false,
"md5_digest": "4b90a7c6100c3fb5982a7895e2e9d903",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.7",
"size": 184283,
"upload_time": "2022-12-21T14:15:25",
"upload_time_iso_8601": "2022-12-21T14:15:25.422009Z",
"url": "https://files.pythonhosted.org/packages/a1/0a/c567da305e8bfdfb7dac4271d14d08044e150dfba04230edde669b894989/mmu-0.1.2-cp310-cp310-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "24fbdab9ceb87db7b906a0548d6c80f4",
"sha256": "887afd31ed7dde1f610770104a3765d8e14d87e9e77e0bf586523eb0de90b2f0"
},
"downloads": -1,
"filename": "mmu-0.1.2-cp311-cp311-macosx_10_13_x86_64.whl",
"has_sig": false,
"md5_digest": "24fbdab9ceb87db7b906a0548d6c80f4",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.7",
"size": 194853,
"upload_time": "2022-12-21T14:15:26",
"upload_time_iso_8601": "2022-12-21T14:15:26.464430Z",
"url": "https://files.pythonhosted.org/packages/eb/1a/f84cc3f152971b7a1548565f6a970df5347d7039d50728144e283dd0f9b3/mmu-0.1.2-cp311-cp311-macosx_10_13_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "f448307cba5e3e5983daa6c21ae5606f",
"sha256": "6cd0167530d2c0990089728ceee88c635d33dbbcc68ad56feb1ee35e43ede077"
},
"downloads": -1,
"filename": "mmu-0.1.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "f448307cba5e3e5983daa6c21ae5606f",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.7",
"size": 313925,
"upload_time": "2022-12-21T14:15:27",
"upload_time_iso_8601": "2022-12-21T14:15:27.833404Z",
"url": "https://files.pythonhosted.org/packages/24/9a/8bfd57aaf17cf89d2008a56e8826f3c759c6466611d3d05321302a924627/mmu-0.1.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "9b5764d47a4a02fe396432714d65434a",
"sha256": "7045e122b0bc78b8ee512f7be780539f20aea2ac9c7c22061bc6075a4ccc9db2"
},
"downloads": -1,
"filename": "mmu-0.1.2-cp311-cp311-win_amd64.whl",
"has_sig": false,
"md5_digest": "9b5764d47a4a02fe396432714d65434a",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.7",
"size": 184300,
"upload_time": "2022-12-21T14:15:29",
"upload_time_iso_8601": "2022-12-21T14:15:29.191083Z",
"url": "https://files.pythonhosted.org/packages/0d/2a/a94c1c0b2dc6c443a207667f4d848e45e011c51badf4e3ee3d5360b8beaa/mmu-0.1.2-cp311-cp311-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "3c651adc6b5951dc0b1ff42ce6eb732c",
"sha256": "735127c6a7e63c34760904ae4f969475651fd5cda40d9321eac32b353234d7de"
},
"downloads": -1,
"filename": "mmu-0.1.2-cp37-cp37m-macosx_10_13_x86_64.whl",
"has_sig": false,
"md5_digest": "3c651adc6b5951dc0b1ff42ce6eb732c",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": ">=3.7",
"size": 191131,
"upload_time": "2022-12-21T14:15:30",
"upload_time_iso_8601": "2022-12-21T14:15:30.368041Z",
"url": "https://files.pythonhosted.org/packages/13/2d/9e88491046f892e25e40bdfc0ee2eb31f6af7a85ef5f2c441efced18276c/mmu-0.1.2-cp37-cp37m-macosx_10_13_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "ad00eba837add6b6ee2dc16d1f5677e5",
"sha256": "19c974db3b6fd02c85209e18351c06bec6eb989720e1cb15149c23ffcec7b74b"
},
"downloads": -1,
"filename": "mmu-0.1.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "ad00eba837add6b6ee2dc16d1f5677e5",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": ">=3.7",
"size": 320034,
"upload_time": "2022-12-21T14:15:31",
"upload_time_iso_8601": "2022-12-21T14:15:31.451114Z",
"url": "https://files.pythonhosted.org/packages/9d/5a/1e61035db7c2846f5f25eeedcd023314245edb0c8bcc3e813127a12c69b7/mmu-0.1.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "203c2f1e397bd89ec5b50caa67332427",
"sha256": "0056d12b775869d762a11ed389a7429a6c82e6f6d37cb2306a200a2e12d7ff8b"
},
"downloads": -1,
"filename": "mmu-0.1.2-cp37-cp37m-win_amd64.whl",
"has_sig": false,
"md5_digest": "203c2f1e397bd89ec5b50caa67332427",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": ">=3.7",
"size": 183047,
"upload_time": "2022-12-21T14:15:34",
"upload_time_iso_8601": "2022-12-21T14:15:34.954814Z",
"url": "https://files.pythonhosted.org/packages/ac/fa/4fc93af190210be2d1a2f092922f960fcfb90d4c3cd35337d5cf1929be15/mmu-0.1.2-cp37-cp37m-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "f000382b52fe482f2fede6c7ca2b8270",
"sha256": "d29e425ff1ca2a04f53cf8f08d9edab0a2056efab9f85ede5f8e9bc469c57473"
},
"downloads": -1,
"filename": "mmu-0.1.2-cp38-cp38-macosx_10_13_x86_64.whl",
"has_sig": false,
"md5_digest": "f000382b52fe482f2fede6c7ca2b8270",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.7",
"size": 194892,
"upload_time": "2022-12-21T14:15:36",
"upload_time_iso_8601": "2022-12-21T14:15:36.089777Z",
"url": "https://files.pythonhosted.org/packages/d1/66/e61af7f43a2367d631889dbd6b27a5d73b9feb7ccbd3d2c7f71038d0e92c/mmu-0.1.2-cp38-cp38-macosx_10_13_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "403de3e19e0a20dca63d1129737f0b37",
"sha256": "0ebbe9ee15f8f94c98847279d5a419b0c8323c65feed665b23948ba3a8043c92"
},
"downloads": -1,
"filename": "mmu-0.1.2-cp38-cp38-macosx_10_16_x86_64.whl",
"has_sig": false,
"md5_digest": "403de3e19e0a20dca63d1129737f0b37",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.7",
"size": 194977,
"upload_time": "2022-12-21T14:15:37",
"upload_time_iso_8601": "2022-12-21T14:15:37.262372Z",
"url": "https://files.pythonhosted.org/packages/4c/04/c0dd04481dd51fc000d2a8f19d615f95d554211d5927153284c6e6d89944/mmu-0.1.2-cp38-cp38-macosx_10_16_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "5ec6a073b7d0661895bbbc7edde2abbb",
"sha256": "9d23b1efc092c7e35cb81f19626bd1bcbe9e9515ec830feef36ef9143d48358a"
},
"downloads": -1,
"filename": "mmu-0.1.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "5ec6a073b7d0661895bbbc7edde2abbb",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.7",
"size": 313440,
"upload_time": "2022-12-21T14:15:38",
"upload_time_iso_8601": "2022-12-21T14:15:38.618373Z",
"url": "https://files.pythonhosted.org/packages/59/d1/04d52143e6cbf1955368cdd111bfc1392fcf00b2b87cf3f5e88adc90c4a8/mmu-0.1.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "51916ef5c4de6e0c00f238b6cf32fb51",
"sha256": "ac176ddc1816c5f881692e65ed5fc5f46803a9fc5d2222283a027e3b0c36a9c8"
},
"downloads": -1,
"filename": "mmu-0.1.2-cp38-cp38-win_amd64.whl",
"has_sig": false,
"md5_digest": "51916ef5c4de6e0c00f238b6cf32fb51",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.7",
"size": 184233,
"upload_time": "2022-12-21T14:15:39",
"upload_time_iso_8601": "2022-12-21T14:15:39.747112Z",
"url": "https://files.pythonhosted.org/packages/5d/d9/c1df5d2be4e34c82bf9ba58c1ef21f623b9bc8d70b415588ef22fc8ee795/mmu-0.1.2-cp38-cp38-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "a0770df9dbb2487d2aed9071afc4002a",
"sha256": "c04db2ad4b5b2bb3fdd7db90728753e9ffdf5b2cccec7021cfde23c7cb24d169"
},
"downloads": -1,
"filename": "mmu-0.1.2-cp39-cp39-macosx_10_13_x86_64.whl",
"has_sig": false,
"md5_digest": "a0770df9dbb2487d2aed9071afc4002a",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.7",
"size": 194959,
"upload_time": "2022-12-21T14:15:40",
"upload_time_iso_8601": "2022-12-21T14:15:40.821945Z",
"url": "https://files.pythonhosted.org/packages/e8/b3/d7fdfac93b9824b4507bf7339b0b647246cdef50df4a69c10f6460f203b6/mmu-0.1.2-cp39-cp39-macosx_10_13_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "76410216a2c8a9929cc307b1b5ec3e1b",
"sha256": "8ee5b99c9c0aa28d35d6a2cbacff19f1fae9fb9fe65d0cced03ee823b621c0aa"
},
"downloads": -1,
"filename": "mmu-0.1.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "76410216a2c8a9929cc307b1b5ec3e1b",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.7",
"size": 314147,
"upload_time": "2022-12-21T14:15:41",
"upload_time_iso_8601": "2022-12-21T14:15:41.888906Z",
"url": "https://files.pythonhosted.org/packages/12/d9/175c772be3053374761446855ece8740dbcfd719d24f0cc6b0891e9691bf/mmu-0.1.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "7b37cbc0fe6e8ee0894389408e5d30ae",
"sha256": "c8387d9e0e7bb41fa7f3aa4eba2b788b8cc49a25fb1ba5f117548f82f159afaa"
},
"downloads": -1,
"filename": "mmu-0.1.2-cp39-cp39-win_amd64.whl",
"has_sig": false,
"md5_digest": "7b37cbc0fe6e8ee0894389408e5d30ae",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.7",
"size": 184343,
"upload_time": "2022-12-21T14:15:42",
"upload_time_iso_8601": "2022-12-21T14:15:42.995674Z",
"url": "https://files.pythonhosted.org/packages/3e/9c/f0a7a875a0e525ab359dc9bc8f5e950077781df619b0331835f879bd3eb4/mmu-0.1.2-cp39-cp39-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "3ab513f297c966165ef43fcb8b5715b3",
"sha256": "e1b4ff24d98b8cbe8a4148a0855962d8d01c0929ecb152c29e3097a9cdb4c150"
},
"downloads": -1,
"filename": "mmu-0.1.2.tar.gz",
"has_sig": false,
"md5_digest": "3ab513f297c966165ef43fcb8b5715b3",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 2136857,
"upload_time": "2022-12-21T14:15:44",
"upload_time_iso_8601": "2022-12-21T14:15:44.462065Z",
"url": "https://files.pythonhosted.org/packages/50/40/d71f3773b3bd76db632e3f8693a101a8f4a4c0786a9240969ec73cdda6e3/mmu-0.1.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2022-12-21 14:15:44",
"github": true,
"gitlab": false,
"bitbucket": false,
"github_user": "RUrlus",
"github_project": "ModelMetricUncertainty",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "mmu"
}