[sklearn]性能度量之AUC值(from sklearn.metrics import roc_auc_curve)


原創博文,轉載請注明出處!

1.AUC

      AUC(Area Under ROC Curve),即ROC曲線下面積。

2.AUC意義

      若學習器A的ROC曲線被學習器B的ROC曲線包圍,則學習器B的性能優於學習器A的性能;若學習器A的ROC曲線和學習器B的ROC曲線交叉,則比較二者ROC曲線下的面積大小,即比較AUC的大小,AUC值越大,性能越好。

3.sklearn中計算AUC值的方法

  • 形式:

       from sklearn.metrics import roc_auc_score

       auc_score = roc_auc_score(y_test,y_pred)

  • 說明:
    • y_pred即可以是類別,也可以是概率。
    • roc_auc_score直接根據真實值和預測值計算auc值,省略計算roc的過程。
  1 # -*- coding: utf-8 -*-
  2 """
  3 # 作者:wanglei5205
  4 # 郵箱:wanglei5205@126.com
  5 # 博客:http://cnblogs.com/wanglei5205
  6 # github:http://github.com/wanglei5205
  7 """
  8 
  9 ### 真實值和預測值
 10 import numpy as np
 11 y_test = np.array([0,0,1,1])
 12 y_pred1 = np.array([0.3,0.2,0.25,0.7])
 13 y_pred2 = np.array([0,0,1,0])
 14 
 15 ### 性能度量auc
 16 from sklearn.metrics import roc_auc_score
 17 
 18 # 預測值是概率
 19 auc_score1 = roc_auc_score(y_test,y_pred1)
 20 print(auc_score1)
 21 
 22 # 預測值是類別
 23 auc_score2 = roc_auc_score(y_test,y_pred2)
 24 print(auc_score2)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM