?

信用逾期預測中不同機器學習模型對比分析①

2022-11-07 09:08
計算機系統應用 2022年10期
關鍵詞:分類器樣本預測

陳 霞

(中國人民大學 統計學院,北京 100872)

風險控制是衡量金融行業是否健康可持續發展的重要因素,一直也是金融公司重點研究的內容.當前金融信貸業務量隨著消費升級不斷高漲,但是違約風險也在日趨凸顯,如某些小型貸款機構不得不依賴自己在銀行的擔保金勉強維持.據公開數據研究,中國上市的商業銀行不良貸款余額逐年增長,并在2020年達到了歷史最高.四大國有行合計壞賬萬億元,居商業銀行首位,占上市銀行不良貸款總額約6 成.截至2020年末,中國工商銀行不良貸款余額排名第一,其次為中國建設銀行、中國農業銀行和中國銀行,不良貸款余額均高于2 000 億元[1].這些結果充分反映了銀行由于沒有控制好風險導致了巨額不良資產的問題,因此金融公司在開展貸款業務時應將風險控制放在首要位置.

為了更好地控制業務風險使自身獲利,金融機構不斷挖掘存量用戶特征信息,以此區分好用戶和壞用戶.早在20世紀90年代開始,金融公司為了獲利,把各類統計分析算法應用在業務中,通過模型擬合的方法提前判斷出用戶風險[2-5].但對于數據樣本較少的新業務,單純用這類數據容易導致模型結果過擬合.本文試圖結合相似金融業務數據做為模型訓練樣本,運用目前金融行業運用較多的算法: 隨機森林、LightGBM、XGBoost、DNN 和遷移學習,分別預測新業務出的結果并與真實結果進行比較,旨在為小樣本業務在模型建立過程中樣本不足的問題提供一種有效的解決方法.

1 信貸業務在模型上的發展情況

得益于Nasdap 系統,1971年美國的互聯網金融進入正式運營,1995年美國成立了一家網絡銀行,從此互聯網金融進入了發展期.20世紀90年代開始,發達國家在互聯網金融領域快速發展,互聯網金融服務逐漸多元化、綜合化,行業之間競爭非常激烈.各公司為了提升利潤,降低風險逾期率迫在眉睫,各種統計分析算法應用在金融風控中,大數據量化風控成為主流思想,如在信貸引入決策樹模型、邏輯回歸模型、判別分析以及BP 神經網絡模型[2-5].由于邏輯回歸模型可解釋性較強,在金融領域備受青睞,然而邏輯回歸算法要求數據滿足嚴格的假設,因此在實踐中很難應用[6].相比于邏輯回歸模型,隨機森林、LightGBM 和XGBoost等樹模型采用集成模型的思想,擬合效果更好.DNN深度學習模型則可在稀疏空間做分類,通過增加節點數或激活函數的次數來增加線性或者非線性轉換能力和次數,且盡可能的優化損失函數去學習規則,但其解釋性相對較差.

為了滿足信貸模型預測效果更好的要求,可從模型算法、數據輸入和變量挖掘3 個方面來進行優化.模型方面可以優化模型算法或是利用組合模型進行預測,如使用不同核函數建立支持向量機模型、基于XGBoost 機器學習算法建模、使用加權投票法建立組合模型、基于梯度提升決策樹模型、建立SVM-Logistic組合模型、建立隨機森林等與邏輯回歸融合模型[7-12];變量方面可擴大量化維度,如蔣翠清等[13]將借款用途和社交情況等信息進行量化,分析了不同軟信息對貸款違約的影響作用; 數據方面可進行抽樣等操作,如祝鈞桃等[14]針對小樣本數據從數據增強、度量學習、外部記憶、參數優化4 個方面解決小樣本問題,為往后的研究提供了有價值的參考.

2 預測模型方法和數據來源

該實戰案例分析使用iOS 系統 10.14 版本,軟件為Jupyter notebook; 具體硬件配置: 內存8 GB、處理器為2.3 GHz Intel Core i5; 實驗中使用的工具為Python 3.7 Sklearn、TensorFlow、Kears 等.

2.1 基礎數據來源

數據源來自某銀行信貸業務,分為歷史金融貸款數據和現業務數據,歷史信貸數據時間范圍為2014年1月-2017年12月,按天記錄,共30 萬條數據.當前金融業務數據共1.5 萬條,時間范圍為2017年1月-2017年12月.由于需要大規模開展業務,需要結合歷史信貸數據評估業務風險,如通過用戶的歷史逾期情況、資產負債比例、工作年限等維度,用于預測個人信譽問題.

該實驗數據離散變量主要包括有工作年限、工作行業和房產情況.連續變量數據情況如表1 所示.

表1 連續變量數據情況

2.2 預測模型方法

(1)隨機森林算法

