精確率與召回率計算

在模型性能評估中,經常使用精確率和召回率。假設我們將數據集分為四個區域:T1部分應該是正確的卻被預測為錯誤(FP),T2部分是正確的且預測正確(TP),T3部分是錯誤的卻被預測為正確(FN),T4部分是錯誤且預測錯誤(TN)。

精確率和召回率的公式分別為:

PR曲線實現

import matplotlib.pyplot as plt
import numpy as np

labels = np.random.choice([0, 1], size=1000, p=[0.7, 0.3])
scores = np.random.rand(1000)

TP = np.cumsum(labels == 1)
FP = np.cumsum(labels == 0)
precision = TP / (TP + FP)
recall = TP / np.sum(labels)

def plot_pr_curve(recall, precision):
    ap = 0
    for i in range(len(recall) - 1):
        ap += (recall[i+1] - recall[i]) * precision[i+1]
    plt.plot(recall, precision, marker='.')
    plt.xlabel('Recall')
    plt.ylabel('Precision')
    plt.title(f'PR CurvenAverage Precision: {ap:.3f}')
    plt.grid(True)
    plt.show()

plot_pr_curve(recall, precision)

PR曲線結果分析

PR曲線結果

PR曲線的理想情況是趨近于縱軸,即在較高的召回率下保持較高的精確率。一個完美的分類器的PR曲線將是一個從(0,1)到(1,1)的直線。

ROC曲線的原理與實現

ROC曲線是另一種評估二分類模型性能的工具。它以真正例率(TPR)為縱軸,假正例率(FPR)為橫軸。TPR是指在所有實際正例中,被模型正確預測為正例的比例,而FPR是指在所有實際負例中,被模型錯誤地預測為正例的比例。

ROC曲線的實現

import numpy as np
import matplotlib.pyplot as plt
from sklearn.model_selection import train_test_split

X, y = load_pts()
plt.show()

def plot_model(X, y, clf):
    plt.scatter(X[np.argwhere(y==0).flatten(),0], X[np.argwhere(y==0).flatten(),1],s = 20, color = 'blue', edgecolor = 'k')
    plt.scatter(X[np.argwhere(y==1).flatten(),0], X[np.argwhere(y==1).flatten(),1],s = 20, color = 'red', edgecolor = 'k')
    plt.xlim(-40,40)
    plt.ylim(-40,40)
    plt.show()

plot_model(X, y, clf)

ROC曲線結果分析

ROC曲線結果

在ROC空間中,左上角(0,1)表示TPR=1和FPR=0,意味著模型完美地將所有正例判斷為正例,并且沒有錯誤地將負例判斷為正例。對角線表示隨機猜測。ROC曲線越靠近左上角,說明模型的性能越好。

實驗小結

PR曲線和ROC曲線是非常有用的二分類模型性能評價工具。PR曲線在類別不平衡的數據集上表現更優,而ROC曲線在樣本均衡的數據集上更能反映模型性能。選擇適合的數據集及評價工具,可以幫助我們更好地優化模型性能。

FAQ

  1. 問:如何選擇PR曲線和ROC曲線?

  2. 問:AUC是什么?

  3. 問:如何使用Python繪制PR曲線和ROC曲線?

以上是關于使用Python生成性能曲線的詳細指南,通過理解和實現PR曲線和ROC曲線,我們可以有效優化模型性能。

上一篇:

微信 API 的深度探討與實用案例

下一篇:

使用百度API的完整指南
#你可能也喜歡這些API文章!

我們有何不同?

API服務商零注冊

多API并行試用

數據驅動選型,提升決策效率

查看全部API→
??

熱門場景實測,選對API

#AI文本生成大模型API

對比大模型API的內容創意新穎性、情感共鳴力、商業轉化潛力

25個渠道
一鍵對比試用API 限時免費

#AI深度推理大模型API

對比大模型API的邏輯推理準確性、分析深度、可視化建議合理性

10個渠道
一鍵對比試用API 限時免費