仇 實 高影繁 姚長青 劉志輝 李佳星
(1.中國科學(xué)技術(shù)信息研究所,北京 100038;2.河北銀行,河北石家莊 050011)
隨著大數(shù)據(jù)時代的到來,企業(yè)的競爭環(huán)境發(fā)生了巨大的改變。競爭環(huán)境的變化不斷對企業(yè)產(chǎn)生威脅,也不斷對企業(yè)產(chǎn)生機會。對企業(yè)來說,如何檢測競爭環(huán)境的變化、規(guī)避威脅、抓住機會,已經(jīng)成為企業(yè)競爭情報研究中的重要課題。在企業(yè)所面臨的眾多風(fēng)險中,企業(yè)金融風(fēng)險是關(guān)鍵,而數(shù)據(jù)的不均衡性嚴(yán)重影響了企業(yè)金融風(fēng)險分析。以金融企業(yè)的信貸風(fēng)險分析為例,由于違約的客戶數(shù)量要遠(yuǎn)少于履約的客戶數(shù)量,這種數(shù)據(jù)的類別不平衡問題會使得訓(xùn)練出的模型更容易將風(fēng)險客戶劃為履約客戶,從而加大了預(yù)測金融企業(yè)信貸違約風(fēng)險的難度。為解決大數(shù)據(jù)環(huán)境下企業(yè)競爭情報中的企業(yè)風(fēng)險識別問題,本文將針對企業(yè)競爭情報分析中的樣本不均衡問題,以金融企業(yè)信貸風(fēng)險預(yù)測為切入點,提出一種面向非平衡樣本的企業(yè)風(fēng)險識別方法。
在情報信息分析的應(yīng)用場景中,不平衡樣本問題始終存在。王剛等[1]基于情感知識和機器學(xué)習(xí)兩種方法,根據(jù)電子商務(wù)意見挖掘數(shù)據(jù)不均衡的語言特征,提出基于非均衡數(shù)據(jù)分析的意見挖掘方法;翁夢娟等[2]采用卷積神經(jīng)網(wǎng)絡(luò)作為融合分類器的分類方法,提高不均衡數(shù)據(jù)集下中圖分類法的標(biāo)引精度。在醫(yī)學(xué)情報信息分析領(lǐng)域,非均衡樣本問題更是廣泛存在。陳釗志等[3]面向心衰醫(yī)療數(shù)據(jù)中的樣本不均衡現(xiàn)象,在欠采樣后的數(shù)據(jù)上訓(xùn)練局部敏感判別矩陣型分類器并得到了較好的預(yù)測結(jié)果;郭玉萱等[4]提出了一種基于權(quán)值的過采樣方法,并將其與Bagging和Boosting兩種集成學(xué)習(xí)模型結(jié)合,解決了鑒別草藥肝毒性場景下的不均衡樣本問題。
現(xiàn)實場景下的數(shù)據(jù)往往具有維度大、無關(guān)信息多、信息冗余等特點,學(xué)者們也因此積極探索與應(yīng)用特征遴選方法,如在文本特征選擇中使用二進制煙花算法[5]和基于信息增益的特征篩選方法[6]。在信貸風(fēng)險預(yù)測的應(yīng)用場景中,學(xué)者們也嘗試了多種特征選擇方法,如凌健等[7]提出一種基于Relief評估和SVM交叉驗證的特征選擇方法;張雷等[8]在訓(xùn)練信用評估模型前使用隨機森林進行特征提取和特征重要性的評估。由于相關(guān)的研究中多數(shù)都沒有針對信貸數(shù)據(jù)的樣本不均衡現(xiàn)象對方法進行改進,這可能會導(dǎo)致對分類有效的特征無法被成功篩選。
當(dāng)下在構(gòu)建金融企業(yè)信貸風(fēng)險預(yù)測模型時,學(xué)者常使用兩類方法:一是以邏輯回歸法和判別分析法為代表的傳統(tǒng)方法,二是機器學(xué)習(xí)方法。由于前者對數(shù)據(jù)集的分布有著嚴(yán)格的假設(shè)和前提,預(yù)測效果也因此受到限制,實際表現(xiàn)往往弱于機器學(xué)習(xí)方法。在具體應(yīng)用中,有學(xué)者使用SVM算法對信貸風(fēng)險進行預(yù)測,并嘗試將SVM與不同的算法進行組合以提升預(yù)測效果[9];王思宇等[10]基于集成學(xué)習(xí)的LightGBM算法進行信用風(fēng)險評估,與樸素貝葉斯、決策樹、隨機森林、XGBoost等機器學(xué)習(xí)算法的比較結(jié)果表明,在使用AUC作為模型評估指標(biāo)時LightGBM算法的得分最高;馬曉君等[11]運用CatBoost 算法構(gòu)建 P2P違約預(yù)測模型, 與LightGBM和XGBoost算法進行對比,全面分析了CatBoost算法的性能優(yōu)勢。
如果不進行任何處理,直接使用樣本不平衡的數(shù)據(jù)進行模型訓(xùn)練,得到的分類器將傾向于把待預(yù)測的數(shù)據(jù)判斷為多數(shù)類。因此,為了得到更合理的預(yù)測模型,一些學(xué)者在構(gòu)建信貸風(fēng)險預(yù)測模型前,會利用采樣法對不平衡數(shù)據(jù)進行處理。采樣法較為常見的兩種形式是過采樣和欠采樣。
過采樣方法通過某種策略增加少數(shù)類樣本,使少數(shù)類樣本數(shù)量與多數(shù)類樣本數(shù)量達(dá)到平衡。最簡單的過采樣方法即為隨機選擇少數(shù)類樣本數(shù)據(jù)進行復(fù)制,直至少數(shù)類樣本的數(shù)量等于多數(shù)類樣本的數(shù)量。但這種方式會使訓(xùn)練集中的少數(shù)類存在大量相同樣本,極大地增加了模型過擬合的風(fēng)險?;诖耍袑W(xué)者提出了過采樣算法SMOTE[12]。該算法通過對少數(shù)類樣本和其附近的同類別樣本之間隨機進行線性插值來合成新的少數(shù)類樣本,這在一定程度上降低了過擬合。Borderline-SMOTE是一種SMOTE的改進算法,其主要思想是使用少數(shù)類樣本邊界附近的樣本合成新樣本,從而讓新合成的樣本更有利于模型的訓(xùn)練[13]。但與同期其他的SMOTE改進算法一樣,Borderline-SMOTE很容易受到數(shù)據(jù)噪聲的影響。2018年,提出了一種基于k-Means和SMOTE的過采樣方法KMeans SMOTE算法[14]。在71個數(shù)據(jù)集上的測試結(jié)果表明,與其他過采樣算法相比,該算法具有性能上的優(yōu)勢。
與過采樣不同,欠采樣通過減少多數(shù)類中的樣本使少數(shù)類樣本數(shù)量與多數(shù)類樣本數(shù)量達(dá)到平衡,因此這種采樣策略可以避免合成樣本帶來的噪聲。最簡單的欠采樣方法是隨機欠采樣,即隨機從多數(shù)類樣本中抽取與少數(shù)類數(shù)量相同的樣本。由于通過隨機欠采樣方法得到的訓(xùn)練數(shù)據(jù)可能會缺失多數(shù)類樣本的某些關(guān)鍵信息,為盡可能充分地利用多數(shù)類的數(shù)據(jù),有學(xué)者提出了基于集成學(xué)習(xí)思想的EasyEnsemble算法[15]。原始的EasyEnsemble算法使用AdaBoost作為基分類器,該算法與當(dāng)下流行的幾種梯度提升算法相比已經(jīng)不具有性能優(yōu)勢,但EasyEnsemble算法的采樣思想依然在當(dāng)下的預(yù)測模型構(gòu)建中具有重要的參考意義。
縱觀現(xiàn)有的研究成果,在金融企業(yè)信貸風(fēng)險預(yù)測的相關(guān)研究中,學(xué)者們總是將不平衡數(shù)據(jù)下的特征選擇和模型預(yù)測的相關(guān)問題分開討論,少有對該問題的解決提出整套方案,也少有對多種不平衡數(shù)據(jù)采樣方法在信貸風(fēng)險中的應(yīng)用效果進行探究。基于此,本文使用性能優(yōu)秀的CatBoost分類器,搭配改進后的AUCRF和EasyEnsemble算法構(gòu)建了一種組合優(yōu)化算法,為存在高維特征和不平衡樣本的科技情報分析場景提供一種新的算法解決方案。
本文提出的算法主要有3個步驟:基于AUC的模型評估指標(biāo)使用隨機森林算法進行特征選擇;基于EasyEnsemble算法的采樣思想,使用Bagging與欠采樣結(jié)合的采樣策略得到若干均衡訓(xùn)練集;基于均衡訓(xùn)練集訓(xùn)練并集成CatBoost分類器。圖1為算法的流程示意圖。
圖1 本文提出的算法流程示意
隨機森林是一種以決策樹為基模型的集成學(xué)習(xí)算法,其中每棵決策樹h(x)按照以下規(guī)則生成:①假設(shè)總數(shù)據(jù)集的樣本數(shù)量是N,訓(xùn)練集的樣本數(shù)量為n,則從N隨機有放回地抽取n個樣本作為該決策樹的訓(xùn)練集;②假設(shè)數(shù)據(jù)的特征數(shù)量是M,則從M中隨機選擇m個特征用于決策樹的訓(xùn)練。
在得到若干個決策樹模型后,通過投票法聚合分類器H(x),如式(1)所示:
其中,Y表示數(shù)據(jù)集中類別標(biāo)簽的集合,P(·)為指示函數(shù)。
本文算法在文獻(xiàn)[16]的基礎(chǔ)上進行了改進。首先,根據(jù)隨機森林在節(jié)點分裂時的Gini指數(shù)變化量計算出特征的重要性。然后,設(shè)定閾值變量,并使閾值從0開始不斷增大。每次增大閾值后選出特征重要性大于該閾值的特征組合進行模型訓(xùn)練,計算并記錄此時的模型AUC。最后,比較所有模型的AUC,AUC最大的模型對應(yīng)的特征組合即為最優(yōu)特征組合。
本文算法的采樣方法參考了EasyEnsemble算法。在本文算法的采樣方法中,對于一個給定的訓(xùn)練數(shù)據(jù)集,假設(shè)少數(shù)類樣本的數(shù)量為M,多數(shù)類樣本的數(shù)量為N,則對N反復(fù)進行有放回的隨機欠采樣,得到T個多數(shù)類子集N1,N2,N3,N4, …,Nt, 其中每個子集的樣本數(shù)量等于M。再將得到的T個多數(shù)類子集分別與少數(shù)類樣本合并,便可得到T個樣本數(shù)量為2M的樣本均衡訓(xùn)練集。這種采樣方法盡可能地保留了多數(shù)類樣本的信息,又避免了合成樣本所帶來的噪音。
CatBoost是由俄羅斯公司Yandex在2017年提出的,屬于Boosting算法的一種。CatBoost為加法結(jié)構(gòu),即該強分類器由一系列的弱分類器線性相加組合而成。其結(jié)構(gòu)表達(dá)式如式(2)所示:
其中,fm(x)為第m個基分類器,αm為fm(x)的權(quán)重。
目標(biāo)函數(shù)如式(3)所示:
其中,l(·)是損失函數(shù),代表預(yù)測值與真實值的差距;Ω是懲罰項,用于避免過擬合。
相較于Boosting族的其他算法,CatBoost不僅擁有卓越的性能,還可以科學(xué)高效地處理類別型特征。CatBoost對類別特征的處理方法名為Target-based Statistics,即通過計算出的數(shù)值代替類別特征中的元素。具體做法是在Greedy TS算法中加入先驗項優(yōu)化后,再依靠排序原則(ordering principle)對訓(xùn)練樣本進行隨機排序并編號,在每次計算時只對排序編號小于該樣本的類別標(biāo)簽值進行計算。除此之外,CatBoost算法還會依據(jù)貪婪方法(greedy method)將不同類別里的特征進行組合,從而創(chuàng)造出新的特征。
本文算法使用步驟2中得到的T個樣本均衡訓(xùn)練集訓(xùn)練CatBoost基分類器,并對CatBoost分類器進行集成,最終的集成結(jié)果H(x)如式(4)所示:
其中,hi(x)為第i個CatBoost基分類器,θi為閾值。
本文實驗采用了國內(nèi)某金融機構(gòu)的客戶違約數(shù)據(jù)集作為模型訓(xùn)練和測試數(shù)據(jù)集。取該機構(gòu)2018年全年作為觀察期,2019年全年為表現(xiàn)期,剔除缺失值和異常值后共有124 880條樣本,其中正樣本有12 984個,占總樣本的10.40%。數(shù)據(jù)共有變量51個,其中50個為客戶在觀察期內(nèi)的表現(xiàn)和屬性,1個為標(biāo)注了客戶在表現(xiàn)期內(nèi)違約情況的標(biāo)簽??蛻羰欠襁`約的判斷標(biāo)準(zhǔn)按照貸款五級分類制定,除“正?!敝舛妓阕鬟`約。部分變量的中文名稱與其含義如表1所示。
表1 金融數(shù)據(jù)部分變量名稱與含義
對于數(shù)值型變量,本文對其進行標(biāo)準(zhǔn)化處理。具體做法是將變量按均值μ進行中心化后,再按標(biāo)準(zhǔn)差σ進行縮放,此時數(shù)據(jù)就會服從均值為0,方差為1的標(biāo)準(zhǔn)正態(tài)分布。標(biāo)準(zhǔn)化公式如式(5)所示:
對于類別型變量,CatBoost可以通過設(shè)置自行對其進行處理,但為了便于與其他算法進行對比,本文把二值類變量和類別型變量的各個類別編碼為數(shù)值。比如將客戶貸款產(chǎn)品的按揭情況:按揭、非按揭分別轉(zhuǎn)換為1、0;將客戶婚姻狀況:未婚、已婚、喪偶、離婚分別轉(zhuǎn)換為1、2、3、4。
在不平衡分類問題中,雖然多數(shù)類樣本的數(shù)量要遠(yuǎn)多于少數(shù)類樣本,但在進行預(yù)測時我們往往更關(guān)心的是少數(shù)類樣本的分類情況。
ROC曲線(receiver operating characteristic curve)又叫接收者操作特征曲線,其縱坐標(biāo)為TPR,即把正例分對的概率;橫坐標(biāo)是FPR,即把負(fù)例錯分為正例的概率。當(dāng)正樣本屬于少數(shù)類且負(fù)樣本屬于多數(shù)類時,ROC曲線描述的是在模型不斷增強找出少數(shù)類能力時多數(shù)類分錯情況的變化趨勢。由于不同的ROC曲線間難以直接進行比較,所以一般使用ROC曲線的面積即AUC值來度量模型分類性能,本文也使用AUC作為模型評估指標(biāo)。
算法的特征選擇曲線如圖2所示。該曲線的橫坐標(biāo)為特征重要性閾值,縱坐標(biāo)為特征選擇模型的AUC分?jǐn)?shù)。由圖2可知,在閾值增大的過程中,模型首先通過去除一些重要性較低的特征提升了預(yù)測效果。但隨著閾值的不斷增大,對提高模型預(yù)測性能有幫助的特征逐漸被篩選掉,模型的預(yù)測能力也隨之下降。根據(jù)特征選擇曲線最高點對應(yīng)的17個特征制作特征重要性評估圖,如圖3所示。
圖2 特征選擇曲線
根據(jù)圖3對算法的特征選擇結(jié)果進行分析,可以發(fā)現(xiàn)算法篩選出的特征數(shù)量僅為原始特征數(shù)量的34%。這在一定程度上提高了預(yù)測模型的泛化能力。篩選出的特征組合包含了客戶的歷史信用記錄、客戶的基本情況和產(chǎn)品的基本信息。進一步分析可知:①客戶的歷史信用記錄是判斷金融企業(yè)信貸風(fēng)險的重要參考要素。觀察期內(nèi)有違約記錄的客戶,表現(xiàn)期內(nèi)依然有較大的可能違約。在歷史信用不佳的客戶中,逾期天數(shù)較長和逾期次數(shù)較多的客戶應(yīng)當(dāng)是重點關(guān)注的對象。②客戶的基本情況是信貸違約的參考要素之一。一般而言,學(xué)歷高、資產(chǎn)余額充足、與金融企業(yè)業(yè)務(wù)往來密切的客戶不容易違約。③信貸產(chǎn)品的余額、利率、擔(dān)保方式等因素也會對金融企業(yè)信貸業(yè)務(wù)的風(fēng)險產(chǎn)生影響。
圖3 特征重要性評估
為探究不同的不平衡數(shù)據(jù)處理方式與CatBoost算法的組合效果,本文基于最優(yōu)特征組合,在不同的采樣方法下進行對比實驗,其結(jié)果如表2所示。
由表2可知:①在5種采樣方法中,本文選用的采樣方法與CatBoost算法的組合效果最好,而在相關(guān)領(lǐng)域中最為常用的SMOTE算法與CatBoost算法的組合效果最差。②過采樣算法的整體表現(xiàn)不如欠采樣算法,這可能是由于金融企業(yè)信貸數(shù)據(jù)具有一定的復(fù)雜性,使用過采樣算法合成樣本時會產(chǎn)生噪聲數(shù)據(jù),影響了模型的訓(xùn)練效果。③在欠采樣算法中,本文算法比簡單欠采樣算法的分類效果更好,這是由于本文的采樣策略可以通過集成的方式更充分地利用金融企業(yè)信貸數(shù)據(jù)中的信息。
表2 5種采樣方法的效果對比
為驗證本文算法的信貸風(fēng)險預(yù)測效果,使用已得到的最優(yōu)特征選擇結(jié)果,以AUC作為模型評估指標(biāo),將CatBoost算法與當(dāng)前幾種較為常用的機器學(xué)習(xí)算法進行對比實驗。同時為了觀察EasyEnsemble與普通采樣方法相比帶來的效果提升,加入了SMOTE算法作為參照。實驗結(jié)果如表3所示。
由表3可知,AdaBoost、LightGBM和CatBoost等3種集成學(xué)習(xí)算法的表現(xiàn)要優(yōu)于單學(xué)習(xí)器的3種機器學(xué)習(xí)算法,且在3種集成學(xué)習(xí)算法中CatBoost的性能最佳。在所有的實驗結(jié)果中,本文提出的組合優(yōu)化算法AUC值最高,相比其他算法而言,在不平衡樣本下的金融企業(yè)信貸風(fēng)險預(yù)測中具有更好的預(yù)測效果。
表3 幾種組合算法的效果對比
本文針對企業(yè)競爭情報分析中的樣本不均衡問題,以金融企業(yè)信貸風(fēng)險預(yù)測為切入點,針對金融企業(yè)信貸業(yè)務(wù)場景中的樣本維數(shù)高且嚴(yán)重不均衡現(xiàn)象,提出了一種風(fēng)險預(yù)測方法。該方法首先基于改進后的隨機森林算法進行特征選擇,再以Bagging與欠采樣組合的采樣策略構(gòu)建多個均衡訓(xùn)練集,并在每個均衡訓(xùn)練集中以CatBoost作為基學(xué)習(xí)器進行訓(xùn)練和集成。為檢驗該算法的性能,本文首先進行特征選擇,再將提出的算法與常見的幾種分類算法進行對比實驗。實驗結(jié)果表明:本文算法篩選出的特征組合具有較強的可解釋性,對不平衡樣本中的高維特征篩選具有一定的參考價值;相比其他幾種算法,本文提出的方法具有最高的AUC值,可以有效地解決金融企業(yè)信貸風(fēng)險的預(yù)測問題。
但同時,本文也存在數(shù)據(jù)和方法兩個方面的局限性。在數(shù)據(jù)的局限性方面,本文選取了金融企業(yè)信貸風(fēng)險這一典型的類別不平衡場景驗證本文的方法。至于本文方法在其他的應(yīng)用場景下表現(xiàn)如何,還需要在后續(xù)的研究中做進一步的驗證。在方法的局限性方面,本文方法在特征選擇的步驟中使用不斷增大閾值的方式遴選特征子集,但是這種方式會在一定程度上受到閾值設(shè)定的影響。在后續(xù)的研究中可以嘗試將本文算法與智能優(yōu)化算法結(jié)合,形成性能更佳、耗時更短、自動化程度更高的方法。