朱智君,陳蘇陽
(中山大學(xué) 南方學(xué)院,廣東 廣州 510000)
“互聯(lián)網(wǎng)+”背景下,信用卡產(chǎn)業(yè)發(fā)展迅速并具備一定規(guī)模.根據(jù)中國(guó)人民銀行統(tǒng)計(jì),截至2018年一季度末,信用卡發(fā)卡量共計(jì)6.12億張,人均持有信用卡0.44張;信用卡授信總額為13萬億元,平均每張卡授信額度2.15萬元.信用卡在便利生活、促進(jìn)銷售、刺激需求等方面發(fā)揮重要作用[1],與此同時(shí),由于風(fēng)險(xiǎn)意識(shí)、用卡環(huán)境不規(guī)范、風(fēng)險(xiǎn)管理技術(shù)水平落后等問題,信用卡套現(xiàn)風(fēng)險(xiǎn)不容小覷[2].
信用卡套現(xiàn)是指持卡人通過正常合法手續(xù)(ATM或柜臺(tái))以外的其他手段,將信用額度內(nèi)的資金以現(xiàn)金方式套取,同時(shí)不支付銀行提現(xiàn)費(fèi)用的行為.信用卡套現(xiàn)的實(shí)施借助于“2主體+1中介+1手段”[3].其中,“2主體”是指現(xiàn)金存儲(chǔ)雙方,包括銀行、個(gè)人.一般情況下,銀行是現(xiàn)金流出主方,個(gè)人是現(xiàn)金流入主方,金錢流動(dòng)方向是“銀行→個(gè)人”;“1中介”是指POS機(jī)、網(wǎng)絡(luò)商家、航空公司等.信用卡個(gè)人用戶通過中介完成信用卡套現(xiàn)過程,在此過程中,中介往往收取部分手續(xù)費(fèi)(提現(xiàn)費(fèi)用);“1手段”是指在銀行主體不知情的情況下,個(gè)人主體通過中介進(jìn)行手段操作(個(gè)人主體可以通過POS機(jī)與商家進(jìn)行虛假交易;個(gè)人主體進(jìn)行虛假購(gòu)票、錯(cuò)誤購(gòu)票,進(jìn)行退票等服務(wù)).必須強(qiáng)調(diào),這些手段具有欺詐、違法、犯罪等特性.
國(guó)內(nèi)外現(xiàn)有文獻(xiàn)研究重點(diǎn)聚焦于信用卡風(fēng)險(xiǎn)管理流程、信用卡風(fēng)險(xiǎn)管理困難、數(shù)據(jù)挖掘算法研究等方面[4-7].在信用卡風(fēng)險(xiǎn)管理實(shí)踐中,年齡、職業(yè)、月收入、住宅所有權(quán)、是否有電話、居住現(xiàn)址與工作的時(shí)間長(zhǎng)度、地方區(qū)別、是否在國(guó)家機(jī)關(guān)工作、之前貸款數(shù)量等因素為信用風(fēng)險(xiǎn)模型顯著變量.伴隨著銀行間競(jìng)爭(zhēng)日趨激烈化,導(dǎo)致信用卡審核標(biāo)準(zhǔn)降低、信用卡發(fā)行及管理混亂、信用卡管理及使用風(fēng)險(xiǎn)提高.現(xiàn)階段,信用卡風(fēng)險(xiǎn)管理存在風(fēng)險(xiǎn)意識(shí)缺失[8]、用卡環(huán)境不完善[9]、風(fēng)險(xiǎn)管理技術(shù)水平落后等問題.
首先,基于信用卡數(shù)據(jù)進(jìn)行數(shù)據(jù)抽樣.定義信息增益公式如下:
Gains(U,V)=Ent(U)-Ent(U/V).
(1)
該增益用于衡量信息,以消除數(shù)據(jù)抽樣中存在的隨機(jī)不確定性的程度.
其次,根據(jù)計(jì)算出的信息增益數(shù)值進(jìn)行排序(排序順序反映各個(gè)屬性變量在決策時(shí)的相對(duì)重要程度),并將排序數(shù)據(jù)標(biāo)準(zhǔn)化:
(2)
其中i∈R,xi表示不同屬性增益值.相對(duì)重要程度在進(jìn)行反套現(xiàn)時(shí)只是反映某個(gè)屬性的相對(duì)程度,不能具體反映各個(gè)屬性數(shù)值所對(duì)應(yīng)的風(fēng)險(xiǎn)程度,因此本文定義衡量數(shù)值對(duì)應(yīng)風(fēng)險(xiǎn)程度的變量——信用風(fēng)險(xiǎn)程度值.具體公式如下:
Zj=(a1×xj 1+a2×xj 2+a3×xj 3+a4×xj 4)/(xj 1+xj 2+xj 3+xj 4),
(3)
其中xj 1、xj 2、xj 3、xj 4分別表示屬性為j時(shí),正??蛻簟⑿桕P(guān)注客戶、嫌疑客戶和套現(xiàn)客戶的人數(shù);a1、a2、a3、a4分別表示上述客戶的風(fēng)險(xiǎn)系數(shù).套現(xiàn)可能性與風(fēng)險(xiǎn)系數(shù)呈現(xiàn)出正相關(guān)關(guān)系.最后,對(duì)風(fēng)險(xiǎn)程度值Zj進(jìn)行標(biāo)準(zhǔn)化處理,具體公式如下:
(4)
1.2.1 預(yù)處理分類數(shù)據(jù)
1)數(shù)據(jù)規(guī)范化 在原始數(shù)據(jù)集合中,部分屬性與分類的相關(guān)性較弱.因此,需要從眾多屬性中選擇與分類目標(biāo)相關(guān)性強(qiáng)的屬性.在本文中,為了確保分類效果,選擇了4種相關(guān)性強(qiáng)的屬性,分別是:信用卡筆數(shù)、信用卡金額、信用卡筆數(shù)占比、信用卡金額占比.每條數(shù)據(jù)信息主要由客戶代碼、信用卡交易筆數(shù)、交易金額、金額占比和是否套現(xiàn)等構(gòu)成.
一般而言,采取最小最大規(guī)范化方法需要預(yù)知具體值,容易受噪聲數(shù)據(jù)影響.但是規(guī)范化方法可以消除屬性之間值不同所導(dǎo)致的權(quán)重區(qū)別,并且能夠?qū)?shù)據(jù)映射至所需數(shù)據(jù)區(qū)間.根據(jù)交易金額屬性,最小值為1 500,最大值為4 845 300.采取規(guī)范化方法進(jìn)行計(jì)算,所有交易金額數(shù)據(jù)均位于[0,1]區(qū)間.對(duì)整個(gè)數(shù)據(jù)集進(jìn)行規(guī)范化后的結(jié)果如下表所示.
2)數(shù)據(jù)的泛化 由于決策樹算法連續(xù)數(shù)值處理能力較弱,因此需要對(duì)規(guī)范化后的數(shù)據(jù)進(jìn)行泛化處理,將其處理成離散數(shù)據(jù).本文中規(guī)范化后的數(shù)據(jù)映射區(qū)間為[0,1],因此可以根據(jù)數(shù)值來進(jìn)行l(wèi)ow,medium和high的劃分.劃分依據(jù)如下:[0,0.36]區(qū)間為low,[0.36,0.70] 區(qū)間為medium,[0.71,100]區(qū)間為high.泛化后的數(shù)據(jù)如下表所示.
表1 完全規(guī)范化后的結(jié)果表
表2 數(shù)據(jù)泛化的結(jié)果表
1.2.2 屬性選擇度量
綜合考慮屬性情況、測(cè)試代價(jià)、收益情況,重新設(shè)計(jì)劃分屬性選擇因子計(jì)算方法,以平均信息增益替代經(jīng)典信息增益,提高分類能力.
假設(shè)訓(xùn)練集為T,節(jié)點(diǎn)劃分屬性因子的計(jì)算如下:
(5)
其中,Ai為屬性集合A的第i個(gè)屬性.Averag-egain(Ai)表示平均的信息增益.TC(Ai)normal表示測(cè)試的代價(jià)情況.Incr_UCB(Ai)表示屬性Ai的增長(zhǎng)情況.
1.2.3 決策樹剪枝
為確保剪枝效果,本文采用最小項(xiàng)目數(shù)目方法進(jìn)行剪枝[10].最小項(xiàng)目數(shù)目剪枝方法要求在剪枝之前設(shè)定每個(gè)分支最小項(xiàng)目的數(shù)目σ,然后自上而下對(duì)樹進(jìn)行掃描,具體方法如下:
1)假設(shè)子樹tb的左右2棵子樹的項(xiàng)目均小于σ,那么剪掉子樹tb,且在tb的位置上用葉節(jié)點(diǎn)替代.
2)若子樹tb左子樹的項(xiàng)目小于σ,但是右子樹的項(xiàng)目數(shù)目大于或者等于σ.那么將tb左子樹的左子樹剪掉,用右子樹替代tb.
1.3.1KNN算法的基本思想
KNN算法(k-nearest-neighbor)算法是選擇特征空間中最鄰近訓(xùn)練樣本的數(shù)據(jù)進(jìn)行分類.其基本思想是所需要處理的數(shù)據(jù)屬于某一類取決于這個(gè)數(shù)據(jù)周圍臨近的k個(gè)點(diǎn).
通常KNN算法要求樣本屬性值連續(xù).本文采用歐氏距離計(jì)算不同樣本之間距離,其二維公式如下:
(6)
若樣本的屬性為多維則公式如下:
(7)
其中xi1表示的是x1點(diǎn)的第i維的屬性值,而xi2表示的是x2點(diǎn)的第i維的屬性值.由上述公式不難看出,本算法在計(jì)算距離時(shí),如果點(diǎn)和屬性較多,那么計(jì)算開銷將十分大,這對(duì)硬件性能提出較高要求.
1.3.2 數(shù)據(jù)的預(yù)處理
在計(jì)算過程中通常會(huì)出現(xiàn)樣本特征值取值范圍較大的情況.例如:特征A和B,若A的值區(qū)間在[0,1]之間,而B的取值范圍在[0,100 000]之間,就會(huì)出現(xiàn)計(jì)算后的距離將十分遠(yuǎn)離A.另外,有些樣本屬性與分類無關(guān),還存在不同量綱的情況,所以需要對(duì)數(shù)據(jù)進(jìn)行預(yù)處理.本文采用的預(yù)處理方法是對(duì)屬性值進(jìn)行規(guī)范化.
2.1.1 改進(jìn)的決策樹算法步驟
為了簡(jiǎn)化模型同時(shí)不完全丟失熵模型優(yōu)點(diǎn),CART分類算法使用基尼指數(shù)進(jìn)行樣本屬性選擇;為了提高識(shí)別效果,本文采用隨機(jī)森林模型提高反套現(xiàn)識(shí)別的準(zhǔn)確率[11].在本文的隨機(jī)森林模型中,將決策樹模型和CART算法相結(jié)合,以確保模型具有良好魯棒性和泛化能力.
改進(jìn)后的決策樹算法步驟如下:
Step 1 初始化ρmin=∞,最優(yōu)子樹集合ω={T},α=2;
Step 3 得到所有節(jié)點(diǎn)的ρ值的集合M;
Step 5 最優(yōu)子樹集合ω=ω∪Tk,Mk=M-{ρk};
Step 6 如果M不為空,則回到步驟4,否則就已經(jīng)得到了所有可選最優(yōu)子樹集合ω;
Step 7 采用交叉驗(yàn)證在ω中選擇最優(yōu)子樹Tρ.
改進(jìn)的決策樹結(jié)果展示如下:
根據(jù)下圖所示的結(jié)果,共有29根決策路徑.其中有16根路徑是為套現(xiàn)結(jié)果.將整個(gè)決策結(jié)果導(dǎo)入至Risk_Decision_Tree.
2.1.2 應(yīng)用已訓(xùn)練的決策樹
已知一個(gè)商戶的4個(gè)特征屬性:信用卡筆數(shù)占比(count ratio)、信用卡金額占比(amount ratio)、信用卡金額(credit amount)、信用卡筆數(shù)(credit count),采用下述方法判斷客戶是否為套現(xiàn)客戶(fraud).統(tǒng)計(jì)發(fā)現(xiàn),所有的測(cè)試實(shí)驗(yàn)數(shù)據(jù)中,12%的客戶為套現(xiàn)客戶,準(zhǔn)確率超過80%.
2.2.1 模型的改進(jìn)和實(shí)現(xiàn)
對(duì)于某個(gè)樣本,改進(jìn)后的KNN算法基本步驟如下:
Step 1 對(duì)于樣本中每個(gè)屬性在不同類中的數(shù)目,計(jì)算單個(gè)屬性的信息熵.
Step 2 計(jì)算測(cè)試樣本與訓(xùn)練樣本相同屬性值的平均信息熵.測(cè)算它們之間的距離.
Step 3 設(shè)置對(duì)應(yīng)的k值,選取彼此之間距離小的前k個(gè)樣本作為近鄰樣本.
Step 4 計(jì)算這些近鄰樣本在不同類別中的個(gè)數(shù),然后計(jì)算這些近鄰樣本在類別中的平均信息熵.最后根據(jù)距離和平均信息熵計(jì)算可信度.
Step 5 對(duì)可信度的大小進(jìn)行對(duì)比,獲取可信度較大的類別作為分類.
2.2.2 基于函數(shù)庫(kù)的算法實(shí)現(xiàn)
在此過程中,與前面決策樹分類過程相似.首先是根據(jù)商戶的代碼確定交易的總數(shù)量(上同),然后基于本文設(shè)定的交易記錄屬性(信用卡交易筆數(shù)、信用卡交易金額、信用卡筆數(shù)占比、信用卡金額占比)進(jìn)行規(guī)范化處理(上同).因?yàn)镵NN算法可以計(jì)算連續(xù)的數(shù)值,因此不需要對(duì)數(shù)據(jù)進(jìn)行泛化(轉(zhuǎn)換為low/medium/high).
函數(shù)名稱:knn_classify
傳入?yún)?shù):k值,信用卡筆數(shù),信用卡金額,信用卡筆數(shù)占比,信用卡金額占比
返回結(jié)果:1,0.是否套現(xiàn).
2.2.3 函數(shù)的測(cè)試環(huán)節(jié)
本部分將對(duì)knn_classify(7,0.5,0.5,0.5,0.5)進(jìn)行測(cè)試實(shí)驗(yàn).若測(cè)試結(jié)果為0,那么判斷客戶不是套現(xiàn)客戶.
2.2.4 分析分類的結(jié)果
對(duì)已進(jìn)行預(yù)處理的交易數(shù)據(jù)進(jìn)行實(shí)驗(yàn)發(fā)現(xiàn),確定沒有套現(xiàn)的客戶數(shù)量占總數(shù)的比例為91.20%.改進(jìn)后KNN算法和改進(jìn)后決策樹方式的分類結(jié)果相差無幾.影響實(shí)驗(yàn)結(jié)果的因素主要包括數(shù)據(jù)規(guī)模、特征選取等,訓(xùn)練集規(guī)模越大,所獲得的實(shí)驗(yàn)結(jié)果將會(huì)更好.
2.3.1 改進(jìn)的決策樹算法評(píng)價(jià)
雖然決策樹算法能夠快速的完成分類,具有快速建模、訓(xùn)練時(shí)間短等優(yōu)點(diǎn).但是單顆決策樹模型依然存在容易過擬合等問題.在ID3算法中使用了信息增益來選取特征,信息增益大作為優(yōu)先特征.在C4.5算法中,采用了信息增益比來選擇特征,以減少信息增益容易選擇特征值多特征的問題.但是無論是ID3還是C4.5算法,都是基于香農(nóng)信息理論的熵模型來定義和度量的,其中涉及大量對(duì)數(shù)運(yùn)算.
因此為了簡(jiǎn)化模型同時(shí)不完全丟失熵模型優(yōu)點(diǎn),CART分類算法使用基尼指數(shù)進(jìn)行樣本屬性選擇;為了提高識(shí)別效果,本文采用隨機(jī)森林模型提高反套現(xiàn)識(shí)別的準(zhǔn)確率.在本文的隨機(jī)森林模型中,將決策樹模型和CART算法相結(jié)合,以確保模型具有良好的魯棒性和泛化能力.
2.3.2 改進(jìn)的KNN算法評(píng)價(jià)
傳統(tǒng)的KNN算法通常采用歐式距離等方法測(cè)算對(duì)象間距離,當(dāng)不同對(duì)象特征重要行不同或者相似度差異較大時(shí),進(jìn)行歐式距離測(cè)算會(huì)影響最終分類結(jié)果.
因此本文采用信息熵判定對(duì)象屬性特征重要性,信息熵越小,屬性對(duì)分類結(jié)果的重要性越大.同時(shí)基于一種模糊聚類的方式對(duì)KNN的類別進(jìn)行約化,在聚類后n個(gè)簇中采用自適應(yīng)權(quán)重的k鄰近算法,以加快分類效率.
本文采取分布式數(shù)據(jù)庫(kù)GreePlum,并采用五臺(tái)服務(wù)器做為整體計(jì)算節(jié)點(diǎn)[12].其中,1臺(tái)服務(wù)器做為控制主機(jī)master,剩下的4臺(tái)服務(wù)器均為計(jì)算節(jié)點(diǎn)segment.控制主機(jī)master主要功能是對(duì)計(jì)算任務(wù)進(jìn)行分配和計(jì)算結(jié)果進(jìn)行收集,計(jì)算負(fù)載較低.而主要的計(jì)算負(fù)載均由剩余4臺(tái)計(jì)算節(jié)點(diǎn)承擔(dān).當(dāng)需要增加計(jì)算節(jié)點(diǎn)時(shí),可以直接在交換機(jī)上進(jìn)行連接,然后在控制主機(jī)中添加ID即可.控制主機(jī)master與后臺(tái)交易數(shù)據(jù)庫(kù)需要進(jìn)行連接,確保正常的獲取信用卡的交易記錄.通常銀行采用的數(shù)據(jù)庫(kù)是oracle數(shù)據(jù)庫(kù),采用的處理方式是OLTP,此方式對(duì)數(shù)據(jù)記錄的速度要求較高.而本文采用的greenPlum集群則采用OLAP方式,這種方式主要是對(duì)數(shù)據(jù)進(jìn)行詳細(xì)匯總.
由于數(shù)據(jù)庫(kù)處理方式存在區(qū)別,因此從后臺(tái)的Oralce數(shù)據(jù)庫(kù)對(duì)GreenPlum進(jìn)行數(shù)據(jù)遷移十分復(fù)雜,并且缺乏相應(yīng)工具.因此設(shè)計(jì)可以對(duì)SQL文件進(jìn)行操作的程序,在設(shè)計(jì)中整個(gè)信用卡的交易信息匯總表并不能導(dǎo)入,只能借助于跟POS內(nèi)容的有關(guān)交易流水表來實(shí)現(xiàn).
其中:
Consumer_risk表示客戶風(fēng)險(xiǎn)表;Consumer_risk_rd表示商戶風(fēng)險(xiǎn)記錄表;
Risk_total_stat表示行業(yè)風(fēng)險(xiǎn)匯總表;Risk_ Consumer _sett表示風(fēng)險(xiǎn)客戶清算表;
Risk_sc表示風(fēng)險(xiǎn)得分表;Risk_ Consumer表示風(fēng)險(xiǎn)客戶內(nèi)容表.
本文所采用數(shù)據(jù)來自于銀行后臺(tái)系統(tǒng),整個(gè)數(shù)據(jù)集總共包含了過去十年的交易情況,交易記錄條數(shù)達(dá)到了6億筆以上.近十年來POS的交易筆數(shù)直線上升,因此為了提高實(shí)驗(yàn)效率、降低對(duì)系統(tǒng)的運(yùn)行影響.本文收集2012年份最后一個(gè)月的客戶信息,完成數(shù)據(jù)處理后,共得到1 037條客戶的交易記錄.在這些記錄中,已經(jīng)確認(rèn)套現(xiàn)的客戶有94個(gè),其余的均為正??蛻?所以,本文的實(shí)驗(yàn)?zāi)繕?biāo)是將1 037客戶數(shù)據(jù)作為訓(xùn)練集訓(xùn)練決策樹,運(yùn)用訓(xùn)練好的決策樹模型分析其它未標(biāo)記數(shù)據(jù),判斷其中客戶是否是套現(xiàn)客戶.
3.4.1 匯總POS的交易流水表
將交易流水表定義為RISK_ OPERATIN表.在該表中包含字段有:客戶代碼、信用卡的交易筆數(shù)、總體交易金額、筆數(shù)占比、金額占比.
3.4.2 標(biāo)準(zhǔn)化RISK_ OPERATIN 表
首先提取出每個(gè)屬性的最大最小值.
完成計(jì)算后,整個(gè)交易筆數(shù)中最小的數(shù)值是0,最大的數(shù)值是41 521.26;整個(gè)交易中交易金額最小的數(shù)值是0,最大的數(shù)值是136 483 009.41.整個(gè)交易中筆數(shù)占比最小的數(shù)值是0,最大的數(shù)值是1;整個(gè)交易中金額占比的最小的數(shù)值是0,最大的數(shù)值是1.
3.4.3 泛化RISK_ OPERATIN
因?yàn)楸疚牟捎玫臎Q策樹算法只能處理離散的特征值,因此需要將標(biāo)準(zhǔn)化后的數(shù)據(jù)進(jìn)行離散化,本文按照[0,36],[36,70],[71,100]劃分為3個(gè)等級(jí):low,medium,high[6].首先自定義1個(gè)函數(shù)data_generalize().整個(gè)泛化階段的部分SQL語句如下所示:Data_segment(amount_ratio) from riskstatistic
“互聯(lián)網(wǎng)+”使得通過技術(shù)手段干預(yù)控制信用卡套現(xiàn)可能性逐漸變?yōu)楝F(xiàn)實(shí).技術(shù)人員在數(shù)據(jù)庫(kù)中設(shè)置邏輯規(guī)則,采取數(shù)據(jù)挖掘方式從核心系統(tǒng)中提取交易數(shù)據(jù)進(jìn)行甄別,羅列出疑似信用卡套現(xiàn)人員名單,在此技術(shù)上進(jìn)行人工校核;或者在交易系統(tǒng)當(dāng)中植入預(yù)警規(guī)則進(jìn)行實(shí)時(shí)監(jiān)控,使得工作人員基于交易數(shù)據(jù)進(jìn)行判斷,建立起嚴(yán)密反套現(xiàn)體系.“反套現(xiàn)模型+資金異常監(jiān)控系統(tǒng)+文本挖掘”等依托于大數(shù)據(jù)實(shí)現(xiàn)的反套現(xiàn)措施以大量數(shù)據(jù)采集工作為前提,對(duì)系統(tǒng)算法提出更高要求.本文基于大量數(shù)據(jù)卡交易信息,將數(shù)據(jù)挖掘理論應(yīng)用于信用卡反套現(xiàn)評(píng)估中,運(yùn)用數(shù)據(jù)挖掘算法中的決策樹、KNN模型實(shí)現(xiàn)對(duì)信用卡套現(xiàn)行為、套現(xiàn)客戶的辨別.經(jīng)過實(shí)驗(yàn)驗(yàn)證,模型具有良好的應(yīng)用效果,能夠優(yōu)化銀行反信用卡套現(xiàn)識(shí)別、改善銀行工作效率.