關於模型檢驗的ROC值和KS值的異同_ROC曲線和KS值
關於模型檢驗的ROC值和KS值的異同_ROC曲線和KS值
按我的理解,ROC曲線是累計壞佔比曲線(圖中藍色曲線)下面的面積(>0.5),KS值是累計壞佔比曲線-累計好佔比曲線差值(圖中紅色曲線)的最大值。實際上他們都是一樣的?
不知道我的理解是否有誤?謝謝!精彩解答:
ROC(Receiver Operating Characteristic Curve):接受者操作特徵曲線。
ROC曲線及AUC係數主要用來檢驗模型對客戶進行正確排序的能力。ROC曲線描述了在一定累計好客戶比例下的累計壞客戶的比例,模型的分別能力越強,ROC曲線越往左上角靠近。AUC係數表示ROC曲線下方的面積。AUC係數越高,模型的風險區分能力越強。
KS(Kolmogorov-Smirnov)檢驗:K-S檢驗主要是驗證模型對違約對象的區分能力,通常是在模型預測全體樣本的信用評分後,將全體樣本按違約與非違約分為兩部分,然後用KS統計量來檢驗這兩組樣本信用評分的分布是否有顯著差異。其他解答:
ROC值一般在0.5-1.0之間。值越大表示模型判斷準確性越高,即越接近1越好。ROC=0.5表示模型的預測能力與隨機結果沒有差別。
KS值表示了模型將+和-區分開來的能力。值越大,模型的預測準確性越好。一般,KS>0.2即可認為模型有比較好的預測準確性。解答:要弄明白ks值和auc值的關係首先要弄懂roc曲線和ks曲線是怎麼畫出來的。其實從某個角度上來講ROC曲線和KS曲線是一回事,只是橫縱坐標的取法不同而已。拿邏輯回歸舉例,模型訓練完成之後每個樣本都會得到一個類概率值(注意是類似的類),把樣本按這個類概率值排序後分成10等份,每一份單獨計算它的真正率和假正率,然後計算累計概率值,用真正率和假正率的累計做為坐標畫出來的就是ROC曲線,用10等分做為橫坐標,用真正率和假正率的累計值分別做為縱坐標就得到兩個曲線,這就是KS曲線。AUC值就是ROC曲線下放的面積值,而ks值就是ks曲線中兩條曲線之間的最大間隔距離。由於ks值能找出模型中差異最大的一個分段,因此適合用於cut_off,像評分卡這種就很適合用ks值來評估。但是ks值只能反映出哪個分段是區分最大的,而不能總體反映出所有分段的效果,因果AUC值更能勝任。數據分析培訓
推薦閱讀:
※Kylin 初體驗總結(kafka+superset+ldap)
※ClickHouse數據壓縮[譯文]
※數據可視化分析工具實現精準營銷
※數據分析的黑馬-ClickHouse介紹