隨機森林(random forest,RF)模型是2001年由Breiman[15]提出的基于分類樹的算法.它通過對大量分類樹的匯總提高了模型的預測精度,是取代神經網絡等傳統機器學習方法的新的模型,在醫學、氣象、金融、水利等領域被廣泛使用.

在算法上,隨機森林是采用bootstrap sample 方法,有放回的抽樣方式進行數據選擇,然后從所有屬性中隨機選擇m個屬性.采用樹模型訓練模型但沒有剪枝過程,每棵樹都盡最大程度成長.重復k次,建立k個模型,k個模型形成決策森林,每棵樹都是一個弱分類器,最終的預測結果采用投票的方式整合k個弱分類器結果完成預測.從整體來看,單棵樹存在過擬合、準確度不高、不穩定的現象,多棵樹共同決策可提升模型穩定性和精度.算法步驟如下:

輸入為樣本集D={(x1,y1),(x2,y2),···,(xm,ym)} 迭代100 次,輸出最終的強分類器f(x),t=1,2,3,···,100;對訓練集進行100 次隨機采樣,共使用有放回采集24.8 萬次,得到包含24.8 萬個樣本的采樣集合Dt; 用采樣集Dt訓練第t個弱學習器Gt(x),選擇一個最優的特征值作為左右決策的劃分點; 分類算法,則100 個弱學習器進行投票; 回歸算法,則100 個弱學習器通過算法平均的方法,最終擬合出模型結果.本文采用分類算法完成投票.

隨機森林算法參數配置: 100 個弱學習器,有放回抽樣bootstrap=true,criterion=“gini”.

(2)XGBoost 算法

XGBoost 是基于GBDT 算法的提升,GBDT 算法僅支持CART 基分類器,XGBoost 支持CART 基分類器的基礎上同時支持線性分類器.在精度提升方面,XGBoost 使用二階泰勒展開式f(x)=f(x0)+f′(x0)(x-x0)+(x-x0)2,比GBDT 更好的逼近損失函數(loss function).為了防止過擬合,XGBoost 算法一方面代價函數里加入了正則項來控制模型復雜度,另一方面借鑒了隨機森林的做法,支持列抽樣.具體算法如算法1.

算法1.XGBoost 算法輸入: I,inst ance set of current node; d,feature dimension gain←0 G←∑i∈I gi,H←∑i∈I hi For k=1 to m do x jk For j in sorted(I,by )do GL←0,HL←0

GL←GL+gi,HL←HL+h j GR←G-GL,HR←H-HL()score←max score,G2L HL+λ+G2R HR+λ- G2 H+λ end end輸出: Split with max score

XGBoost 算法參數配置: 采用二元分類邏輯回歸的方法,訓練100 次,最大樹深度為3,學習率為0.01,正則化權重L1 和L2 為1.

(3)LightGBM 算法

LightGBM 在XGBoost 的基礎上做了改進,主要引入了Histogram 算法,內存消耗低并且可快速尋找樹的分裂節點.LightGBM 結合單邊梯度采樣(gradientbased one-side sampling)和互斥特征合并(exclusive feature bundling),在減少維度和下采樣上面進行優化使Histogram 算法效果更好.在樹的生長上,LightGBM拋棄了Level-wise 策略采用leaf-wise,為防止過擬合,使用最大樹深限制,如算法2 所示.

算法2.LightGBM 算法輸入: I: training data,d: iterations; a: sampling ratio of large gradient data; b: sampling ratio of small gradient data; loss: loss function,L: weak learner models←{},fact←1-a b topN←a×len(I),randN←a×len(I)i=1 For to do preds←mod els.predict(I)g←loss(I,preds),w←{1,1,···}sorted←GetS ortedIndices(abs(g))topS et←sorted[1:topN]rankS et←RanddomPick(sorted[topN:len(I)],randN)usedS et←topS et+rankS et w[rankS et]×=fact Assign weight to the small gradient data.newModels←L(I[usedS et],-g[usedS et],w[usedS et])Models.append(newModel)

大量的金融信貸場景研究案例表明,LightGBM 在預測結果上表現的效果優于XGBoost、Logistic、SVM和隨機森林等模型效果,準確性較高的同時具有較好的魯棒性[16,17].

LightGBM 算法訓練參數設置: 采用GBDT 提升算法類型,弱學習器數量為100,最大樹深度為3,學習率為0.01,正則化權重L1 和L2 為1.

(4)TrAdaBoost 遷移學習算法

