關於模型檢驗的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介紹

TAG:數據分析 | 數據挖掘 | 數據分析工具 |