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.4.tar.gz (7.1 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.4-py3-none-any.whl (9.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: TakeConfusionMatrix-0.0.4.tar.gz
  • Upload date:
  • Size: 7.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.3.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.2

File hashes

Hashes for TakeConfusionMatrix-0.0.4.tar.gz
Algorithm Hash digest
SHA256 34d36e652b56bd06e6bc899fa98366f2d119af459e20ce4e34b633d9b9f6291a
MD5 bfb6e3ca3df2dd79c2f3eb9554f3ad51
BLAKE2b-256 6b4ac28a93499adf05fa91271d90993ed08a9aff32a8efe6801e5f258edfce93

See more details on using hashes here.

File details

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

File metadata

  • Download URL: TakeConfusionMatrix-0.0.4-py3-none-any.whl
  • Upload date:
  • Size: 9.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.3.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.2

File hashes

Hashes for TakeConfusionMatrix-0.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 2bfd4a7ab4b1462fa7db7d3d58eee9a2fe3fb46e37e2180e006ec898814123cc
MD5 7ce5aedf05737c6e1caa09423522c568
BLAKE2b-256 879765c5dd91c4d40bde3a65bc9eee9f09307f4f65f9c7ce6305fb4c70b85a60

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