在21世紀初,Ben-David Schuller[18]提出了學習與任務之間具有相互聯系的觀點,為遷移學習提供了理論基礎.利用遷移學習思想在醫學上取得了顯著成就,如基于X 射線和CT 圖像預訓練的CNN 模型進行 COVID-19檢測任務; 把基于自然圖像預訓練得到的不同ResNet 模型遷移到乳腺癌診斷任務; 使用與目標數據相似的腦血管圖像在 AlexNet 上進行預訓練,再利用 SVM 分類器進行微調訓練[19-21].在文本挖掘上也常常采用遷移學習方法,如采用遷移學習方法實現交叉語言文本分類; 利用完善的英文標簽處理中文標簽缺失問題,解決了交叉語言遷移分類問題[22,23].遷移學習方法在P2P信貸實驗上表明遷移學習模型的平均AUC 比邏輯回歸模型高0.088 0,比支持向量機模型高0.035 5[24].

TrAdaBoost 遷移學習算法[25]利用對 AdaBoost 算法加以改來達到遷移學習的效果,主要通過boosting的作用建立自動調整權重的機制,加重正確的輔助數據權重,減少不重要的輔助訓練數據權重.主要方法如下:

TaTbT=Ta∪Tb輸入: 兩個數據集 和 ,合并的訓練數據集,基本分類算法Learner 和迭代次數N.初始化:w1=(w11,···,w1n+m)a 1.初始權重向量,其中,1 w1i=■■■■■■■n,i=1,···,n 1 β=1/(1+■m,i=n+1,···,n+m 2.設置For t=1,…,N PtPt=wt/∑m+n i=1 wti Pt ht:X■→YhtTbδt=n+m∑i=n+1 2lnn/N)wti|ht(xi)-c(xi)|∑n+m i=1 wti設置 滿足,調用Learner,根據合并后的訓練數據T 以及T 上的權重分布 和未標注數據S,得到一個S 的分類器.計算 在 上的容錯率:βt=δt/(1-δt)b設置設置新的權重向量:wt+1 i =■■■■■■■■■wtiβ|ht(xi)-c(xi)|,i=1,···,n wtiβ-|ht(xi)-c(xi)|t,i=n+1,···,n+m輸出最終分類器:)■■■■■■■1,∑Nt=[N/2]ln(1 h f(x)=βt)ht(x)≥1/2∑Nt=[N/2]ln(1 βt 0,other

TrAdaBoost 遷移學習算法訓練參數設置: 基本分類算法采用XGBoost 模型算法,并用二元分類邏輯回歸訓練,迭代次數為100,最大樹深度為3,學習率為0.01,正則化權重L1 和L2 為1,TrAdaBoost 權重修改次數為8 次,即訓練整體訓練次數為8 次.

(5)DNN 算法

DNN (deep neural network)神經網絡模型又叫全連接神經網絡是基本的深度學習框架,最早由 Hinton等人[26]于2006年提出,可基于對數據進行表征學習,同時能夠學習出高階非線性特征,具有特征交叉能力.神經網絡總體可分為3 個模塊: 輸入層、隱藏層和輸出層.目前應用場景較為廣泛,如圖像識別、聲音識別、廣告推薦、風險預測和智能投顧等場景[27,28].本文DNN 模型結構如圖1 所示.

圖1 DNN 模型結構圖

具體邏輯如下:

對客戶的數據進行預處理,包括數據清洗和數據變換.通過3 層隱藏層后輸出預測結果.每一層可以有一個或多個神經元,文中模型隱層神經元選用8 個,輸出層只有1 個神經元.激活函數包括tanh、ELU(exponential linear units)、Sigmoid、ReLU 和maxout等,本文選擇ReLU 函數.ReLU 函數能克服梯度消失的問題,使得神經網訓練速度更快.輸出層設置了1 個神經元,使用Sigmoid 作為激活函數,輸出在0 和1 之間.

σ(x)=1/(1+e-x)

由于本文針對金融信貸逾期,可抽象為好壞預測的二分類問題,故采用binary cross_entropy 作為損失函數.

農民的土地產權是指農村土地所有權制度的總稱,由土地使用、收入、占有和處置的各種權利和一些衍生權組成。由于主權與土地關系最密切,因此也是農民土地產權的基本重點。

DNN 算法訓練參數設置: SGD 學習率為0.1,SWA 采用周期性學習,學習長度c為20,學習率 α1為0.001.在訓練過程中,模型初始化參數之后使用SGD進行梯度下降,迭代20 個epoch 后,將模型的參數進行加權平均后得到組合權重的集成模型.

2.3 模型評價指標

TP與TN表示都分對的情況,TP是樣本為正,預測結果為正; 樣本為負,預測結果為負;FP表示樣本為負,預測結果為正;FN表示樣本為正,預測結果為負.AUC (area under curve)為ROC 曲線下與坐標軸圍成的面積,AUC 越接近1.0,檢測方法真實性越高; 當AUC=0.5 時,則真實性最低,則無應用價值.

ROC 曲線的橫坐標表示偽正類率,表示預測為正但實際為負的樣本占所有負例樣本的比例; 偽正類率即為FPR(false positive rate).

ROC 曲線的縱坐標為真正類率,表示預測為正且實際為正的樣本占所有正例樣本的比例.真正類率即為TPR(true positive rate).

精準率(accuracy)表示正確預測為正和正確預測為負的結果數量占所有預測結果數量的比例.

召回率(recall)表示正確預測為負的數量占全部負樣本數量的比例.

圖2 為本文流程圖.

圖2 流程圖

3 模型預測結果對比分析

考慮到需要預測的金融業務數據共1.5 萬條,則其中1 萬條數據用于模型訓練,5 000 條數據用于模型預測.目標業務數據樣本較少,結合歷史相似信貸模型的30 萬條數據,模型訓練樣本共31 萬,跨時間預測數據共5 000 條.壞樣本選擇邏輯為自放貸后12 個月的表現期中,逾期90 天及以上的用戶.建模數據好壞樣本分布情況如表2 所示.

表2 建模數據好壞樣本分布情況

隨機森林算法、XGBoost 算法、LightGBM 算法和DNN 算法在數據訓練時采用80%訓練,20%預測的方法,為防止模型過擬合,樹模型深度最大為3.TrAdaBoost 算法中訓練集為30 萬歷史信貸數據,預測集目標信貸業務1 萬條數據.最終模型評價測試數據均為小業務數據,共5 000 條.建模數據測試訓練測試數據分布如表3 所示.

表3 建模數據訓練測試數據分布

隨機森林、XGBoost、LightGBM、DNN 和TrAdaBoost 算法預測數據ROC 曲線結果如圖3 所示,5 種模型AUC 結果分別為84、81、83、84 和86.其中TrAdaBoost 算法效果最好,AUC 的預測結果為86,比隨機森林和DNN 的AUC 高2 個點,比XGBoost 的結果高5 個點.

圖3 各算法ROC 曲線對比圖

表4 說明了各種算法預測結果的準確率及召回率,從模型的準確率和召回率來看,TrAdaBoost 算法準確率能達到88%,召回率73%,均比其他模型效果好; 其次是DNN,準確率為86%,召回率為70%; 隨機森林算法,準確率為84%,召回率為68%; 相比于隨機森林算法,XGBoost 算法和LightGBM 算法對預測數據的召回率更好,分別是70%、71%,其中LightGBM 算法的準確率比XGBoost 算法高1 個百分點.

表4 各算法預測結果對比(%)

圖4 的TrAdaBoost 算法模型結果分布表明,模型效果較顯著.把壞賬戶進行分數的轉換后,按照等量劃分的方法把結果分為8 份,每份約1 250 條數據,黑色的曲線表示壞賬率,可以看出壞賬率有下降的趨勢,尤其是前兩個區間的壞賬率尤其高,在業務中可以按照這個閾值作為cut 節點來為業務作輔助決策.從入模變量的重要性來看,重要性變量集中在金融屬性較強的變量上,比如借款人提前還款次數和近3 個月內提前還款金額,從這兩個變量從一定程度上可以說明借款人的財務狀況.

圖4 TrAdaBoost 算法模型結果區間和壞賬率分布圖

4 結論

本研究的主要目的是在銀行新開金融產品數據集很小的情況下,開發一個能對用戶是否逾期作出預測的有效模型.對于金融機構想預判用戶是否有逾期風險,但由于資源的限制,阻礙了他們獲得有效用戶數據的管理者來說具有非凡的意義.把小樣本融于其他類似的金融數據集中,提高模型的預測能力,對新金融業務具有很強的數據參考價值.本文研究結果表明,小樣本業務結合相似業務構建模型的思路是可行的.隨機森林、XGBoost、LightGBM、DNN 和TrAdaBoost 五種算法在測試集上AUC 結果都高于80,精準度也都高于80%,召回率平均能達到70%以上,其中TrAda-Boost 算法AUC 結果為86,精準率為88%的情況下召回可達73%,效果最好.總體而言,TrAdaBoost 算法相較于其他對比方法魯棒性較好,在預測集上的結果表現最佳.但是,本研究在數據的選擇上仍有一些缺陷,例如,在入模變量的數據選擇上只用了銀行內部的數據,未引入三方數據而導致用戶畫像不全,使得預測集的準確率和召回率還有提升空間,后面可進一步補充民間借貸等相關數據.

猜你喜歡
分類器樣本預測
分類器集成綜述
少樣本條件下基于K-最近鄰及多分類器協同的樣本擴增分類
選修2—2期中考試預測卷(B卷)
選修2—2期中考試預測卷(A卷)
學貫中西(6):闡述ML分類器的工作流程
基于AdaBoost算法的在線連續極限學習機集成算法
直擊高考中的用樣本估計總體
隨機微分方程的樣本Lyapunov二次型估計
基于支持向量機的測厚儀CS值電壓漂移故障判定及處理
七年級數學下冊期末檢測題(B)
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合