A package to calculate BCUBED precision, recall, and F1-score for clustering evaluation.
Project description
B-Cubed Metrics
What are B-Cubed Metrics
$$ Precision = \frac{1}{\sum {elements}}\sum_{i=1}^n {\frac{(count ; of ; element)^2}{count ; of ; all ; elements ; in ; cluster}} $$
$$ Recall = \frac{1}{\sum {elements}}\sum_{i=1}^n {\frac{(count ; of ; element)^2}{count ; of ; total ; elements ; from ; this ; category}} $$
$$ F-score = \frac{1}{k}\sum_{i=1}^n {\frac{2\times Precision(C)_k \times Recall(C)_k}{Precision(C)_k + Recall(C)_k}} $$
where $n$ above denotes the number of categories in the cluster and $k$ is the number of predicted clusters. $Precision(C)_k$ and $Recall(C)_k$ are the 'partial' precision and recalls for each cluster.
Installation and Use
pip install bcubed-metrics
from bcubed_metrics.bcubed import Bcubed
predicted_clustering = [
{'blue': 4, 'red': 2, 'green': 1},
{'blue': 2, 'red': 2, 'green': 3},
{'blue': 1, 'red': 5},
{'blue': 1, 'red': 2, 'green': 3}
]
ground_truth_clustering = {'blue': 8, 'red': 11, 'green': 7}
bcubed = Bcubed(predicted_clustering=predicted_clustering, ground_truth_clustering=ground_truth_clustering)
metrics = bcubed.get_metrics() # returns all metrics as dictionary
bcubed.print_metrics() # prints all metrics
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for bcubed_metrics-1.0.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c783d4f4c82b4550f6e2ec57d686495ce323df3275bb96e385cfcc8aa24e13dc |
|
MD5 | af3abe05e656307bfdcae54d8fc8bacd |
|
BLAKE2b-256 | 0b43b75c9908abcb520eb52c159268dfe628d57974c82d14f0f4914e86049683 |