陳卓,朱淼,杜軍威
(青島科技大學信息科學技術學院,山東 青島 266061)
欺詐行為是指對事實錯誤的表達,是以使人發生錯誤認識為目的的故意行為。欺詐有多種類別,包括社交網絡中的虛假信息、金融欺詐[1]、廣告流量欺詐等,有效檢測出欺詐行為對安全、金融等領域發展有著至關重要的作用。
由于圖可以對現實世界中的關系進行良好建模,研究者將圖神經網絡(GNN,graph neural network)運用到欺詐檢測中。基于圖的異常檢測方法是識別可疑行為最常用的技術之一[2]。
FRAUDER(fraud detection dual-resistant)[3]利用圖結構無關的編碼器學習欺詐節點和相鄰正常節點不同的表示,從而判別欺詐節點和正常節點;而semiGNN[4]從節點的多視角信息出發,利用層次注意力聚合節點不同視角之間的信息,學習了不同節點之間的交互以及不同視角之間的關系,以此進行分類。
然而,在欺詐檢測任務中,欺詐者的數量遠少于正常用戶的數量,以Amazon 數據集為例[5],只有9.5%的用戶是欺詐者,而其他用戶則是正常的。類不平衡問題使現有的欺詐檢測算法在多數類中過擬合,忽略了少數類的特征,從而導致檢測效果差。此外,在現實生活中,欺詐者通常連接大量的正常用戶以實施欺詐行為,欺詐節點之間缺乏必要的連接,這可能導致欺詐者信息被隱藏在正常信息中,研究者將之稱為欺詐者偽裝行為。由于圖神經網絡的效果依賴于同質性假設,即距離相近的節點具有相似的信息,簡單的圖神經網絡在聚合鄰居節點信息后易掩蓋其中的欺詐信息,難以識別欺詐節點,這也是欺詐檢測任務的難點之一?,F有研究[6-7]通過重采樣的方法過濾掉欺詐節點相鄰的正常節點以滿足GNN 的同質性假設。同時,利用重采樣的方法對正常節點進行欠采樣,對欺詐節點進行過采樣也可以解決類不平衡問題。但圖神經網絡容易被一些微小的擾動迷惑[8],特別是若某一層刪減了過多的邊,隨著圖結構的演化將會導致GNN 過平滑。
針對上述問題,本文提出基于多視角圖神經網絡的欺詐檢測(MGFD,multi-view graph neural network for fraud detection)算法,結合結構無關的編碼器和層次注意力思想構建多視角特征嵌入模塊,利用節點與子圖對構建學習樣本,并設計標簽從而解決欺詐檢測中的類不平衡問題,最終預測標簽來判斷節點是否為欺詐節點。本文的工作主要有以下幾點。
1) 設計多視角特征嵌入模塊,首先使用結構無關的編碼器學習欺詐節點與正常節點之間的差異性表示,再利用層次注意力機制融合節點多視角信息,學習節點不同關系之間的信息,利用包含豐富信息的表示解決欺詐者偽裝問題。
2) 構建節點與子圖對,設計實例對標簽以平衡數據的類別,通過學習正常節點與欺詐節點的差異使節點和子圖對不斷擬合標簽,最終預測標簽來判斷節點類別,在不改變圖結構的條件下解決類不平衡問題。
3) 在公開數據集中進行廣泛的實驗,驗證算法檢測欺詐節點的有效性。
本節首先給出不平衡比、多關系不平衡圖、節點子圖相關定義,然后給出針對圖異常檢測問題的形式化描述。

