ROC、AUC、K-S

#標題中的幾個指標常用來衡量一個風控模型的優劣。

信貸場景下,某模型將一批客戶分為了兩類,一類是好客戶,一類是壞客戶,比如用logistic回歸預測客戶違約率,概率大於0.5的認為是壞客戶,小於等於0.5的認為是好客戶,那麼如何評判該模型對客戶的分類準確性呢?

我們都期望模型能達到這樣一個目的:誤殺率最低,漏網率最低,同時通過率最高,即誤殺的好客戶的數量最少並且正確識別出全部的壞客戶,但是這事兒好像不太好辦啊,只能奢求儘可能的接近這兩個目標吧。

先定義4個指標,

1.將好客戶識別為好客戶的情況,稱為真陽性,true positive;

2.將壞客戶識別為壞客戶的情況,稱為真陰性,true negative;

3.將好客戶識別為壞客戶的情況,即誤殺,稱為假陰性,false negative;

4.將壞客戶識別為好客戶的情況,即漏網,稱為假陽性,false positive。

#表中數值瞎編的,一看模型就不靠譜

ROC

ROC全稱是receiver operator characteristic,它是一個二維坐標軸中的曲線,橫坐標是假陽性率,縱坐標是真陽性率,如上圖中的第二個折線圖。

以邏輯回歸舉例,模型訓練完成之後計算每一個客戶的違約率,然後將這些客戶按照概率大小進行排序,並分成10等份(其他等份也可以),再計算每等份中的真陽性率和假陽性率,還要計算累計率值,用真陽性率和假陽性率的累計做為坐標組成的曲線就是ROC曲線。AUC值就是ROC曲線下放的面積值。

#假陽性率指的是漏網的壞客戶佔總壞客戶數的比例,真陽性率指的是正確判斷為好客戶佔總好客戶數的比率

假如給定一個FPR,模型得出的TPR越大越好咯。

#計算真假陽性率的前提是得先給出一個值,比如認為概率大於20%的就是壞客戶,那麼這時候將客戶按概率排序後,就認為20%以內的都是好客戶,然後再看看20%以內的客戶實際分布情況,真實好客戶佔總好客戶數的比例,真壞客戶佔總壞客戶數的比例。

ROC曲線下的面積就是AUC,即area under roc curve,也叫C-統計量,根據前輩們的經驗,AUC大於0.75的時候,模型是比較可靠的。

K-S曲線與K-S值

如上圖中第一個折線圖。

用10等份(即根據模型計算的概率排序後的客戶累積數)做為橫坐標,用真陽性率和假陽性率的累計值分別做為縱坐標就得到兩個曲線,即兩條洛倫茲曲線,用每等份下的真陽性率減去假陽性率後得到的值與橫坐標即10等份組成的曲線就是KS曲線。ks值就是ks曲線中兩條曲線之間的最大間隔距離。

K-S值僅僅代表模型的分割樣本的能力,不能表示分割的是否準確,即便好壞客戶完全分錯,K-S值依然可以很高。
推薦閱讀:

Gopher China 2017 大會怎麼樣?
不明覺厲之『大數據風控』
怎樣收集所在行業的精準數據?
Android體系ID知多少?【技術類】

TAG:大数据 | 机器学习 | 风险控制 |