竇路路 石秀金
摘 要:銀行卡交易的反欺詐技術(shù)旨在檢測(cè)出欺詐風(fēng)險(xiǎn)較高的交易,通常采用神經(jīng)網(wǎng)絡(luò)進(jìn)行反欺詐預(yù)防。傳統(tǒng)神經(jīng)網(wǎng)絡(luò)只有一層隱藏層節(jié)點(diǎn),對(duì)復(fù)雜多變的欺詐特征泛化能力較差。為提高欺詐交易預(yù)測(cè)的準(zhǔn)確度,將深度信念網(wǎng)絡(luò)模型應(yīng)用到銀行卡交易反欺詐中。構(gòu)建了一個(gè)五層的深度信念網(wǎng)絡(luò)模型,逐層訓(xùn)練并反向調(diào)優(yōu)后獲取到欺詐交易的特征,并通過分類器對(duì)交易進(jìn)行分類。實(shí)驗(yàn)表明深度學(xué)習(xí)模型在銀行卡交易欺詐預(yù)測(cè)方面比傳統(tǒng)神經(jīng)網(wǎng)絡(luò)具有更高的準(zhǔn)確性。
關(guān)鍵詞:銀行卡交易反欺詐; 神經(jīng)網(wǎng)絡(luò); 深度信念網(wǎng)絡(luò); 欺詐預(yù)測(cè)
Abstract: Anti-fraud technology of bank card transactions is designed to detect transactions that are more fraudulent, and neural network is usually used in anti-fraud prevention.The traditional Neural Network has only one hidden layer node, which has poor generalization ability to complex and changeable fraud features. In order to improve the accuracy of the forecast of fraudulent transactions, the Deep Belief Network model is applied to anti-fraud of bank card transactions. This paper builds a 5-layer Deep Belief Network model, by training further layer by layer and reverse tuning to obtain the features of the fraudulent transactions, and classify the transactions through the classifier. Experiments show that the deep learning model has higher accuracy than the traditional neural network in bank card transaction fraud prediction.
Key words: bank card anti-fraud transactions; Neural Network; Deep Belief Network; fraud prediction
引言
日益猖獗的銀行卡交易欺詐事件給銀行和消費(fèi)者帶來了巨大損失,反欺詐系統(tǒng)是從海量的實(shí)時(shí)交易數(shù)據(jù)中檢測(cè)出欺詐風(fēng)險(xiǎn)較高的交易,進(jìn)行實(shí)時(shí)攔截,從而最大程度上降低客戶的財(cái)產(chǎn)損失風(fēng)險(xiǎn)[1]。
最初的反欺詐系統(tǒng)是基于規(guī)則建立的,成本消耗大,且設(shè)定的規(guī)則都是針對(duì)已知欺詐類型的,對(duì)于新型欺詐類型檢測(cè)能力差,因此神經(jīng)網(wǎng)絡(luò)開始應(yīng)用到反欺詐研究中。神經(jīng)網(wǎng)絡(luò)經(jīng)過訓(xùn)練,對(duì)未知欺詐類型的預(yù)測(cè)能力遠(yuǎn)遠(yuǎn)超過基于規(guī)則的模型,然而神經(jīng)網(wǎng)絡(luò)也存在很多缺陷。傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)一般都是三層網(wǎng)絡(luò),即除了輸入層和輸出層之外,只有一層隱藏層節(jié)點(diǎn)[2]。這種淺層的神經(jīng)網(wǎng)絡(luò)模型對(duì)于復(fù)雜問題的泛化能力較差,相對(duì)于支持向量機(jī)、最大熵方法等模型而言,并沒有表現(xiàn)出特別的優(yōu)秀之處。一些研究增加了隱層數(shù)量,又會(huì)面臨著梯度消失,訓(xùn)練時(shí)間長(zhǎng)等問題,所以神經(jīng)網(wǎng)絡(luò)在這期間一直處于不溫不火的狀態(tài)。2006年,Hinton指出深度神經(jīng)網(wǎng)絡(luò)難以訓(xùn)練的問題可以通過貪婪的無監(jiān)督算法得到解決[3]。即一次只訓(xùn)練一層網(wǎng)絡(luò),固定好這一層的參數(shù)以后,在該層的基礎(chǔ)上繼續(xù)訓(xùn)練下一層,直到訓(xùn)練完最后一層,最后再對(duì)整個(gè)結(jié)構(gòu)進(jìn)行反向調(diào)整,進(jìn)一步消除誤差。
本文嘗試將深度信念網(wǎng)絡(luò)模型應(yīng)用到銀行卡欺詐交易的預(yù)測(cè)中,使用欺詐相關(guān)的交易字段進(jìn)行深度信念網(wǎng)絡(luò)的建模,通過進(jìn)行比傳統(tǒng)神經(jīng)網(wǎng)絡(luò)更多層次的訓(xùn)練,逐步挖掘欺詐交易更深層次的特征關(guān)聯(lián),從而使模型具有更好的預(yù)測(cè)性能。最后通過實(shí)驗(yàn)和傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)模型進(jìn)行對(duì)比,以驗(yàn)證深度信念網(wǎng)絡(luò)的預(yù)測(cè)能力。
1 深度信念網(wǎng)絡(luò)
深度信念網(wǎng)絡(luò)(DBN)由多層受限玻爾茲曼機(jī)疊加組成,整個(gè)DBN的訓(xùn)練過程分為預(yù)訓(xùn)練和微調(diào)兩個(gè)步驟[4]。
1.1 受限玻爾茲曼機(jī)
玻爾茲曼機(jī)(Boltzmann機(jī))是一種2層神經(jīng)網(wǎng)絡(luò),由可見層v和隱藏層h組成[5]。隱藏層的神經(jīng)元狀態(tài)有2種,1代表激活,0代表未激活。該模型的結(jié)構(gòu)如圖1所示。根據(jù)Boltzmann分布可知,每個(gè)神經(jīng)元的狀態(tài)由與其相連的所有神經(jīng)元的輸入共同決定,因此處于0或1的可能性是不確定的。然而Boltzmann分布卻無法準(zhǔn)確地計(jì)算出來,且很難得到分布隨機(jī)樣本[6]。所以即使玻爾茲曼機(jī)具有強(qiáng)大的無監(jiān)督學(xué)習(xí)能力,但是訓(xùn)練過程十分緩慢。
相較于Boltzmann機(jī),受限玻爾茲曼機(jī)(RBM)去除了同層神經(jīng)元之間的連接(如圖2所示),使得對(duì)于一個(gè)給定的可見層節(jié)點(diǎn),與之相連的隱藏層節(jié)點(diǎn)之間并不會(huì)互相影響,取值也是獨(dú)立的,對(duì)于可見層亦如此,因此RBM的運(yùn)算速度遠(yuǎn)高于Boltzmann機(jī)的運(yùn)算速度。盡管仍不能確定RBM對(duì)應(yīng)的分布,但使用Gibbs采樣可以得到對(duì)應(yīng)分布的隨機(jī)模型, Roux等人證明了只要保證隱層數(shù)量足夠多,RBM可以擬合任何離散分布[7]。
1.3 DBN調(diào)優(yōu)
預(yù)訓(xùn)練結(jié)束后,就已經(jīng)完成了DBN網(wǎng)絡(luò)模型的初始化。為了優(yōu)化網(wǎng)絡(luò)性能,還需要對(duì)整體結(jié)構(gòu)進(jìn)行調(diào)優(yōu),降低預(yù)訓(xùn)練過程中產(chǎn)生的誤差。調(diào)優(yōu)一般使用傳統(tǒng)BP算法,且過程是有監(jiān)督的。這種訓(xùn)練方式比單純的使用BP算法高效的原因在于,傳統(tǒng)的BP算法在初始化神經(jīng)網(wǎng)絡(luò)的過程中采用的是隨機(jī)賦值方式,極易陷入局部最小化;而調(diào)優(yōu)過程中,DBN的初始結(jié)構(gòu)是由對(duì)每層RBM訓(xùn)練后得來的,從而使得訓(xùn)練速度更快,表現(xiàn)性能也更好。
2.1 樣本采集
本文的實(shí)驗(yàn)數(shù)據(jù)來自國(guó)內(nèi)某銀行2015年6月份的實(shí)際交易數(shù)據(jù),由于銀行的業(yè)務(wù)量非常大,而且其中的欺詐交易所占的比例較低。為了提高實(shí)驗(yàn)效果,故抽取交易數(shù)據(jù)時(shí)擴(kuò)大了欺詐交易的占比。最終實(shí)驗(yàn)數(shù)據(jù)為正常交易10 000條,欺詐交易500條,并對(duì)欺詐交易做了標(biāo)記。
2.2 實(shí)驗(yàn)變量選擇
實(shí)際的交易數(shù)據(jù)中,變量的個(gè)數(shù)多,其中不乏和欺詐預(yù)測(cè)關(guān)聯(lián)度較低的變量。模型中過多的變量輸入必然會(huì)導(dǎo)致計(jì)算的復(fù)雜度,并且無關(guān)變量的輸入也會(huì)在一定程度上影響預(yù)測(cè)的準(zhǔn)確度,因此需要剔除預(yù)測(cè)能力較差的變量。本文采取主成分分析(PCA)法對(duì)數(shù)據(jù)進(jìn)行降維處理。
2.3 實(shí)驗(yàn)?zāi)P偷慕?/p>
(1)將經(jīng)過PCA處理后交易的數(shù)據(jù)按照7:3的比例分為訓(xùn)練集和測(cè)試集兩部分,并在訓(xùn)練集中預(yù)留出一部分帶標(biāo)簽數(shù)據(jù)進(jìn)行DBN的調(diào)優(yōu)。
(2)為輸入變量賦初始權(quán)值,通常為接近0的較小數(shù)值。
(3)利用CD算法依次對(duì)每一層RBM進(jìn)行訓(xùn)練。在本文中共構(gòu)建了三層隱藏層,即加上輸入層和分類器輸出層,共五層的DBN模型。
(4)將最后一層的RBM的輸出作為分類器層的輸入,進(jìn)行最終的分類輸出。由于實(shí)驗(yàn)的目的是為了預(yù)測(cè)一筆交易是否為欺詐交易,所以分類器采用了最簡(jiǎn)單的Logistic分類器。
(5)使用訓(xùn)練集中帶標(biāo)簽的數(shù)據(jù)通過BP算法對(duì)訓(xùn)練后的DBN模型進(jìn)行調(diào)優(yōu),進(jìn)一步提高模型的預(yù)測(cè)準(zhǔn)確度。
(6)使用測(cè)試集對(duì)該模型進(jìn)行測(cè)試。
2.4 模型訓(xùn)練
模型的訓(xùn)練環(huán)境采用Anacondas自帶spyder。模型中參數(shù)不同的取值將產(chǎn)生不同的訓(xùn)練結(jié)果,因此訓(xùn)練的過程就是要找出使模型性能最好的參數(shù)組合。本文以模型隱層數(shù)(layers)、激活函數(shù)(activation)和訓(xùn)練批尺寸(batch_size)3個(gè)參數(shù)不同的取值情況下準(zhǔn)確率(Accuracy)的變化來展示模型的訓(xùn)練過程。其中準(zhǔn)確率=正確預(yù)測(cè)的交易筆數(shù)/總交易筆數(shù)。
由圖3可以看出,模型的隱層數(shù)量并不是越多越好,設(shè)為三層較為合適。由圖4可以看出,訓(xùn)練批尺寸保持在50左右比較合適。由圖5可以看出,Relu激活函數(shù)比常用的sigmoid函數(shù)準(zhǔn)確度要高。
2.5 實(shí)驗(yàn)結(jié)果分析
經(jīng)過上一節(jié)對(duì)不同參數(shù)的調(diào)整,最終得到了一個(gè)最優(yōu)的參數(shù)組合方案??梢钥吹皆趨?shù)調(diào)整過程中,準(zhǔn)確率一直都是比較高的。這是因?yàn)闃颖局蟹瞧墼p交易的占比非常高,因此就算有一部分欺詐交易預(yù)測(cè)的不準(zhǔn)確,準(zhǔn)確率還是會(huì)非常高。因此本文在準(zhǔn)確率的基礎(chǔ)上增加了召回率(Recall)指標(biāo)來衡量。召回率是指檢測(cè)到異常的樣本占所有異常樣本的比例[10]。預(yù)測(cè)結(jié)果使用混淆矩陣來表示,混淆矩陣可以很直觀地展示出原始樣本的分布以及預(yù)測(cè)結(jié)果。本文還將樣本數(shù)據(jù)應(yīng)用到傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)中進(jìn)行測(cè)試,用來與DBN模型預(yù)測(cè)結(jié)果進(jìn)行比較。圖6和圖7分別為兩種模型的預(yù)測(cè)結(jié)果。
從表1可以看出,無論是準(zhǔn)確率還是召回率,DBN的性能都優(yōu)于傳統(tǒng)神經(jīng)網(wǎng)絡(luò)。由此可見,DBN在銀行卡交易欺詐預(yù)測(cè)方面,確實(shí)可以達(dá)到比傳統(tǒng)神經(jīng)網(wǎng)絡(luò)更高的預(yù)測(cè)準(zhǔn)確度。
3 結(jié)束語
本文將深度信念網(wǎng)絡(luò)模型應(yīng)用到銀行卡交易反欺詐中,利用與欺詐預(yù)測(cè)相關(guān)的字段建立起一個(gè)多層的DBN,通過無監(jiān)督訓(xùn)練和有監(jiān)督調(diào)優(yōu)相結(jié)合,提取到更深層次的欺詐特征,從而達(dá)到了比傳統(tǒng)神經(jīng)網(wǎng)絡(luò)模型更高的欺詐預(yù)測(cè)準(zhǔn)確度,證實(shí)了深度信念網(wǎng)絡(luò)的優(yōu)越性以及更高的應(yīng)用價(jià)值。
參考文獻(xiàn)
[1] 馮必成. 信用卡反欺詐偵測(cè)系統(tǒng)的研究[D]. 上海:上海交通大學(xué),2009.
[2] 曹龍. 基于神經(jīng)網(wǎng)絡(luò)的地質(zhì)災(zāi)害預(yù)警GIS系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D]. 西安:西安電子科技大學(xué), 2005.
[3] HINTON G E, OSINDERO S, TEH Y W. A fast learning algorithm for deep belief nets[J]. Neural Computation, 2006, 18(7): 1527-1554.
[4] 石鑫,朱永利,薩初日拉,等. 基于深度信念網(wǎng)絡(luò)的電力變壓器故障分類建模[J]. 電力系統(tǒng)保護(hù)與控制 2016,44(1): 71-76.
[5] 鄭志蘊(yùn),李步源,李倫,等. 基于云計(jì)算的受限玻爾茲曼機(jī)推薦算法研究[J]. 計(jì)算機(jī)科學(xué), 2013,40(12): 259-263.
[6] 姜倩盼. 無取樣受限波爾茲曼機(jī)的圖像重建研究[J]. 電子技術(shù)與軟件工程, 2013(19): 108-110.
[7] 陳翠平. 基于深度信念網(wǎng)絡(luò)的文本分類算法[J]. 計(jì)算機(jī)系統(tǒng)應(yīng)用2015,24(2): 121-126.
[8] LE ROUX N,BENGIO Y. Representational power of restricted Boltzmann machines and deep belief networks [J]. Neural Computation, 2008, 20(6): 1631-1649.
[9] 張春霞,姬楠楠,王冠偉. 受限波爾茲曼機(jī)[J]. 工程數(shù)學(xué)學(xué)報(bào), 2015,32(2):159-173.
[10]呂榮. 基于SOM的分布式入侵檢測(cè)算法研究[D]. 長(zhǎng)春:吉林大學(xué), 2011.