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.6.tar.gz (7.2 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.6-py3-none-any.whl (9.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: TakeConfusionMatrix-0.0.6.tar.gz
  • Upload date:
  • Size: 7.2 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.6.tar.gz
Algorithm Hash digest
SHA256 c5eebd0823455990fc516e3cbd986892a97fb515f7d0336f3b7b486e48fdc823
MD5 e4092c73bf4aa5d6b7d8fcaa6c806cb9
BLAKE2b-256 6239a7883203af840839978ce0c242b702a899176b9fa741967d37e74883c530

See more details on using hashes here.

File details

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

File metadata

  • Download URL: TakeConfusionMatrix-0.0.6-py3-none-any.whl
  • Upload date:
  • Size: 9.7 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.6-py3-none-any.whl
Algorithm Hash digest
SHA256 839692f780b8bfec50f337a3bcfa3c1d53657feabba207c917a4bd11e6e56e21
MD5 f032a1b3e781faa7b38696dcc56bf62b
BLAKE2b-256 f38b6497e020f642111c92103d3b0749ce36863a7041555e49756db7f93d280c

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