DataScience 板


LINE

※ 引述《sxy67230 (charlesgg)》之銘言: : ※ 引述《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/eXFMug3.jpg : 藍色是sklearn 求取的面積,紅色是PR curve,看得出來其實就是在求approximately 而 : 已,這樣的好處就是避免PR曲線擾動太大的近似算法而已。 : 以上是小弟理解的物理意義有錯還請糾正 大大你好,非常感謝你的回覆,講解的很清楚, 但對於python sklearn的average percision我還是有些疑問 在average percision documentation.中有一個例子為 import numpy as np from sklearn.metrics import average_precision_score y_true = np.array([0, 0, 1, 1]) y_scores = np.array([0.1, 0.4, 0.35, 0.8]) average_precision_score(y_true, y_scores) 0.83 但用precision_recall_curve去畫圖 precision, recall, _ = precision_recall_curve(y_true, y_scores) plt.plot( recall,precision) https://imgur.com/a/XK2IPej 從圖來看曲線下面積不是0.83,這是因為python 是用近似算法算出來的所以跟實際上會有落差嗎? 另外PR curve會有固定的pattern或者形狀嗎? 以下是我用另外兩筆筆資料畫出來的 https://imgur.com/a/mMNVtot https://imgur.com/a/MGUO4zi 這形狀真的是.. 最後,我發現當precision為 0/0時 python 會計算成1,是因為分類正確才當成1嗎? 謝謝 --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.185.36.210
※ 文章網址: https://webptt.com/m.aspx?n=bbs/DataScience/M.1558154603.A.C61.html
1F:推 liton: 建議你倒出csv,自己在畫一遍,實際感受一下數據 05/18 13:37
2F:→ sxy67230: Precision 分母為0,代表你的預測完全沒正例,這樣分母 05/18 15:05
3F:→ sxy67230: 就是0,你可能要檢查你的testset或是模型。然後是的,沒 05/18 15:05
4F:→ sxy67230: 錯,sklearn 簡化了一些方便計算,所以你用AP跟pr_auc 05/18 15:05
5F:→ sxy67230: 的值不會完全相同,但是可以接受的近似解。一般來說,理 05/18 15:05
6F:→ sxy67230: 想上,類別平衡的PR_curve會是跟ROC類似的圖形,只是左 05/18 15:05
7F:→ sxy67230: 右相反。 05/18 15:05
8F:→ disney82231: 但在畫pr curve時,總有個門檻值使得precision的分 05/19 02:06
9F:→ disney82231: 母0,所以pr curve都是從左上角開始畫 05/19 02:06
10F:→ sxy67230: 喔喔喔,我以為是你直接算Precision 問說是0的情形,PR_ 05/19 08:46
11F:→ sxy67230: curve左邊會有一條凸起到1的算正常,只要整體形狀如我前 05/19 08:46
12F:→ sxy67230: 面說的一樣跟ROC比較就可以知道是否是有類別不平衡的狀 05/19 08:46
13F:→ sxy67230: 況。PR_curve越接近右上越接近F1_score等於1.0的情形 05/19 08:46
14F:→ disney82231: 好,我了解了,非常謝謝你 05/19 12:22







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:Gossiping站內搜尋

TOP