一、P-R曲線
P-R曲線刻畫查准率和查全率之間的關系,查准率指的是在所有預測為正例的數據中,真正例所占的比例,查全率是指預測為真正例的數據占所有正例數據的比例。
即:查准率P=TP/(TP + FP) 查全率=TP/(TP+FN)
查准率和查全率是一對矛盾的度量,一般來說,查准率高時,查全率往往偏低,查全率高時,查准率往往偏低,例如,若希望將好瓜盡可能多選出來,則可通過增加選瓜的數量來實現,如果希望將所有的西瓜都選上,那么所有的好瓜必然都被選上了,但這樣查准率就會較低;若希望選出的瓜中好瓜比例盡可能高,則可只挑選最有把握的瓜,但這樣就難免會漏掉不少好瓜,使得查全率較低。
在很多情況下,我們可以根據學習器的預測結果對樣例進行排序,排在前面的是學習器認為最可能是正例的樣本,排在后面的是學習器認為最不可能是正例的樣本,按此順序逐個把樣本作為正例進行預測,則每次可計算當前的查全率和查准率,以查准率為y軸,以查全率為x軸,可以畫出下面的P-R曲線。

如果一個學習器的P-R曲線被另一個學習器的P-R曲線完全包住,則可斷言后者的性能優於前者,例如上面的A和B優於學習器C,但是A和B的性能無法直接判斷,但我們往往仍希望把學習器A和學習器B進行一個比較,我們可以根據曲線下方的面積大小來進行比較,但更常用的是平衡點或者是F1值。平衡點(BEP)是查准率=查全率時的取值,如果這個值較大,則說明學習器的性能較好。而F1 = 2 * P * R /( P + R ),同樣,F1值越大,我們可以認為該學習器的性能較好。
聯合建模(BJ)P-R曲線
二、P-R曲線和ROC曲線有什么區別,如何選擇呢?
說明:圖a和b是原始樣本的ROC曲線和PR曲線,圖c和d是將負樣本增加10倍后的ROC曲線和PR曲線。
1)從a和c可以看出,負樣本增加10倍后,ROC曲線變化不大。分析一下為什么變化不大,其Y軸是TPR,x軸是FPR,當固定一個threshold來計算TPR和FPR的時候,雖然負樣本增加了10倍,也就是FPR的分母雖然變大了,但是正常概率來講,這個時候超過threshold的負樣本量也會隨之增加,也就是分子也會隨之增加,所以總體FPR變化不大,從這個角度來看的話正負樣本稍微不均衡的話,對KS影響也不大,因為KS=max(TPR-FPR),這個前提是正負樣本的量都比較大的情況下,因為只有樣本量比較大的情況下,根據大數定律,計算出來的頻率才非常接近於真實的概率值,有資料顯示正負樣本都超過6000的量,計算的頻率就比較接近概率。所以在樣本量都不是很大的情況下,如果樣本還極端不均衡的話,就會有一些影響。由此可見,ROC曲線能夠盡量降低不同測試集帶來的干擾,更加客觀地衡量模型本身的性能。
2)從b和d圖可以看出,負樣本增加10倍后,PR曲線變化比較大。也分析一下為什們變化大,其Y軸是precision,x軸是recall,當負樣本增加10倍后,在racall不變的情況下,必然召回了更多的負樣本,所以精確度會大幅下降,b和d圖示也非常明顯的反映了這一狀況,所以PR曲線變化很大,所以PR曲線對正負樣本分布比較敏感。
如何選擇呢?
- 在很多實際問題中,正負樣本數量往往很不均衡。比如,計算廣告領域經常涉及轉化率模型,正樣本的數量往往是負樣本數量的1/1000,甚至1/10000。若選擇不同的測試集,P-R曲線的變化就會非常大,而ROC曲線則能夠更加穩定地反映模型本身的好壞。所以,ROC曲線的適用場景更多,被廣泛用於排序、推薦、廣告等領域。
- 但需要注意的是,選擇P-R曲線還是ROC曲線是因實際問題而異的,如果研究者希望更多地看到模型在特定數據集上的表現,P-R曲線則能夠更直觀地反映其性能。
- PR曲線比ROC曲線更加關注正樣本,而ROC則兼顧了兩者。
- AUC越大,反映出正樣本的預測結果更加靠前。(推薦的樣本更能符合用戶的喜好)
- 當正負樣本比例失調時,比如正樣本1個,負樣本100個,則ROC曲線變化不大,此時用PR曲線更加能反映出分類器性能的好壞。這個時候指的是兩個分類器,因為只有一個正樣本,所以在畫auc的時候變化可能不太大;但是在畫PR曲線的時候,因為要召回這一個正樣本,看哪個分類器同時召回了更少的負樣本,差的分類器就會召回更多的負樣本,這樣precision必然大幅下降,這樣分類器性能對比就出來了。
