Re: [問題] Precision-Recall curve

看板DataScience作者 (charlesgg)時間5年前 (2019/05/18 09:44), 5年前編輯推噓0(001)
留言1則, 1人參與, 5年前最新討論串2/3 (看更多)
※ 引述《disney82231 (小刀會序曲)》之銘言: : 一般在二元分類下,我們可以用ROC下面積(即AUC)來判斷模型好壞 : 但當資料不平衡情況下時,通常是畫Precision-Recall curve : 但是Precision-Recall curve有辦法計算出類似AUC的東西嗎? : 如果沒有辦法,單純用PR curve是不是無法比較模型好壞? : 我的認知是PR curve會根據不同的指標分數跟資料而有不同的形狀 : 所以沒有辦法計算出曲面下面積 : 這樣的想法是對的嗎? : 謝謝 工程上的解釋: ROC在不平衡類上,TPR主要的影響就是正例,FPR則是負例,所以ROC本質上就是一個相對 曲線的評估方法,所以其實正負例增加的分佈下,0.5的threshold在座標上也是相對移動 ,所以ROC很好判斷模型好壞標準,高於0.5就可以說他不錯。那我們求取他的AUC呢?其 實物理意義就是我隨機抽取一個正負例,正確判斷出正例的機率。 PR在Recall跟Precision都是受到正例影響,所以本身就很容易受到不平衡的影響,如果 今天不平衡類有變動,那你的評估threshold在PR上就會不同。那如果求取PR的AUC意義又 跟ROC不太相同了,因為Recall跟Percision都是正例,所以意義就是你每次取正例正確被 分類的機率,就是平均精確度(AP)。 數學上AP的公式就是 https://i.imgur.com/d2kytp9.jpg
P就是Precision,r就是Recall,所以本質意義就是你對所有Recall的Percision做積分, 那不就是你PR curve求AUC嗎? 當然,你實作sklearn的時候會發現你直接求AP跟你做PR在做AUC結果有點不同,是因為sk learn官方文件公式是長這樣 https://i.imgur.com/IrK7HTk.jpg
delta r是Recall的變化率 畫成圖做比較就是 https://i.imgur.com/ebf8qB5.jpg
藍色是sklearn 求取的面積,紅色是PR curve,看得出來其實就是在求approximately 而 已,這樣的好處就是避免PR曲線擾動太大的近似算法而已。 以上是小弟理解的物理意義有錯還請糾正 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 49.214.137.61 ※ 文章網址: https://www.ptt.cc/bbs/DataScience/M.1558143891.A.D23.html ※ 編輯: sxy67230 (101.8.210.63), 05/19/2019 12:36:51

05/19 12:37, 5年前 , 1F
更正最後一張圖x.y軸標錯
05/19 12:37, 1F
文章代碼(AID): #1StsEJqZ (DataScience)
討論串 (同標題文章)
文章代碼(AID): #1StsEJqZ (DataScience)