1. 程式人生 > >這一次,真正搞懂信用評分模型(上篇)

這一次,真正搞懂信用評分模型(上篇)

工程師 集中 重要 sklearn app 目的 概率 單變量 是我

python風控評分卡建模和風控常識

https://study.163.com/course/introduction.htm?courseId=1005214003&utm_campaign=commission&utm_source=cp-400000000398149&utm_medium=share

技術分享圖片

在消金領域幹了快一年,多少需要了解一些風控。期間查閱過不少評分模型的資料,大多術語堆砌,生澀難懂。這篇文章算是真正讓我搞懂了模型是怎麽一回事,對風控有些興趣的同學,推薦一讀~

文/Sherrie

過往貸款審批的時候,審批人手中所掌握的“工具”是一些零散的信息,比如借款人的工作單位,婚姻狀況,或者大概一個月的收入是多少。常規的做法是,根據這些維度設定一個門檻標準,只要這個借款人的每個維度都滿足這些條件,就準予通過。這種做法會有一些問題:

  1. 有的借款人雖然不滿足某一些門檻條件,但可能另外一些條件特別優秀,單維度的強拒絕規則造成審批效率低下;

  2. 如何利用零散、非結構化的信息整合成科學的核額體系是一個難題;

  3. 貸後管理、資產質量分析和風險定價需要可量化的數字評價體系支持。

相應的,信用評分幫助解決了以上大部分問題:具象的個體風險被標準化,分數的存在使得審批有了最簡單易用的判斷標準;整體的信貸資產質量也有了量化指標。

”信用評分解決了生產效率的問題,也解決了生產標準化的問題“

——陳建,《現代信用卡管理》作者,現任Fair Isaac公司的亞太區技術方案總監

延續本專欄的幹貨精神,本文將探討信用評分相關的幾個基礎而關鍵的主題,分上下兩篇:

(上篇)

1、信用評分的業務定義

2、信用評分建模過程的極簡理解

3、信用評分模型常見評估指標

(下篇)

4、信用評分領域常備裝X熱詞

5、信用評分的常見應用

6、主流信用評分及其評估維度

技術分享圖片

1. 信用評分的業務定義

信用評分表面上是一個分數,實質上是一個模型。模型只是我們解決問題的手段,解決業務問題才是我們的目的。因此在真正開始之前,我們需要回答以下三個有關業務本身的核心問題:

① 評分具體應用在哪個場景?

我們通常所接觸到的評分大都用於信貸審批,即申請評分卡(A卡,Application scorecard)。同時,業內還常用的有B卡(Behavior scorecard)和C卡(Collection scorecard),分別用於貸後管理及催收管理。

A卡是使用最廣泛的,用於貸前審批階段對借款申請人的量化評估;B卡的主要任務是通過借款人的還款及交易行為,結合其他維度的數據預測借款人未來的還款能力和意願;C卡則是在借款人當前還款狀態為逾期的情況下,預測未來該筆貸款變為壞賬的概率,由此衍生出滾動率、還款率、失聯率等細分的模型。不同的評分卡,對數據的要求和所應用的建模方法會不一樣。

技術分享圖片

② 評分具體應用到怎樣的產品?

這關系到選擇怎樣的數據、選擇多長的時間窗口,怎樣界定好/壞客戶等等最基礎的問題。對於小額短期利率高的現金貸來說,逾期30天+已經非常嚴重,催回的可能性非常小,那麽相對應的模型會界定M1以上客戶為壞客戶;但對於車輛抵押貸款的借款人來說,考慮到抵押物,還很有可能還款,所以我們可能會選擇界定M2甚至M3以上的客戶為壞客戶。

③ 是否有足夠且足夠好的建模數據?

有一句行話, garbage in, garbage out。如果數據本身不具備代表性,數據缺失較多或者數據虛假,那麽擬合出來的模型可用性會非常低。同時,在購買數據服務商提供的評分模型的時候,也需要思考這個評分模型與當下業務模式的匹配度:如果用抵押貸款產品的數據做出來的模型,應用在現金貸上,那就需要小心了。

2. 信用評分建模過程的極簡理解

(作者註:我本身並非從事建模工作,有的更多的是評分應用層面的經驗,因此該部分主要寫給像我一樣只需要簡單了解建模過程的同學)

Step 1 數據準備

- 積累一個足夠大的數據樣本,且每個樣本有足夠的特征數。比如需要100個借款人的10個特征(年齡、性別等)。需要充分考慮到樣本的時效性和代表性。

- 那麽多大才為”足夠大“?應該說,沒有一個放之天下皆準的答案,取決於數據質量、模型復雜性等等。

技術分享圖片

來自Google工程師的說,想知道要多少數據才夠建模,得建個模型跑跑才知道:How-much-training-data-do-you-need(他建模得出的結論是,一個優秀的性能模型需要訓練數據的數量10倍於該模型中參數的數量)。

