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: 支持 both input data vectors and direct matrix input.
  • Extensive Metrics: 提供廣泛的 class-specific 和 overall statistics parameters.
  • Visualization: 使用 Matplotlib 或 Seaborn 的集成繪圖功能。
  • Advanced Analysis: 包括計算最佳閾值和生成各種性能曲線(ROC、PR、F1 等)的工具。
  • Interoperability: 支持 NumPy arrays 並可與 MATLAB 集成。