問題描述:基于圖的欺詐檢測。在多關系不平衡圖G=(V,ε,A,X,C)中,節點被標記為欺詐節點或正常節點。基于圖的欺詐檢測的目的是在多關系不平衡圖G上發現欺詐節點與正常節點之間的顯著差異,也可以表述為不平衡節點分類問題。
下面,從基于圖的欺詐檢測和不平衡學習兩方面介紹本文的相關工作。
1.2.1 基于圖的欺詐檢測
GraphRAD(graph-based risky account detection)[9]將圖神經網絡運用于欺詐檢測任務,以欺詐節點為種子節點,向外發散生成局部社區,從而通過學習賬戶之間的關系圖檢測有潛在風險的賬戶。雙向圖卷積網絡(Bi-GCN,bi-directional graph convolutional network)[10]使用圖卷積網絡檢測社交網絡中的謠言,提出謠言源頭和末端雙向圖模型,從而從深度和廣度兩方面檢測謠言。文獻[11]提供了一種新的異質信息網絡節點聚合方法,針對用戶節點、評論節點以及商品節點分別提出聚合器,聚合各自鄰居節點的信息,同時通過評論之間的相似性,構建了一個同質的評論圖,從而檢測虛假的評論。這些方法結合數據特性利用圖神經網絡進行欺詐檢測,但沒有考慮到欺詐節點偽裝以及樣本不平衡問題。近期,部分工作針對欺詐者偽裝以及類不平衡問題對網絡進行改進,如GraphConsis[6]提供了一種新的GNN 框架用于解決欺詐者偽裝問題,在聚合鄰居節點時通過度量節點之間的一致性過濾不一致的節點,學習欺詐節點之間潛在的特征,從而對節點進行分類。CARE-GNN(camouflage resistance-GNN)[7]基于強化學習的方法學習節點的最優鄰居節點數,利用標簽相似度對鄰居節點進行選擇,以解決欺詐者的偽裝問題。上述方法雖然可以在一定程度上解決欺詐者偽裝問題,但檢測效果仍受標簽不平衡限制,且在相鄰層網絡中輸入不同的圖結構易使網絡訓練不穩定。
1.2.2 不平衡學習
由于欺詐檢測任務中欺詐節點遠少于正常節點,欺詐檢測涉及不平衡分類問題?,F有的不平衡分類方法可分為重采樣和重加權。重采樣又可進一步分為過采樣和欠采樣。SMOTE(synthetic minority over-sampling technique)[12]是一種典型的重采樣插值方法,通過對少數類過采樣和多數類欠采樣獲得更好的分類結果。Wang 等[13]提出通過生成少數類樣本以實現過采樣。Chi 等[14]提出基于元學習的強化學習以學習欠采樣。重加權算法可以通過成本敏感方法[15]和基于元學習的方法[16]實現。Cao 等[15]提出了感知標簽分布的邊緣損失,并將重加權與損失相結合以解決類不平衡問題。Hu 等[16]將監督學習和強化學習相結合,利用強化學習獎勵動態調整數據加權。
目前,針對解決圖數據中類不平衡問題的研究仍然較少。Shi 等[17]對圖數據中類不平衡問題進行研究,提出了一種包含2 種正則化的新型圖卷積網絡,訓練所有未標記節點使其與訓練良好的節點具有類似的數據分布從而促進不同類之間的平衡訓練。該算法的局限性在于難以泛化到大規模圖上。Zhao 等[18]提出通過生成節點和邊進行過采樣以平衡分類。由于不斷生產新的圖結構,這種方法有可能降低基于GNN 方法的穩健性。
為了學習欺詐節點和正常節點之間顯著差異并解決類不平衡問題,本文提出了MGFD 算法,其由多視角特征嵌入、構建節點子圖對標簽、欺詐節點判別三部分組成,算法架構如圖1 所示。首先使用結構無關的編碼器增強欺詐節點與正常節點之間的差異,基于層次注意力聚合節點得到包含節點多視角信息的差異化表示;然后,進行子圖采樣,基于不同類別的節點特性構建節點子圖對標簽,解決類不平衡問題并學習正常節點與欺詐節點之間的不一致信息;最后,判別標簽得出節點是否為欺詐節點。

圖1 MGFD 算法架構
由于欺詐節點與正常節點具有不同的特征,但兩者在拓撲結構上聯系緊密,直接聚合鄰居節點信息會平滑欺詐節點潛在的特征,因此在進行信息聚合之前,首先基于節點屬性對節點進行結構無關編碼,即在對節點屬性進行編碼時不考慮節點的結構信息,如式(1)所示。

其中,xi為節點vi的特征向量;σ為非線性激活函數,對節點屬性進行非線性變換;We為可學習的權重矩陣;hi為學習到的節點vi的第一層嵌入。
由于節點具有不同豐富的特征,為聚合不同視角下鄰居節點的特征,使算法更易于區分欺詐節點和正常節點,減少對欺詐節點的錯誤判斷,本文基于多層次的注意力機制分別對節點層和不同視角層進行信息融合,以學習不同關系下節點間的聯系。
給定用戶vj,vrj為用戶vi在視角r下的鄰居,hj為節點vrj的初始嵌入,利用節點vi和vrj之間的關系學習注意力系數,如式(2)所示。


為了獲得節點更全面的信息,需要融合不同視角的信息,以獲得高階的語義信息。由于不同視角得到的節點表示位于不同的空間域,直接融合難以在低維空間中捕獲不同視角之間的相關性[4]。因此在融合多視角信息前,使用多層感知器(MLP,multilayer perceptron)將特定視角的節點表示映射到高維的空間中,第l層的表示為

不同視角表示對欺詐檢測任務具有不同的貢獻,因此本文提出視角級的注意力機制。同理,視角級注意力系數的計算式為

其中,為可學習的視角權重向量。
得到不同視角的權重向量后,結合不同視角的嵌入得到節點的多視角特征嵌入,如式(6)所示。