- 界定這些數據樣本的觀察期和表現期。觀察期是指在設定的觀察日之前的一段時間,表現期是指客戶觀察日之後的一段時間。對於信用評分而言,需要用觀察期內申請人的信用歷史及表現(X),以及表現期內申請人的還款表現(Y),通過模型擬合出X與Y之間的關系。

技術分享圖片

Step 2 數據處理

從生產環境導出的數據往往並不完美,有大量影響分析的缺失值和異常值。我們需要剔除缺失率太高的變量,剔除按業務邏輯完全不可解釋的變量等等。這是一個聽起來很簡單但實際上需要耗費大量精力的過程,會極大影響到模型準確性。

Step 3 變量分析

- 單變量分析,如應用統計學方法篩選出預測能力較高的變量,獲取自變量中對違約狀態影響最顯著的指標。經過篩選的變量將進入信用評分模型。再比如需要分析變量的分布是否大致呈正態分布,才能夠滿足後續分析的條件。

- 變量之間相關性的分析,如兩兩之間的相關性、VIF多重共線性。如果變量之間相關性顯著,會影響模型的預測效果。

“在數據分析和模型開發中,數據集合往往包含著幾百上千個潛在的、具有預測力的變量……許多變量之間往往存在高度的相關性、反映潛在的共同的信息維度。選擇代表變量的標準是該變量與其所屬的信息維度盡可能的高度相關,而與其他信息維度盡可能的低度相關。”

——《信用評分模型技術與應用》

Step 4 評分卡構建

現在我們已經擁有了一些非常“優秀”的變量,那我們怎麽利用這些變量得到我們所需要的答案呢?這是一個已知X求Y的問題,我們需要選擇一個合適的模型方法去解決和預測。常見的模型方法有線性回歸、非線性回歸分析、決策樹等等。

邏輯回歸是在信用評分卡開發中非常有代表性的模型方法。在這個模型中,經過上述篩選的每一個變量會進行證據權重轉換(WOE,下面會提到),邏輯回歸可以將我們所熟知的借款人特征轉化為一個標準的評分卡,當我們輸入這些變量的具體值的時候,可以得到相應的分數。具體轉換的過程和計算邏輯可參見:WOE信用評分卡--R語言實例(http://blog.csdn.net/qq_16365849/article/details/67632919)

3. 信用評分模型常用評估指標

模型完成後,我們不禁要問,這個模型到底有多準呢?一般信用評分卡模型評估指標大致可以分成兩類:

- 預測能力指標,用於評估模型對違約事件的預測能力,比如:

WOE/IV

ROC/AUC

K-S指標

GINI系數

- 穩定性指標,用於評估模型在訓練樣本和測試樣本中預測能力的一致性,如PSI指標。

下面我們來嘗試對這些指標進行基礎的了解。

① WOE&IV

WOE(Weight of Evidence)叫做證據權重,IV(Information Value)叫做信息價值,是一組評估變量的預測能力的指標。也就是說,當我們想要拿出證據證明“年齡”這個變量對於違約概率是否有影響的時候,可以使用這個指標評估年齡到底對違約概率的影響有多大。

下面表格展示的就是年齡、性別及婚姻狀況三個變量相關的好壞樣本數據以及計算出的對應的WOE及IV值。WOE的計算公式是:ln[(違約/總違約)/(正常/總正常)]。比如對於年齡18~25的組別,WOE=In[(131/總違約樣本數)/(1016/總正常樣本數)]。根據WOE值,可以進一步計算出IV值。

技術分享圖片

在此不對具體計算公式和邏輯進行解釋,大家可以理解成,WOE和IV都是使用樣本好壞比例的數據轉換成的指標。對詳細方法感興趣的朋友可戳這篇:http://http://blog.csdn.net/jiabiao1602/article/details/7786952402/article/details/77869524

② ROC/AUC

ROCreceiver operating characteristic curve),中文叫“接受者操作特性曲線”。

這裏需要補充的基礎知識是關於經典的混淆矩陣(confusion matrix)的內容。這個分析的經典之處在於,它超出了我們以往理解“正確率”的限制,使得我們有更多的維度去評價一個模型的預測能力。(哇喔我們已經不知不覺的涉及到了機器學習的內容)

以下的表格就是混淆矩陣的內容。怎麽來理解呢?在使用一個模型去判斷一個樣本是“正樣本”還是“負樣本”的時候,模型會輸出“正”或者“負”兩種預測,叫做預測值;而實際上這個樣本會有正樣本或者負樣本兩種情況,稱為實際值(類似我們利用模型預測“好人”及“壞人”)。預測值和實際值各有兩種情況,這兩種情況的交叉組合就形成了以下的混淆矩陣。

技術分享圖片

通過上面的矩陣,可以衍生出幾個重要的評價指標:

  • 準確率(Accuracy Rate):(TP+TN)/N。

  • 召回率(TPR,True Positive Rate):TP/(TP+FN)。在所有實際是正樣本中有多少被正確識別為正樣本。

  • 誤報率(FPR,False Positive Rate):FP/(FP+TN)。在所有實際為負樣本中有多少被錯誤識別為正樣本。

  • 查準率(Precision Rate):TP/(TP+FP)。被識別成正樣本的樣本中有多少是真的正樣本。

