劉 波, 梁龍躍
(貴州大學 經(jīng)濟學院, 貴陽 550025)
金融科技的發(fā)展使人們獲得了更為便捷的交易方式, 其中, 信用卡交易成為了線上和線下最為流行的支付方式之一, 隨著信用卡交易數(shù)量的增加, 信用卡欺詐也時常發(fā)生. 根據(jù)2019 年中國銀行業(yè)協(xié)會發(fā)布的《中國銀行卡產(chǎn)業(yè)發(fā)展藍皮書》數(shù)據(jù)顯示, 截至2018 年末,我國信用卡累計發(fā)卡量為9.7 億張, 同比增長22.8%;信用卡交易總額為38.2 萬億元, 同比增長24.9%; 信用卡未償信貸總額為6.85 萬億元, 同比增長23.2%; 信用卡損失率為1.27%, 較上一年度1.17%略有提升; 銀行卡欺詐率為1.16 基點, 較上年下降0.2 基點.
信用卡欺詐是一種為獲取經(jīng)濟利益為目的的犯罪欺騙行為, 它會擾亂正常的金融發(fā)展秩序, 制約金融行業(yè)的普惠目標和創(chuàng)新發(fā)展, 對金融業(yè)的穩(wěn)定發(fā)展產(chǎn)生深遠影響. 因此, 對信用卡欺詐的檢測已經(jīng)成為金融機構(gòu)核心能力之一. 中國銀行業(yè)協(xié)會在《中國銀行卡產(chǎn)業(yè)發(fā)展藍皮書(2019)》中提到, 要完善欺詐風險防控體系建設, 提升銀行卡欺詐防范水平, 構(gòu)建“銀行+持卡人”風控體系, 提升欺詐監(jiān)控精準度. 可見, 對信用卡欺詐的識別已經(jīng)成為銀行風險控制的關(guān)鍵因素.
信用卡欺詐檢測是通過挖掘持卡人的征信數(shù)據(jù)中所蘊含的信息, 從中找出規(guī)律判斷其是否存在欺詐行為, 其實質(zhì)是一個二分類問題. 然而在構(gòu)建信用卡欺詐檢測模型時, 樣本數(shù)據(jù)分布極度不平衡, 欺詐樣本的數(shù)量遠少于非欺詐樣本數(shù)量, 這會使得模型在進行訓練時不能有效挖掘欺詐樣本信息, 容易造成對欺詐樣本的誤判. 對于金融機構(gòu)來說, 對欺詐客戶誤判造成的損失通常比對非欺詐客戶的誤判造成的損失大. 因此, 如何通過處理不平衡數(shù)據(jù)以使模型高效而穩(wěn)定地識別具有欺詐性的交易, 成為信用欺詐檢測領域亟需解決的問題.
對信用卡欺詐檢測模型的研究一直以來備受學術(shù)界關(guān)注. Srivastava 等人[1]使用隱馬爾可夫模型 (HMM)對信用卡交易處理中的操作序列進行建模, 并展示如何將其用于欺詐檢測. ?z?elik 等人[2]使用遺傳算法對銀行信用卡欺詐檢測, 該算法能夠很好地解決信用卡欺詐檢測的可變錯誤分類成本的分類問題. ?ahin 等人[3]提出了C50, CART、CHAID 三種決策樹算法和支持向量機(SVM)分類器對銀行信用卡欺詐進行檢測, 四種算法均取得較好的檢測效果. Bahnsen 等人[4]提出了一種基于貝葉斯最小風險的成本敏感方法檢測發(fā)生欺詐時造成的實際財務成本, 以此構(gòu)建一個成本敏感的信用卡欺詐檢測系統(tǒng). Carneiro 等人[5]將由多層感知器組成的人工神經(jīng)網(wǎng)絡和聚類分析應用于信用卡欺詐預防. Fu 等人[6]首次提出了使用卷積神經(jīng)網(wǎng)絡(CNN)用于信用卡欺詐的檢測, 模型顯示出了優(yōu)越的分類性能.Jurgovsky 等人[7]首次將信用卡欺詐檢測問題描述為序列分類任務, 并采用長短期記憶(LSTM) 網(wǎng)絡來合并交易序列進行欺詐檢測, 提高了持卡人離線交易的檢測準確性. Carcillo 等人[8]提出了一種混合有監(jiān)督學習和無監(jiān)督學習的方法, 對欺詐樣本出現(xiàn)的異常值分數(shù)定義的不同粒度級別進行評估來提高欺詐檢測的準確率. Hussein 等人[9]提出了通過堆疊集成技術(shù)將多個分類器組合用于信用卡欺詐檢測, 改進了模型最終檢測結(jié)果.
重采樣方法是當前一個主流的解決類不平衡的方法, 它包括欠采樣和過采樣兩種方法. 其中, 過采樣是通過增加少數(shù)樣本數(shù)量使其接近多數(shù)樣本數(shù)量以達到樣本均衡的目的, 其以合成少數(shù)類技術(shù)(SMOTE)為代表. Almhaithawi 等人[10]使用SMOTE 過采樣方法來處理類不均衡問題, 發(fā)現(xiàn)SMOTE 平衡數(shù)據(jù)后, 所有模型的欺詐檢測結(jié)果都有所增強. 然而, 當樣本數(shù)據(jù)極度不平衡, 或者樣本存在一定數(shù)量的噪聲、離群點時, SMOTE方法在某種程度上會放大無效樣本的影響, 進而降低分類精[11]. 琚春華等人[12]整合SMOTE 算法和K 最鄰近算法篩選生成欺詐樣本, 克服了SMOTE 算法在生成新樣本時的盲目性和局限性, 在一定程度上提高欺詐檢測模型的分類性能.
為了進一步提高信用卡欺詐識別率, 本文構(gòu)建了一個基于CNN 網(wǎng)絡的信用卡欺詐檢測的基分類器,CNN 算法可以完全逼近任何復雜的非線性關(guān)系, 魯棒性和容錯性強, 可以高速找到處理數(shù)據(jù)的優(yōu)化方案. 針對信用卡交易數(shù)據(jù)的不平衡性, 本文利用K-means 算法聚類的優(yōu)點, 結(jié)合SVMSMOTE 算法對數(shù)據(jù)進行平衡處理.
K-means 算法[13]的核心思想是將樣本集按照樣本間的距離劃分為K個簇, 簇內(nèi)間各個樣本盡量緊密連在一起, 而簇間的距離盡量遠離. K-means 聚類流程如下:
1) 從樣本中中隨機選擇k個樣本作為初始聚類質(zhì)心.
2) 計算其余樣本到各質(zhì)心中心的距離, 并將其歸類到距離最近的簇中.
3) 重新計算每個類別簇的聚類中心.
4) 重復步驟2)和步驟3), 直到每個簇的聚類中心不再改變.
K-means 聚類的目標函數(shù)如式(1)所示:
其中,xi表示數(shù)據(jù)集中第i個數(shù)據(jù)樣本;ci表示第i個聚類簇;μi表示第i個聚類簇的簇心.
SVMSMOTE 算法是SMOTE 的改進算法, 傳統(tǒng)的SMOTE 算法通過隨機線性插值的方法在兩個少數(shù)類樣本間合成新的樣本, 從而實現(xiàn)數(shù)據(jù)均衡化的目的[14].其在合成新的樣本時存在盲目性, 當少數(shù)類樣本占比及其小時, 新生成的少數(shù)類樣本會出現(xiàn)重疊問題[15]. 除此之外, SMOTE 算法生成的樣本是基于原始少數(shù)樣本而來, 這些少數(shù)樣本包含了一些噪音數(shù)據(jù), 容易造成分布邊緣化問題.
針對傳統(tǒng)SMOTE 算法出現(xiàn)的以上問題, Han 等人[16]提出關(guān)注邊界附近的少數(shù)樣本并進行采樣, 可以使模型取得更好的分類效果. 同時, 在對邊界樣本進行分類時, 容易將其類別錯分, 而邊界樣本的正確分類對估計最佳分類邊界尤為重要, 通過沿分類邊界合成少數(shù)類樣本, 可以避免對所有少數(shù)樣本進行采樣而存在的數(shù)據(jù)分布邊緣化和隨機生成數(shù)據(jù)的盲目性問題, 對此, Tang 等人[17]使用SVMSMOTE 算法在邊界附近創(chuàng)建新的少數(shù)類樣本.
SVMSMOTE 算法是一種基于支持向量的過采樣方法, 它通過在訓練集上訓練標準的SVM 分類器后獲得支持向量來近似邊界線區(qū)域, 并在邊界附近生成新的少數(shù)類樣本數(shù)據(jù). SVMSMOTE 的最近鄰決策機制如圖1 所示. 若某一少數(shù)類樣本xj的k個鄰近樣本中, 少數(shù)類樣本的數(shù)量為s(s≤k), 多數(shù)類樣本的數(shù)量為t(t≤k), 當k=t時, 則將本xj歸類為噪聲樣本; 若s
圖1 SVMSMOTE 的最近鄰決策機制
將K-means 聚類算法和SVMSMOTE 算法融合,形成一個全新的過采樣改進算法KM-SVMSMOTE. 其核心思想為: 利用K-means 算法對少數(shù)類樣本進行精確聚類, 然后使用SVMSMOTE 算法基于精確聚類簇進行插值, 達到增加少數(shù)樣本數(shù)量的目的使正負樣本得以平衡.
卷積神經(jīng)網(wǎng)絡(CNN)被廣泛應用于圖像處理領域, 是圖像處理領域的主流模型. 隨著深度學習的發(fā)展,近年來CNN 也被應用于各類大型數(shù)據(jù)的處理之中, 其通過網(wǎng)絡中的卷積層對整體數(shù)據(jù)進行特征提取, 再通過池化等操作對數(shù)據(jù)進行降維, 故其適合訓練大量數(shù)據(jù), 并且具有避免模型過擬合的機制. CNN 模型基礎結(jié)構(gòu)如圖2 所示.
圖2 卷積神經(jīng)網(wǎng)絡結(jié)構(gòu)
CNN 的第i層特征圖的計算過程為:
其中,Hi表示經(jīng)過池化層后的特征圖.
原始數(shù)據(jù)經(jīng)過卷積層-池化層的轉(zhuǎn)化后, 被輸送到全連接層實現(xiàn)對提取特征的分類識別, 通常使用Softmax 函數(shù)接收這個N維數(shù)據(jù)作為輸入, 然后將每一維的值轉(zhuǎn)換成(0, 1)之間的一個實數(shù)作為識別概率, 它的公式為:
KM-SVMSMOTE-CNN 信用卡欺詐檢測模型是通過改進傳統(tǒng)SMOTE 算法的CNN 模型, 其通過K-means聚類算法將少數(shù)類樣本聚類, 然后使用 SVM 在分類邊界附近生成新少數(shù)類樣本數(shù)據(jù)來提升CNN 模型檢測性能, 模型構(gòu)建及實現(xiàn)過程如圖3 所示.
圖3 KM-SVMSMOTE-CNN 信用卡欺詐檢測模型
信用卡交易數(shù)據(jù)樣本規(guī)模較大, 計算復雜程度高,針對這一問題, 本文采用基于CNN 的信用卡欺詐檢測模型對是否欺詐進行分類. 其通過卷積核不斷提取數(shù)據(jù)特征, 不同區(qū)域的數(shù)據(jù)都共享一個卷積核, 即共享同一組參數(shù), 這便是CNN 的參數(shù)共享機制, 參數(shù)的共享使得網(wǎng)絡參數(shù)數(shù)量大幅減少, 同時池化層提取經(jīng)過卷積運算后的數(shù)據(jù)的主要特征, 進一步減少參數(shù)數(shù)量, 減少了計算復雜度的同時防止模型出現(xiàn)過擬合現(xiàn)象. 針對信用卡交易數(shù)據(jù)的極端不平衡性, 即欺詐樣本僅占總樣本的很小部分, 本文采用KM-SVMSMOTE 算法對少數(shù)樣本進行擴充, 解決數(shù)據(jù)不平衡帶來的對欺詐交易識別率較低問題.
本文所使用的CNN 模型結(jié)構(gòu)包括兩個用于提取數(shù)據(jù)特征的卷積層、兩個用于解決過擬合問題的batch normalization (BN)層、兩個用于提高模型捕獲邊緣信息能力的max-pooling 層、一個全連接層和一個用于預測客戶是否欺詐的節(jié)點, 模型的整體連接結(jié)構(gòu)如圖4 所示.
圖4 CNN 模型結(jié)構(gòu)
本文實驗的數(shù)據(jù)集采用了Kaggle 平臺上發(fā)布的信用卡欺詐數(shù)據(jù), 該數(shù)據(jù)集由源訊科技(Worldline)公司和布魯塞爾自由大學(Université Libre de Bruxelles)機器學習小組合作收集整理而來, 包含了2013 年9 月歐洲部分信用卡持卡人兩天內(nèi)發(fā)生的交易信息. 本文使用的實驗數(shù)據(jù)包含了24627 條交易記錄, 其中有492 條欺詐數(shù)據(jù), 約占實驗數(shù)據(jù)集的2%, 數(shù)據(jù)及其不平衡. 數(shù)據(jù)共包含30 個特征數(shù)據(jù)和一個標簽數(shù)據(jù),V1–V2828 個特征出于保密原因, 已由主成分分析方法進行了處理, 無法獲取其原始數(shù)據(jù)的特征信息. 其余的兩個特征中, time 表示每筆交易與數(shù)據(jù)集中第一筆交易間隔的秒數(shù); amount 表示每筆交易發(fā)生的金額; 標簽數(shù)據(jù)class 表示類別, 0 表示交易正常, 1 表示欺詐交易.
本文首先將time 特征刪除, 同時由于amount 列數(shù)值與其他特征數(shù)值范圍差異較大, 故對amount 列數(shù)據(jù)做歸一化處理, 歸一化規(guī)則如式(5)所示.
其中, max(x)和min(x)分別表示amount 列數(shù)據(jù)中的最大值與最小值,x'表示數(shù)據(jù)在進行歸一化后的值.
由于欺詐數(shù)據(jù)的極不平衡, 采用了KM-SVMSMOTE算法對訓練數(shù)據(jù)進行平衡處理, 本文的訓練樣本占總樣本的70%, 包含17238 個交易數(shù)據(jù), 其中345 個數(shù)據(jù)為欺詐數(shù)據(jù), 16893 個數(shù)據(jù)為正常交易數(shù)據(jù). 通過KMSVMSMOTE 算法生成欺詐類數(shù)據(jù)后, 樣本達到平衡狀態(tài).
深度學習模型輸入的實驗數(shù)據(jù)為3D 數(shù)組, 信用卡交易數(shù)據(jù)通常被視為橫截面數(shù)據(jù), 本文試圖讓模型識別包含29 個特征信息的欺詐客戶, 原始訓練集數(shù)據(jù)經(jīng)過KM-SVMSMOTE 算法平衡后, 最終數(shù)據(jù)形狀為33786×29 (33786 行, 29 列). 為了適應模型的輸入, 本文對平衡后的數(shù)據(jù)進行3D 數(shù)組的轉(zhuǎn)化, 轉(zhuǎn)化后整個“新數(shù)據(jù)集X”的形狀為33786×1×29, 輸出的目標“數(shù)據(jù)集Y”的形狀為33786×1, 對于測試集也做同樣的處理.
除了使用CNN 模型進行訓練外, 本文還訓練了邏輯斯蒂回歸(Logistic)、決策樹、隨機森林、梯度提升決策樹(GBDT)、極限梯度提升(XGBoost)等基礎模型, 各模型經(jīng)過交叉驗證選擇的參數(shù)如表1 所示.
表1 模型參數(shù)表
本文采用準確率(accuracy)、精確率(precision)、召回率(recall)、F1 值(F1_score)、AUC 值(area under curve)作為模型評價指標. 而根據(jù)樣本數(shù)據(jù)的真實類別與欺詐檢測模型檢測的類別可得到如表2 所示的混淆矩陣, 其中,T P指被正確分類的正類樣本,F N指被錯誤分類的正類樣本,FP指被錯誤分類的負類樣本,TN指被正確分類的負類樣本. 則準確率accuracy=(TP+TN)/(TP+TN+FP+FN), 精確率precision=TP/(TP+FP),召回率recall=TP/(TP+FN),F1 值F1_score=2×precision×recall/(precision+recall).
表2 混淆矩陣
由混淆矩陣可得到真正例率(TPR) 和假正例率(FPR), 其中,TPR=TP/(TP+FN),FPR=FP/(FP+TN). 以FPR為橫軸,TPR為縱軸便可繪制出ROC (receiver operating characteristic)曲線, 可以通過ROC 曲線所覆蓋的范圍評價模型性能的好壞.
本文將數(shù)據(jù)集按照7:3 比例劃分為訓練集和測試集之后, 將CNN 模型和邏輯斯蒂回歸、決策樹、隨機森林、GBDT、XGBoost 等基礎模型進行對比, 實驗結(jié)果如表3 所示, 各模型ROC 曲線如圖5 所示.
表3 各模型欺詐檢測結(jié)果
圖5 各模型ROC 曲線與AUC 值
從表3 可以看出, 決策樹和隨機森林兩種傳統(tǒng)樹模型的預測結(jié)果極為接近, 他們結(jié)果比當前更有效的樹模型GBDT 和XGBoost 的預測結(jié)果略遜一籌, 且GBDT 模型和XGBoost 模型算法評估結(jié)果也較為接近. Logistic 模型和CNN 模型表現(xiàn)出了比上述4 個模型更好的綜合分類能力, 其中Logistic 模型作為傳統(tǒng)的分類模型卻得到了較好的評估結(jié)果, 可能的原因是引入l2 懲罰項后, 模型的泛化能力得到增強. 進一步分析發(fā)現(xiàn), CNN 模型的各項評價指標的結(jié)果均達到90%以上, 其中準確率和AUC 值更是分別達到了99.76%和0.9582, 表明了深度學習模型CNN 的抗噪能力和泛化能力均優(yōu)于其他機器學習模型. 綜上所述, 本文采用CNN模型作為信用卡欺詐檢測的基礎模型.
為了進一步分析KM-SVMSMOTE-CNN 信用卡欺詐模型的有效性, 本文還使用了未平衡數(shù)據(jù)下得CNN模型, 以及平衡采樣算法中的隨機欠采樣(Random-UnderSampler)、隨機過采樣(RandomOverSampler)、SMOTE、BorderlineSMOTE 對數(shù)據(jù)平衡處理后結(jié)合CNN 模型對信用卡欺詐進行檢測并作對比, 實驗結(jié)果如表4 所示.
表4 不同平衡算法下欺詐檢測結(jié)果
從表中可以看出, KM-SVMSMOTE-CNN 信用卡欺詐檢測模型擁有更為優(yōu)秀的檢測性能, 未平衡數(shù)據(jù)下CNN 模型的AUC 值最低, 為0.8427. 其他平衡算法下模型的F1 值最高為0.8889, 最低的是RandomUnder-Sampler-CNN 模型, 僅為0.6702, 而KM-SVMSMOTECNN 模型的F1 值高達0.9389, 除此之外, 其擁有最高的AUC 值, 再次說明KM-SVMSMOTE-CNN 模型擁有較強的泛化能力和分類性能.
樣本極不均衡是信用卡欺詐檢測需要解決的問題, 它能影響模型對信用欺詐評估的精確度. 本文通過對平衡算法和深度學習模型的研究, 提出了KM-SVMSMOTECNN 信用卡欺詐檢測模型. 一方面, 提出了KM-SVMSMOTE對樣本進行平衡, 克服傳統(tǒng)SMOTE 算法在生成少數(shù)樣本存在的邊緣化和盲目性等問題. 另一方面, 為了充分挖信用卡交易數(shù)據(jù)中所包含的信息, 使用深度學習技術(shù)構(gòu)建模型并對信用卡欺詐進行檢測. 實證結(jié)果得出模型的準確率為99.76%, AUC 值達到0.9582, 表明KM-SVMSMOTE-CNN 模型能夠很好地處理信用欺詐中不均衡數(shù)據(jù)問題, 顯著提高企業(yè)對信用卡欺詐檢測的效率, 能夠為金融機構(gòu)和監(jiān)管機構(gòu)在有效管理信用卡風險方面提供參考. 可將更為復雜的信用卡欺詐數(shù)據(jù)應用于此算法, 也可以將其應用于其他需要平衡數(shù)據(jù)的研究領域中.
未來可將此模型與多種機器學習算法融合, 構(gòu)建更為強大的欺詐檢測分類器, 以獲得更好的預測性能.