其中,||表示拼接操作,拼接不同視角下節點表示。
在欺詐檢測任務中,由于欺詐者通常連接正常用戶以偽裝自己,且欺詐節點遠少于正常節點,直接聚合鄰居節點易使欺詐者特征被掩蓋。本文基于節點子圖對構建平衡標簽以解決上述問題。由于正常節點與欺詐節點具有不同的行為模式和特征,本文利用節點子圖作為新的學習樣本,通過構建節點與其子圖對,學習判別節點與其子圖不同的交互模式,將欺詐節點與其子圖對稱為負樣本,正常節點與其子圖對稱為正樣本。為解決樣本不均衡問題,將不平衡比作為少數類節點和多數類節點的子圖采樣輪數之比,以平衡正負樣本數,使分類器充分學習到負樣本的特征,避免算法在多數類上過擬合,忽略負樣本的信息。
由多視角特征嵌入模塊得到節點的表示后,首先確定目標節點,子圖為從目標節點采樣的局部子圖,利用帶重啟的隨機游走(RWR,random walk with restart)算法[19]得到節點的多個子圖。RWR 算法表示在游走時有一定概率回到起點,如式(7)所示。

其中,是起點向量;是終點向量;Wi,j表示圖中邊的權重,即從節點i到節點j的概率,在本文中為鄰接矩陣;c為重啟概率,當c=0 時游走回起點。對于正常節點,由游走得到K個子圖,為第k個子圖,為節點i的第k個子圖表示,對于欺詐節點,由游走得到個子圖,其中,利用平均池化作為讀出函數Readout(·) 融合節點表示,具體如式(8)和式(9)所示。

為度量節點與其子圖的一致性,采用雙線性映射函數Bilinear(·) 計算其相似度,對于正常節點,節點與子圖對即正樣本的分數為

其中,WS為可學習參數矩陣。對于欺詐節點,節點與子圖對即負樣本的分數為

其中,WP為可學習參數矩陣。
通過以上模型訓練,每一個對比實例對都可以得到一個預測標簽值si。最終,模型的對比目標使s與標簽yi盡可能接近。本文使用標準交叉熵損失目標函數,即

將節點輸入訓練好的對比模型后,模型對其進行子圖采樣,將樣本輸入分類器中,由J個子圖得到。將判別值表示為樣本節點子圖對預測標簽平均值,即

正常節點分數趨于0,欺詐節點分數趨于1,相較于正常節點,欺詐節點具有較大的判別分數,因此節點是否為欺詐節點的概率為

基于以上論述,基于多視角圖神經網絡的欺詐檢測算法的偽代碼過程如算法1 所示。
算法1基于多視角圖神經網絡的欺詐檢測算法
輸入多關系不平衡圖G=(V,ε,A,X,C),訓練集Vtrain,訓練輪數epoch,訓練批次大小batch_size
輸出節點i的欺詐預測標簽si


本文在廣泛使用的公開數據集上進行對比實驗,分別為Yelpchi 數據集[20]和Amazon 數據集[5]。Yelpchi數據集收集了Yelp 網站的酒店和餐廳評論。Yelpchi數據集中的節點是具有100 維特征的評論,包含以下3 個關系:1) R-U-R 連接同一用戶發布的評論;2)R-S-R 連接同一產品下的評論,具有相同的星級評級;3) R-T-R 連接當月發布的同一產品下的評論。Amazon數據集包括了Amazon 網站樂器類別下的產品評論。Amazon 數據集中圖的節點是具有100 維特征的用戶,包含以下3 個關系:1) U-P-U 連接至少查看過同一個產品的用戶;2) U-S-U 連接在一周內擁有至少一個相同評級的用戶;3) U-V-U 連接具有前5%的TF-IDF(term frequency inverse document frequency)相似性的用戶。這2 個數據集的統計數據如表1 所示,其中標簽相似度為欺詐節點與其一階鄰居節點標簽平均相似度。從表1 可以看出,除了Yelpchi 數據集中的R-U-R關系外,其他關系下欺詐節點與其鄰居節點的標簽相似度都很低,說明圖中的欺詐節點與正常節點普遍的連接性以及欺詐節點之間缺乏必要連接的數據特性。

