賈 穎,趙 峰,李 博,葛詩煜
山東工商學(xué)院 計算機(jī)科學(xué)與技術(shù)學(xué)院,山東 煙臺 264005
信用貸款是借款人不需要提供抵押品或第三方擔(dān)保,僅憑自己的信譽(yù)就能取得的貸款,并以借款人信用程度作為還款保證。信用貸款在國內(nèi)蓬勃展開,銀行和金融平臺紛紛推出信貸產(chǎn)品搶占市場。然而借款人的違約行為會使銀行和金融平臺蒙受巨大的經(jīng)濟(jì)損失,影響其正常運(yùn)行。信用風(fēng)險評估可以幫助貸款審批決策者做出快速有效的判斷,從而有效避免風(fēng)險。信用評估本質(zhì)上是一個二分類或多分類問題,可以使用統(tǒng)計方法或機(jī)器學(xué)習(xí)方法構(gòu)建風(fēng)險評估模型,根據(jù)貸款申請者提交申請表時填寫的個人信息、銀行記錄的個人存貸款和歷史信用信息、來自征信系統(tǒng)的信息等數(shù)據(jù)做出風(fēng)險評估。
信用評估模型起步于統(tǒng)計計量方法[1]。統(tǒng)計方法有線性判別分析(LDA)和邏輯回歸(logistic regression,LR)。LDA需要嚴(yán)格的假定條件,在實際應(yīng)用中具有局限性。LR模型由于其穩(wěn)健和可解釋的優(yōu)點(diǎn)曾被銀行業(yè)廣泛采納。但LR的預(yù)測能力弱于后來出現(xiàn)的機(jī)器學(xué)習(xí)方法,因此,Bahnsen等人[2]提出了基于案例的代價敏感的LR模型用于信用評估。
機(jī)器學(xué)習(xí)方法出現(xiàn)后,神經(jīng)網(wǎng)絡(luò)(neural network,NN)、支持向量機(jī)(support vector machine,SVM)、決策樹(decision tree,DT)等方法被用于信用風(fēng)險評估。West[3]將5 種NN 模型應(yīng)用到貸款信用評估中,結(jié)果表明三種NN 模型:混合專家模型(mixture-of-experts,MOE)、徑向基函數(shù)(radial basis function,RBF)、多層感知機(jī)(multilayer perceptron,MPL)具有較高預(yù)測準(zhǔn)確性。王靜[4]提出一種基于Tanh 型粒子群的BP 神經(jīng)網(wǎng)絡(luò)和LDA 組合的信用評分模型,LDA用于特征提取,提取到的預(yù)測結(jié)果作為BP神經(jīng)網(wǎng)絡(luò)算法的輸入變量,引入Tanh型函數(shù)粒子群優(yōu)化BP 神經(jīng)網(wǎng)絡(luò)分類器的權(quán)值和閾,從而改善BP神經(jīng)網(wǎng)絡(luò)因收斂速度慢而導(dǎo)致的分類效果不佳的問題。Huang等人[5]建立遺傳算法(genetic algorithm,GA)和SVM 結(jié)合的信用評估模型。該模型利用GA 進(jìn)行特征選擇并對SVM 高斯核函數(shù)的超參數(shù)進(jìn)行優(yōu)化,以相對較少的輸入特征達(dá)到了較高的分類精度。雖然NN和SVM表現(xiàn)出了卓越的預(yù)測準(zhǔn)確性,但其被稱為“黑箱”算法,它們在結(jié)果的可解釋性方面存在問題。事實上,監(jiān)管機(jī)構(gòu)通常要求銀行給出拒絕信貸申請人的理由。NN和SVM不需要任何關(guān)于變量之間關(guān)系的信息,得出的結(jié)果也不容易被解釋。銀行也不能根據(jù)這些方法的結(jié)果給出拒絕貸款的理由。相對地,DT 由于其合理的解釋能力而受到?jīng)Q策者的青睞[6]。Kao 等人[7]提出了一個基于分類回歸樹(CART)的貝葉斯隱變量模型,用于銀行的信貸數(shù)據(jù)。與LDA、LR、NN、多元自適應(yīng)回歸樣條曲線(MARS)和SVM 的性能相比,該模型的預(yù)測精度最高,而且Type-Ierror明顯較低。
隨著深度學(xué)習(xí)模型的出現(xiàn),有相關(guān)文獻(xiàn)將卷積神經(jīng)網(wǎng)絡(luò)(CNN)[8]、長短時記憶網(wǎng)絡(luò)(LSTM)[9]用于信用評估。但CNN更適合于處理圖像和文本數(shù)據(jù)這種天然地具有空間局部相關(guān)性的結(jié)構(gòu)特征的對象,而用于信用評分的表格數(shù)據(jù)并不天然具有這樣的特性。同樣,信用評分也不是時間序列問題,而LSTM更擅長處理時間序列問題。
前面的研究都是針對單個復(fù)雜學(xué)習(xí)器在信用評估問題中的應(yīng)用。然而來自不同銀行的數(shù)據(jù)在數(shù)據(jù)規(guī)模、數(shù)據(jù)結(jié)構(gòu)、特征類型和特征數(shù)量方面均存在差異,單個模型不能有效地解決所有問題[10]。集成學(xué)習(xí)模型可以集成多個弱學(xué)習(xí)器,形成一個強(qiáng)學(xué)習(xí)器。集成學(xué)習(xí)要求創(chuàng)建盡可能多的子模型,并且子模型之間必須有差異,因此集成學(xué)習(xí)具有較強(qiáng)的偏差-方差平衡能力。理論上即使每個弱學(xué)習(xí)器只有60%的準(zhǔn)確率,集成500個這樣的子模型,整體準(zhǔn)確率可達(dá)到99.99%。經(jīng)實踐證明,集成學(xué)習(xí)模型確實比單個復(fù)雜分類器具有更優(yōu)異的表現(xiàn)[11],模型的泛化能力也顯著提高。根據(jù)弱學(xué)習(xí)器集成方式的不同,集成學(xué)習(xí)分為兩類:并行模式(如bagging、stacking)和順序模式(如boosting)。并行模式中弱學(xué)習(xí)器之間是并列的關(guān)系,最后通過投票或求平均值得到結(jié)果;順序模式中后面的弱學(xué)習(xí)器學(xué)習(xí)前面弱學(xué)習(xí)器的不足之處,最后累加得到結(jié)果。Dahiya等人[12]采用bagging方法集成同質(zhì)分類器用于信用風(fēng)險評估,采用投票方式?jīng)Q定最終分類結(jié)果。實驗證明該模型能夠在輸入特征較少的情況下取得最好的表現(xiàn),尤其使Type-Ⅱerror 明顯降低。Xia 等人[13]提出采用堆疊(stacking)的方式集成異質(zhì)學(xué)習(xí)器構(gòu)成了一個三層的集成模型用于信用評估。由于每種基學(xué)習(xí)器都有自己固有的偏差,不同的基學(xué)習(xí)器可以彌補(bǔ)彼此的缺陷。實驗證明該模型在準(zhǔn)確率、AUC和Brier分?jǐn)?shù)方面比單學(xué)習(xí)器(LR、SVM和DT)表現(xiàn)更好。Liu等人[14]提出了用多粒度掃描進(jìn)行特征增強(qiáng)的多層梯度提升決策樹(gradient boosting decision tree,GBDT)用于信用評分,該模型同時具有集成學(xué)習(xí)的魯棒性和NN的表示學(xué)習(xí)能力,提高了信用預(yù)測的準(zhǔn)確度。極端梯度提升樹(XGBoost)是Chen 等人[15]在2016年提出的一種基于GBDT的改進(jìn),在GBDT的基礎(chǔ)上做了如下提升:目標(biāo)函數(shù)采用二階泰勒展開,有利于梯度下降得更快更準(zhǔn);加入了正則化項,防止過擬合;加入了自動處理缺失值策略,對于特征的值有缺失的樣本,XGBoost 可以自動學(xué)習(xí)出它的分裂方向;多線程并行計算特征切分點(diǎn)的信息增益,提高了運(yùn)行效率。近年來,XGBoost在Kaggle等各類大數(shù)據(jù)競賽中表現(xiàn)出卓越的性能。由于XGBoost的出色表現(xiàn),該方法已被應(yīng)用到疾病預(yù)測[16]、交通風(fēng)險預(yù)測[17]、災(zāi)害預(yù)測[18]等領(lǐng)域,目前也有在金融信用風(fēng)險評估的應(yīng)用研究。Chang[19]提出了基于聚類的欠采樣的XGBoost信用評分模型,在真實數(shù)據(jù)上測試,準(zhǔn)確率和AUC優(yōu)于LR、NN和SVM。Qin等人[20]將XGBoost用于信用風(fēng)險評估,并采用適應(yīng)性粒子群優(yōu)化算法進(jìn)行超參數(shù)優(yōu)化,總體上超越了單分類器模型和其他集成學(xué)習(xí)模型。信用風(fēng)險問題具有數(shù)據(jù)不均衡(違約樣本大大少于未違約樣本)、特征多、特征之間關(guān)系復(fù)雜、數(shù)據(jù)缺失多等特點(diǎn)。XGBoost非常適合于信用貸款的風(fēng)險預(yù)測。首先,XGBoost采用樹模型作為基分類器,天然地具有很好的可解釋性。它能給出影響預(yù)測結(jié)果的特征重要性排名,也能顯式地畫出決策過程中的每棵決策樹;其次,XGBoost允許使用AUC作為目標(biāo)函數(shù),同時具有提高少數(shù)樣本權(quán)重的scale_pos_weight參數(shù),對處理不均衡數(shù)據(jù)非常有效;第三,對于特征值有缺失的樣本,XGBoost可以通過計算左右子樹的增益來自動學(xué)習(xí)決策樹的特征分裂方向,適合于處理貸款人信息缺失的數(shù)據(jù)。
盡管XGBoost表現(xiàn)出色,但由于XGBoost模型參數(shù)眾多,只有經(jīng)過精確的調(diào)參才能在特定領(lǐng)域有較好的表現(xiàn)[3]。常用的參數(shù)優(yōu)化方法有人工手動調(diào)參、網(wǎng)格搜索(grid search,GS)、隨機(jī)搜索(random search,RS)、遺傳算法、粒子群優(yōu)化(paticle swarm optimization,PSO)、貝葉斯優(yōu)化等。人工調(diào)參工作量大,受主觀經(jīng)驗影響大,對超參數(shù)數(shù)量多的情景不適用。GS和RS在評估一組新的參數(shù)時不能參考之前評估過的參數(shù)提供的信息,搜索速度慢,并且由于其搜索的不連續(xù)性,在非凸的目標(biāo)函數(shù)上容易錯過全局最優(yōu)解。GA和PSO需要有足夠多的試驗樣本點(diǎn)和目標(biāo)函數(shù)評估,優(yōu)化效率不高。貝葉斯優(yōu)化算法是由美國UIUC 大學(xué)的Pelikan 等人[21-22]在2000年前后提出的。貝葉斯優(yōu)化屬于分布估算算法,是在GA 的基礎(chǔ)上發(fā)展起來的,將概率模型引入了算法,來描述可行解的分布,并依此來指導(dǎo)種群進(jìn)化。貝葉斯優(yōu)化利用貝葉斯網(wǎng)絡(luò)來建立解空間的概率模型,能顯式地反映優(yōu)化問題中各變量間的相互關(guān)系,更加符合問題的實質(zhì)[23]。在解空間中采樣新個體時充分利用了先驗知識,對過去的經(jīng)驗進(jìn)行總結(jié),從而有方向性地提出更好的選擇方案,收斂速度快,針對非凸問題依然穩(wěn)健。
基于以上原因,本文提出了使用貝葉斯高斯過程(Bayesian Gaussian processes,GP)對XGBoost 模型進(jìn)行參數(shù)優(yōu)化的XGBoost-GP 模型,應(yīng)用于信用風(fēng)險評估中。
研究的創(chuàng)新點(diǎn)主要表現(xiàn)在:
(1)提出了使用貝葉斯高斯過程對XGBoost模型進(jìn)行參數(shù)優(yōu)化的XGBoost-GP 模型,應(yīng)用于信用貸款違約風(fēng)險預(yù)測中,與其他對照模型相比,預(yù)測準(zhǔn)確率高,模型可解釋性好。
(2)將貝葉斯高斯過程應(yīng)用于XGBoost 的參數(shù)調(diào)優(yōu)。貝葉斯高斯過程利用已知的參數(shù)點(diǎn)逼近目標(biāo)函數(shù)。在搜索新一組參數(shù)時會在已知參數(shù)點(diǎn)的附近尋找均值和方差均較大的點(diǎn),并使用采集函數(shù)平衡均值和方差的關(guān)系,針對非凸問題依然穩(wěn)健,并且耗時少。
(3)利用國內(nèi)人人貸平臺采集的真實數(shù)據(jù),數(shù)據(jù)不平衡度和缺失度較高,更能驗證模型的預(yù)測能力和魯棒性,同時更適合中國國情。
梯度提升決策樹GBDT(gradient booting decision Tree)是基于樹的梯度提升算法。每訓(xùn)練一個決策樹模型(基分類器),都是去學(xué)習(xí)上一輪模型產(chǎn)生的錯誤(殘差),它利用損失函數(shù)的負(fù)梯度作為上一輪基分類器犯錯的衡量指標(biāo),在下一輪學(xué)習(xí)中通過擬合殘差負(fù)梯度來糾正上一輪犯的錯誤。
GBDT 采用前向分步算法。首先確定初始決策樹f0(X)=0,則第m步的模型是:
其中,fm-1(x)為當(dāng)前決策樹模型,通過最小化損失函數(shù)確定下一棵決策樹T的參數(shù)Θm:
不斷重復(fù)這個過程直到損失函數(shù)的值減小到一個限定的范圍內(nèi)。測試樣本的最終值是所有決策樹(基分類器)葉子節(jié)點(diǎn)值之和,即GBDT 將所有決策樹的結(jié)論累加起來作為最終結(jié)論。針對不同問題的梯度提升樹,使用的損失函數(shù)L不同,回歸問題采用均方誤差損失函數(shù),分類問題采用指數(shù)函數(shù)。
XGBoost 是GBDT 的一種高效實現(xiàn)[24],由華盛頓大學(xué)的陳天奇于2016年提出,并在文獻(xiàn)[15]中證明了其計算復(fù)雜度低、運(yùn)行速度快、準(zhǔn)確度高等特點(diǎn)。XGBoost適當(dāng)改進(jìn)了GBDT,在損失函數(shù)上添加了正則化項,限制了每棵樹的節(jié)點(diǎn)個數(shù)和葉子節(jié)點(diǎn)上的分?jǐn)?shù),相當(dāng)于對樹進(jìn)行了剪枝和防止過擬合。
XGBoost的目標(biāo)函數(shù)如公式(3)所示:
對于目標(biāo)函數(shù)的優(yōu)化,GBDT 采用的是梯度下降法,而XGBoost采用了在ft(xi)處進(jìn)行二階泰勒展開:
對于給定的樹結(jié)構(gòu)q,定義Ij={i|q(xi)=j}為所有被映射到第j個葉子節(jié)點(diǎn)的樣本i的集合,該葉子節(jié)點(diǎn)的輸出為ωj,則公式(5)可表示為:
那么目標(biāo)函數(shù)objt的最小值可以用簡單的一元二次方程的最小值求出,是每個葉子節(jié)點(diǎn)上的最優(yōu)葉子權(quán)重。
目標(biāo)函數(shù)取最小值:
其中,gi和hi因損失函數(shù)不同而不同,XGBoost支持自定義損失函數(shù),只要該損失函數(shù)可以求一階和二階導(dǎo)數(shù)即可。
超參數(shù)調(diào)整是機(jī)器學(xué)習(xí)中最重要的概念之一。超參數(shù)的設(shè)置是在模型訓(xùn)練之前解決的。機(jī)器學(xué)習(xí)算法令人滿意的性能取決于有適當(dāng)?shù)某瑓?shù)設(shè)置。XGBoost有大量超參數(shù)(包括繼承自GBDT的超參數(shù)和它自己獨(dú)有的超參數(shù)),這些超參數(shù)直接影響到模型的結(jié)構(gòu)和模型的性能。因此,對超參數(shù)進(jìn)行適當(dāng)?shù)恼{(diào)整就顯得尤為重要。XGBoost的主要超參數(shù)如表1所示。
表1 XGBoost主要的超參數(shù)Table 1 Formulation of hyper-parameters of XGBoost
雖然GS 和RS 已經(jīng)被廣泛應(yīng)用于機(jī)器學(xué)習(xí)模型的超參數(shù)優(yōu)化,但由于XGBoost 中包含大量的超參數(shù),每一次函數(shù)評估的計算成本非常高,這兩種優(yōu)化算法對XGBoost 來說是效率不高。貝葉斯優(yōu)化提供了一種更優(yōu)雅的調(diào)參方法[25]。貝葉斯優(yōu)化假設(shè)超參數(shù)與需要優(yōu)化的損失函數(shù)之間存在函數(shù)關(guān)系,而這個函數(shù)關(guān)系是一個“黑盒函數(shù)”,不能通過梯度下降法來獲得最優(yōu)解,但是可以通過一些先驗的樣本點(diǎn)逼近未知目標(biāo)函數(shù)的后驗分布[26]。通過對目標(biāo)函數(shù)形狀的學(xué)習(xí),找到使結(jié)果向全局最優(yōu)解提升的一組超參數(shù)。貝葉斯優(yōu)化是一種近似逼近的方法,用各種代理函數(shù)來擬合超參數(shù)與模型評價之間的關(guān)系,然后選擇最有希望的超參數(shù)組合進(jìn)行迭代,最后得出效果最好的超參數(shù)組合。
由于高斯過程具有高度靈活又易于操作的特點(diǎn),貝葉斯優(yōu)化采用高斯過程去訓(xùn)練數(shù)據(jù)并學(xué)習(xí)目標(biāo)函數(shù)的后驗分布。高斯過程并不會得到每組超參數(shù)所對應(yīng)的具體目標(biāo)函數(shù)值,只會給出目標(biāo)函數(shù)的概率分布,得到超參數(shù)在某個區(qū)域上目標(biāo)函數(shù)的期望均值和方差。期望均值越大,表明目標(biāo)函數(shù)效果越好。方差表示不確定性,方差越大,表明目標(biāo)函數(shù)在該點(diǎn)更有可能獲得最大值,非常值得探索。通常情況下,選擇具有最大期望收益或不確定性的點(diǎn)來進(jìn)行下一次的采樣。在均值大的點(diǎn)處進(jìn)行采樣稱為開發(fā),在方差大的點(diǎn)處進(jìn)行采樣稱為探索。采集函數(shù)是用來平衡開發(fā)和探索的函數(shù),決定了下一個采樣點(diǎn)的位置。隨著采樣點(diǎn)積累,目標(biāo)函數(shù)的后驗分布持續(xù)更新。在新的后驗分布的基礎(chǔ)上,使采集函數(shù)最大化的新的采樣點(diǎn)不斷被找到并加入到樣本集中。一直重復(fù)這個過程直到達(dá)到最大循環(huán)次數(shù)或者目標(biāo)函數(shù)值與最優(yōu)解之間的差值小于閾值為止。
貝葉斯優(yōu)化的偽代碼如下。f(x)是模型的損失函數(shù),D記錄了超參數(shù)組合x和相應(yīng)的損失函數(shù)值f(x)的組合。采集函數(shù)u決定了下一個采集的樣本點(diǎn)xt的位置。
算法貝葉斯優(yōu)化
1.3.1 高斯過程
高斯過程假設(shè)所有超參數(shù)符合多元高斯分布。高斯過程可以均值函數(shù)m:x→R 和方差函數(shù)k:x×x→R來定義,形式如下:
計算目標(biāo)函數(shù)的后驗分布的過程如下:
(1)t個樣本構(gòu)成了訓(xùn)練集D1:t={xn,fn}tn=1,fn=f(xn),假設(shè)函數(shù)f的值符合多元高斯分布f~N(0,K)。其中:
(2)基于函數(shù)f,計算新的采樣點(diǎn)xt+1對應(yīng)的函數(shù)值ft+1=f(xt+1),根據(jù)高斯分布的假設(shè),f1:t加上ft+1應(yīng)該符合t+1 維高斯分布:
可以看出,高斯過程并不會返回ft+1的確切值,而只是給出其所有可能值的概率分布。如果采集的樣本點(diǎn)足夠多,高斯過程可以獲得目標(biāo)函數(shù)f(x)的近似估計。
1.3.2 采集函數(shù)
獲取目標(biāo)函數(shù)的后驗分布之后,貝葉斯優(yōu)化通過最大化采集函數(shù)u來獲取目標(biāo)函數(shù)f(x)的最優(yōu)解。文獻(xiàn)[27]指出,預(yù)期改進(jìn)(expected improvement,EI)因為容易獲得全局最優(yōu)解并且操作簡單,通常被選作采集函數(shù)。EI函數(shù)在探索當(dāng)前最優(yōu)解的周圍區(qū)域時會計算參數(shù)點(diǎn)對目標(biāo)函數(shù)改進(jìn)所能達(dá)到的期望值。如果在算法執(zhí)行后對目標(biāo)函數(shù)的改進(jìn)I小于期望值,那么當(dāng)前最優(yōu)解很有可能是局部最優(yōu)解,算法會在其他區(qū)域?qū)ふ易顑?yōu)解。對目標(biāo)函數(shù)的改進(jìn)程度I是指新的采樣點(diǎn)對應(yīng)的目標(biāo)函數(shù)值與當(dāng)前最優(yōu)值的差值:
根據(jù)EI函數(shù)的優(yōu)化策略,試圖最大化關(guān)于當(dāng)前最優(yōu)解f(x+)的EI:
當(dāng)ft+1(x)-f(x+)≥0,ft+1(x)的分布符合均值為μ(x),標(biāo)準(zhǔn)差為σ2(x)的正態(tài)分布。因此,隨機(jī)變量I的分布是均值為μ(x)-f(x+),標(biāo)準(zhǔn)差為σ2(x)的正態(tài)分布。I的概率密度函數(shù)為:
I的預(yù)期改進(jìn)EI的定義如下:
綜上所述,貝葉斯高斯過程調(diào)參具有迭代次數(shù)少,收斂速度快,計算成本低,對非凸問題依然穩(wěn)健的特點(diǎn),適合為XGBoost模型做超參數(shù)優(yōu)化。
基于貝葉斯優(yōu)化后的XGBoost 信用風(fēng)險評估模型的流程如圖1所示。
圖1 XGBoost-GP信用貸款風(fēng)險評估模型流程圖Fig.1 Process of XGBoost-GP credit loan default risks
首先對客戶個人信息和信用歷史信息進(jìn)行清洗,去掉無效數(shù)據(jù),進(jìn)行缺失值處理?;跀?shù)據(jù)集對XGBoost進(jìn)行訓(xùn)練,分別采用GS、RS、貝葉斯高斯過程進(jìn)行XGBoost的超參數(shù)調(diào)優(yōu),將訓(xùn)練好的XGBoost模型用于客戶違約行為預(yù)測,并將模型與其他模型從評價指標(biāo)和統(tǒng)計方法兩個角度進(jìn)行對比和評價。其中XGBoost-GP的結(jié)構(gòu)如圖2所示。
圖2 XGBoost-GP結(jié)構(gòu)Fig.2 Structure of XGBoost-GP
對數(shù)據(jù)進(jìn)行0-1標(biāo)準(zhǔn)化和特征缺失值處理。雖然樹模型幾乎不受特征量綱的影響,但數(shù)據(jù)標(biāo)準(zhǔn)化可以大大提高模型的分類準(zhǔn)確率。對比模型中的LR 和SVM 都是基于距離計算的模型,必須建立在特征量綱一致的基礎(chǔ)上。因此,為了更好地進(jìn)行模型對比,先對數(shù)據(jù)集的特征進(jìn)行0-1標(biāo)準(zhǔn)化。訓(xùn)練數(shù)據(jù)表示為D={X,y},其中X={x1,x2,…,xm}表示m維的特征空間,y={0,1}表示目標(biāo)值,y=0 表示好樣本(未違約樣本),y=1 表示壞樣本(違約樣本)。對于樣本的每個特征x,采用公式(22)進(jìn)行0-1標(biāo)準(zhǔn)化。
為避免缺失值對實證分析的影響,對數(shù)據(jù)集進(jìn)行缺失值處理。XGBoost有自己專門的缺失值處理策略,比傳統(tǒng)的缺失值處理方法更適合樹模型。對于沒有缺失值處理策略的對比模型,事先對缺失值做如下處理:對于類別數(shù)據(jù),采用眾數(shù)來補(bǔ)全,對于數(shù)值型數(shù)據(jù),采用平均值來補(bǔ)全。
包括XGBoost 在內(nèi)的基于樹模型的集成學(xué)習(xí)模型都有特征重要性分?jǐn)?shù)(feature_importances_屬性)。先運(yùn)行采用默認(rèn)超參數(shù)的XGBoost 模型來計算特征重要性分?jǐn)?shù),然后按照特征重要性分?jǐn)?shù)從高到低依次加入到調(diào)參后的預(yù)測模型中去,直到模型的預(yù)測準(zhǔn)確率不再增加為止,然后去掉還沒有加入到模型中的特征。對于對比模型中沒有特征重要性屬性的模型,先計算特征的F分?jǐn)?shù),然后再按照F 分?jǐn)?shù)從高到低依次加入模型的方法,直到模型的預(yù)測準(zhǔn)確率不再增加為止,然后去掉還沒有加入到模型中的特征。
為了避免數(shù)據(jù)集隨機(jī)劃分帶來的偶然性,模型訓(xùn)練過程采用交叉驗證。經(jīng)過多次實驗,最后決定采用5折交叉驗證來進(jìn)行數(shù)據(jù)集的劃分。
本實驗的目的是構(gòu)建貝葉斯超參數(shù)優(yōu)化后的XGBoost模型,并與其他單個模型以及集成學(xué)習(xí)模型在信用貸款風(fēng)險評估中的效果進(jìn)行對比。
為了驗證XGBoost-GP 模型的性能,使用了3 個數(shù)據(jù)集進(jìn)行驗證。其中German和Australia信用數(shù)據(jù)來自UCI機(jī)器學(xué)習(xí)數(shù)據(jù)集(http://archive.ics.uci.edu/ml/datasets.php),P2P-ren 是通過爬取人人貸平臺數(shù)據(jù)所得。三個數(shù)據(jù)集的結(jié)構(gòu)如表2所示。
表2 數(shù)據(jù)集格式Table 2 Formulation of credit data
為了驗證XGBoost-GP模型在信用風(fēng)險評估中的效果,采用了9種在信用貸款評估領(lǐng)域使用較廣并效果較好的模型與XGBoost 模型進(jìn)行比較。包括單學(xué)習(xí)器模型(LR、DT、BP-MPL、SVM)和集成學(xué)習(xí)模型(Bagging-DT、RF、AdaBoost-DT、GBDT)。
LR,是一種二分類模型,常被用作信用評估的基準(zhǔn)模型[9]。LR 根據(jù)樣本的特征推測樣本屬于某一類別的概率,然后根據(jù)概率進(jìn)行二分類。在信用貸款問題中,假設(shè)借款人違約的概率為P,則未發(fā)生違約的概率為1-P,P∈[0,1]。則LR公式可以表示如下:
其中,β0是常數(shù)系數(shù),βi是樣本特征xi對應(yīng)的系數(shù)。
SVM[28],是另一種適合于信用評估的二分類模型。依據(jù)結(jié)構(gòu)風(fēng)險最小化原則,SVM 在樣本空間里找到一個最優(yōu)分類超平面,將樣本劃分為兩個類別。SVM 依賴核函數(shù)將線性不可分的樣本映射到高維空間中變成線性可分。常用的核函數(shù)有線性核函數(shù)、多項式核、徑向基核(RBF)等。SVM 嘗試找到最優(yōu)的決策邊界,使得在超平面兩邊最近的點(diǎn)與超平面的距離之和越大越好。
BP-MPL,是一種按照誤差逆向傳播算法訓(xùn)練的多層前饋神經(jīng)網(wǎng)絡(luò)(MPL)。BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)特點(diǎn)為多層全連接與誤差反向傳播??梢杂糜诜诸惡突貧w問題。
DT,廣泛應(yīng)用于信用評估。一棵決策樹包含一個根節(jié)點(diǎn)、若干個內(nèi)部節(jié)點(diǎn)和若干個葉子節(jié)點(diǎn);每一個內(nèi)部節(jié)點(diǎn)代表基于一個屬性的決策,內(nèi)部節(jié)點(diǎn)下的每個分支代表決策后的輸出,葉節(jié)點(diǎn)對應(yīng)于最終決策結(jié)果。根據(jù)選擇分支屬性的依據(jù)不同,決策樹分為CART(根據(jù)Gini系數(shù))和C4.5(根據(jù)信息增益率)。
集成學(xué)習(xí)模型包括:
(1)并行模型模式
Bagging[29],從訓(xùn)練集X中隨機(jī)可放回抽樣取n個樣本,產(chǎn)生子訓(xùn)練樣本,并在子訓(xùn)練集上構(gòu)建基分類器;重復(fù)抽取k次得到k個基分類器;票選基分類器結(jié)果中最多的類作為Bagging 模型的輸出;基分類器可以是ID3、C4.5、CART、SVM、Logistic回歸等。
RF[30],從樣本集中有放回地采樣選出n個樣本;從所有特征中隨機(jī)選擇k個特征,然后選擇最佳分割特征將決策樹劃分為左右子樹,建立CART 決策樹;重復(fù)以上兩步m次,即建立了m棵CART決策樹;這m個CART樹形成了隨機(jī)森林,通過投票表決結(jié)果,決定樣本屬于哪一類別。
(2)順序模式
Adaboost[31],先給樣本賦予相等的權(quán)值,然后引入分類算法構(gòu)建分類模型;提高被錯誤判斷的樣本的權(quán)值,降低被正確判斷的樣本的權(quán)值,重新構(gòu)建分類器。重復(fù)這個過程,得到基分類器,對基分類器的預(yù)測效果進(jìn)行排序,效果好的得到更高權(quán)值。加權(quán)投票得到最終的分類結(jié)果。
GBDT,將負(fù)梯度作為上一輪基分類器犯錯的衡量指標(biāo),在下一輪學(xué)習(xí)中通過擬合負(fù)梯度來糾正上一輪犯的錯誤。GBDT是基于樹模型的梯度提升。
為了驗證貝葉斯優(yōu)化對XGBoost預(yù)測效果的提升,實驗同時對比了使用GS和RS進(jìn)行參數(shù)優(yōu)化后的XGBoost模型:XGBoost-GS和XGBoost-RS。各種優(yōu)化算法的超參數(shù)搜索空間如表3所示。
表3 XGBoost超參數(shù)優(yōu)化搜索空間Table 3 Search space set and number of computations of each hyper-parameter optimization method
每個對比模型通過GS和5折交叉驗證尋找使得模型F1分?jǐn)?shù)最高的超參數(shù)作為最優(yōu)超參數(shù)。
采用預(yù)測準(zhǔn)確率、Type-Ierror、Type-Ⅱerror、精準(zhǔn)率、召回率、F1分?jǐn)?shù)作為評價指標(biāo)。以上指標(biāo)都是基于表4所示的混淆矩陣。
表4 混淆矩陣Table 4 Confusion matrix
準(zhǔn)確率(Accuracy,ACC),預(yù)測正確的樣本占總體樣本的比例。
Type-Ierror,所有違約樣本中被誤判為未違約的比率。
Type-Ⅱerror:所有未違約樣本中被誤判為違約的比率。
因為如果違約的樣本被預(yù)測為未違約,造成的金融風(fēng)險更大,是信用評估中要重點(diǎn)避免的問題,所以模型要重點(diǎn)降低Type-Ierror指標(biāo)值。
精準(zhǔn)率(Precision),準(zhǔn)確預(yù)測為違約樣本數(shù)占所有預(yù)測為違約的樣本數(shù)的比例。
召回率(Recall),準(zhǔn)確預(yù)測為違約樣本數(shù)占所有違約樣本數(shù)的比例。
F1 分?jǐn)?shù)(F1-score),綜合考慮了精準(zhǔn)率和召回率的平衡。它是精確率和召回率的調(diào)和平均數(shù),最大為1,最小為0。
本實驗將5 折交叉驗證平均結(jié)果作為最終結(jié)果。實驗環(huán)境是為Sklearn和python3.8以及基于高斯過程代理的sklearn貝葉斯優(yōu)化包bayes_opt。
ACC 是最主流和直觀的評價指標(biāo)之一,代表了模型準(zhǔn)確度的整體水平。但在信貸風(fēng)險評價領(lǐng)域,對于違約行為預(yù)測的準(zhǔn)確度直接影響了金融機(jī)構(gòu)的經(jīng)營風(fēng)險和收益,Type-Ierror體現(xiàn)了對違約行為預(yù)測的錯誤率,所以較低的Type-Ierror 是好模型的重要衡量標(biāo)準(zhǔn)。F1-score綜合了對違約行為預(yù)測的精準(zhǔn)率和召回率兩個指標(biāo),所以將F1-score 作為衡量模型好壞的重要的指標(biāo)。表5~表7 顯示了XGBoost 和對比模型在三個數(shù)據(jù)集上的表現(xiàn),其中表現(xiàn)最好的用黑體標(biāo)出。
表5 在German數(shù)據(jù)集上模型準(zhǔn)確性評估結(jié)果Table 5 Result of performances on German dataset on performance measures
在German 數(shù)據(jù)集上(見表5),XGBoost-GP 獲得了最好的預(yù)測準(zhǔn)確率ACC(82%)和F1-score(0.704 9)。其ACC相比表現(xiàn)最好的單分類器BP-MPL高出3.5個百分點(diǎn),比表現(xiàn)最好的集成分類器RF高出3.9個百分點(diǎn)。三個XGBoost 模型的ACC 和Type-Ierror 在所有模型里表現(xiàn)最好,說明XGBoost模型對整體樣本的預(yù)測準(zhǔn)確率和對少數(shù)樣本(這里是違約樣本)的預(yù)測準(zhǔn)確率都很好,在處理非均衡數(shù)據(jù)時具有優(yōu)勢,對非均衡數(shù)據(jù)中的少數(shù)樣本的預(yù)測能力很強(qiáng)。這種對少數(shù)樣本預(yù)測能力的提升歸功于XGBoost超參數(shù)中scale_pos_weight對樣本權(quán)重的平衡能力。RF在Type-Ⅱerror指標(biāo)上表現(xiàn)最好,說明RF 傾向于將樣本判斷為好樣本。在所有對比模型中,BP-MPL 在ACC 和F1-score 指標(biāo)上表現(xiàn)最好,在Type-Ierror 指標(biāo)上僅次于LR,說明在信用評估領(lǐng)域,BP-MPL可以作為一個備選模型。
Australian 是一個相對均衡的數(shù)據(jù)集,違約樣本數(shù)量略多于未違約樣本,因此Australian數(shù)據(jù)集上(見表6)各個模型的表現(xiàn)都高于German 數(shù)據(jù)集,且正負(fù)樣本的預(yù)測錯誤率也相對均衡。XGBoost-GP 模型在除了Type-Ⅱerror 之外的所有指標(biāo)上都取得了最好的表現(xiàn)。ACC相比表現(xiàn)最好的單分類器LR高出3.77個百分點(diǎn),比表現(xiàn)最好的集成分類器RF高出3.62個百分點(diǎn)。SVM的Type-Ⅱerror值在所有模型中最低,而Type-Ierror值最高,說明SVM傾向于將樣本判斷為好樣本,對違約行為的預(yù)測能力較差。F1-score體現(xiàn)了模型對正負(fù)樣本錯分代價的綜合評判指標(biāo),XGBoost-GP 在該指標(biāo)上表現(xiàn)最好(0.912 4),比表現(xiàn)最好的對比模型RF高出0.042 1。在所有對比模型中,RF 在ACC 和F1-score 指標(biāo)上表現(xiàn)最好,可以作為一個備選模型。
表6 在Australian數(shù)據(jù)集上模型準(zhǔn)確性評估結(jié)果Table 6 Result of performances on Australian dataset on performance measures
在P2P-ren數(shù)據(jù)集上(見表7)XGBoost-GP模型在除了Type-Ⅱerror 之外的所有指標(biāo)上都取得了最好的表現(xiàn)。ACC 相比表現(xiàn)最好的單分類器BP-MPL 高出0.91個百分點(diǎn),比表現(xiàn)最好的集成分類器Bagging-DT 高出1.37個百分點(diǎn)。P2P-ren是三個數(shù)據(jù)集中正負(fù)樣本數(shù)最不均衡的數(shù)據(jù)集,XGBoost-GP 模型將調(diào)解正負(fù)樣本權(quán)重的參數(shù)scale_pos_weight設(shè)置為2,在保證Type-Ⅱerror的前提下,大大降低了Type-Ierror(4.08%),從而使得F1-score 有較大的提升(0.839 2),比表現(xiàn)最好的對比模型BP-MPL高出0.017 8。LR獲得了最好的Type-Ⅱerror(4.24%),但Type-Ierror指標(biāo)上表現(xiàn)較差,說明LR傾向于將樣本判斷為好樣本,對違約行為的預(yù)測能力較差。在所有對比模型中,BP-MPL在ACC和F1-score指標(biāo)上表現(xiàn)最好,可以作為一個備選模型。
表7 在P2P-ren數(shù)據(jù)集上模型準(zhǔn)確性評估結(jié)果Table 7 Result of performances on P2P-ren dataset on performance measures
總體上看,在所有數(shù)據(jù)集上,單個分類器中效果最好的是BP-MPL,集成分類器效果中最好的是XGBoost-GP。XGBoost-GP 在保證準(zhǔn)確率的前提下能綜合考慮其他各項指標(biāo),尤其是在降低Type-Ierror 和提高F1-score表現(xiàn)最好,說明XGBoost-GP非常用于適合信用評估領(lǐng)域,其對違約風(fēng)險的預(yù)測同時保證了高精準(zhǔn)和低遺漏。XGBoost 的scale_pos_weight 參數(shù)可以平衡正負(fù)樣本權(quán)重,因此XGBoost在非均衡數(shù)據(jù)集上表現(xiàn)同樣非常穩(wěn)定,而貝葉斯高斯過程的超參數(shù)優(yōu)化促進(jìn)了XGBoost和信用評估數(shù)據(jù)特征之間的匹配度。
為了驗證不同算法在統(tǒng)計意義上是否存在顯著性差異,本文采用了非參數(shù)檢驗中的Firedman檢驗和后續(xù)檢驗Nemenyi 檢驗。Friedman 檢驗用于分析多組數(shù)據(jù)集上的多種算法的表現(xiàn)是否存在顯著性差異。如果算法在統(tǒng)計學(xué)意義上存在顯著性差異,可以使用Nemenyi檢驗進(jìn)一步區(qū)分各個算法。
使用Friedman 非參數(shù)檢驗和Nemenyi 檢驗后續(xù)檢驗來驗證不同模型在3個數(shù)據(jù)集上的ACC和F1分?jǐn)?shù)是否存在統(tǒng)計意義上存在顯著性差異。空假設(shè)表示模型之間沒有差異。首先,F(xiàn)riedman 檢驗拒絕空假設(shè)表明模型存在顯著性差異。如果存在顯著性差異,再用Nemenyi 檢驗進(jìn)一步區(qū)分各個模型。若兩個模型的平均序值之差超出了臨界值域CD,則這兩個算法性能有明顯差異。
表8 顯示了11 個模型的ACC 和F1-score 在3 個數(shù)據(jù)集上的平均排名。Friedman檢驗結(jié)果顯示11 個模型的預(yù)測準(zhǔn)確率ACC 和F1-score 當(dāng)顯著性水平α=0.05時,拒絕原假設(shè),在95%顯著水平下有顯著性差異。
表8 模型ACC和F1-score平均排名Table 8 Average rank for ACC and F1-score of models
采用Nemenyi檢驗進(jìn)一步分析。當(dāng)數(shù)據(jù)集數(shù)量為3,模型數(shù)量為11,α分別等于0.1,0.05 時,qα值分別為2.978,3.219。根據(jù)公式(19)計算得到CD值分別為8.064,8.717。其中N和k分別為數(shù)據(jù)集個數(shù)和模型個數(shù)。
圖3和圖4中柱形圖代表了11個模型在3個數(shù)據(jù)集上的ACC 和F1-score 平均排名,按照排名的高低排序,兩條水平線分別表示顯著性水平分別為0.05和0.1時的CD值。水平線以上的模型比最優(yōu)模型顯著更差。如圖3和圖4所示,基于XGBoost的模型排在前4位,XGBoost-GP和XGBoost-RS排名最高,XGBoost-GS次之。在對比模型中,BP-MPL表現(xiàn)最好。集成模型優(yōu)于單分類器模型LR、SVM和DT。
圖3 模型ACC平均排名和Nemenyi檢驗結(jié)果Fig.3 Average rank for ACC of models and threshold of Nemenyi test
圖4 模型F1-score平均排名和Nemenyi檢驗結(jié)果Fig.4 Average rank for ACC of models and threshold of Nemenyi test
評價一個超參數(shù)優(yōu)化算法的優(yōu)劣需要從時間復(fù)雜度和優(yōu)化效果兩個角度進(jìn)行評判。超參數(shù)的評估代價很大,因為它要求使用待評估的超參數(shù)訓(xùn)練一遍模型。超參數(shù)優(yōu)化算法的時間復(fù)雜度可以由使用待評估的超參數(shù)訓(xùn)練模型的次數(shù)來決定。依據(jù)表3 的XGBoost 超參數(shù)優(yōu)化搜索空間,為了防止GS 搜索參數(shù)過多引起的維度爆炸,將Learning rate 和Number of boost 兩個參數(shù)設(shè)置為固定值,則GS 用待評估參數(shù)訓(xùn)練模型的次數(shù)是16 000 次。RS 和GP 在所有超參數(shù)參與搜索、迭代500次,5折交叉驗證的情況下,訓(xùn)練模型的次數(shù)分別為2 500 次和500 次。圖5 顯示了不同優(yōu)化算法在三個數(shù)據(jù)集上超參數(shù)搜索時模型準(zhǔn)確率的箱線圖,可以看出GP搜索的超參數(shù)范圍小,但效果總體優(yōu)于GS和RS。
圖5 三種超參數(shù)算法準(zhǔn)確率箱線圖Fig.5 Boxplot of accuracy over three hyper-parameter optimization approach
模型的可解釋性對于信用評估問題非常重要,具有更好的解釋性的模型更容易被銀行和其他金融機(jī)構(gòu)的決策者所采納。首先,具有可解釋性的模型能夠清晰地將決策過程呈現(xiàn)在貸款審批決策者面前[32];其次,很多金融機(jī)構(gòu)的決策者不喜歡集成學(xué)習(xí)模型,而更傾向于統(tǒng)計模型。具有很好解釋性的集成學(xué)習(xí)模型更容易被接受[11];最后,很多國家因為金融監(jiān)管的原因需要有可解釋性的模型[33]。基于XGBoost 的模型采用回歸樹作為基礎(chǔ)模型,而樹模型具有天然的可解釋性。基于XGBoost的模型的可解釋性依賴兩個方面:特征重要性評分和決策規(guī)則。
其中特征重要性評分可通過算法的feature_importance參數(shù)獲得。XGBoost-GP 在P2P-ren 的特征重要性分?jǐn)?shù)如圖6所示。
圖6 XGBoost-GP在P2P-ren上的特征重要性分?jǐn)?shù)Fig.6 Diagram of feature importance scores on P2P-ren
特征重要性分?jǐn)?shù)體現(xiàn)了該特征的權(quán)重,分?jǐn)?shù)越高,表明該特征在模型決策過程中的作用越重要,那么在信用評估的信息采集過程中需要被重點(diǎn)采集。相反的,特征重要性分?jǐn)?shù)低的特征可以去掉以提高算法效率。
通過查看XGBoost 每一棵決策樹可以清晰地看到模型的決策規(guī)則。XGBoost模型的基模型是歸回樹,每一次迭代產(chǎn)生的新樹用來擬合上一個歸回樹產(chǎn)生的殘差,最后對樣本的預(yù)測值取決于所有回歸樹葉子節(jié)點(diǎn)值的和。通過sklearn的plot_tree()函數(shù)可以查看XGBoost模型每一次迭代產(chǎn)生的回歸樹,圖7顯示了XGBoost-GP在P2P-ren上的第一棵決策樹和最后一棵決策樹。
圖7 XGBoost-GP 在P2P-ren上的決策樹Fig.7 Decision chart of XGBoost-GP on P2P-ren
本文將一種非常高效的集成學(xué)習(xí)方法XGBoost 用于信用貸款的實際大數(shù)據(jù)預(yù)測中,并分別使用網(wǎng)格搜索、隨機(jī)搜索、貝葉斯優(yōu)化高斯過程三種方法對XGBoost進(jìn)行調(diào)參優(yōu)化,考察其在German、Australian和中國網(wǎng)貸平臺信用風(fēng)險預(yù)警問題上的效果。通過和其他機(jī)器學(xué)習(xí)方法(LR、SVM、BP-MPL、DT、Bagging-DT、AdaBoost-DT、GBDT)進(jìn)行對比,考察了ACC、Type-Ierror、Type-Ⅱerror、F1 分?jǐn)?shù)四個指標(biāo),實驗結(jié)果表明XGBoost-GP 各項性能表現(xiàn)優(yōu)異,尤其在風(fēng)險評估最重視的違約樣本召回率方面表現(xiàn)最為突出。通過Friedman 檢驗和后續(xù)檢驗Nemenyi 檢驗,證明這XGBoost-GP 方法在統(tǒng)計學(xué)意義上具有明顯優(yōu)勢。同時,基于XGBoost的方法在特征選擇和決策規(guī)則可以顯性地顯示出來,模型具有可解釋性,可以為信用貸款風(fēng)險評估提供有效而可靠的方法。
貝葉斯超參數(shù)優(yōu)化是一種基于已有樣本點(diǎn)的先驗知識來探索新的更優(yōu)超參數(shù)的優(yōu)化過程,具有收斂速度快,對非凸問題依然穩(wěn)健的優(yōu)點(diǎn),極大地提升了XGBoost的性能。XGBoost是高性能的集成學(xué)習(xí)模型,自帶缺失值處理和并行計算能力,速度快,精度高,同時具有可解釋性,樣本特征值重要性和決策規(guī)則一目了然,作為信用風(fēng)險評估模型更容易被銀行等金融機(jī)構(gòu)所接受和采納。信用風(fēng)險評估是一個典型的樣本不均衡問題,數(shù)據(jù)不均衡對模型的預(yù)測準(zhǔn)確率有一定的影響,本文只在算法層面對正負(fù)樣本的權(quán)重進(jìn)行了設(shè)置,沒有在數(shù)據(jù)層面做出重采樣或降采樣的處理。未來可進(jìn)一步探討從數(shù)據(jù)層面和算法層面結(jié)合處理樣本不均衡問題,提高信用貸款違約風(fēng)險評估模型的預(yù)測準(zhǔn)確率。