阮素梅, 孫旭升, 甘中新
(1.安徽財(cái)經(jīng)大學(xué) 金融學(xué)院,安徽 蚌埠 233030; 2.合肥工業(yè)大學(xué) 管理學(xué)院,安徽 合肥 230009; 3.Solbridge International School of Business,Woosong University, Daejeon 300814, South Korea)
欺詐是指用狡猾手段使人發(fā)生錯(cuò)誤認(rèn)識(shí)從而施詐于人的故意行為。信用卡欺詐則是指為了謀取個(gè)人經(jīng)濟(jì)利益故意使用偽造、廢棄的信用卡或盜用他人信用卡進(jìn)行惡意消費(fèi)和惡意透支的行為。近年來(lái),互聯(lián)網(wǎng)的快速發(fā)展促進(jìn)了各大傳統(tǒng)行業(yè)的變革,而“互聯(lián)網(wǎng)+信用卡”的結(jié)合更是促進(jìn)了信用卡在全球范圍內(nèi)的普及。僅在2018年,全球信用卡欺詐的損失就高達(dá)278.5億美元。BUONAGUIDI等[1]表明:2020年“新冠”肺炎流行期間,全球發(fā)生信用卡欺詐案件數(shù)量更是激增,美國(guó)4月份信用卡欺詐交易的金額同比增長(zhǎng)了35%。為避免信用卡欺詐帶來(lái)的巨大的經(jīng)濟(jì)損失,眾多學(xué)者都致力于研究信用卡欺詐檢測(cè)系統(tǒng),以阻止欺詐交易的發(fā)生。
信用卡欺詐交易檢測(cè)通常包括不均衡樣本處理、特征工程和模型搭建三個(gè)環(huán)節(jié)。LIN等[2]提出信用卡交易數(shù)據(jù)集通常在前兩個(gè)階段呈現(xiàn)出樣本類別高度不平衡和特征冗余的特點(diǎn),即正常交易遠(yuǎn)多于欺詐交易并且交易數(shù)據(jù)特征的維度較高。這些特通常會(huì)導(dǎo)致模型對(duì)多數(shù)類樣本產(chǎn)生過(guò)擬合,從而導(dǎo)致模型的預(yù)測(cè)精度下降。近年來(lái),隨著機(jī)器學(xué)習(xí)算法的興起以及其展現(xiàn)出的良好性能,學(xué)者們將其引入到信用卡欺詐檢測(cè)系統(tǒng)中,包括人工神經(jīng)網(wǎng)絡(luò)(ANN)[3]、邏輯回歸(LR)[4]、支持向量機(jī)(SVM)[5]、決策樹(shù)(DT)[6]等單一模型和極端梯度提升(XGBoost)[3]、隨機(jī)森林(RF)[7]等集成學(xué)習(xí)模型。其中,集成學(xué)習(xí)通過(guò)綜合若干基模型的學(xué)習(xí)成果提升模型的泛化能力,是解決訓(xùn)練過(guò)擬合的重要方法[8]。但是,以往研究通常僅在模型搭建這一環(huán)節(jié)使用了集成學(xué)習(xí),并沒(méi)有通過(guò)集成學(xué)習(xí)解決前兩個(gè)環(huán)節(jié)中的樣本不均衡和特征冗余問(wèn)題,因而檢測(cè)效果差強(qiáng)人意。
針對(duì)以往研究存在的不足,本文嘗試從特征選擇、不平衡處理以及分類器融合進(jìn)行三階段集成學(xué)習(xí),將集成學(xué)習(xí)的思想貫穿始終,并據(jù)此提出“FS-IFKK-Stacking”模型:第一階段針對(duì)數(shù)據(jù)集特征冗余,分別采用六種基學(xué)習(xí)器篩選最優(yōu)特征,并結(jié)合投票方法得到低維重要特征子集;第二階段針對(duì)數(shù)據(jù)集高度不平衡性,基于孤立森林IsolationForest[8]、K-Means++聚類以及KNN-IFKK重采樣算法生成若干個(gè)具有代表性的平衡數(shù)據(jù)組供模型訓(xùn)練使用,第三階段基于Stacking算法集成由11種機(jī)器學(xué)習(xí)單一模型組成的模型,并結(jié)合多數(shù)投票法Majority voting構(gòu)建異構(gòu)集成模型作為最終預(yù)測(cè)模型?;跉W洲信用卡交易數(shù)據(jù)的預(yù)測(cè)實(shí)驗(yàn)表明,本文提出的“FS-IFKK-Stacking”模型對(duì)信用卡欺詐檢測(cè)效果顯著優(yōu)于基于原始樣本訓(xùn)練得到的單分類基準(zhǔn)模型。相對(duì)于表現(xiàn)最佳的基準(zhǔn)模型,該模型對(duì)欺詐交易的召回率Recall提升了3.27%,AUC值提升了0.44%。本文提出的“FS-IFKK-Stacking”是對(duì)現(xiàn)有信用卡欺詐交易模型的有效改進(jìn)。具有重要的理論意義和實(shí)踐價(jià)值。
信用卡欺詐數(shù)據(jù)中存在的特征高維度、冗余特征會(huì)影響傳統(tǒng)檢測(cè)模型的性能,因此要對(duì)其進(jìn)行特征選擇,常用的方法包括主成分分析(PCA)、互信息、隨機(jī)森林,XGBoost特征排序等方法,但是不同的方法有各自優(yōu)缺點(diǎn),例如PCA算法使用方差衡量信息量,并且可以消除原始數(shù)據(jù)特征間相互影響的因素,但生成的特征模糊性高、可解釋性不強(qiáng);互信息算法具有簡(jiǎn)單、易實(shí)現(xiàn)的優(yōu)勢(shì),但容易導(dǎo)致特征冗余,同時(shí)易受邊緣概率影響,偏向于選擇稀有特征;隨機(jī)森林隨機(jī)選擇決策樹(shù)節(jié)點(diǎn)劃分特征,能夠高效地對(duì)高維樣本進(jìn)行訓(xùn)練,但傾向于選擇取值較多的特征。只運(yùn)用一種方法并不能有效滿足高維信用卡欺詐數(shù)據(jù)的特征選擇,使用集成方法將多個(gè)基分類器特征選擇的結(jié)果進(jìn)行排序,將各種特征子集的交集選為最優(yōu)特征選擇結(jié)果能夠提高特征選擇的魯棒性。
本文將過(guò)濾法(Filter)、封裝法(Wrapper)和嵌入法(Embedded)結(jié)合起來(lái)進(jìn)行特征選擇,首先將過(guò)濾法中的卡方檢驗(yàn)、互信息分類以及嵌入法中的帶L1懲罰項(xiàng)的邏輯回歸、極端提升樹(shù)、XGBoost和LightGBM這六種基模型進(jìn)行特征選擇,對(duì)這六種模型選擇的最優(yōu)特征進(jìn)行投票。特征每被選中一次得一張票,刪除得2張及以下票數(shù)的弱特征,本文最終保留得4張及以上票數(shù)的強(qiáng)特征,將得3張票數(shù)的特征列為臨界特征。為了進(jìn)一步檢驗(yàn)臨界特征的有效性,本文引入了封裝法,將得4張及4張以上票數(shù)的特征集列為A組,3張及3張以上票數(shù)的特征集列為B組,將A、B兩個(gè)特征組輸入多個(gè)模型進(jìn)行訓(xùn)練對(duì)比效果,最終選出能夠明顯區(qū)分信用卡欺詐交易的最佳特征組。
解決信用卡欺詐數(shù)據(jù)高不平衡性問(wèn)題的重采樣方法包括欠采樣和過(guò)采樣,LIN等[2]研究證明了欠采樣技術(shù)優(yōu)于過(guò)采樣技術(shù),因此本文基于欠采樣方法的改進(jìn)?;贙-Means聚類的欠采樣是目前常用的欠采樣方法,其核心思想是對(duì)多數(shù)類樣本進(jìn)行聚類,從每個(gè)簇中提取聚類中心點(diǎn)或聚類中心點(diǎn)近鄰來(lái)代表各個(gè)簇的多數(shù)類樣本,直至多數(shù)類樣本數(shù)量接近少數(shù)類樣本。但是K-Means算法對(duì)異常點(diǎn)和噪聲敏感,受初始聚類中心的位置影響較大,同時(shí)該聚類欠采樣方法僅僅選取各簇中一個(gè)代表性的點(diǎn),可能會(huì)刪除多數(shù)類中有價(jià)值的樣本點(diǎn)。為了彌補(bǔ)單一欠采樣技術(shù)的不足,本文提出一種基于孤立森林、K-Means++聚類、KNN的平衡數(shù)據(jù)的方法——IFKK。
孤立森林(Isolation Forest)是由FEI 等[8]提出的一種異常點(diǎn)檢測(cè)算法。該方法將異常點(diǎn)定義為容易被孤立的離群點(diǎn),即稀疏并且距離密度高的群體較遠(yuǎn)的樣本點(diǎn)。IFKK方法通過(guò)IsolationForest去除異常點(diǎn)和噪聲,隨后使用K-Means++算法優(yōu)化初始聚類中心選擇和提升算法收斂速度,保證了平衡數(shù)據(jù)組中樣本的代表性。本文利用KNN算法提取各簇聚類中心第一最近鄰點(diǎn)和少數(shù)類樣本組成第一平衡數(shù)據(jù)組,再提取各簇聚類中心第二最近鄰點(diǎn)和少數(shù)類樣本組成第二平衡數(shù)據(jù)組并進(jìn)行下一步迭代。最終,本文根據(jù)數(shù)據(jù)規(guī)模共提取出21組具有代表性的平衡數(shù)據(jù)組,以保證均衡樣本的多樣性。
欺詐檢測(cè)模型包括單一的機(jī)器學(xué)習(xí)模型和集成學(xué)習(xí)模型,眾多研究證明主流的集成學(xué)習(xí)模型要優(yōu)于單一機(jī)器學(xué)習(xí)模型。集成學(xué)習(xí)模型中常用的Bagging和Boosting是只包括單一基模型的同質(zhì)集成學(xué)習(xí)器,而Stacking算法屬于異構(gòu)集成學(xué)習(xí)器,基模型的種類更加多樣化,能夠?qū)崿F(xiàn)“博采眾長(zhǎng)”。不同基模型間較低的相關(guān)性可以提高算法的誤差校正能力,因此基模型差異度和精度越高,最終Stacking集成算法的效果也會(huì)更好。
圖1和圖2是加入了交叉驗(yàn)證的Stacking算法示意圖。第一層基模型訓(xùn)練過(guò)程如圖1所示,用Model1對(duì)訓(xùn)練集進(jìn)行五折交叉驗(yàn)證生成Model1的新特征New Feature,包含了每折訓(xùn)練時(shí)的預(yù)測(cè)值Predict1,Predict2,Predict3,Predict4,Predict5,同時(shí)每一折訓(xùn)練時(shí)對(duì)測(cè)試集進(jìn)行預(yù)測(cè)并求均值得到Model1的預(yù)測(cè)值A(chǔ)ver-test1,即輸入元模型的新特征。第二層元模型訓(xùn)練過(guò)程如圖2所示,將第一層n個(gè)基模型得到的新特征及目標(biāo)值和Target輸入元模型進(jìn)行訓(xùn)練,將第一層基模型得到的測(cè)試集預(yù)測(cè)值帶入元模型進(jìn)行預(yù)測(cè)得出最終結(jié)果Pred。
圖1 第一層基模型訓(xùn)練過(guò)程
圖2 第二層元模型訓(xùn)練過(guò)程
為了增強(qiáng)Stacking分類效果,本文將基與性能較優(yōu)的GBDT的三種改進(jìn)算法XGBoost,LightGBM,CatBoost作為基模型,由于第一層基模型的輸出結(jié)果和最終分類標(biāo)簽呈線性相關(guān)的關(guān)系,因此本文在第二層元模型上選擇高效快捷的邏輯回歸模型。為了進(jìn)一步提高模型的泛化能力,本文將第二階段IFKK方法生成的21組平衡數(shù)據(jù)分別用Stacking算法進(jìn)行擬合產(chǎn)生測(cè)試集樣本21個(gè)預(yù)測(cè)值,利用多數(shù)類投票法“少數(shù)服從多數(shù)”的原則,將產(chǎn)生的超過(guò)一半數(shù)量的相同預(yù)測(cè)值作為測(cè)試集樣本的最終預(yù)測(cè)值?;谌A段集成學(xué)習(xí)的信用卡欺詐檢測(cè)流程如圖3所示。
圖3 信用卡欺詐檢測(cè)流程圖
本節(jié)首先介紹了數(shù)據(jù)集和評(píng)價(jià)指標(biāo),然后通過(guò)欺詐檢測(cè)模型對(duì)數(shù)據(jù)集進(jìn)行訓(xùn)練預(yù)測(cè),對(duì)實(shí)證結(jié)果進(jìn)行分析。本文基于python3.7進(jìn)行程序開(kāi)發(fā),使用5折交叉驗(yàn)證提高模型的泛化能力,其中訓(xùn)練集占80%,測(cè)試集占20%,所有模型均使用網(wǎng)格搜索法進(jìn)行調(diào)參。
本文使用的數(shù)據(jù)集選自Kaggle提供的歐洲持卡人2013年9月兩天內(nèi)的信用卡交易數(shù)據(jù),該數(shù)據(jù)集共有284807個(gè)樣本,無(wú)缺失值,其中包含284315個(gè)信用卡合法交易樣本,492個(gè)欺詐樣本,不平衡比例為1:577;數(shù)據(jù)集共31個(gè)特征,其中1個(gè)特征是目標(biāo)標(biāo)簽Class,表示該樣本是否為欺詐交易數(shù)據(jù),值為1表示是,0表示否;30個(gè)特征表示信用卡交易的相關(guān)信息,出于保密原因,除了“Time”和“Amount”這兩個(gè)特征外用PCA轉(zhuǎn)換得到V1到V28這28個(gè)特征變量,“Time”表示交易發(fā)生時(shí)間,單位為秒,本文將其轉(zhuǎn)換為每天以小時(shí)為單位的時(shí)間,“Amount”表示信用卡交易金額,特征“Time”和“Amount”的數(shù)據(jù)規(guī)格和其他特征不一致,對(duì)其進(jìn)行標(biāo)準(zhǔn)化處理。為了讓測(cè)試集滿足欺詐交易真實(shí)的不平衡分布,劃分訓(xùn)練集和測(cè)試集時(shí)按照原始不平衡比例1:577均勻劃分。
為了盡可能地檢測(cè)出欺詐交易并盡可能地少地判錯(cuò)合法交易,本文選取了召回率Recall來(lái)衡量欺詐交易檢測(cè)的效果,Recall即所有真實(shí)欺詐交易實(shí)例中預(yù)測(cè)為欺詐交易的比例;并選取接收者操作特征曲線ROC曲線下面積AUC值作為綜合評(píng)價(jià)標(biāo)準(zhǔn)對(duì)模型進(jìn)行評(píng)估,AUC值可以看作從所有樣本中隨機(jī)選取一對(duì)正負(fù)樣本,正樣本預(yù)測(cè)為正的概率值大于負(fù)樣本預(yù)測(cè)為正的概率值的概率,AUC值在0.5和1之間,AUC值越接近1,表示模型的分類性能越好。
基模型選擇的最優(yōu)特征如表1所示。特征每被選中一次得一張票,我們拋棄得票數(shù)在2票及2票以下的弱特征,共刪除12個(gè)特征,保留得票數(shù)在4票及4票以上的強(qiáng)特征,共保留12個(gè)特征,記為A組,將得票數(shù)為3票的6個(gè)臨界特征加入A組形成B組,共18個(gè)特征。為了檢驗(yàn)臨界特征的有效性引入封裝法,將A,B兩個(gè)特征組分別輸入多個(gè)模型進(jìn)行訓(xùn)練并對(duì)比效果,結(jié)果如表2所示。
表1 基模型特征選擇排序
表2 FS-IFKK方法與基準(zhǔn)方法對(duì)比實(shí)驗(yàn)結(jié)果
將原始特征輸入模型進(jìn)行擬合后,我們發(fā)現(xiàn)在未加入GBDT算法的Stacking模型中,魯棒性強(qiáng)的SVM的分類效果最好,召回率Recall達(dá)到了0.9061,AUC值達(dá)到了0.9431;將 GBDT第一種改進(jìn)算法XGBoost加入Stacking算法時(shí),X-Stacking的效果提升明顯,AUC值達(dá)到0.9451;當(dāng)繼續(xù)加入GBDT第二種改進(jìn)算法LightGBM時(shí),XL-Stacking的效果進(jìn)一步提升,AUC值達(dá)到了0.9455;加入GBDT第三種改進(jìn)算法CatBoost時(shí),XLC-Stacking的效果最佳,Recall達(dá)到0.9102,AUC值達(dá)到0.9465,分類效果優(yōu)于基模型,由此可以看出基于原始數(shù)據(jù)的Stacking欺詐檢測(cè)方法是有效的,且分類效果優(yōu)于單一分類器。從表2可以看出經(jīng)過(guò)集成特征選擇FS后的A特征組比B特征組在各模型上得到的效果均更好,這說(shuō)明6個(gè)臨界特征可能是冗余特征影響了模型性能,應(yīng)該剔除,因此在后續(xù)實(shí)驗(yàn)中,本文使用A特征組進(jìn)行數(shù)據(jù)實(shí)驗(yàn)。A特征組包括V2,V3,V4,V7,V8,V9,V10,V11,V12,V14,V16,V17這12個(gè)特征。另外,從表2可以看出在A特征組上依次引入GBDT三種改進(jìn)算法時(shí),Stacking算法的性能得到了不同程度的提高。其中,引入GBDT三種改進(jìn)算法(XGBoost、LightGBM和CatBoost)的XLC-Stacking的分類效果最好,Recall高達(dá)0.9122,AUC值高達(dá)0.9477,這說(shuō)明基于FS-Stacking的欺詐檢測(cè)方法是有效的。為了進(jìn)一步提升模型性能,我們使用集成了孤立森林IsolationForest、K-Means++聚類、KNN的IFKK方法來(lái)生成多個(gè)平衡數(shù)據(jù)組輸入模型進(jìn)行對(duì)比實(shí)驗(yàn),為了驗(yàn)證本文提出的三階段集成學(xué)習(xí)方法在信用卡欺詐檢測(cè)識(shí)別上的有效性,表2對(duì)比了原始數(shù)據(jù)和經(jīng)過(guò)FS-IFKK方法處理后的數(shù)據(jù)在各模型上的分類效果。從表2中可以看出經(jīng)過(guò)FS-IFKK方法處理后的數(shù)據(jù)在各模型上的分類效果均得到顯著提升,其中GBDT的三種改進(jìn)算法XGBoost、LightGBM和CatBoost的分類性能在基模型中表現(xiàn)優(yōu)異,并且將這三種算法依次引入Stacking中性能將得到進(jìn)一步提升,其中同時(shí)引入GBDT三種改進(jìn)算法的XLC-Stacking算法的性能最好,召回率Recall達(dá)到0.9388,AUC值達(dá)到0.9499,與原始數(shù)據(jù)中分類性能最佳的基模型CatBoost作對(duì)比,召回率Recall提升了3.27%,AUC值提升了0.44%。
綜合以上實(shí)驗(yàn)結(jié)果可以發(fā)現(xiàn),在FS-IFKK方法投票選取重要特征和處理不均衡樣本數(shù)據(jù)集之后,本實(shí)驗(yàn)選取的基準(zhǔn)模型對(duì)信用卡欺詐的識(shí)別能力均有提升;在進(jìn)一步使用Stacking方法集成單分類模型之后,最終模型的預(yù)測(cè)能力在單分類模型的基礎(chǔ)上進(jìn)一步提升。三階段模型實(shí)現(xiàn)了模型預(yù)測(cè)能力的“階梯”狀提升。
針對(duì)高維不均衡的信用卡交易數(shù)據(jù)集,僅在某階段使用集成學(xué)習(xí)是遠(yuǎn)遠(yuǎn)不夠的,在模型訓(xùn)練的各個(gè)環(huán)節(jié)都使用合適的集成學(xué)習(xí)方法。本文提出的“FS-IFKK-Stacking”將集成學(xué)習(xí)的思想貫穿信用卡欺詐交易檢測(cè)任務(wù)的三階段,同時(shí)解決了數(shù)據(jù)特征高維性和樣本不均衡性問(wèn)題,證明了集成學(xué)習(xí)在特征選擇、不均衡樣本處理和構(gòu)建預(yù)測(cè)模型的三階段具有重要作用和良好表現(xiàn)。