您好,登錄后才能下訂單哦!
在Python中,模型評估指標是衡量機器學習模型性能的關鍵工具。以下是一些常用的評估指標及其計算方法:
準確率是模型正確預測的樣本數占總樣本數的比例。它是最直觀的性能指標之一,但在類別不平衡的情況下可能會產生誤導。
from sklearn.metrics import accuracy_score
y_true = [0, 1, 1, 0, 1, 0] # 實際標簽
y_pred = [0, 1, 0, 0, 1, 1] # 預測標簽
accuracy = accuracy_score(y_true, y_pred)
print(f'Accuracy: {accuracy}')
精確率是指在所有被模型預測為正類的樣本中,實際為正類的比例。它關注的是假正例(FP)對結果的影響。
from sklearn.metrics import precision_score
precision = precision_score(y_true, y_pred)
print(f'Precision: {precision}')
召回率表示在所有實際為正類的樣本中,模型能夠正確識別出的比例。它關注的是假負例(FN)對結果的影響。
from sklearn.metrics import recall_score
recall = recall_score(y_true, y_pred)
print(f'Recall: {recall}')
F1分數是精確率和召回率的調和平均數,用于綜合評估模型的性能。它考慮了精確率和召回率兩個指標的重要性,并給出了一個單一的度量值。
from sklearn.metrics import f1_score
f1 = f1_score(y_true, y_pred)
print(f'F1 Score: {f1}')
混淆矩陣是一個表格,總結了分類模型的表現,通過比較預測值和實際值。它為我們提供了一個模型表現的直觀表示,幫助識別模型的錯誤之處。
from sklearn.metrics import confusion_matrix
cm = confusion_matrix(y_true, y_pred)
print(cm)
ROC曲線展示了模型在不同閾值下的真正例率(Recall)與假正例率(False Positive Rate, FPR)之間的關系。AUC是ROC曲線下的面積,AUC值越接近1,模型的表現越好。
from sklearn.metrics import roc_auc_score, roc_curve
fpr, tpr, thresholds = roc_curve(y_test, y_prob)
roc_auc = auc(fpr, tpr)
plt.plot(fpr, tpr, color='darkorange', lw=2, label=f'ROC curve (area = {roc_auc:.2f})')
plt.show()
這些指標可以幫助你全面評估模型的性能,選擇合適的評估指標對于理解模型性能和適應不同任務至關重要。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。