信用評分卡

金融行業中信用評分卡的應用還是比較普遍的,今天這裡把信用評分卡製作的原理整理一下,在製作評分卡過程中,主要應用到的公式有WOE(Weight Of Evidence),IV(Information Value),score。整理好原理之後,有時間的話會將一套數據集和用Python處理的代碼放在這裡。現在手裡有R的代碼但是是別人的代碼,我就不共享了。還是等我寫好Python的代碼後再附上鏈接吧。

信用評分卡模型,是多個離散變數每個變數對應一個分值,根據各項綜合也就是總評分來評估個人情況的一種模式。

上圖是我隨手百度的一個信用評分卡,也就是說大分類會有幾個,每個大分類下面有幾個小分類,每個小分類對應著得分。也就是說不管原先是連續變數還是離散變數,最終模式都要通過分箱或重分箱轉化成離散型。說到分箱,這裡簡單提一下,可以通過等寬等比自定義有監督等方法分箱,理論來看的話可能是有監督效果更好一點,比如利用CART決策樹,各個類別即兩節點邊緣。而WOE得概念應用在這裡可以恰到好處的使用,WOE是一種將分類變數連續化的一種方法,它通過某種方式將變數之間定義出一定的「距離」,生成WOE後按照正常方式建模建立logistic回歸等。

對於分類變數我們通常採取轉換成啞變數的方法進行數據處理,如定類變數和無法確定距離的定序變數。而對於有監督的二分類我們可以將定序變數通過WOE轉換成連續型。

如上圖這裡舉了個小例子, WOE = lnfrac{p_{y1}}{p_{y0}} , p_{y1} 為該分類下y=1佔全部y=1數據的比例。這裡同貝葉斯中的前驗和決策樹中求Entropy的佔比是一樣的。WOE反映了該變數中y=1對y=0的貢獻比重(有些WOE會乘100)。從中既可以看出違約比例情況,也能看到不同分箱的重要性。接下來說一下上圖中的IV,IV是用來篩變數的, 信息值(information value)來表現變數的重要性。 IV = sum_{0}^{n}{(p_{y1}-p_{y0})lnfrac{p_{y1}}{p_{y0}}} ,大於0.5概率很小,小於0.02說明基本沒有幫助,0.1~0.3有較大幫助。之後我們利用logit回歸即可。

logistic回歸過後我們得到的 lnodds = lnfrac{p_{y1}}{1-p_{y1}} = eta_{0} + eta_{1}x_{1}...eta_{n}x_{n} ,回歸得到的 eta_{i} 是各個指標的權重,也就是各個指標得分的前身。我們將總得分score = offset + factor * lnodds.還有一個指標pdo(points double the odds),就是說score + pdo = offset + factor* ln(2odds),odds翻二倍則分數增加pdo。注意一下,一般odds代表優比差,而我們在處理違約情況時往往取的是-lnodds而不是lnodds,由於通常情況下我們將y1設定為違約,比如我們希望 frac{p_{y1}}{p_{y0}} 為1:50而不是50:1.

在所有公式中我們給定pdo,odds和score.先說pdo,上面兩式做差後pdo = factor *ln2,pdo是給定項則可求factor。那麼還剩下offset一個未知項,給定score和odds後(score設定為總分數最高分,odds設定為理想中設定的好壞客戶的比例),求出offset。但是給定後不一定恰到好處,給定值需要根據需求不斷調整,直到符合需求情況。那麼接下來我們需要將總分數分配,代入lnodds後有score = offset + factor*(  eta_{0} + eta_{1}x_{1}...eta_{n}x_{n} ),這裡的每一個x實際上都是我們求出的WOE或者定類變數的某一項,所以各自對應的分數 score_{ij} = frac{offset}{n} + frac{eta_{0}}{n} + eta_{i}x_{ij} ,於是得到了一張完整的信用評分卡。

自習想想信用評分卡模型其實還有有很多拓展空間的,比如按背景成績等分班,分級等等,當然WOE是應用於二分類的因為無法用一個數來表現大於兩個概率值的比重。評分卡模型相對不是太難,易於理解。有時間的話,敲出代碼在放上來吧。


推薦閱讀:

推薦系統中的矩陣分解技術
深度學習筆記-Part3
年前的一個小計劃
Python協同過濾演算法入門(1)相似度計算篇
38套大數據,雲計算,架構,數據分析師,人工智慧,機器學習,深度學習,項目實戰視頻教程?

TAG:數據分析 | 信用評級 | 數據挖掘 |