欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

PyCM多類別混淆矩陣分析python庫功能使用探究

 更新時間:2024年01月25日 10:47:39   作者:小寒聊python  
這篇文章主要為大家介紹了python編寫的PyCM多類混淆矩陣庫,用于多類別混淆矩陣分析,幫助用戶從不同角度評價分類模型的表現(xiàn),這些指標包括但不限于準確率、召回率、F1分數(shù)、Kappa?統(tǒng)計量等,支持二分類、多分類及多標簽分類問題

今天給大家分享一個神奇的 python 庫,PyCM

https://github.com/sepandhaghighi/pycm 

PyCM多類混淆矩陣庫

PyCM是 Python Confusion Matrix 的縮寫,是一個用 Python 編寫的多類混淆矩陣庫,專門用于多類別混淆矩陣分析。

它提供了一種簡單而有效的方式來評估分類器的性能。通過分析混淆矩陣,PyCM 能夠提供多種統(tǒng)計指標,幫助用戶從不同角度評價分類模型的表現(xiàn)。這些指標包括但不限于準確率、召回率、F1分數(shù)、Kappa 統(tǒng)計量等,支持二分類、多分類及多標簽分類問題。

特點

PyCM 具有如下特點。

  • 多類支持

    PyCM 專門設(shè)計用于輕松處理多類混淆矩陣。與其他一些主要關(guān)注二元分類的軟件包不同,PyCM 使用戶能夠在涉及多個類的場景中評估模型。

  • 多功能性

    PyCM 是一個多功能庫,除了基本的混淆矩陣計算之外,還支持廣泛的功能。PyCM 具有可視化、比較、參數(shù)推薦和多標簽等功能,為深入模型評估提供了全面的工具包。

  • 廣泛的指標集

    PyCM 提供了廣泛的指標集來評估模型性能。從準確度、精確度、召回率和 F1 分數(shù)等標準指標到標記性和信息性等高級指標,PyCM 提供了模型優(yōu)缺點的整體視圖。這些豐富的指標增強了分析的粒度,使用戶能夠就模型改進做出明智的決策。

庫的安裝

可以直接通過 pip 來進行安裝。

pip install pycm

混淆矩陣

PyCM 的 ConfusionMatrix 用法涉及通過提供實際向量和預(yù)測向量、直接混淆矩陣或從文件加載信息來創(chuàng)建對象。實例化后,你可以訪問大量統(tǒng)計指標和可視化。

下面我們來看一個簡單的案例,通過提供實際向量和預(yù)測向量來實例化 ConfusionMatrix 對象。

from pycm import *
y_actu = [2, 0, 2, 2, 0, 1, 1, 2, 2, 0, 1, 2]
y_pred = [0, 0, 2, 1, 0, 2, 1, 0, 2, 0, 2, 2]
cm = ConfusionMatrix(actual_vector=y_actu, predict_vector=y_pred)
cm.classes
#[0, 1, 2]

輸出混淆矩陣

cm.print_matrix()

cm.print_normalized_matrix()

接著計算統(tǒng)計指標。

cm.stat(summary=True)

繪圖

用戶可以使用 plot 方法來可視化混淆矩陣??梢暬癁槟P驮u估和報告結(jié)果增加了一層額外的可解釋性。

from matplotlib import pyplot as plt
cm.plot(cmap=plt.cm.Greens, number_label=True, plot_lib="matplotlib")
cm.plot(cmap=plt.cm.Reds, normalized=True, number_label=True, plot_lib="seaborn")

ROC 曲線

在ROC曲線中,Y軸代表真陽性率,X軸代表假陽性率。因此,理想的點位于曲線的左上方,曲線下方的面積越大,代表性能越好。ROC 曲線是二元分類器性能的圖形表示。

在 PyCM 中,ROCCurve 基于 “One vs. Rest” 策略對輸出進行二值化,為多類分類器提供 ROC 擴展。獲取實際標簽向量、正類的目標概率估計以及類的有序標簽列表,該方法能夠計算并繪制不同判別閾值的 TPR-FPR 對,并計算 ROC 曲線下的面積。

crv = ROCCurve(actual_vector=np.array([1, 1, 2, 2]), probs=np.array([[0.1, 0.9], [0.4, 0.6], [0.35, 0.65], [0.8, 0.2]]), classes=[2, 1])
crv.thresholds
#[0.1, 0.2, 0.35, 0.4, 0.6, 0.65, 0.8, 0.9]
auc_trp = crv.area()
auc_trp[1]
#0.75

以上就是PyCM多類別混淆矩陣分析python庫功能使用探究的詳細內(nèi)容,更多關(guān)于python PyCM多類別混淆矩陣的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評論