91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

AUC計算方法與Python實現案例

發布時間:2021-03-23 11:22:09 來源:億速云 閱讀:352 作者:小新 欄目:開發技術

這篇文章給大家分享的是有關AUC計算方法與Python實現案例的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

-AUC計算方法

-AUC的Python實現方式

AUC計算方法

AUC是ROC曲線下的面積,它是機器學習用于二分類模型的評價指標,AUC反應的是模型對樣本的排序能力。它的統計意義是從所有正樣本隨機抽取一個正樣本,從所有負樣本隨機抽取一個負樣本,當前score使得正樣本排在負樣本前面的概率。

AUC的計算主要以下幾種方法:

1、計算ROC曲線下的面積。這是比較直接的一種方法,可以近似計算ROC曲線一個個小梯形的面積。幾乎不會用這種方法

2、從AUC統計意義去計算。所有的正負樣本對中,正樣本排在負樣本前面占樣本對數的比例,即這個概率值。

具體的做法就是它也是首先對prob score從大到小排序,然后令最大prob score對應的sample 的rank為n,第二大score對應sample的rank為n-1,以此類推。

然后把所有的正類樣本的rank相加,再減去M-1種兩個正樣本組合的情況。

得到的就是所有的樣本中有多少對正類樣本的score大于負類樣本的score。

最后再除以M×N。

公式如下:

AUC計算方法與Python實現案例

AUC的Python實現

通過上面方法二的公式,AUC計算的Python實現如下:

def calAUC(prob,labels):
  f = list(zip(prob,labels))
  rank = [values2 for values1,values2 in sorted(f,key=lambda x:x[0])]
  rankList = [i+1 for i in range(len(rank)) if rank[i]==1]
  posNum = 0
  negNum = 0
  for i in range(len(labels)):
    if(labels[i]==1):
      posNum+=1
    else:
      negNum+=1
  auc = 0
  auc = (sum(rankList)- (posNum*(posNum+1))/2)/(posNum*negNum)
  print(auc)
  return auc

其中輸入prob是得到的概率值,labels是分類的標簽(1,-1)

感謝各位的閱讀!關于“AUC計算方法與Python實現案例”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

鄂州市| 黄冈市| 阜平县| 公安县| 富平县| 大石桥市| 福建省| 民县| 宝应县| 界首市| 射洪县| 揭阳市| 勃利县| 塔河县| 班玛县| 乐平市| 德令哈市| 新余市| 察隅县| 彭泽县| 三台县| 闸北区| 邵东县| 巴楚县| 大宁县| 于都县| 阳新县| 南召县| 建水县| 卢湾区| 义乌市| 泗洪县| 兴城市| 新津县| 铜山县| 辛集市| 金阳县| 罗平县| 信丰县| 巴里| 宝山区|