sepandhaghighi/pycm

Multi-class confusion matrix library in Python

What it solves

PyCM 提供了一套全面的工具,用于评估分类模型的性能。它简化了创建混淆矩阵和计算广泛统计指标的过程,以确定模型在预测不同类别时有多准确,特别是在多类别场景下。

How it works

用户可以通过提供原始数据向量(实际值与预测值标签)或预先存在的矩阵来生成混淆矩阵。该库随后会为每个类别计算详细的统计数据(如 Accuracy, F1-score, Precision, 和 Recall),以及整体统计数据(如 Kappa 和 Macro-averaged metrics)。它还包括专门的工具用于绘制矩阵并生成性能曲线——包括 ROC, Precision-Recall, Precision, Recall, 和 F1 曲线——通过使用 "One vs. Rest" 策略将多类别输出二值化。

Who it’s for

它主要设计用于数据科学家和机器学习从业者,他们需要一个强大的 "swiss-army knife" 工具,用于预测模型的分类后评估。

Highlights

  • Flexible Input: 支持输入数据向量和直接矩阵输入。
  • Extensive Metrics: 提供广泛的类别特定和整体统计参数。
  • Visualization: 使用 Matplotlib 或 Seaborn 的集成绘图功能。
  • Advanced Analysis: 包括计算最佳阈值和生成各种性能曲线(ROC, PR, F1 等)的的工具。
  • Interoperability: 支持 NumPy arrays 并可以与 MATLAB 集成。