Skip to main content

TakeConfusionMatrix is a tool for batched metrics calculations

Project description

TakeConfunsionMatrix

TakeConfusionMatrix is a Python package for batched Machine Learning metrics calculation and is distributed under MIT License.

Goal

The main goal of this package is to enable calculation of Machine Learning metrics for hundreds of milions of results through batch computation.

Features

The current package features are:

  • Confusion Matrix
    • Image output
    • Normalized output
    • Custom labelled output
  • Precision Score
  • Recall Score
  • F1-Score
  • Accuracy Score (Exact Match Ratio)

Installation

Dependencies

TakeConfusionMatrix requires:

  • Python (>= 3.8)
  • Pandas (>= 1.0.4)
  • scikit-learn (>= 0.23.1)

User installation

Install the 64bit version of Python, for instance from https://www.python.org/. Then run:

pip install -U TakeConfusionMatrix

VirutalEnv installation

In order to avoid potential conflicts with other packages it is strongly recommended to use a virtual environment, e.g. python3 virtualenv (see python3 virtualenv documentation) or conda environments.

To do so, install the 64bit version of Python3 if you doesn't have it yet, then run:

python3 -m venv venv
source venv/bin/activate
pip install -U TakeConfusionMatrix

NOTE: Please note that the above instructions assume a Linux-based SO. If you are using another environment, see scikit-learn installation documentation.

Usage

Here the package's features are briefly presented. For more advanced examples, please refer to the methods documentation.

Matrix computation

# Import MetricsComputation class
from take_confusion_matrix import MetricsCalculation

# Initialize class
labels = [0, 1, 2]
mc = MetricsCalculator(labels)

# Compute matrix
y_true = [0, 1, 0, 1]
y_pred = [0, 0, 0, 0]
mc.compute_matrix(y_true, y_pred)

y_true = [0, 2, 0, 2]
y_pred = [0, 0, 0, 0]
mc.compute_matrix(y_true, y_pred)

# Generate matrix
confusion_matrix = mc.generate_confusion_matrix()
print(confusion_matrix)

Normalized matrix

confusion_matrix = mc.generate_confusion_matrix(normalize=True)

Custom labelled matrix

labels = ["class_0", "class_1", "class_2"]
confusion_matrix = mc.generate_confusion_matrix(labels=labels)

Label free matrix

confusion_matrix = mc.generate_confusion_matrix(with_labels=False)

Image matrix

mc.generate_confusion_matrix(as_image=True)

Metrics computation

# Import MetricsComputation class
from take_confusion_matrix import MetricsCalculation

# Initialize class
labels = [0, 1, 2]
mc = MetricsCalculator(labels)

# Compute matrix
y_true = [0, 1, 0, 1]
y_pred = [0, 0, 0, 0]
mc.compute_matrix(y_true, y_pred)

y_true = [0, 2, 0, 2]
y_pred = [0, 0, 0, 0]
mc.compute_matrix(y_true, y_pred)

# Generate metics
metrics = mc.generate_metrics()
print(metrics)

Testing

In order to test package's features, you must download the code and change you current directory (cd) to the package's one. After that, open a terminal inside package's folder and type:

pytest

All tests are stored inside tests folders, meaning that any test folder named tests contains a test set.

Maintainer

Take's D&A Team | analytics.ped@take.net

Author

Cecília Regina Oliveira de Assis | @ceciliassis

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

TakeConfusionMatrix-0.0.10.tar.gz (7.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

TakeConfusionMatrix-0.0.10-py3-none-any.whl (9.8 kB view details)

Uploaded Python 3

File details

Details for the file TakeConfusionMatrix-0.0.10.tar.gz.

File metadata

  • Download URL: TakeConfusionMatrix-0.0.10.tar.gz
  • Upload date:
  • Size: 7.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.7.7

File hashes

Hashes for TakeConfusionMatrix-0.0.10.tar.gz
Algorithm Hash digest
SHA256 de42a2418037945a999c49907f1d815f5464715c792d3df589a86031722ab4d8
MD5 6bb73e13f53118ecf18d44ed58b52838
BLAKE2b-256 385178c38c41e6c301a76328762f0dbc4edb8f865979d4ec7268981b81fb067d

See more details on using hashes here.

File details

Details for the file TakeConfusionMatrix-0.0.10-py3-none-any.whl.

File metadata

  • Download URL: TakeConfusionMatrix-0.0.10-py3-none-any.whl
  • Upload date:
  • Size: 9.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.7.7

File hashes

Hashes for TakeConfusionMatrix-0.0.10-py3-none-any.whl
Algorithm Hash digest
SHA256 daa06dbe001e0507dc222a1fb91e0fe606899bc3be95cb38a377b8d274272860
MD5 496ed20054237b7f72aa4b41307c8f3a
BLAKE2b-256 f87cc1af084640e28572ca5d294c2585b125646ea229b965c74be5231b8b9567

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page