張 浩, 康海燕
(北京信息科技大學(xué) 信息安全系 北京 100192)
隨著世界經(jīng)濟(jì)全球化與科學(xué)技術(shù)的快速發(fā)展,第三方支付服務(wù)成為人們生活的一部分,比如支付寶和微信支付在中國隨處可見,數(shù)不勝數(shù)的交易發(fā)生在世界各地的在線交易平臺上,隨之而來的欺詐犯罪問題也更加嚴(yán)重,然而數(shù)據(jù)的不平衡問題是影響欺詐檢測的難點。為了解決不均衡數(shù)據(jù)的分類問題,學(xué)者們的研究方法主要可以分為:對原始數(shù)據(jù)進(jìn)行數(shù)據(jù)處理,對算法模型進(jìn)行優(yōu)化改進(jìn)[1]。
數(shù)據(jù)處理主要是指根據(jù)統(tǒng)計學(xué)原理和其他方法對樣本集進(jìn)行擴(kuò)充或者剔除操作,達(dá)到將樣本集從類別不均衡分布到均衡分布的轉(zhuǎn)變。這方面最具代表性的方法就是重采樣方法,主要可分為上采樣方法和下采樣方法。其中經(jīng)典的有SMOTE算法[2]以及基于SMOTE算法衍生的改進(jìn)型算法。也有學(xué)者結(jié)合上采樣和下采樣兩種方法的混合采樣算法處理樣本集[3]。楊毅等設(shè)計了一種精化Borderline-SMOTE方法解決數(shù)據(jù)不平衡問題[4],該方法通過對小類樣本的邊界樣本重復(fù)采樣從而改善原始樣本集的類別分布。石洪波等詳細(xì)闡述了SMOTE算法的原理以及存在的問題[5],針對SMOTE存在的問題,分別介紹了4種擴(kuò)展方法和3種應(yīng)用的相關(guān)研究。蔣華等在SMOTE算法和ADASYN算法的基礎(chǔ)上設(shè)計了一種采樣方法[6],該方法根據(jù)K近鄰算法計算小類樣本點和大類樣本點數(shù)目,對小樣本點進(jìn)行分類后分別采用ADASYN和SMOTE算法進(jìn)行小類樣本點合成。
算法改進(jìn)角度是指基于傳統(tǒng)的分類算法和原始數(shù)據(jù)集的不平衡分布特點,對分類算法本身進(jìn)行有針對性的改進(jìn)優(yōu)化,常見的方式有加入懲罰因子和將多個弱分類結(jié)果進(jìn)行結(jié)合等。改進(jìn)算法有對集成學(xué)習(xí)算法的改進(jìn)[7]、對傳統(tǒng)的二分類算法和對數(shù)概率回歸算法的改進(jìn)、對基于代價敏感算法的改進(jìn)[8]等。王忠震等在欠采樣和代價敏感的基礎(chǔ)上設(shè)計了針對不平衡數(shù)據(jù)的分類算法(USCBoost)[9],該算法首先在AdaBoost迭代前對大類數(shù)據(jù)權(quán)重排序,并根據(jù)排序選擇大類數(shù)據(jù)與小類數(shù)據(jù)合并臨時數(shù)據(jù)訓(xùn)練基分類器。
近些年來生成對抗網(wǎng)絡(luò)(generative adversarial networks, GAN)[10]非常熱門,在圖像生成[11]和圖像增強(qiáng)[12]等領(lǐng)域應(yīng)用中獲得了巨大的成功,由于GAN設(shè)計的原因,梯度的修正需要生成器的輸出是一個連續(xù)空間,所以GAN很少用于離散空間的數(shù)據(jù)增強(qiáng)。文獻(xiàn)[13]提出了一種基于條件Wasserstein-GAN的過采樣方法,該方法能有效地對含有數(shù)值和分類變量的表格數(shù)據(jù)集進(jìn)行建模,并通過輔助分類損失特別關(guān)注下游分類任務(wù)。
目前,學(xué)者們解決樣本類別不均衡問題以重采樣技術(shù)為主,針對GAN應(yīng)用與交易欺詐方面的研究較少,而且采樣過程過度依賴原始數(shù)據(jù)集,因此本文提出了一種基于特征優(yōu)化生成對抗網(wǎng)絡(luò)的在線交易反欺詐方法。本文主要貢獻(xiàn):1) 設(shè)計一種基于特征優(yōu)化生成對抗網(wǎng)絡(luò)的在線交易反欺詐方法,解決傳統(tǒng)采樣方法過度依賴原始數(shù)據(jù)的問題;2) 提出了KGC-WGAN模型,該模型針對交易數(shù)據(jù)提取Key特征加入到生成器中優(yōu)化生成數(shù)據(jù)質(zhì)量和提高訓(xùn)練穩(wěn)定性,將Gumbel-softmax應(yīng)用到網(wǎng)絡(luò)中解決類別數(shù)據(jù)生成過程中梯度消失的問題,解決交易欺詐數(shù)據(jù)的生成問題;3) 從原始數(shù)據(jù)規(guī)模、重采樣方法、分類方法和采樣比例等方面進(jìn)行了對比,實驗結(jié)果證明了本文方法的有效性。
本文提出了一種基于特征優(yōu)化生成對抗網(wǎng)絡(luò)的在線交易反欺詐方法,同時結(jié)合CGAN[14]、WGAN[15]和Gumbel-softmax提出了KGC-WGAN(key feature and Gumbel-softmax conditional WGAN)模型用于交易欺詐數(shù)據(jù)的生成。其核心思想是在不丟失原始信息的前提下,利用KGC-WGAN模型生成足夠真實的欺詐數(shù)據(jù)擴(kuò)充數(shù)據(jù)集,同時優(yōu)化生成數(shù)據(jù)的質(zhì)量和提高訓(xùn)練過程的穩(wěn)定性,解決在線交易數(shù)據(jù)嚴(yán)重不平衡問題和生成對抗網(wǎng)絡(luò)處理離散的在線交易數(shù)據(jù)效果不佳、訓(xùn)練不穩(wěn)定的問題?;贙GC-WGAN的在線交易反欺詐方法的系統(tǒng)總流程如圖1所示。主要包括三個部分:數(shù)據(jù)預(yù)處理、生成對抗網(wǎng)絡(luò)模型、模型評估。
圖1 系統(tǒng)流程圖
1) 數(shù)據(jù)預(yù)處理:對原始的數(shù)據(jù)通過數(shù)據(jù)清理和數(shù)據(jù)集成等方法將數(shù)據(jù)轉(zhuǎn)換成可參與模型計算的形式。
2) KGC-WGAN模型:KGC-WGAN模型主要有兩個部分:第一部分是數(shù)據(jù)模塊,對訓(xùn)練數(shù)據(jù)進(jìn)行標(biāo)簽特征、Key特征、分類型特征和數(shù)值型特征的分類和提取;第二部分是模型模塊,首先將數(shù)據(jù)模塊處理后的數(shù)據(jù)輸入到KGC-WGAN模型中進(jìn)行模型訓(xùn)練直至收斂,接著利用收斂后的生成模型G生成偽數(shù)據(jù),最后將生成的偽數(shù)據(jù)輸入到收斂的判斷模型D中進(jìn)行識別,將被判別為真的生成數(shù)據(jù)與原始數(shù)據(jù)融合,對原始數(shù)據(jù)進(jìn)行平衡處理。
3) 模型評估:利用經(jīng)過平衡處理后的數(shù)據(jù)對分類模型進(jìn)行訓(xùn)練,對交易數(shù)據(jù)進(jìn)行預(yù)測評估并生成分析報告。
1.1.1數(shù)據(jù)處理 針對交易數(shù)據(jù)的特點,KGC-WGAN模型首先會對交易數(shù)據(jù)的特征進(jìn)行分類。根據(jù)特征的數(shù)據(jù)類型和重要程度將特征分為數(shù)值型特征、分類型特征、Key特征和標(biāo)簽特征。Key特征的獲取是通過基于隨機(jī)森林對特征進(jìn)行重要性排序或者根據(jù)實際業(yè)務(wù)中的重要程度進(jìn)行Key特征選擇。針對不同類型的Key特征進(jìn)行不同的處理:對于類別類型的Key特征進(jìn)行類別隨機(jī)采樣;對于數(shù)值型的Key特征進(jìn)行分層隨機(jī)采樣。
1.1.2模型結(jié)構(gòu) KGC-WGAN模型由一個生成器G和一個判別器D構(gòu)成。生成器G的結(jié)構(gòu)由3個部分構(gòu)成:首先根據(jù)一個正態(tài)分布z~N(0,0.01) 進(jìn)行隨機(jī)采樣得到噪聲Z,然后對Key特征和標(biāo)簽特征進(jìn)行隨機(jī)采樣得到X_key和Y;接著將Z、X_key輸入到n個隱藏層和歸一化層,然后對隱藏的一部分輸出進(jìn)行Gumbel-softmax采樣,得到分類型特征X_cat,另一部分輸出得到數(shù)值型特征X_num;最后將X_cat、X_num、X_key和Y進(jìn)行連接,得到最終的生成樣本。判別器D的結(jié)構(gòu)由3個部分構(gòu)成:首先對輸入樣本的X_cat特征進(jìn)行編碼,然后將編碼后的向量和X_num、X_key、Y輸入到n個相連的隱藏層和歸一化層,經(jīng)過一個線性層和一個歸一化層得到一個為真實數(shù)據(jù)和生成數(shù)據(jù)的概率向量。
基于KGC-WGAN的在線交易反欺詐方法的具體實現(xiàn)步驟如算法1所示。
算法1基于KGC-WGAN的在線交易反欺詐算法。
輸入:交易數(shù)據(jù)X,分類算法C,噪聲z。
輸出:分類算法C的評估指標(biāo)M。
Step1 創(chuàng)建KGC-WGAN模型:建立生成網(wǎng)絡(luò)G和判別網(wǎng)絡(luò)D。
Step2 對數(shù)據(jù)進(jìn)行處理:分類和提取X_key、X_cat、X_num和label特征。
Step3 生成網(wǎng)絡(luò)G生成數(shù)據(jù):生成噪聲z,采樣得到key特征X_key和標(biāo)簽Y,將z、X_key輸入到生成網(wǎng)絡(luò)G進(jìn)行數(shù)據(jù)生成,在G生成數(shù)據(jù)過程中進(jìn)行Gumbel-softmax技巧采樣輸出,得到X_cat和X_num,將X_key、X_cat、X_num和Y連接得到生成數(shù)據(jù)Xg。
Step4 更新判別網(wǎng)絡(luò)D參數(shù):將原始數(shù)據(jù)X和生成數(shù)據(jù)Xg同時輸入判別模型得到損失值Loss,進(jìn)行模型訓(xùn)練并且更新判別網(wǎng)絡(luò)D的參數(shù)w。
Step5 更新生成網(wǎng)絡(luò)G參數(shù)θ:將判別網(wǎng)絡(luò)D的損失值Loss反饋給生成網(wǎng)絡(luò)進(jìn)行訓(xùn)練,并更新參數(shù)。
Step6 重復(fù)Step2~4直到生成網(wǎng)絡(luò)G的θ收斂。
Step7 數(shù)據(jù)平衡處理:利用Step5得到收斂的生成網(wǎng)絡(luò)G生成的欺詐數(shù)據(jù),對原始數(shù)據(jù)擴(kuò)充,并進(jìn)行處理,得到平衡的交易數(shù)據(jù)Xn。
Step8 模型評估:將平衡處理后的數(shù)據(jù)Xn輸入到分類算法C中進(jìn)行訓(xùn)練,并得到評估指標(biāo)M。
為了驗證使用KGC-WGAN模型平衡數(shù)據(jù)后對分類效果的影響,實驗所選用的評價指標(biāo)有F1值、AUC_ROC、AUC_PR和Brier值。AUC_ROC和AUC_PR值分別為ROC曲線和PR曲線下的面積,Brier值計算公式為
其中:N是樣本數(shù);predi是屬于正類的預(yù)測概率;labeli是真正的類標(biāo)簽。對于Brier評分來說,值越低越好,而對于AUC_ROC和AUC_PR來說,則值越高越好。
2.2.1實驗環(huán)境 實驗采用的環(huán)境CPU為Intel Core i7,RAM為24 GB,實驗所有代碼都是基于Python開發(fā)實現(xiàn)。
2.2.2實驗數(shù)據(jù) 本文實驗的數(shù)據(jù)(表1)包括兩個大規(guī)模數(shù)據(jù)集和兩個小規(guī)模數(shù)據(jù)集。
表1 實驗數(shù)據(jù)集
經(jīng)過缺失值處理、特征篩選和歸一化處理后數(shù)據(jù)集的情況見表1。兩個大規(guī)模數(shù)據(jù)包括1) ATEC數(shù)據(jù)集:2018年螞蟻金服公司舉辦的ATEC大賽,風(fēng)險支付識別賽事公開提供的脫敏后的在線交易支付數(shù)據(jù);2) Lendingclub數(shù)據(jù)集:Lendingclub平臺的2018年第三季度的數(shù)據(jù)。兩個小規(guī)模數(shù)據(jù)集包括German數(shù)據(jù)集和HomeEquity數(shù)據(jù)集。
為了驗證本文提出的KGC-WGAN模型的有效性,主要對生成數(shù)據(jù)質(zhì)量、重采樣后分類、不同采樣比進(jìn)行對比分析。
2.3.1生成數(shù)據(jù)質(zhì)量分析 生成數(shù)據(jù)的質(zhì)量是判斷生成模型好壞的一個重要評判指標(biāo),但是目前還沒有一種公認(rèn)的測量結(jié)構(gòu)化數(shù)據(jù)集相似性的方法,因此本文使用了幾種不同的度量方法。
1) 對于數(shù)值型特征,本文對真實數(shù)據(jù)和生成數(shù)據(jù)的概率分布進(jìn)行了比較,比較情況如圖2所示。每一個小圖對應(yīng)的是一個特征的概率分布比較情況,其中橫軸為特征經(jīng)過標(biāo)準(zhǔn)化處理后的值,縱軸為對應(yīng)的概率密度。從圖2可以看出,對特征如LOAN這類概率分布比較簡單的數(shù)據(jù),KGC-WGAN模型生成的數(shù)據(jù)非常接近原始數(shù)據(jù)集的數(shù)據(jù)分布,擬合效果比較好。但是對特征如YOJ這類概率分布比較復(fù)雜的數(shù)據(jù),模型的生成數(shù)據(jù)擬合效果不是很好。
圖2 數(shù)值型變量分布
2) 對于類別型特征,本文對生成數(shù)據(jù)和真實數(shù)據(jù)中每一個類別的樣本數(shù)進(jìn)行了比較,如圖3所示。圖中橫軸為特征值,每一個值對應(yīng)的就是一個類別。從圖3可以看出,除少數(shù)類別樣本數(shù)量差距較大,如REASON中的類別3樣本和JOB中的類別3樣本,KGC-WGAN模型的生成數(shù)據(jù)中類別型特征中每個類別的樣本數(shù)量和真實數(shù)據(jù)的樣本數(shù)量總體上比較接近。
圖3 類別型變量分布
可以看出KGC-WGAN模型生成數(shù)據(jù)整體質(zhì)量還是不錯的,基本上能夠擬合真實數(shù)據(jù),但是對于復(fù)雜的數(shù)據(jù)擬合效果還是有待提升。
2.3.2重采樣后分類實驗對比分析 提高模型重采樣的性能、降低數(shù)據(jù)不平衡性的影響是解決在線交易反欺詐最重要的目標(biāo),目前SMOTE方法是最常用和效果最好的重采樣方法之一,所以本文選擇SMOTE、B-SMOTE和ADASYN算法作為KGC-WGAN模型的對比重采樣方法。對于重采樣后數(shù)據(jù)的分類,本文選用了3個分類器:邏輯回歸(LG)、Adaboost(ADAB)和XGboost(XGB),通過不同分類器分類結(jié)果對比分析本文方法與其他采樣方法效果。
所有數(shù)據(jù)集在經(jīng)過不同的方法重采樣和不同的分類器分類后的實驗結(jié)果如表2所示,表中粗體的數(shù)據(jù)代表相應(yīng)的最佳實驗結(jié)果。
經(jīng)過對表2的對比分析,可以得到以下結(jié)論。
表2 不同重采樣方法實驗結(jié)果
1) 在所有的實驗結(jié)果中,KGC-WGAN模型重采樣的F1值在幾乎所有的分類器上都是高于其他方法的,只有German數(shù)據(jù)集在LG分類器上的效果不是最佳。
2) 實驗數(shù)據(jù)集在使用KGC-WGAN模型重采樣后,經(jīng)過XGB分類器分類后的每個指標(biāo)都是所有重采樣方法中最好的,這說明經(jīng)過KGC-WGAN模型重采樣的數(shù)據(jù)能夠很好地與XGB分類器契合。整體來看,KGC-WGAN模型處理后的數(shù)據(jù)在LG分類器的表現(xiàn)最差,在XGB分類器的表現(xiàn)最好,在ADAB分類器的表現(xiàn)居中。
3) KGC-WGAN模型在ATEC數(shù)據(jù)集和Lendingclub數(shù)據(jù)集上的整體表現(xiàn)是優(yōu)于其他數(shù)據(jù)集的,而ATEC和Lendingclub都是大規(guī)模的數(shù)據(jù)集,并且?guī)в蓄悇e向量。這可以說明KGC-WGAN模型中的Gumbel-softmax方法是適用于類別變量的,從而說明該模型更適合大規(guī)模且?guī)в蓄悇e變量的數(shù)據(jù)集。
2.3.3不同采樣比實驗對比分析 為了探究數(shù)據(jù)集的不平衡程度對于欺詐檢測的影響,針對數(shù)據(jù)集進(jìn)行了不同的采樣率的實驗,實驗選取了5種正負(fù)樣本比例,分別為100∶1、10∶1、1∶1、1∶10、1∶100,利用KGC-WGAN模型生成的少數(shù)類樣本對原始數(shù)據(jù)進(jìn)行不同比例的平衡處理,進(jìn)行不同比率采樣后,3種分類器分類后的實驗結(jié)果如表3所示。
表3 不同采樣比率實驗結(jié)果
從表3可以得出以下幾點結(jié)論。
1) 指標(biāo)F1、AUC_ROC、AUC_PR整體上正負(fù)樣本比為100∶1和10∶1的數(shù)據(jù)集的分類效果更好。Lendingclub、HomeEquity和German數(shù)據(jù)集在正負(fù)樣本比為10∶1的時候分類效果最佳,ATEC數(shù)據(jù)集在正負(fù)樣本比為100∶1的時候分類效果最佳。對于不平衡的交易數(shù)據(jù)樣本的分類,少數(shù)類的采樣比例應(yīng)該是稍低于或者接近于多數(shù)類樣本,而盡量不超過多數(shù)類樣本數(shù)。因為對少數(shù)類樣本進(jìn)行重采樣過多,重采樣的不確定性會使數(shù)據(jù)集偏離真實數(shù)據(jù)的分布,進(jìn)而干擾分類器的分類效果。
2) 在Brier指標(biāo)上,LG和ADAB分類器在正負(fù)樣本比為1∶100時效果最好。XGB分類器在正負(fù)樣本比1∶1和100∶1時效果最好??梢钥偨Y(jié)出XGB分類器處理負(fù)樣本比例較低的數(shù)據(jù)集的效果更好,更適合處理交易欺詐數(shù)據(jù)。
綜上,可以得出:a) 通過生成數(shù)據(jù)質(zhì)量實驗分析可以看出,KGC-WGAN模型生成的交易數(shù)據(jù)能夠較好地擬合原始交易數(shù)據(jù),但是對于復(fù)雜分布的數(shù)據(jù)的生成質(zhì)量還有提升的空間;b) 通過重采樣后分類對比分析,可以總結(jié)出KGC-WGAN在一定程度上解決了原始數(shù)據(jù)不平衡對分類結(jié)果的影響,并且在整體效果上優(yōu)于其他算法;c) 通過不同采樣比分析的結(jié)果可以看出樣本的平衡性在一定程度上影響了分類器效果,總體上是欺詐樣本比例稍低于正常樣本比例的時候,分類效果最佳。
針對在線交易數(shù)據(jù)的不平衡問題對欺詐檢測的影響,提出了一種基于特征優(yōu)化生成對抗網(wǎng)絡(luò)的在線交易反欺詐方法。該方法利用KGC-WGAN生成少數(shù)類數(shù)據(jù)對原始數(shù)據(jù)進(jìn)行平衡處理,在生成數(shù)據(jù)時加入Key特征提高生成數(shù)據(jù)的質(zhì)量以及后續(xù)訓(xùn)練的穩(wěn)定性,利用Gumble-softmax技巧解決交易數(shù)據(jù)中類別數(shù)據(jù)的生成梯度消失問題。實驗結(jié)果表明該方法有效改善了原始數(shù)據(jù)的不平衡問題,減小了數(shù)據(jù)不平衡性對分類器預(yù)測能力的影響,并且整體效果優(yōu)于其他對比。今后的研究方向是提高復(fù)雜分布數(shù)據(jù)的生成質(zhì)量,提高本文方法的適用范圍。