python信用評分卡建模(附代碼,博主錄制)
從這篇博文開始,我將總結金融風控中的另外一個模型:申請評分卡模型。這篇博文將主要來介紹申請評分卡的一些基本概念。
本篇博文將以以下四個主題來進行介紹說明:
- 信用風險和評分卡模型的基本概念
- 申請評分卡在互聯網金融業的重要性和特性
- 貸款申請環節的數據介紹和描述
- 非平衡樣本問題的定義和解決方法
信用風險和評分卡模型的基本概念
什么是信用風險
交易對手未能履行約定契約中的義務而造成經濟損失的風險,即受信人不能履行還本付息的責任而使授信人的預期收益與實際收益發生偏離的可能性它是金融風險的主要類型。
壞樣本的定義
- M3 & M3+ 逾期
- 債務重組
- 個人破產
- 銀行主動關戶或注銷
- 其他相關違法行為
M0,M1,M2的定義
- M0:最后繳款日的第二天到下一個賬單日
- M1:M0時段的延續,即在未還款的第二個賬單日到第二次賬單的最后繳款日之間
-
M2:M1的延續,即在未還款的第三個賬單日到第三次賬單的最后繳款日之間
信用卡賬單日是指發卡銀行每月會定期對你的信用卡賬戶當期發生的各項交易,費用等進行匯總結算,並結計利息,計算你的當期總欠款金額和最小還款額,並為你郵寄賬單,此日期即為賬單日。而還款日則是指信用卡發卡銀行要求持卡人歸還應付款項的最后日期。
簡單點說,銀行會對你的當期應還款形成賬單並通知你,賬單形成日即為賬單日,同時,銀行不會要求你馬上就還款,而是會給你一個緩沖期,通常是20天(具體根據各銀行制定標准),該期限截止日即為還款到期日。這20天之內全額還款或是選擇信用卡最低還款額方式還款,可以享受免息待遇,但如果逾期,就會計息了。
什么是評分卡
信貸場景中的評分卡
- 以分數的形式來衡量風險幾率的一種手段
- 是對未來一段時間內違約/逾期/失聯概率的預測
- 有一個明確的(正)區間
- 通常分數越高越安全
- 數據驅動(搜集數據,對數據研究,建立模型)
-
反欺詐評分卡、申請評分卡(Application)、行為評分卡(Behavior)、催收評分卡(Collection)
①反欺詐評分卡、申請評分卡是在貸前准入環節里面
②申請評分卡用到的大部分是申請者的背景變量,而且這個模型一般也會比較謹慎。
③行為評分卡表示申請者已經獲准貸款,已經放出貸款以后,根據貸款人的消費習慣,還款情況等一些信用特征,就是跟蹤客戶合同開始后的表現,來預估用戶逾期或者是違約概率。
④催收評分卡是對已經逾期或者違約的客戶,對他進行一個催收評分,嚴格來講,有三個模型,還款率模型,賬齡滾動模型,失聯模型。
本篇博文主要講的是申請評分卡模型。
觀察期與表現期
觀察期
- 搜集變量、特征的時間窗口,通常3年以內
- 帶時間切片的變量(比如過去半年還款情況;過去每個月最大還款額等帶時間切片的特征)
表現期
搜集是否觸發壞樣本定義的時間窗口,通常6個月~1年
需要對這張圖進行一個詳細的說明,觀察點不一定是哪一天,可以是一段時間內,在某個時間區間內所有申請人,只要他們觀察期和表現期相同即可。舉例來說,當一個申請人在2017-7-14號這天來銀行申請貸款,銀行需要用已有的模型對申請人進行一個申請評分,評估他未來一年(表現期)內違約或者是逾期的概率,然后決定是否放貸。那么這個已有的模型是什么時候建立的呢?這里我們假定觀察期為三年,因為上面是評估一年所以這里表現期為一年,那么往前推一年為2016-7-14號左右某個時間區間內作為觀察點,再往前推三年(即觀察期:2013-7-14到2016-7-14),利用這三年所有觀察點內申請人一些信息建立模型的觀察變量(即特征),然后再往后推一年(即表現期:2016-7-14到2017-7-14),所有在觀察點內的申請人在這一年時間內的表現情況來定義違約。然后來訓練出一個模型。對2017-7-14號的申請人進行評分。所以申請評分卡模型有着天然的滯后性,需要不斷的對其模型進行監控。
評分卡模型開發步驟
-
立項
-
數據准備與預處理
銀行自有數據和第三方數據 -
模型構建
假設模型訓練集的觀察點(即客戶的申請時間段)為2016-01到2016-03,那么這個模型的觀察期(這里我們假定為三年)為2013-01到2016-01,模型的表現期(這里我們假定為一年)為2016-03到2017-03。 -
模型評估
對照上面的模型構建的時間來,我們來建立測試集,假定其測試集觀察點(即客戶的申請時間段)為(2017-04),同理可得觀察期,和表現期真實的違約或者逾期與否。這時把模型放在這個測試集上進行測試看看效果如何。這里需要注意訓練集和測試集上用戶在表現期的表現如何都是基於一個已經發生的時間段上。
模型評估的幾個標准在下面會詳細說到。 - 驗證/審計
實施人跟上面不一樣,文檔撰寫等
-
模型部署
新舊模型替換,評分卡的實時性要求沒那么高,在銀行通常一個月更新一次模型。有些咨詢機構可能一天更新一次評分卡模型。 -
模型監控
跟蹤模型各項性能是否發生弱化。
評分卡開發的常用模型
-
邏輯回歸
優點: 簡單,穩定,可解釋,技術成熟,易於監測和部署
缺點:准確度不高 -
決策樹
優點: 對數據質量要求低,易解釋
缺點:准確度不高 -
其他元模型
-
組合模型
優點: 准確度高,不易過擬合
缺點:不易解釋;部署困難;計算量大
模型監控的指標
AR(Accuracy Ratio)
衡量分數預測能力的指標 ,需要一個完整的表現期。看看這個模型能不能把壞樣本很好的區分處理。其取值位於-1~1之間。具有滯后性。
如果我們今天用AR來監控模型的好壞,那么只能是監控模型在一年(這里假定表現期為一年)之前的數據上表現的好壞。
先把樣本按分數由低到高排序,X軸是總樣本的累積比例,Y軸是壞樣本占總的壞樣本的累積比例。AR就是等於模型在隨機模型之上的面積除以理想模型在隨機模型之上的面積。計算中可以用梯形近似逼近曲線下面積來計算,AR越高說明模型區分效果越好。
下圖公式中Xk,Yk代表分數的第K個分位點對應的累積總樣本及相應的壞樣本的比例。設總的壞樣本的比例為Bo,令(Xk,Yk)=(0,0)
KS(Kolmogorov-Smirnov)
衡量分數區分能力的指標。
把樣本按分數由低到高排序,X軸是總樣本累積比例,Y是累積好,壞樣本分別占總的好,壞樣本的比例。兩條曲線在Y軸方向上的相差最大值即KS。KS越大說明模型的區分能力越好。
Bad k和Good k分別表示為分數累積到第k個分位點的壞樣本個數和好樣本個數,KS計算公式:
PSI( Population Stablility Index)
衡量分數穩定性的指標
按分數對人群進行分組,令Ri是現在樣本中第i組占總樣本的百分比,Bi是一段時間后第i個分組占總樣本的百分比。PSI取值越小說明分數的分布隨時間變化越小。
Kendall’s Tau
正確有效的評分卡模型中,低分數的實際逾期率應該嚴格大於高分段的實際逾期率。我們將分數從低到高划分為10組,每組的實際逾期率記做r1,r2,r3,…,r10。對所有的(ri,rj)的組合,如果有ri< rj且i< j,或者ri> rj且i> j,則記做一個discordant pair,否則記做concordant pair。其計算公式如下:
Kendall’s Tau越接近1或者等於1,說明逾期率在分數上的單調下降性越明顯,反之說明分數變化與逾期率的變化的一致性得不到保證。
Migration Matrix
遷移矩陣是衡量分數矩陣的指標,對相同的人群,觀察在相鄰兩次監控日期(一周)分數的遷移變化。遷移矩陣中元素Mjk代表上次監控日期分數在第j組中的人群在當前遷移到第k組的概率。實際計算中可把分數平均分成10組,計算這10組之間的遷移矩陣。
申請評分卡的重要性和特性
互聯網金融特性與產品
-
傳統金融機構+非金融機構
-
傳統金融機構: 傳統金融業務的互聯網創新以及電商化創新、APP軟件等
- 非金融機構:利用互聯網技術進行金融運作的電商企業
(P2P)模式的網絡借貸平台
眾籌模式的網絡投資平台
挖財類(模式)的手機理財APP(理財寶類)
第三方支付平台等。
為什么要開發申請評分卡
- 風險控制
- 營銷
- 資本管理
評分卡的特性
- 穩定性
- 區分性
- 預測能力
- 和逾期概率等價(即評分和逾期率呈相關性)
貸款申請環節的數據介紹和描述
申請評分卡常用的特征
個人信息 : 學歷 性別 收入
負債信息 : 在本金融機構或者其他金融機構負債情況
消費能力 : 商品購買紀錄,出境游,奢侈品消費
歷史信用記錄 : 歷史逾期行為
新興數據 : 人際社交 網絡足跡 出行 個人財務
非平衡樣本問題的定義和解決方法
非平衡樣本的定義
在分類問題中,每種類別的出現概率未必均衡
信用風險:正常用戶遠多於逾期/違約用戶
流失風險: 留存客戶多於流失客戶
非平衡樣本的隱患
降低對少類樣本的靈敏性
非平衡樣本的解決方案
過采樣
- 優點: 簡單,對數據質量要求不高
- 缺點: 過擬合
欠采樣
- 優點: 簡單,對數據質量要求不高
- 缺點: 丟失重要信息
SMOTE(合成少數過采樣技術)
- 優點: 不易過擬合,保留信息
- 缺點: 不能對有缺失值和類別變量做處理
python金融風控評分卡模型和數據分析微專業課(博主親自錄制視頻):http://dwz.date/b9vv
掃描和關注博主二維碼,學習免費python視頻教學資源