(更多關於混淆矩陣的評價指標:混淆矩陣(Confusion Matrix)分析http://blog.csdn.net/vesper305/article/details/44927047)

回到ROC的話題上來。以混淆矩陣中的FPR為橫坐標,以TPR為縱坐標,就可以畫出風控界知名的ROC曲線,而曲線下方的面積就是AUC(Area Under Curve)。

ROC曲線是怎麽畫出來的,這裏有一個非常棒的解釋:ROC和AUC介紹以及如何計算AUC(http://alexkong.net/2013/06/introduction-to-auc-and-roc/)。但簡單一點去理解的話,可以先嘗試理解圖像上的一點,比如圖中的A點。A點對應的是,給定一個劃分好人壞人的分數線(比如600分以上是好人),然後使用這個模型進行預測。預測的結果是,實際上為壞人且預測結果是壞人的概率是0.8,而實際是壞人卻被預測為好人的概率是0.1。由於我們可以設定不同的分數線,因此通過這種方式可以產生不同的點,這些點也就連成了ROC曲線。

技術分享圖片

按照上面的理解,那我們肯定希望被準確預測為壞人的概率越高越好,而被誤判為好人的概率越低越好,所以一個越好的分類模型,ROC曲線越接近左上方,AUC也越來越接近1;反之,如果這個分類模型得出的結果基本上相當於隨機猜測,那麽畫出的圖像就很接近於左下角和右上角的對角線(即圖中標註的“random chance”),那麽這個模型也就沒什麽意義了。

③ K-S

作為一個模型,我們當然希望這個模型能夠幫我們挑選到最多的好客戶,同時不要放進來那麽多壞客戶。K-S值就是一個這樣思路的指標。比如,在完成一個模型後,將測試模型的樣本平均分成10組,以好樣本占比降序從左到右進行排列,其中第一組的好樣本占比最大,壞樣本占比最小。這些組別的好壞樣本占比進行累加後得到每一組對應的累計的占比。好壞樣本的累計占比隨著樣本的累計而變化(圖中Good/Bad兩條曲線),而兩者差異最大時就是我們要求的K-S值(圖中比較長的直線箭頭的那個位置)。

KS值的取值範圍是[0,1]。通常來說,值越大,表明正負樣本區分的程度越好。一般,KS值>0.2就可認為模型有比較好的預測準確性。

技術分享圖片

④ GINI系數

還記得經濟學中那個著名的基尼系數嗎?下圖應該可以讓你回憶起來。將一個國家所有的人口按最貧窮到最富有進行排列,隨著人數的累計,這些人口所擁有的財富的比例也逐漸增加到100%,按這個方法得到圖中的曲線,稱為洛倫茲曲線。基尼系數就是圖中A/B的比例。可以看到,假如這個國家最富有的那群人占據了越多的財富,貧富差距越大,那麽洛倫茨曲線就會越彎曲,基尼系數就越大。

同樣的,假設我們把100個人的信用評分按照從高到低進行排序,以橫軸為累計人數比例,縱軸作為累計壞樣本比例,隨著累計人數比例的上升,累計壞樣本的比例也在上升。如果這個評分的區分能力比較好,那麽越大比例的壞樣本會集中在越低的分數區間,整個圖像形成一個凹下去的形狀。所以洛倫茲曲線的弧度越大,基尼系數越大,這個模型區分好壞樣本的能力就越強。

技術分享圖片

⑤ PSI

PSI(Population Stability Index)叫做群體穩定性指標,用於衡量兩組樣本的評分是否有顯著差異。PSI = sum(實際占比-預期占比)*ln(實際占比/預期占比)

舉個栗子,假設在訓練一個評分模型時,我們將樣本評分按從小到大排序分成10組,那麽每組會有不同的樣本數量占比P1;評分模型制作出來之後,我們試用這個模型去預測新的一組數據樣本,按上面的方法同樣按評分分成10組,每組也會有一定的樣本數量占比P2。PSI可以幫助我們量化P1和P2,即預期占比與實際占比的差距。這個指標同樣也可以用於監測每月申請客戶或成交客戶的變化。

看到這裏,相信你會有些頭暈。的確,信用評分涉及到很多數學和統計學的概念,沒有一定的知識背景的話理解起來會有一些難度。但話說回來,如果把這些問題都弄懂了,再去看回自己所負責工作當中涉及到的信用評分內容,那叫一個通透,非常有成就感。

sklearn實戰-乳腺癌細胞數據挖掘

https://study.163.com/course/introduction.htm?courseId=1005269003&utm_campaign=commission&utm_source=cp-400000000398149&utm_medium=share

技術分享圖片

這一次,真正搞懂信用評分模型(上篇)