表1 數據集統計數據
為了評估模型欺詐檢測性能,本文選取了GCN以及幾種先進方法進行對比實驗。
GCN[21]。圖卷積網絡對空間域中的節點嵌入進行卷積操作,即聚合鄰居的信息來表示節點。
FdGars[22]。該方法基于GCN 對虛假評論賬戶進行檢測,針對評論的語義特點設計特征,并通過GCN 對節點特征進一步編碼。
GraphConsis[6]。該方法通過鄰居節點距離及標簽信息均衡采樣,解決欺詐檢測領域不一致即欺詐者偽裝問題。
CARE-GNN[7]。該方法針對欺詐者偽裝問題,利用強化學習思想設計自適應的閾值用來篩選鄰居節點。
FRAUDER[3]。該方法是一種基于圖神經網絡的欺詐檢測算法,通過設計節點信息聚合機制以及損失函數,實現對圖不一致和類不平衡問題的雙重抵抗能力。
由于欺詐檢測類不平衡問題,本文選用3 個被廣泛使用的對類無偏差的度量指標:AUC、Recall-macro和F1-macro。AUC 為受試者操作特征(ROC,receiver operator characteristic)曲線的下面積,AUC 表示隨機選擇一個欺詐節點,其排名高于正常節點的預測概率。Recall-macro 評估檢測到的欺詐節點和正常節點占實際數量的比例的未加權平均值。F1 分數是召回率和精度之間的權衡,而F1-macro 是正常節點和欺詐節點F1分數的未加權平均值。
在多視角特征嵌入模塊,節點表示維度對后續欺詐檢測的影響如圖2~圖4 所示。節點表示維度超過64 維時,欺詐檢測效果在3 個評價指標上都呈下降趨勢,因此選擇輸出節點表示維度為64 維。

圖2 參數選擇AUC 指標結果

圖3 參數選擇Recall-macro 指標結果

圖4 參數選擇 F1-macro 指標結果
MGFD 算法與對比方法在不同數據集上的對比實驗結果如表2 所示。由表2 可以看出,在給定評價指標上,MGFD 算法均取得了最好的檢測效果。

表2 對比實驗結果
1) MGFD 算法在2 個數據集上都取得了最好的效果,這說明MGFD 算法能夠有效解決欺詐檢測任務中節點不一致以及類不平衡問題,并學習到欺詐節點潛在的學習模式。MGFD 算法效果好于FRAUDER 說明多視角的特征嵌入增強了節點自身與其他節點之間的不一致信息以便識別欺詐節點。
2) GCN 表現不好的原因在于其對于分類任務的有效性依賴于同質性假設,即節點與其鄰居節點具有相似的特征,但這一假設在欺詐檢測任務中并不成立。因此GCN 在欺詐檢測任務中效果不好。
為驗證MGFD 算法多視角嵌入模塊以及構建節點子圖對標簽的有效性,本文對以上2 個模塊進行消融實驗,實驗結果如圖5~圖7 所示,其中,without MV 表示不進行多角度的特征嵌入,對節點進行簡單的卷積得到嵌入;without IL 表示不構建節點子圖對標簽;MGFD-ALL 表示完整的算法。

圖5 消融實驗AUC 結果

圖6 消融實驗Recall-macro 指標結果

圖7 消融實驗F1-macro 指標結果
從圖5~圖7 可以看出,多視角特征嵌入模塊和構建節點子圖對標簽均對檢測效果具有正面的影響,其中由于構建節點子圖對標簽針對欺詐節點偽裝以及類不平衡問題,其對檢查效果具有更重要的影響。
為驗證多視角特征嵌入模塊可以學習到正常節點和欺詐節點的差異性表示,本文設計實驗評估相鄰節點之間的相似度,表3 和表4 分別展示了所選數據集上正常節點和欺詐節點與其一階鄰居節點在不同關系下的平均余弦相似度,其中初始嵌入即節點屬性,P1表示節點經過結構無關的屬性編碼器后的輸出,P2表示經過層次注意力機制聚合的節點表示。

表3 Amazon 數據集實驗結果

表4 Yelpchi 數據集實驗結果
以Amazon 數據集在關系U-P-U 下為例,當欺詐節點連接正常節點偽裝自己時,欺詐節點與其一階鄰居節點之間的相似度高達0.690 7,但經過模型訓練后,P1和P2分別降低到0.069 0 和0.069 1,而正常節點相似度則變化不明顯,可見MGFD 算法有效地學習了欺詐節點與其正常鄰居節點之間的差異化表示,為后續的欺詐檢測提供了有力支撐。在Yelpchi 數據集的R-U-R 關系下,訓練后的P1和P2相較于其他關系略高,這是由于在此關系下,欺詐節點與其一階鄰居節點的標簽相似度為0.951 1,即欺詐節點與欺詐節點連接較多,但是由于欺詐節點行為不穩定,欺詐節點之間也可以學習到差異性表示,訓練過后其與一階鄰居節點的相似度也有一定程度的降低。
針對現有圖欺詐檢測任務中欺詐節點偽裝問題以及類不平衡問題,本文多視角特征嵌入機制面向多種關系學習節點表示,針對偽裝問題學習節點的一致與不一致信息,并利用采樣策略解決類不平衡問題,從而對圖中的欺詐節點進行檢測。在公共圖數據集上的相關實驗驗證了本文算法具有較好的欺詐檢測效果。后續研究將針對現實世界中特定領域數據中的異常信息,設計預處理步驟,從而加強領域異常信息的發掘以提升欺詐檢測的效果。