趙朋亞,傅湘玲,仵偉強,李 達,高嵩峰
1)北京郵電大學計算機學院(國家示范性軟件學院),北京郵電大學可信分布式計算與服務教育部重點實驗室,北京 100876;2)北郵-華融智慧金融聯(lián)合實驗室,北京 100876;3)華融融通(北京)科技有限公司,北京 100033
欺詐風險已成為當前消費金融公司面對的主要風險,據(jù)2018年發(fā)布的《數(shù)字金融反欺詐白皮書》,惡意欺詐產(chǎn)生的損失占消費金融公司整體壞賬的60%.從傳統(tǒng)的采用黑名單[1]和專家規(guī)則[2],到如今的基于大數(shù)據(jù)的機器學習(machine learning, ML),這些欺詐檢測[3-5]方法都是根據(jù)申請時的注冊名稱是否滿足一定的模式,申請時使用的網(wǎng)際互連協(xié)議(internet protocol, IP)號段是否為臨時IP等,來獲得發(fā)現(xiàn)欺詐者的非典型特征.這些方案假設每個用戶之間獨立存在,只考慮用戶本身的固有特征,未考慮用戶在網(wǎng)絡中的關聯(lián)性.目前網(wǎng)絡借貸場景下,一方面,隨著大數(shù)據(jù)的發(fā)展,收集到的數(shù)據(jù)維度增加,覆蓋包括設備信息、IP信息和通話信息等,使得研究人員能基于數(shù)據(jù)構建關聯(lián)網(wǎng)絡;另一方面,欺詐行為在社交網(wǎng)絡中體現(xiàn)出一種同質效應[6],即欺詐用戶與正常用戶之間關系稀疏,但欺詐用戶之間關系緊密.若某用戶和多個欺詐用戶聯(lián)系密切,則該用戶很大概率也是欺詐者.
協(xié)同分類問題是指給定一個網(wǎng)絡和部分節(jié)點的標簽信息,如何根據(jù)網(wǎng)絡信息推理出未知節(jié)點的標簽信息.本研究提出基于標簽傳播的協(xié)同分類欺詐檢測方法.該方法基于關聯(lián)網(wǎng)絡,利用改進的標簽傳播算法得到網(wǎng)絡中未標記節(jié)點的欺詐信息從而發(fā)現(xiàn)欺詐節(jié)點,如圖1.在由真實的網(wǎng)絡借貸數(shù)據(jù)構建的網(wǎng)絡中進行實驗,證明這種以關聯(lián)網(wǎng)絡為基礎的網(wǎng)絡標簽傳播方法在欺詐檢測中效果明顯.
圖1 傳播示例圖
目前網(wǎng)絡借貸領域下采用的欺詐檢測模型主要分為3類:邏輯回歸[7-9]、神經(jīng)網(wǎng)絡[10-12]和基于樹算法的集成模型[13-15].其中,邏輯回歸因其對變量的良好解釋性,在檢測初期得到了很好的應用,如利用基于邏輯回歸的評分卡模型獲得用戶的信用值,再根據(jù)信用值的大小來調整貸款額度的多少.但隨著數(shù)據(jù)維度和特征數(shù)量的增加,邏輯回歸對于非線性關系的擬合不夠精準的缺陷逐漸顯現(xiàn).神經(jīng)網(wǎng)絡極大地提高了欺詐檢測效果,但因網(wǎng)絡本身是個黑盒模型,而借貸領域更希望檢測結果是可解釋的,因此,目前借貸領域中的主流模型更多是基于樹算法的集成模型,如隨機森林和lightGBM(light gradient boosting machine)等.
上述機器學習模型大部分仍是監(jiān)督學習模式,在訓練集上訓練分類器,在測試集上使用評價指標評價模型性能.此過程中訓練集和測試集是分開的,且每個訓練樣本獨立存在,分類是在測試樣本上獨立執(zhí)行,未考慮樣本之間潛在的網(wǎng)絡關系.網(wǎng)絡借貸中的欺詐行為常呈團體化趨勢,即欺詐者之間具有聚集性和緊密關聯(lián)現(xiàn)象,而欺詐者和正常用戶之間則呈現(xiàn)分散性和稀疏關聯(lián).
首先給出關于協(xié)同分類問題的一些定義和符號表達.假設圖結構G=(V,E).其中,V為節(jié)點集合,VL={v1,v2, …,vn}為已知標簽的節(jié)點集合,YL={y1,y2, …,yn}為已知標簽節(jié)點的標簽集合,VU={vn+1,vn+2, …,vn+m}為未知標簽的節(jié)點集合,YU={yn+1,yn+2, …,yn+m}為未知標簽的預測標簽值集合;E為邊的集合.eij為節(jié)點vi和節(jié)點vj之間的連接邊,eij∈E,vi,vj∈V,wij為邊eij的權重.N(i)為節(jié)點vi的鄰居節(jié)點集合,A(i)為節(jié)點vi的屬性集合.L={l1,l2, …,lk}為網(wǎng)絡中所有的標簽集合.協(xié)同分類問題認為網(wǎng)絡中的一個未知標簽節(jié)點(vi∈VU),其預測標簽(yi∈YU)受到3個因素影響:① 節(jié)點自身的屬性A(i);② 其鄰居節(jié)點的屬性A(j),vj∈N(i);③ 其鄰居節(jié)點的標簽yj∈YL,vj∈N(i).
協(xié)同分類就是利用上述因素對未知標簽的節(jié)點進行推理分類.對于任意網(wǎng)絡,達到真正的推理分類都是一個非確定性多項式(non-deterministic polynomial, NP)問題,因此,實際使用的協(xié)同分類大多是迭代式的,本研究使用的標簽傳播算法亦是通過迭代到收斂狀態(tài)達到一種近似推理.主流的協(xié)同分類算法包括以下3類.
1.2.1 關系分類算法
關系分類(relational classification, RC)的主要方法之一是帶權表決近鄰分類器(weighted-vote relational neighbor classifier, WvRn)[16].該方法認為一個節(jié)點的標簽僅由其鄰居的標簽決定,如式(1),先計算節(jié)點vi屬于每個標簽的概率,再取概率最大值的標簽作為其標簽.
(1)
1.2.2 迭代分類算法
迭代分類算法[17](iterative classification algorithm, ICA)分為初始化(bootstrap)和迭代分類(iterative classification)兩個過程,前者負責初始化節(jié)點標簽,后者負責迭代化更新節(jié)點標簽.ICA算法具體步驟如圖2.
bootstrap過程1)對每個vi∈VU,i=1,2,…,m,執(zhí)行步驟2)和3);2)根據(jù)vi的屬性及N(i)中有標簽的節(jié)點信息將vi用特征向量ai表示;3)使用局部分類器ML,根據(jù)ai的分類結果得到y(tǒng)i,即yi←ML(ai);iterativeclassification過程4)打亂VU順序隨機生成序列O,對于每個vi∈O,i=1,2,…,m,執(zhí)行步驟5)和6);5)根據(jù)vi當前N(i)的標簽信息重構特征向量ai;6)使用局部分類器ML,更新yi;7)重復步驟4)、5)和6),直到所有的節(jié)點標簽不再變化或達到最大迭代次數(shù).
1.2.3 吉布斯采樣
吉布斯采樣[18](Gibbs sampling)分為bootstrap、加熱(burn-in)和采樣(sample)過程,具體步驟如圖3.
bootstrap過程1)對每個vi∈VU,i=1,2,…,m,執(zhí)行步驟2)和3);2)根據(jù)vi的屬性及N(i)中有標簽的節(jié)點信息,將vi用ai表示;3)根據(jù)ai的分類結果得到y(tǒng)i,即yi←ML(ai);burnin過程(不進行統(tǒng)計操作)4)打亂VU順序隨機生成序列O,對于每個vi∈O,i=1,2,…,m,都執(zhí)行步驟5)和6);5)根據(jù)節(jié)點vi當前N(i)的標簽信息重構ai;6)用局部分類器ML更新yi;sample過程(進行統(tǒng)計操作)7)針對每個節(jié)點vi∈VU,初始化c[i,l]=0;8)打亂VU順序隨機生成序列O,對于每個vi∈O,i=1,2,…,m,都執(zhí)行步驟9)—12);9)根據(jù)vi當前的N(i)的標簽信息重新構建特征向量ai;10)使用局部分類器ML更新yi,并更新c[i,li]←c[i,li]+1;11)返回執(zhí)行步驟8)、9)和10),直至達到迭代次數(shù);12)針對每個節(jié)點vi∈VU,yi←argmaxc∈Lc[i,l].
標簽傳播算法[19](label propagation algorithm, LPA)是一種基于圖的半監(jiān)督學習算法,其主要思想是基于相關網(wǎng)絡的前提預設,利用少量的有標簽數(shù)據(jù)標記待預測數(shù)據(jù).標簽傳播的假設前提是:鄰近的樣本點更可能擁有相同標簽.這里,衡量鄰近與否的可以是圖中兩個點的歐式距離,也可以是網(wǎng)絡中代表點之間關聯(lián)度的邊的權重.比如,通話關系網(wǎng)絡中,邊的權重代表了兩用戶之間的通話密切程度.本研究認為,關聯(lián)度較高的兩個點更可能擁有相同標簽.標簽傳播算法具有很強的通用性,對于符合其假設前提的問題場景,能夠利用少量已標注節(jié)點預測未標記節(jié)點的標簽信息,將標簽傳播至未標注節(jié)點.考慮到欺詐在網(wǎng)絡內呈現(xiàn)的特性符合標簽傳播的基本假設前提,使用標簽傳播來將已確認的欺詐節(jié)點信息擴散開來,獲取其余未標注節(jié)點的標簽信息,輔助進行欺詐檢測.
有學者將標簽傳播引入到欺詐檢測中.PENG等[20]抽取通話記錄轉化成網(wǎng)絡,使用標簽傳播進行社區(qū)發(fā)現(xiàn),并進行欺詐社區(qū)的發(fā)現(xiàn),實現(xiàn)了快速分辨欺詐電話,研究使用標簽傳播旨在進行社區(qū)檢測.CUI等[21]將標簽傳播應用到醫(yī)保欺詐檢測領域,通過凸凹變換,將凸標簽傳播算法轉變?yōu)橄∮袠撕灥姆峭箻撕瀭鞑?,從醫(yī)保數(shù)據(jù)集中識別存在欺詐可能性的異常記錄.
為驗證算法在真實環(huán)境下的有效性,使用真實的網(wǎng)絡借貸數(shù)據(jù)構建網(wǎng)絡.數(shù)據(jù)集主要包含3部分數(shù)據(jù):① 職業(yè)數(shù)據(jù),包括用戶所屬的行業(yè)信息,如金融和醫(yī)療等;② 應用(application, app)列表數(shù)據(jù),即用戶移動設備上安裝的app列表,經(jīng)過脫敏處理,每個app上使用唯一的數(shù)字標識;③ 通話數(shù)據(jù)記錄兩用戶之間的通話情況,包含當月通話次數(shù)和通話權重.
實驗采集到的原始數(shù)據(jù)集包含246萬個用戶相關數(shù)據(jù).其中,18 405個用戶為有標簽用戶,即確定是欺詐用戶或正常用戶,具體分布為2 782個欺詐用戶,15 623個正常用戶.
為了能夠更直觀地體現(xiàn)算法的有效性,抽取原數(shù)據(jù)集中的通話數(shù)據(jù)(數(shù)據(jù)格式如表1),以用戶身份標識號(identity document, ID)為節(jié)點,用戶之間的通話關系為邊構建關聯(lián)網(wǎng)絡.其中,時間窗口為2017年12月;T為當月通話次數(shù);t為當月通話時間;w為權重,且w=Tt.
表1 通話關系格式
需要注意的是,通話數(shù)據(jù)集中的通話關系是一種有向關系,即用戶A打電話給用戶B,和用戶B打電話給用戶A是不同的.具體到要構建的圖中,則表現(xiàn)為兩點之間可能存在一條單向邊或兩條有向邊的情況.本研究認為兩個用戶之間的通話關系是互相的,即用戶A對用戶B的多次通話能證明用戶B和用戶A之間關系親密.因此,采取如下操作構建網(wǎng)絡的邊:① 若兩點之間只有單向邊,則直接轉化為無向圖,且保持原權重;② 若兩點之間存在雙向邊,則將兩條邊的權重相加,將兩條有向邊轉化為一條無向邊,并將之前得到的權重賦給該邊.采用此方法,最終構成的無向有權重通話網(wǎng)絡包含 2 462 611 個節(jié)點和2 709 492條邊.
為評價構建的通話關聯(lián)網(wǎng)絡是否適于本研究使用的標簽傳播進行協(xié)同分類,以下從兩方面對通話關聯(lián)網(wǎng)絡分析.
若網(wǎng)絡的連通性太低,雖然網(wǎng)絡節(jié)點很多,但由于它是由很多個小的連通子圖構成,依然會對最后的標簽傳播效果造成影響.本研究采用式(2)的C(G)指標來衡量本研究構建的通話關聯(lián)網(wǎng)絡G的連通性.
(2)
LPA的假設前提等價于網(wǎng)絡的同質性,如式(3),即若兩個節(jié)點的標簽相同,則兩節(jié)點之間有連接邊的概率更大.
P(A→B|AL=BL)>P(A→B)
(3)
其中,P(A→B)為節(jié)點A和節(jié)點B之間有邊連接的概率;AL和BL分別代表節(jié)點A和節(jié)點B的標簽.
為驗證通話網(wǎng)絡的同質性,采用常用的標簽一致性[21]、同類親密度[22]和異類親密度[22]指標來衡量網(wǎng)絡同質性.其中,標簽一致性描述網(wǎng)絡中連接的兩個節(jié)點標簽相同的邊占全部邊的比例,該值小于1,且值越大表示網(wǎng)絡的同質性越強;同類親密度描述欺詐節(jié)點之間的關聯(lián)緊密程度,該值大于1,且值越大表示與隨機網(wǎng)絡相比,該網(wǎng)絡中欺詐節(jié)點之間的關聯(lián)越緊密;異類親密度描述欺詐與非欺詐節(jié)點之間的關聯(lián)密度,該值小于1,且值越小表示與隨機網(wǎng)絡相比,欺詐與非欺詐節(jié)點的關聯(lián)越稀疏.基于上述指標的計算方式,得到關聯(lián)網(wǎng)絡的標簽一致性為0.924,同類親密度為3.679,異類親密度為0.295.可見,本研究構建的通話網(wǎng)絡滿足同質特性,符合標簽傳播的假設前提.
LPA主要分為構建概率轉移矩陣P和標注矩陣F兩部分,利用矩陣計算重復傳播,最后達到收斂.LPA具體流程如圖4.
輸入:構建關聯(lián)網(wǎng)絡,其中l(wèi)個已確定標簽節(jié)點,u個未知標簽節(jié)點,C個標簽類別輸出:u個未知標簽節(jié)點的標簽概率分布1)設置停止標簽傳播的迭代次數(shù)tmax,變化閾值δ.2)根據(jù)邊的權重,得到維度為(l+u)×(l+u)的鄰接權重矩陣W,其元素Wij為節(jié)點i和節(jié)點j的權重.3)利用式(4)將W按行進行歸一化處理,轉化為概率轉移矩陣P=(Pij)Pij=P(i→j)=wij∑l+uk=1wik(4)4)初始化一個維度為(l+u)×C的標簽概率分布矩陣F.首先,確定l個有標簽樣本的l×C矩陣YL,其第i行表示第i個樣本的標簽概率向量,即若第i個樣本的類別是j,則該行第j個元素為1,其他元素為0.同樣,給u個無標簽樣本一個維度為u×C的標注矩陣YU.將YL和YU合并,得到F=[YLYU].5)每個節(jié)點按照轉移概率將它周圍節(jié)點傳播的標注值按照權重相加,并更新自己的標簽概率分布Fij=∑l+uk=1PikFjk,1≤i≤l+u;1≤j≤C(5)6)限定已確定標簽樣本的概率分布,把標簽概率分布恢復為初始值Fij=Yij,1≤i≤l;1≤j≤C(6)7)重復步驟5)和步驟6),計算F相對于上次的改變量Δ=∑l+ui=1∑l+uj=1(Fnewij-Foldij)(7)8)迭代次數(shù)達到tmax,或者Δ<δ,算法結束.
由于欺詐數(shù)據(jù)集有類別不平衡現(xiàn)象,即欺詐樣本的數(shù)量比正常樣本的少,直接使用LPA,其性能顯著下降.為使算法更適合當前數(shù)據(jù)集,本研究通過改進LPA,提出不平衡標簽傳播算法(unbalanced label propagation algorithm, ULPA).
本研究采用類似圖像處理中的小波變換[23]思路,增強權重值較大的,削弱權重值較小的.對初始鄰接矩陣的每個權重元素W作如式(8)的非線性變化.
Wnew=(Wold)n
(8)
其中,Wold為原始的標簽傳播的初始鄰接權重;Wnew為改進后的權重;n為冪的指數(shù),本實驗分別設為1、2、3、4、5.每次實驗迭代500次,得到對應的F1值(F-score)、曲線下面積(area under curve, AUC)和精確率Pfraud結果如表2.
表2 不同n下的實驗結果1)
由表1可見,求冪后,3種評價指標都比直接將權重放入轉移矩陣(n=1)時更好,且當n=3時綜合效果最好,F(xiàn)1=0.20,Pfraud=17%,皆為最佳值,而AUC也能達到較優(yōu)值.因此,后續(xù)實驗取n=3.
算法輸出的標簽概率分布,實際上是用戶的軟標簽Lsoft.采用式(9)將軟標簽轉化為硬標簽Lhard(Lhard=1表示該用戶為欺詐用戶;Lhard=0表示該用戶為正常用戶),即類似給定Lsoft=[a,b], 0≤a,b≤1,a+b=1.其中,a和b分別代表欺詐和正常的概率.
(9)
實驗步驟為:
1)從關聯(lián)網(wǎng)絡中已確認標簽中的節(jié)點中,抽取 2 000 個作為測試節(jié)點;
2)記錄測試節(jié)點真實的標簽后,抹掉標簽,則該節(jié)點變?yōu)槲粗獦撕灥墓?jié)點;
3)使用改進型標簽傳播算法ULPA;
4)對測試節(jié)點的標簽分布概率做硬標簽轉化操作,確認標簽.
欺詐檢測實質上是一個分類問題,旨在查找出更多的欺詐者且降低誤殺率,對應到機器學習中則可用精確率Pfraud表示:假設抽取的測試節(jié)點通過標簽傳播后,預測為欺詐的節(jié)點數(shù)為a,預測為欺詐且真實標簽為欺詐的節(jié)點數(shù)為b,則
(10)
采用F1值和AUC綜合評價最終的欺詐檢測結果.針對分類任務最后輸出的連續(xù)變量,設定多個閾值,從而計算出一系列閾值下的真正率和假正率.AUC值越大,表示模型的預測結果越好.7次試驗下測試節(jié)點的標簽分布狀況以及最終預測結果如表3,各評價指標結果如圖5和圖6.
表3 多輪試驗下的用戶標簽分布狀況以及最終預測結果
圖5 采用ULPA進行欺詐檢測時不同迭代次數(shù)下的Pfraud和F1值
圖6 采用ULPA進行欺詐檢測的ROC曲線和AUC值
從圖5可見,針對欺詐樣本的精確率Pfraud和F1值隨迭代次數(shù)的增加而升高,說明標簽傳播算法有效,即隨著迭代過程將標簽節(jié)點的標簽信息傳播到未標記的節(jié)點上,改變了未標記節(jié)點的標簽概率分布,進一步識別了欺詐樣本.另外,當?shù)螖?shù)超過250次后,曲線變化已很小了,甚至當?shù)螖?shù)超過500次后,曲線幾乎不再發(fā)生變化,原因是數(shù)據(jù)集中有標簽節(jié)點的比例太少,標簽傳播很快達到穩(wěn)態(tài).
圖6統(tǒng)計了模型的接受者操作特性(receiver operating characteristic, ROC)曲線和AUC值.由圖6可見,本研究模型的AUC指標較高,說明模型預測結果的區(qū)分性較高,魯棒性更好.
分別采用協(xié)同分類中經(jīng)典的WvRn算法與本研究算法進行欺詐檢測,對比兩種算法多次實驗所得F1值和Pfraud,結果如圖7和圖8.
圖7 采用WvRn算法和ULPA進行欺詐檢測的F1值對比
圖8 采用WvRn算法和ULPA進行欺詐檢測的Pfraud對比
由圖7和圖8可見,使用本研究標簽傳播算法得到的F1值和Pfraud值都優(yōu)于WvRn算法.但是,兩種方法都存在多次實驗下結果波動的現(xiàn)象,原因是多次實驗中,每次實驗隨機選擇的測試節(jié)點不同.此外,WvRn算法只考慮節(jié)點周圍一度關聯(lián)節(jié)點的標簽來確定自身的標簽,這種造成在有標簽節(jié)點很稀疏的狀況下,無法得出充分合理的標簽推斷,而本研究算法通過構建概率轉移矩陣和標簽分布矩陣,采用迭代式的方法捕捉到多度關聯(lián)節(jié)點的標簽信息,標簽推理結果更符合真實場景.
本研究提出一種基于標簽傳播算法來進行協(xié)同分類從而發(fā)現(xiàn)欺詐者的方法,通過構建的通話網(wǎng)絡以及網(wǎng)絡內已知的欺詐節(jié)點,將欺詐信息通過標簽傳播算法擴散開來,獲得未知節(jié)點的標簽概率分布.同時,為彌補因欺詐數(shù)據(jù)集中正負樣本不均衡導致的傳播算法下降缺陷,改進了概率轉移矩陣的權重設置初始化方法,改進之后相對于原始的標簽傳播算法的F1指標從0.12提升到0.20,提升了約67%.將該算法與經(jīng)典的WvRn算法進行實驗對比,獲得了更好的性能表現(xiàn).但是,本研究的標簽傳播算法僅僅利用了網(wǎng)絡的拓撲結構,雖然具有其他任務領域的遷移性,但卻無法有效利用其他用戶數(shù)據(jù),因此后續(xù)可加入其他用戶數(shù)據(jù)以輔助欺詐信息的傳播檢測.