鐘世欽
(1.合肥工業(yè)大學(xué) 管理學(xué)院,安徽 合肥 230009;2.合肥工業(yè)大學(xué) 過(guò)程優(yōu)化與智能決策教育部重點(diǎn)實(shí)驗(yàn)室,安徽 合肥 230009)
網(wǎng)絡(luò)借貸是互聯(lián)網(wǎng)金融的重要模式之一,其雛形始于20世紀(jì)末的美國(guó),目前國(guó)內(nèi)發(fā)展已有十余年[1],相比于一般的線下借貸,網(wǎng)絡(luò)借貸更加方便快捷,資金的廣闊流動(dòng)大大推動(dòng)了金融的發(fā)展,但是隨著借貸數(shù)額和借貸者的增加,其弊端也愈發(fā)明顯。網(wǎng)貸平臺(tái)所面對(duì)的客戶不可見(jiàn),平臺(tái)僅能通過(guò)從互聯(lián)網(wǎng)收集到的用戶信息來(lái)判斷是否給予用戶貸款,判斷準(zhǔn)確度不足將使得平臺(tái)受到的貸款用戶違約帶來(lái)的不良影響,這不僅會(huì)動(dòng)搖投資者的信心,也對(duì)平臺(tái)的信譽(yù)不利,最終可能導(dǎo)致平臺(tái)跑路、造成資金損失等問(wèn)題[2]。2020年9月,中國(guó)互聯(lián)網(wǎng)金融協(xié)會(huì)發(fā)布了《中國(guó)互聯(lián)網(wǎng)金融年報(bào)2020》,其中數(shù)據(jù)表明行業(yè)趨勢(shì)為從追求規(guī)模擴(kuò)張向追求高質(zhì)量發(fā)展轉(zhuǎn)型,因此對(duì)用戶的違約風(fēng)險(xiǎn)預(yù)測(cè)也是該行業(yè)的重點(diǎn),為了行業(yè)的良性發(fā)展,亟需準(zhǔn)確而高效的用戶違約風(fēng)險(xiǎn)預(yù)測(cè)模型。
傳統(tǒng)的統(tǒng)計(jì)分析方法是貸款用戶信用違約風(fēng)險(xiǎn)預(yù)測(cè)的常見(jiàn)方法之一,如早期的由Altman建立的Z-score模型;或是例如Mohammed Jamal Uddin[3]使用的結(jié)合貸款人歷史信息以案例推理的方法來(lái)對(duì)貸款申請(qǐng)進(jìn)行選擇的形式,這樣的統(tǒng)計(jì)分析方法往往需要耗費(fèi)人大量的精力,也不能分析處理過(guò)多的數(shù)據(jù)。不過(guò)隨著網(wǎng)貸業(yè)務(wù)的發(fā)展和機(jī)器學(xué)習(xí)的成熟,機(jī)器作為數(shù)據(jù)分析的工具能夠幫助人們更加快捷和有效地對(duì)用戶進(jìn)行分類預(yù)測(cè),因此目前對(duì)金融貸款用戶違約風(fēng)險(xiǎn)預(yù)測(cè)的方法以機(jī)器學(xué)習(xí)為主。張?chǎng)?、曹帥[4]運(yùn)用BP神經(jīng)網(wǎng)絡(luò)模型來(lái)預(yù)測(cè)P2P網(wǎng)貸平臺(tái)的貸款人違約率;吳沖、夏晗[5]使用支持向量機(jī)對(duì)用戶信用進(jìn)行分類評(píng)價(jià);張玥等人[6]在支持向量機(jī)上運(yùn)用不同核函數(shù)組合進(jìn)行決策的方法在個(gè)人信用分類上取得了良好的結(jié)果;熊正德等人[7]使用logistics模型來(lái)進(jìn)行互聯(lián)網(wǎng)金融客戶的違約風(fēng)險(xiǎn)研究,通過(guò)關(guān)注客戶的還款行為差異,將客戶分為“違約”和“不違約”。除了上述機(jī)器學(xué)習(xí)模型,還有集成學(xué)習(xí)以及決策樹(shù)模型系列等[8-9]。
隨著深度學(xué)習(xí)模型的發(fā)展,有學(xué)者開(kāi)始研究將深度學(xué)習(xí)模型運(yùn)用在網(wǎng)貸違約風(fēng)險(xiǎn)預(yù)測(cè)上,Duan[10]使用深度神經(jīng)網(wǎng)絡(luò),將采用了過(guò)采樣技術(shù)的數(shù)據(jù)集用于實(shí)證分析,結(jié)果表明預(yù)測(cè)準(zhǔn)確率為93%,驗(yàn)證了該方法的可行性。熊志斌[11]也運(yùn)用深度置信網(wǎng)絡(luò)對(duì)貸款用戶的信用進(jìn)行評(píng)估,借鑒于Hosaka[12]的將數(shù)值型圖像化后使用CNN(convolutional neural networks,卷積神經(jīng)網(wǎng)絡(luò))進(jìn)行分析的思想以及該方法在分析企業(yè)各項(xiàng)指標(biāo)對(duì)企業(yè)破產(chǎn)風(fēng)險(xiǎn)進(jìn)行預(yù)測(cè)的有效性,劉偉江[13]也將網(wǎng)貸用戶的數(shù)據(jù)做成畫(huà)像來(lái)使用常用于圖像處理的CNN進(jìn)行用戶違約風(fēng)險(xiǎn)預(yù)測(cè)。
由上述文獻(xiàn)可知,目前大部分對(duì)網(wǎng)貸用戶違約風(fēng)險(xiǎn)分析的機(jī)器學(xué)習(xí)模型的結(jié)構(gòu)是淺層結(jié)構(gòu),淺層結(jié)構(gòu)雖然效率高,但是對(duì)數(shù)據(jù)的挖掘能力有限。隨著大數(shù)據(jù)時(shí)代的發(fā)展,互聯(lián)網(wǎng)信息量呈現(xiàn)出爆炸性增長(zhǎng),這些機(jī)器學(xué)習(xí)模型在函數(shù)表達(dá)和信息特征的提取上就顯得越來(lái)越疲乏,此外,為了處理高維數(shù)據(jù)通常需要進(jìn)行降維操作來(lái)降低數(shù)據(jù)冗雜程度,但也可能因此丟失重要的信息。而深度學(xué)習(xí)是擁有更加深層次的神經(jīng)網(wǎng)絡(luò)的機(jī)器學(xué)習(xí)模型,相比于一般機(jī)器學(xué)習(xí)模型,深度學(xué)習(xí)的模型內(nèi)部結(jié)構(gòu)更加復(fù)雜、函數(shù)表達(dá)能力更強(qiáng)、在數(shù)據(jù)的特征提取上有著更加明顯的優(yōu)勢(shì)[14-15],這也能夠應(yīng)對(duì)網(wǎng)貸用戶數(shù)據(jù)特征的高維多樣性問(wèn)題,在盡量不丟失信息的情況下對(duì)高維數(shù)據(jù)進(jìn)行更好的特征提取供機(jī)器學(xué)習(xí)并分類預(yù)測(cè)。
考慮到數(shù)值圖像化的操作可行性及其實(shí)驗(yàn)結(jié)果的良好性,該文嘗試使用深度學(xué)習(xí)中經(jīng)典的圖像處理模型——CNN與一般的機(jī)器學(xué)習(xí)模型進(jìn)行結(jié)合來(lái)進(jìn)行網(wǎng)貸用戶違約風(fēng)險(xiǎn)的預(yù)測(cè)。為了構(gòu)建專用于處理網(wǎng)貸數(shù)據(jù)的CNN,先通過(guò)實(shí)驗(yàn)對(duì)CNN的超參數(shù)進(jìn)行調(diào)整,再將CNN與一般模型結(jié)合進(jìn)行訓(xùn)練,最后進(jìn)行對(duì)比實(shí)驗(yàn)測(cè)試CNN對(duì)一般模型預(yù)測(cè)的改良效果以及組合模型整體的預(yù)測(cè)性能。
該文采用CNN對(duì)網(wǎng)貸用戶信息進(jìn)行特征提取,對(duì)應(yīng)不同問(wèn)題的數(shù)據(jù)需要具有合適超參數(shù)的CNN。
CNN中有多層神經(jīng)網(wǎng)絡(luò),神經(jīng)網(wǎng)絡(luò)由多個(gè)神經(jīng)元構(gòu)成,每個(gè)神經(jīng)元上都有參數(shù)w(權(quán)重)和b(偏置)來(lái)與經(jīng)過(guò)它的數(shù)據(jù)進(jìn)行matmul(矩陣相乘)。在CNN中,將訓(xùn)練數(shù)據(jù)輸入模型與模型中的卷積核進(jìn)行卷積操作得到特征圖,并經(jīng)過(guò)一系列的卷積、池化、dropout操作得到更加深層次的特征圖,接著經(jīng)過(guò)全連接層并使用分類器進(jìn)行分類,將分類結(jié)果與真實(shí)結(jié)果進(jìn)行對(duì)比得到損失函數(shù),使用優(yōu)化器以將損失函數(shù)值降到最低為目的反向傳遞函數(shù)將整個(gè)模型的w、b參數(shù)變化,最終得到能夠在無(wú)標(biāo)簽數(shù)據(jù)中進(jìn)行精準(zhǔn)分類的模型[16-17]。該文涉及的模型超參數(shù)包含層數(shù)、卷積核大小、學(xué)習(xí)率和訓(xùn)練批次,具體如下。
卷積和池化是構(gòu)建CNN中卷積結(jié)構(gòu)的重要概念,也是CNN在深度神經(jīng)網(wǎng)絡(luò)中特有的結(jié)構(gòu),也是網(wǎng)絡(luò)提取網(wǎng)貸用戶數(shù)據(jù)特征的手段。在定義卷積層時(shí)需要考慮卷積核的形狀以及卷積過(guò)程中移動(dòng)的步長(zhǎng),圖1是卷積核與數(shù)據(jù)進(jìn)行卷積的過(guò)程。
圖1 卷積過(guò)程
首先以最直觀的二維矩陣去說(shuō)明。假設(shè)有一個(gè)m*n的輸入,卷積核的規(guī)格為i*j(代表了機(jī)器的感受野,常用的卷積核大小為3*3和5*5),步長(zhǎng)為n,那么:
特征圖的高:H=(n-j+1)/n。
特征圖的寬:W=(m-i+1)/m。
卷積核從左上角開(kāi)始,按照步長(zhǎng)一步一步地從左到右、從上到下與輸入圖像進(jìn)行卷積操作,每一步卷積生成的數(shù)據(jù)按照順序構(gòu)成新的矩陣,也就是特征圖。在圖1中5*5的特征圖在3*3的卷積核以步長(zhǎng)為1的卷積操作后得到了3*3的特征,特征圖上的數(shù)據(jù)則是使用卷積公式計(jì)算而來(lái):
(1)
其中,m表示輸入的矩陣個(gè)數(shù),Xk和Wk表示第k個(gè)輸入矩陣和卷積核矩陣,矩陣中對(duì)應(yīng)元素相乘后再加上偏置b就得到了特征圖上相應(yīng)位置的值。
每個(gè)卷積層的每個(gè)卷積核通過(guò)和輸入的數(shù)據(jù)進(jìn)行一次卷積得到了特征圖,經(jīng)過(guò)多層的卷積層將得到深層特征圖,特征圖也將隨著層數(shù)的增加而縮小,數(shù)量也不斷增加,因此需要考慮合適的網(wǎng)絡(luò)深度能夠提取到數(shù)據(jù)最佳的特征用于分類。
池化也是用于處理特征圖,一般在每個(gè)卷積層后面添加一層池化層對(duì)特征圖進(jìn)行降維,池化方式主要有兩種,分別是平均池化和最大池化。圖2為最大池化的過(guò)程。
圖2 最大池化過(guò)程
根據(jù)最大規(guī)則保留了每個(gè)2*2矩陣的最大的元素(平均池化則是把規(guī)則改為了取平均值),也就是使用1*1的矩陣去代表2*2的矩陣,得到的池化結(jié)果矩陣中的元素在降維的情況下仍然能代表原特征圖的特征,這在圖像中提取主要特征的同時(shí)對(duì)減少參數(shù)也起到了重要作用。
訓(xùn)練批次數(shù)量和學(xué)習(xí)率屬于模型超參數(shù)中影響模型訓(xùn)練效果重要的參數(shù)。訓(xùn)練批次數(shù)量表示每一次訓(xùn)練中進(jìn)入模型中的數(shù)據(jù)數(shù)量,深度學(xué)習(xí)模型訓(xùn)練過(guò)程采取的是批次訓(xùn)練模式,批次數(shù)量過(guò)小影響訓(xùn)練效率,過(guò)大則影響訓(xùn)練效果;學(xué)習(xí)率則描述CNN在進(jìn)行損失函數(shù)優(yōu)化反向傳遞時(shí)參數(shù)進(jìn)行變化的速度,在高學(xué)習(xí)率的情況下,參數(shù)的變化速度會(huì)非???,但是這樣的過(guò)程非常容易導(dǎo)致模型過(guò)擬合,而過(guò)低的學(xué)習(xí)率則模型訓(xùn)練時(shí)間過(guò)慢。
隨機(jī)梯度下降算法的原理為:
(2)
其中,w為模型中每個(gè)神經(jīng)元中的參數(shù),a為學(xué)習(xí)率,n為每批次訓(xùn)練的數(shù)量。在參數(shù)w更新的過(guò)程中,學(xué)習(xí)率和批次訓(xùn)練數(shù)量共同影響w沿梯度下降的進(jìn)程,學(xué)習(xí)率直接影響模型的收斂,批次訓(xùn)練數(shù)量影響模型的泛化能力,因此在不同的情況下考慮以上兩個(gè)參數(shù)的設(shè)置對(duì)模型的訓(xùn)練效果很有必要。
該文采用基于CNN和一般模型結(jié)合的預(yù)測(cè)方法,對(duì)網(wǎng)貸違約風(fēng)險(xiǎn)進(jìn)行預(yù)測(cè),針對(duì)高維的網(wǎng)貸用戶數(shù)據(jù),利用CNN在圖像處理中無(wú)需關(guān)心數(shù)據(jù)特征屬性且能處理大量信息數(shù)據(jù)的優(yōu)勢(shì),將數(shù)值型數(shù)據(jù)圖形化通過(guò)CNN得到數(shù)據(jù)特征,再將特征作為該研究領(lǐng)域中常用的一般模型的輸入來(lái)進(jìn)行違約風(fēng)險(xiǎn)預(yù)測(cè)。
在一般機(jī)器學(xué)習(xí)模型中,挑選了三個(gè)常用模型:支持向量機(jī)(SVM)、決策樹(shù)(Tree)和Logistic(下稱Log)模型。組合模型的連接點(diǎn)為CNN提取圖形化數(shù)值的特征到一般機(jī)器學(xué)習(xí)模型的輸入,因此組合模型的內(nèi)部具體流程(見(jiàn)圖3)如下:
Step1:將網(wǎng)貸用戶數(shù)據(jù)集導(dǎo)入CNN訓(xùn)練,驗(yàn)證數(shù)據(jù)集指標(biāo)達(dá)到一定標(biāo)準(zhǔn)后停止訓(xùn)練,保留網(wǎng)絡(luò)參數(shù);
Step2:將網(wǎng)貸用戶數(shù)據(jù)集導(dǎo)入已訓(xùn)練好的CNN,截取輸出層前一層的數(shù)據(jù)作為特征集;
Step3:將特征集導(dǎo)入SVM中進(jìn)行訓(xùn)練,驗(yàn)證集達(dá)標(biāo)后保留模型的參數(shù);
Step4:將特征集導(dǎo)入Log中進(jìn)行訓(xùn)練,驗(yàn)證集達(dá)標(biāo)后保留模型的參數(shù);
Step5:將特征集導(dǎo)入Tree中進(jìn)行訓(xùn)練,驗(yàn)證集達(dá)標(biāo)后保留模型的參數(shù);
Step6:使用訓(xùn)練好的組合模型進(jìn)行網(wǎng)貸違約風(fēng)險(xiǎn)預(yù)測(cè)。
圖3 融合CNN和3種分類模型的網(wǎng)貸 違約風(fēng)險(xiǎn)預(yù)測(cè)流程
代碼使用python編寫(xiě),基本環(huán)境:python3.6.5、tensorflow1.4,PC配置:64位Win10操作系統(tǒng)、Inter(R)Core(TM)i5-8250UCPU@1.60 GHz處理器、8.00 GB運(yùn)行內(nèi)存。
本次實(shí)驗(yàn)數(shù)據(jù)來(lái)源于Lending Club官網(wǎng)的公開(kāi)數(shù)據(jù)集,選取了2019年共四個(gè)季度的所有數(shù)據(jù),一個(gè)季度約有十萬(wàn)條數(shù)據(jù),每條數(shù)據(jù)150個(gè)特征,先將貸款狀態(tài)中顯示為issued的數(shù)據(jù)進(jìn)行刪除,剩余貸款狀態(tài)有current、charged off、fully paid、default、in grace period、late(16~30 days)和late(31~120 days),將current和fully paid視為正常用戶,其余狀態(tài)視為違約用戶[18],以此對(duì)數(shù)據(jù)中貸款狀態(tài)進(jìn)行初步判斷后,發(fā)現(xiàn)違約用戶的比例大約為10%。考慮到訓(xùn)練數(shù)據(jù)中違約數(shù)據(jù)和正常數(shù)據(jù)的比例會(huì)影響分類器的分類性能,因此在數(shù)據(jù)層面上對(duì)數(shù)據(jù)進(jìn)行欠抽樣和過(guò)抽樣,在正常用戶中隨機(jī)篩選25%數(shù)據(jù),對(duì)違約用戶數(shù)據(jù)進(jìn)行全額選擇,以此構(gòu)成初步的數(shù)據(jù)集[19](其中共156 143條數(shù)據(jù),其中正常用戶116 268條,違約用戶39 875條,比例約為3∶1)。
接下對(duì)數(shù)據(jù)集進(jìn)行篩選、歸一化等操作。首先在特征上,將用戶信息缺失度高于60%的、無(wú)關(guān)用戶違約的特征(如借款日期、客戶ID)以及數(shù)據(jù)信息重復(fù)(如purpose和title)的進(jìn)行剔除,隨后對(duì)缺失少量值的特征進(jìn)行分析填充,其他難以判斷的數(shù)據(jù)缺失直接刪除整行數(shù)據(jù)或者使用眾數(shù)進(jìn)行填充。最終處理后的數(shù)據(jù)集有156 143條數(shù)據(jù),81條特征。
將正常用戶表示為“10”,違約用戶表示為“01”,這在python中表現(xiàn)為形狀為1*2的張量,同時(shí)模型的預(yù)測(cè)輸出為形狀1*2的張量,根據(jù)其中最大元素所在列數(shù)來(lái)判斷預(yù)測(cè)是否準(zhǔn)確。例如,正常用戶的最大元素所在列是1,違約用戶的最大元素所在列是2,對(duì)于模型輸出的[0.83,0.34]的分類,其最大元素所在列是第1列,屬于正常用戶。
為了設(shè)計(jì)適合預(yù)測(cè)網(wǎng)貸用戶數(shù)據(jù)的CNN,接下來(lái)改變模型結(jié)構(gòu)、學(xué)習(xí)率和批次數(shù)量來(lái)對(duì)比模型訓(xùn)練效果,得到最優(yōu)模型。初始模型選擇Lenet-5模型,擁有三層結(jié)構(gòu),每層包括卷積、池化和dropout,初始學(xué)習(xí)率為0.001,默認(rèn)訓(xùn)練批次數(shù)量為100,數(shù)據(jù)集中訓(xùn)練集130 000條、驗(yàn)證集5 000條、測(cè)試集20 000條。
CNN多用于圖像識(shí)別,使用的網(wǎng)貸用戶特征數(shù)據(jù)經(jīng)過(guò)處理后為81條,全部作為像素點(diǎn)構(gòu)成的圖片是9*9像素的圖像,如此小的圖片經(jīng)過(guò)多個(gè)卷積層和池化層可能會(huì)嚴(yán)重地丟失信息,因此先確定池化層對(duì)于模型來(lái)說(shuō)是否是需要的,訓(xùn)練樣本為13萬(wàn)條,每批100條數(shù)據(jù),總共進(jìn)行1 300次步數(shù)訓(xùn)練,驗(yàn)證數(shù)據(jù)為五千條,模型之間除了池化層差異,其余參數(shù)均一致。有無(wú)池化層的模型準(zhǔn)確率對(duì)比如圖4所示。
圖4 有無(wú)池化層的模型準(zhǔn)確率對(duì)比
首先可以看到,有池化層的模型在訓(xùn)練起步的前200步訓(xùn)練幾乎沒(méi)有變化,無(wú)池化層的模型則在第100步開(kāi)始變化,池化層使得模型在前期的訓(xùn)練收效甚微,然后隨著訓(xùn)練步數(shù)的增加,最終無(wú)池化層的波動(dòng)上升到了約94%精度,而有池化層的模型精度一直低于無(wú)池化層的。因此可以得知在這種大小的圖片下,添加池化層將使得數(shù)據(jù)的信息丟失,降低分類效果,在模型結(jié)構(gòu)上應(yīng)當(dāng)首先將池化層去掉。
接下來(lái)將不斷改變模型層數(shù)來(lái)對(duì)比模型的訓(xùn)練效果,結(jié)果如圖5所示。
圖5 不同層數(shù)的模型準(zhǔn)確率對(duì)比
首先收斂速度是一層結(jié)構(gòu)最快,但是直到迭代次數(shù)達(dá)到上限時(shí)一層、二層和三層的最終準(zhǔn)確率的差別從圖像難以看出差距,因此,還需要對(duì)這四種模型進(jìn)行訓(xùn)練和測(cè)試準(zhǔn)確率。下面以驗(yàn)證集的分類效果來(lái)對(duì)比不同層數(shù)模型之間的訓(xùn)練效果,每批次100條數(shù)據(jù),每50步輸出一個(gè)驗(yàn)證集分類準(zhǔn)確率,以準(zhǔn)確率前五位的平均數(shù)來(lái)代表本次訓(xùn)練效果。實(shí)驗(yàn)結(jié)果中,一層到四層的平均準(zhǔn)確率分別為93.99%、93.96%、94.08%和92.62%,四層結(jié)構(gòu)在層數(shù)增加的情況下反而降低了準(zhǔn)確率,因此首先排除四層結(jié)構(gòu),再比較其余三種層結(jié)構(gòu),可以發(fā)現(xiàn)兩項(xiàng)指標(biāo)均是三層結(jié)構(gòu)的模型更加具有優(yōu)勢(shì),盡管優(yōu)勢(shì)微小,但是考慮到層數(shù)的增加能提取到數(shù)據(jù)更深層次的特征,在四層模型結(jié)構(gòu)不合適的、而一二層略微弱于三層結(jié)構(gòu)的情況下,該文選擇了三層結(jié)構(gòu)的CNN。
確定模型的層數(shù)后,主要設(shè)置卷積層中卷積核大小,因其規(guī)格類型多樣,選擇當(dāng)前CNN最常用的3*3和5*5大小的卷積核,并且三層卷積層都使用同樣大小的卷積核,對(duì)比訓(xùn)練效果如圖6所示。
圖6 不同卷積核的模型準(zhǔn)確率對(duì)比
訓(xùn)練效果區(qū)別非常明顯,在300步后使用5*5卷積核的CNN的訓(xùn)練效果就要好于使用3*3卷積核的CNN,所以模型結(jié)構(gòu)上確定了三層5*5卷積核的卷積層,無(wú)池化層。
CNN中的批次數(shù)量在訓(xùn)練過(guò)程中一般不做改變,模型參數(shù)反向傳遞優(yōu)化使用的優(yōu)化器為adam,是屬于自適應(yīng)學(xué)習(xí)率的優(yōu)化方式,與之相關(guān)的參數(shù)為初始的學(xué)習(xí)率,對(duì)兩個(gè)參數(shù)分別做控制變量實(shí)驗(yàn),分析參數(shù)對(duì)模型收斂速度和預(yù)測(cè)準(zhǔn)確率的影響。
首先進(jìn)行批次數(shù)量的控制變量實(shí)驗(yàn),樣本總量仍然不變,為13萬(wàn)條數(shù)據(jù),考慮到公約數(shù),因此選擇了五個(gè)層次的批次數(shù)量,分別是5、10、20、50和100。對(duì)每個(gè)批次數(shù)量的進(jìn)行模型訓(xùn)練,觀察模型訓(xùn)練的精準(zhǔn)度上升趨勢(shì)是否正常,對(duì)于訓(xùn)練正常的模型使用迭代中的最高準(zhǔn)確率來(lái)代表本次訓(xùn)練效果。實(shí)驗(yàn)結(jié)果中,5、10、25、50和100批次數(shù)量的模型平均準(zhǔn)確率為95.34%、95.316%、95.07%、94.47%和94.08%,表明模型平均準(zhǔn)確率隨著批次數(shù)量的減少而增大,同時(shí)實(shí)驗(yàn)中模型訓(xùn)練時(shí)間也是隨著批次數(shù)量的減少而增加,這在樣本量更加龐大的樣本中會(huì)更加明顯,因此不能單純地減少批次數(shù)量來(lái)增加模型準(zhǔn)確率,還要考慮實(shí)際應(yīng)用的模型訓(xùn)練時(shí)間。
接下來(lái)進(jìn)行不同學(xué)習(xí)率之間的模型性能的比較,保持其余參數(shù)不變,訓(xùn)練批次數(shù)量選擇20,雖然CNN中的初始學(xué)習(xí)率通常根據(jù)經(jīng)驗(yàn)選擇0.1、0.01、0.001這樣的值,但是為了更好地描述初始學(xué)習(xí)率與模型訓(xùn)練效果的關(guān)系,將以初始學(xué)習(xí)率0.001為中心,從大到小選擇了0.01、0.005、0.003、0.001 5、0.001、0.000 5、0.000 2、0.000 1分別做對(duì)比實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果中學(xué)習(xí)率為0.01的模型訓(xùn)練不擬合,其余按學(xué)習(xí)率從大到小的模型平均準(zhǔn)確率為94.16%、94.79%、95.21%、94.96%、94.66%、92.28%、90.19%,訓(xùn)練中不同學(xué)習(xí)率對(duì)模型訓(xùn)練時(shí)間沒(méi)有影響,模型平均準(zhǔn)確率與學(xué)習(xí)率不屬于正向或反向關(guān)系,學(xué)習(xí)率和準(zhǔn)確率的關(guān)系曲線如圖7所示。
圖7 不同學(xué)習(xí)率模型的準(zhǔn)確率對(duì)比
觀察折線圖可以發(fā)現(xiàn)學(xué)習(xí)率和準(zhǔn)確率的圖像呈現(xiàn)上凸特點(diǎn),也就是說(shuō)學(xué)習(xí)率存在一個(gè)最優(yōu)解,結(jié)合數(shù)據(jù)和圖可以得知平均準(zhǔn)確率上學(xué)習(xí)率為0.001的95.21%是表現(xiàn)最佳的,因此選擇最佳的學(xué)習(xí)率為0.001。
最終確定CNN的超參數(shù),模型為三層擁有5*5卷積核的卷積層并且無(wú)池化層,訓(xùn)練批次20,學(xué)習(xí)率0.001。
根據(jù)網(wǎng)貸相關(guān)平臺(tái)對(duì)網(wǎng)貸風(fēng)險(xiǎn)預(yù)測(cè)要求方面的特點(diǎn),該文選擇準(zhǔn)確率、靈敏度和特異度三個(gè)指標(biāo)來(lái)衡量網(wǎng)貸違約風(fēng)險(xiǎn)模型的分類預(yù)測(cè)性能。
準(zhǔn)確率:也就是模型分類預(yù)測(cè)的總體準(zhǔn)確率,表示所有用戶中被分類預(yù)測(cè)正確的用戶數(shù)量占全體用戶數(shù)量的比例。該指標(biāo)能夠直觀地看出模型總體的分類預(yù)測(cè)性能。
靈敏度:表示在原本均為正常用戶的樣本中,被分類預(yù)測(cè)正確的用戶數(shù)量占全體正常用戶數(shù)量的比例。該指標(biāo)能夠反映模型在處理正常用戶數(shù)據(jù)的準(zhǔn)確率,靈敏度越高,表示模型對(duì)正常用戶的預(yù)測(cè)準(zhǔn)確率越高,網(wǎng)貸平臺(tái)獲得的收益也越高。
特異度:表示在原本均為違約用戶的樣本中,被分類預(yù)測(cè)正確的用戶數(shù)量占全體違約用戶數(shù)量的比例。該指標(biāo)能夠反映模型在處理違約用戶數(shù)據(jù)的準(zhǔn)確率,特異度越高,表示模型對(duì)違約用戶的預(yù)測(cè)準(zhǔn)確率越高,網(wǎng)貸平臺(tái)因用戶違約導(dǎo)致的損失越低。
(1)不同模型性能對(duì)比。
接下來(lái)將CNN和一般的機(jī)器學(xué)習(xí)模型結(jié)合,測(cè)試CNN對(duì)一般機(jī)器學(xué)習(xí)模型的改良效果。先使用訓(xùn)練集進(jìn)行模型訓(xùn)練,然后再將訓(xùn)練集和測(cè)試集導(dǎo)入模型得到全連接層的特征,最后使用訓(xùn)練集特征訓(xùn)練一般的機(jī)器學(xué)習(xí)模型并使用測(cè)試集特征進(jìn)行測(cè)試。以準(zhǔn)確率為指標(biāo),使用K折交叉驗(yàn)證法來(lái)描述模型測(cè)試效果,導(dǎo)入130 000條數(shù)據(jù),對(duì)比對(duì)象為一般的機(jī)器學(xué)習(xí)模型和CNN與一般機(jī)器學(xué)習(xí)模型的結(jié)合,準(zhǔn)確率對(duì)比如圖8所示。
圖8 CNN與組合模型對(duì)比實(shí)驗(yàn)結(jié)果
K折交叉驗(yàn)證法將數(shù)據(jù)集隨機(jī)分為訓(xùn)練集和測(cè)試集,然后從小到大按照比例分多次選擇訓(xùn)練集進(jìn)行訓(xùn)練并測(cè)試模型效果,根據(jù)圖8結(jié)果,首先是對(duì)比三個(gè)一般的機(jī)器學(xué)習(xí)模型和與CNN結(jié)合的模型的效果,可以發(fā)現(xiàn)與CNN結(jié)合的一般機(jī)器學(xué)習(xí)模型要比組合模型的預(yù)測(cè)性更好,雖然在不同的一般機(jī)器學(xué)習(xí)模型中CNN對(duì)其測(cè)試效果的影響幅度不同,但是基本都有增加;其次觀察一般機(jī)器學(xué)習(xí)模型和組合模型的曲線形狀,一般機(jī)器學(xué)習(xí)模型的曲線是有向上增加的趨勢(shì),而組合模型的曲線幾乎沒(méi)有上升和下降的趨勢(shì),圖8中的訓(xùn)練集是隨著次數(shù)增加而越大,也就是說(shuō)一般的機(jī)器學(xué)習(xí)模型為了達(dá)到優(yōu)秀的訓(xùn)練效果需要更加龐大的訓(xùn)練數(shù)據(jù),而使用CNN提取的數(shù)據(jù)特征做訓(xùn)練的一般機(jī)器學(xué)習(xí)模型只需要少量數(shù)據(jù)就能夠使模型訓(xùn)練。上述結(jié)果表明:CNN與一般的機(jī)器學(xué)習(xí)模型結(jié)合能提升其預(yù)測(cè)準(zhǔn)確率并減少所需的訓(xùn)練數(shù)據(jù)。
(2)網(wǎng)貸風(fēng)險(xiǎn)預(yù)測(cè)。
最后將Lending club網(wǎng)上提供的2020年第一季度貸款用戶數(shù)據(jù)處理為測(cè)試數(shù)據(jù)進(jìn)行模型性能對(duì)比,首先是三個(gè)一般機(jī)器學(xué)習(xí)模型:Log、SVM和Tree,其次是CNN與上述三個(gè)一般模型分別結(jié)合的模型,最后是使用sigmoid分類器的CNN和經(jīng)典的Lenet-5模型(參數(shù)根據(jù)文獻(xiàn)[13]設(shè)置)。
一般的機(jī)器學(xué)習(xí)模型從python中sklearn庫(kù)調(diào)用,其余模型均用python編寫(xiě)代碼。使用準(zhǔn)確率作為一個(gè)評(píng)價(jià)模型效果的指標(biāo),即分類正確的樣本數(shù)量占總樣本數(shù)量的比例,然后考慮到網(wǎng)貸平臺(tái)對(duì)待兩種類別的用戶的預(yù)測(cè)分類成本各自不同,拒絕了正常用戶的貸款會(huì)減少平臺(tái)收益,而接受了違約用戶的貸款申請(qǐng)則會(huì)給平臺(tái)帶來(lái)負(fù)面影響,顯然二者的預(yù)測(cè)失誤成本是不同的,因此再選取能夠區(qū)分正負(fù)樣本分類效果的靈敏度和特異度作為模型對(duì)比指標(biāo),每個(gè)模型分別做十次實(shí)驗(yàn),結(jié)果取平均值,對(duì)比數(shù)據(jù)如表1所示。
表1 不同模型實(shí)驗(yàn)結(jié)果對(duì)比 %
首先,從準(zhǔn)確率指標(biāo)出發(fā),一般的機(jī)器學(xué)習(xí)模型準(zhǔn)確率為90.38%、95.4%和94.1%,經(jīng)典的Lenet-5模型準(zhǔn)確率為95.8%,與它們相比Lenet-5模型具有一定的優(yōu)勢(shì),同時(shí)該文使用的沒(méi)有池化層的CNN的準(zhǔn)確率則達(dá)到了96.92%,這表明了對(duì)池化層作用的分析后依據(jù)網(wǎng)貸用戶數(shù)據(jù)維度較低的特點(diǎn)而取消池化層的可行性;再看使用了CNN提取特征的一般機(jī)器學(xué)習(xí)模型的準(zhǔn)確率達(dá)到了96.68%、95.42%和97.26%,相比于原模型也有了不小的改善,這表明了CNN在特征提取上確實(shí)存在優(yōu)勢(shì),利用其提取的特征來(lái)分類的結(jié)果比起原始的數(shù)據(jù)要更加優(yōu)秀。
在靈敏度方面,所有模型都表現(xiàn)出非常好的效果,個(gè)別模型能達(dá)到幾乎百分之百的準(zhǔn)確率,從數(shù)據(jù)上看很難看出CNN在其中的作用;而特異度表現(xiàn)上(也就是對(duì)違約用戶識(shí)別正確的比例),SVM在使用了CNN提取特征后其特異度從63.78%提高到了87.90%,Log從80.93%提高到了91.73%,Tree也有少量的提升,這表明了使用CNN提取特征能夠提升一般的機(jī)器學(xué)習(xí)模型對(duì)違約用戶的預(yù)測(cè)準(zhǔn)確率。
綜上對(duì)比結(jié)果,所構(gòu)建的CNN在解決網(wǎng)貸用戶違約風(fēng)險(xiǎn)預(yù)測(cè)問(wèn)題上相比其他一般機(jī)器學(xué)習(xí)模型以及經(jīng)典的Lenet-5模型總體效果要更好;同時(shí),搭建的CNN對(duì)數(shù)據(jù)進(jìn)行特征提取后供其他一般學(xué)習(xí)模型進(jìn)行分類預(yù)測(cè)能夠提升其預(yù)測(cè)性能,主要表現(xiàn)在總體的預(yù)測(cè)準(zhǔn)確率和對(duì)違約用戶的預(yù)測(cè)準(zhǔn)確率;最后,在三項(xiàng)評(píng)價(jià)指標(biāo)上,CNN-Log模型的總體準(zhǔn)確率和特異度都要優(yōu)于其他模型,特別是對(duì)違約用戶的預(yù)測(cè)準(zhǔn)確率,違約帶來(lái)的損失要比正常用戶帶來(lái)的收益大得多,因此在多模型對(duì)比實(shí)驗(yàn)中,CNN-Log模型在網(wǎng)貸用戶違約風(fēng)險(xiǎn)預(yù)測(cè)上有較優(yōu)的預(yù)測(cè)性能。
為了對(duì)網(wǎng)貸違約風(fēng)險(xiǎn)進(jìn)行準(zhǔn)確的預(yù)測(cè),采用CNN提取網(wǎng)貸數(shù)據(jù)的深度特征,提出了CNN和一般模型結(jié)合的組合模型。首先,使用數(shù)值圖形化的策略,在超參數(shù)上通過(guò)實(shí)驗(yàn)確定適合該研究問(wèn)題的CNN;然后再與一般模型結(jié)合測(cè)試CNN的改良效果以及整體的預(yù)測(cè)性能;最后將組合模型應(yīng)用于網(wǎng)貸用戶違約風(fēng)險(xiǎn)預(yù)測(cè)。實(shí)驗(yàn)結(jié)果表明CNN在處理目前的網(wǎng)貸用戶數(shù)據(jù)上表現(xiàn)突出,和一般模型結(jié)合后能有效提升其預(yù)測(cè)性能,因此組合模型能夠?qū)W(wǎng)貸違約風(fēng)險(xiǎn)進(jìn)行更加科學(xué)、準(zhǔn)確地預(yù)測(cè),網(wǎng)貸平臺(tái)可以考慮該CNN-Log模型或者利用CNN來(lái)改良自身的原有模型。下一步的工作將是利用CNN特征提取的優(yōu)勢(shì)結(jié)合性能優(yōu)異的模型來(lái)進(jìn)行網(wǎng)貸風(fēng)險(xiǎn)預(yù)測(cè)。