基于信息熵的金融網(wǎng)絡異常交易社區(qū)發(fā)現(xiàn)方法
【專利摘要】本發(fā)明公開了一種基于信息熵的金融網(wǎng)絡異常交易社區(qū)發(fā)現(xiàn)方法,具體步驟如下:步驟1、分析異常交易的過程和模式,提取大額交易和可疑交易特征;步驟2、利用鄰接矩陣存儲賬戶的交易金額和交易頻次信息對特征量化;步驟3、定義節(jié)點的信息熵;步驟4、根據(jù)基于節(jié)點信息熵的異常交易社區(qū)發(fā)現(xiàn)方法對金融網(wǎng)絡節(jié)點進行社區(qū)劃分和發(fā)現(xiàn)。步驟5、評價社區(qū)發(fā)現(xiàn)的結(jié)果。首先計算該方法對異常交易賬戶識別和異常交易社區(qū)劃分的精確率,其次利用社區(qū)評價指標模塊度Q評價異常交易社區(qū)結(jié)構。本發(fā)明首次將基于信息熵的社區(qū)發(fā)現(xiàn)方法應用到反洗錢領域,通過發(fā)現(xiàn)異常交易社區(qū),可以對洗錢賬戶進行識別和追蹤,并分析洗錢賬戶之間的聯(lián)系和交易規(guī)律,防范異常交易。
【專利說明】基于信息熵的金融網(wǎng)絡異常交易社區(qū)發(fā)現(xiàn)方法
【技術領域】
[0001]本發(fā)明屬于網(wǎng)絡金融社區(qū)【技術領域】,具體一種基于信息熵的金融網(wǎng)絡異常交易社區(qū)發(fā)現(xiàn)方法。
【背景技術】
[0002]社區(qū)發(fā)現(xiàn)是目前應用于社會網(wǎng)絡分析最為流行和成熟的技術,主要是指對網(wǎng)絡中那些內(nèi)在聯(lián)系緊密,外在聯(lián)系稀疏的團體或子網(wǎng)絡進行發(fā)現(xiàn),形成多個子社區(qū),對這些社區(qū)進行挖掘,能夠發(fā)現(xiàn)網(wǎng)絡中隱藏的聯(lián)系和規(guī)律,對網(wǎng)絡的行為做出預測,進而在對分析復雜網(wǎng)絡特性、檢索復雜網(wǎng)絡中的信息和解決網(wǎng)絡中的特定問題時能夠提出更好更高效的解決辦法。金融網(wǎng)絡是一種復雜網(wǎng)絡,根據(jù)復雜網(wǎng)絡具有的社區(qū)結(jié)構特性,對金融網(wǎng)絡中的社區(qū)結(jié)構進行發(fā)現(xiàn),能夠劃分出代表不同交易特征的社區(qū)。現(xiàn)有的金融網(wǎng)絡異常交易社區(qū)發(fā)現(xiàn)方法首先對金融網(wǎng)絡中的交易行為和資金流等特征進行分析,結(jié)合交易過程和模式特點,參考我國大額交易報告的詳細規(guī)定,對異常交易和大額交易頻次分析和識別。再在金融網(wǎng)絡社區(qū)結(jié)構分析的基礎上,對異常交易進行特征提取、量化等步驟,根據(jù)金融網(wǎng)絡中節(jié)點的相似性或聯(lián)系緊密度作為劃分依據(jù),對網(wǎng)絡中的節(jié)點進行劃分,從而形成一些內(nèi)在節(jié)點高度相似或聯(lián)系緊密,外在節(jié)點彼此相異或聯(lián)系松散的子團或子網(wǎng)絡,這些子團或子網(wǎng)絡稱為社區(qū),整個網(wǎng)絡就是由這些社區(qū)組成的。但現(xiàn)有異常交易社區(qū)發(fā)現(xiàn)方法存在效率和精度較低,難以發(fā)現(xiàn)隱蔽性較好的異常交易等問題。
【發(fā)明內(nèi)容】
[0003]本發(fā)明提供了一種基于信息熵的金融網(wǎng)絡異常交易社區(qū)發(fā)現(xiàn)方法,解決了現(xiàn)有方法難以計算異常交易的發(fā)生概率,及通過金融網(wǎng)絡節(jié)點間聯(lián)系和概率相似性進行社區(qū)劃分與發(fā)現(xiàn)的精度和效率較低的問題。
[0004]本發(fā)明所采用的技術方案是:基于信息熵的金融網(wǎng)絡異常交易社區(qū)發(fā)現(xiàn)方法,具體按照以下步驟實施:
[0005]步驟1:異常交易特征提取和量化;
[0006]步驟2:定義節(jié)點信息熵;
[0007]階段3:發(fā)現(xiàn)異常交易社區(qū)。
[0008]本發(fā)明的特點還在于,
[0009]其中的步驟I具體按照以下步驟實施:
[0010]I)特征提取:
[0011]設賬戶i的單筆交易金額為qu,qi(1為賬戶i單筆取款交易金額,Qtli為賬戶i單筆存款交易金額,單日累計交易金額為qi; Hi1, m2,m3分別表示單日內(nèi)賬戶i的累計轉(zhuǎn)賬交易頻次、存款交易頻次和取款交易頻次,
【權利要求】
1.基于信息熵的金融網(wǎng)絡異常交易社區(qū)發(fā)現(xiàn)方法,其特征在于,具體按照以下步驟實施: 步驟1:異常交易特征提取和量化; 步驟2:定義節(jié)點信息熵; 階段3:發(fā)現(xiàn)異常交易社區(qū)。
2.根據(jù)權利要求1所述的基于信息熵的金融網(wǎng)絡異常交易社區(qū)發(fā)現(xiàn)方法,其特征在于,所述的步驟I具體按照以下步驟實施: 1)特征提取: 設賬戶i的單筆交易金額為qu,qi(1為賬戶i單筆取款交易金額,為賬戶i單筆存款交易金額,單日累計交易金額為1,Hi1, m2,m3分別表示單日內(nèi)賬戶i的累計轉(zhuǎn)賬交易頻次、存款交易頻次和取款交易頻次,
對于%和Qi的值,有以下判斷標準:
M1為單日大額交易標準上限,M2為單日累計大額交易標準上限,其中任一個條件滿足,就可以認為該賬戶為大額交易賬戶; 賬戶i在單日內(nèi)的累計交易頻次為k,一段時間內(nèi)的累計交易頻次為K,有以下判斷標準:
滿足任一條件,就認為該賬戶具有可疑交易特征,只有當同時滿足判斷標準(3)中這兩個標準,認為是具有異常交易特征; 2)特征量化: 統(tǒng)一交易幣種為人民幣,對于外匯交易根據(jù)國際貨幣換算標準,換算為等額的人民幣,交易金額以萬元為交易金額單位,存儲精度為4位小數(shù)位,預處理之后的交易金額采用鄰接矩陣Wu(i,j e V)來存儲,矩陣每個元素的值是相應賬戶在一段時間內(nèi)的累計交易金額,賬戶自身的存取款金額累加到Wu矩陣的Wii元素中,如果賬戶i與賬戶j之間存在交易,則對應的Wij為非零值,否則記為O,如下所示:n表示賬戶個數(shù),n e Z,
Qij為賬戶i每天的累計交易金額,k為交易天數(shù); Wij(? Φ j)表示賬戶i向賬戶j的轉(zhuǎn)賬金額,WjiQ Φ j)表示賬戶j到賬戶i的轉(zhuǎn)賬金額,Wii表示節(jié)點自身的交易金額; 金融網(wǎng)絡的交易頻次信息采用鄰接矩陣Aij^j e V)來表示,為了明確表示網(wǎng)絡中的交易類型信息,在網(wǎng)絡中添加了一個O節(jié)點,用來表示賬戶的存取款交易頻次信息,相應的矩陣‘為一個(η+1).(n+1)的矩陣,賬戶i的存款交易頻次信息存儲在元素[0,i]中,賬戶i的取款交易頻次信息存儲在元素[i,0]中,矩陣每個元素的值都是一定時間內(nèi)的累計值;%表示賬戶i向賬戶j轉(zhuǎn)賬的交易頻次,存儲在[i,j]元素中,如果賬戶i與賬戶j之間存在交易,則對應位置的矩陣元素au為非零值,否則記為O,如下所示,n e Z,表示賬戶個數(shù):
其中,aij(i Φ j)存儲賬戶i到賬戶j的交易頻次,aji(i Φ j)存儲賬戶j到賬戶i的交易頻次,a0i, ai0存儲節(jié)點自身的存取款交易頻次,其中an的值存儲為O。
3.根據(jù)權利要求1所述的基于信息熵的金融網(wǎng)絡異常交易社區(qū)發(fā)現(xiàn)方法,其特征在于,所述的步驟2具體按照以下步驟實施: 根據(jù)Wu矩陣中賬戶交易金額的值,賬戶i的交易金額Qi為:
n e Ζ,η表示金融網(wǎng)絡中賬戶的個數(shù),也是網(wǎng)絡圖中節(jié)點的個數(shù); 網(wǎng)絡總的交易金額為Q為:
Wfreqi為賬戶i的交易金額占整個網(wǎng)絡總的交易金額的比例,即:
Wfreqi表示了賬戶i屬于大額交易賬戶的概率,Qi的值越大,賬戶i屬于大額交易賬戶的概率越大; 根據(jù)‘矩陣中賬戶交易頻次的值,賬戶i的交易頻次Di為:
網(wǎng)絡總的交易頻次為D為:
Dfreqi為賬戶i的交易頻次占整個網(wǎng)絡的交易頻次的比例,即:
Dfreqi表示了賬戶i屬于可疑交易賬戶的概率,Di的值越大,賬戶i屬于可疑交易賬戶的概率就越大,只有當一個賬戶同時滿足大額交易和可疑交易特征,被認為是異常交易賬戶,因此,對應的賬戶i屬于洗錢賬戶的概率為: P(Xi) = Wfreqi.Dfreqi,(11) 賬戶i的節(jié)點信息熵為:
H(Xi) =-p (Xi) *log2 (p (Xi)),(12) = -Wfreqi ^Dfreqi.1g2 (Wfreqi^DfTeqi) 其中,網(wǎng)絡節(jié)點i的信息熵用Hi來表示,即Hi = H(Xi),網(wǎng)絡的信息熵通過計算該網(wǎng)絡所有節(jié)點的信息熵的均值來得到:
4.根據(jù)權利要求1所述的基于信息熵的金融網(wǎng)絡異常交易社區(qū)發(fā)現(xiàn)方法,其特征在于,所述的步驟3具體按照以下步驟實施: 第一步驟是對輸入的金融網(wǎng)絡交易數(shù)據(jù)進行預處理,具體按照以下步驟實施: Stepl:從原始交易數(shù)據(jù)中去掉不相關的字段和記錄; Step2:對交易賬戶進行從I到N的編號,N e Z,N表示交易數(shù)據(jù)中的賬戶個數(shù),并將交易金額的交易單位轉(zhuǎn)換為萬元,轉(zhuǎn)換公式如下所示; Wi = Wj/10000,(14) i表示編號為i的交易賬戶,i = 1,…,N,Wi表賬戶i的單筆交易金額; Step3:輸入:交易數(shù)據(jù)保存為data, txt文件,遍歷每一行數(shù)據(jù),分別記錄每個賬戶的累計存款交易頻次Cd、取款交易頻次qd和轉(zhuǎn)賬交易頻次zd,并保存到矩陣Au中; 當滿足zd = O時,說明該賬戶為非活躍賬戶,從data, txt文件中刪除這些賬戶對應的記錄,對于活躍賬戶i,其累計交易頻次Di為:Di = cd+qd+zd,(15) 輸出:Node_account.txt 文件,更新后的 data, txt 文件,其中,Node_account.txt 存儲活躍賬戶節(jié)點的交易頻次信息,包括兩個字段:“賬戶編號”和“交易頻次”; Step4:輸入:data.txt文件,遍歷每一行數(shù)據(jù),分別記錄每個賬戶的累計存款交易金額cw、取款交易金額qw和轉(zhuǎn)賬交易金額zw,并保存到矩陣Wij中,賬戶i的累計交易金額為Wi為: Wi = cw+qw+zw,(16) 輸出:Node_amount.txt文件,其中,Node_amount.txt存儲活躍賬戶節(jié)點的交易金額信息,包括兩個字段:“賬戶編號”和“交易金額”; Step5:輸入:Node_acount.txt和Node_amount.txt,合并這兩個文件,生成一個表不賬戶編號和交易信息的數(shù)據(jù)文件; 輸出:Node_inf0.txt,該文件包括三個字段:賬戶編號、交易頻次和交易金額,其中,最大賬戶編號為N,N e Z,有效賬戶個數(shù)為n,n e Ζ,η < = N ; Step6:輸入:data.txt文件,遍歷每一條交易類型為轉(zhuǎn)賬的交易記錄,尋找交易網(wǎng)絡圖中的邊信息,并刪除重復的邊信息; 輸出:Edge.txt文件,由兩個字段構成:“賬戶編號”和“交易賬戶編號”; 第二步驟是金融網(wǎng)絡節(jié)點社區(qū)劃分,具體按照以下步驟實施: Q:金融網(wǎng)絡圖的所有賬戶節(jié)點集合; U:一個社區(qū)內(nèi)所有賬戶節(jié)點的鄰節(jié)點集合,即存在轉(zhuǎn)賬交易的賬戶節(jié)點集合; C:臨時社區(qū)C內(nèi)所有賬戶節(jié)點集合; Ck:社區(qū)k內(nèi)所有賬戶節(jié)點的集合; Stepl:輸入:Node_inf0.txt文件,遍歷每一行數(shù)據(jù),計算每個節(jié)點的熵Hi,以及網(wǎng)絡的平均熵H,并依次存入數(shù)組中相應的位置,初始化集合Q= {i,i = 1,2,...,η},η為效賬戶個數(shù),也就是Node_inf0.txt文件中賬戶編號那一列的所有值,U = Φ (Φ表示空集),C=Φ,社區(qū)計數(shù)器k = O; Step2:輸入:Edge.txt文件,從集合Q中選取熵信息最大的節(jié)點作為初始社區(qū)核,遍歷Edge, txt文件,將核節(jié)點的鄰接點以及核節(jié)點存入集合C中,更新集合U, U= {集合C內(nèi)所有節(jié)點的鄰接點集合}; Step3:計算社區(qū)C的熵He,如公式(17)所示:
, 其中,I為社區(qū)C中包含的節(jié)點個數(shù),i為賬戶編號,i = 1,...,N,Hi為賬戶編號為i的賬戶節(jié)點的信息熵; 如果 He >= H,則繼續(xù) Step4,否則,更新,Q = {Q-C} ,U= Φ, C = Φ ,回到 Step2 ;Step4:從U集合中選擇一個熵最大的節(jié)點,判斷該節(jié)點的熵是否大于H,如果大于,則繼續(xù) Step5,否則,k = k+Ι,更新集合 Ck = C, Q = {Q-U-Ck} ,U= Φ , C = Φ ,回到 Step2 ;Step5:計算加入該節(jié)點之后的社區(qū)熵He' i,如下所示:
如果 He' i >= H,則繼續(xù) Step6。否貝丨J, k = k+1,更新集合 Ck = C, Q = {Q_Ck}, U =Φ , C = Φ ,回到 Step2 ; Step6:計算加入節(jié)點之后社區(qū)C的社區(qū)信息熵的增量的絕對值Λ H,如下所示: AH=|Hc'「He |,(19) 采用網(wǎng)絡平均信息熵H和節(jié)點信息熵的標準差σ作為信息熵增量閾值△的標準,其中η為賬戶個數(shù),n e Ζ,N為最大賬戶編號;
如果Δ H < = Δ ,則添加該節(jié)點到社區(qū)C中,從U中去掉該節(jié)點,將新增節(jié)點的鄰接點添加到集合U中,并繼續(xù)Step7,否則,從U中去掉該節(jié)點,回到Step4 ; Step7:如果 U 關 Φ ,則回到 Step4,否則 k = k+Ι,更新集合 Ck = C, Q = {Q-Ck}, C =Φ,繼續(xù) Step8 ; St印8:如果Q古Φ,則回到Step2,否則,所有滿足條件的節(jié)點都被劃分到相應的異常交易社區(qū)中,結(jié)束第二步驟; 第三步驟為子社區(qū)的合并,具體按照以下步驟實施: Stepl:輸入:Ck,k表示社區(qū)個數(shù),k e Z,計算任一兩個社區(qū)之間鏈接的邊數(shù)Eij (i, j =1,...,k, i關j), i, j表示社區(qū)i和社區(qū)j,并存入數(shù)組E中; St印2:如果數(shù)組E為空,則結(jié)束社區(qū)合并,否則,從E中取最大的max(Eij),如果max (Eij) = O,不需要進行社區(qū)合并,結(jié)束,否則,繼續(xù)Step3 ; Step3:計算合并社區(qū)Ci和&之后的社區(qū)信息熵增量八故和Λ民,計算公式如下所示:
其中,i,j = 1,...,k,i關j,Hci和Hcj分別表示社區(qū)Ci和社區(qū)Cj的社區(qū)熵,Ii和Ij跟別表示社區(qū)Ci和社區(qū)中包含的節(jié)點個數(shù); 如果Λ Hi < = Λ I Λ % < = Λ,則合并社區(qū)Ci和Cp更新Ck為Clri,并從E中刪除該條Eij記錄,更新E中的Eij,回到Stepl,否則,不合并,且從E中刪除該Eij記錄,回到Step2。
【文檔編號】G06F17/30GK104199832SQ201410376627
【公開日】2014年12月10日 申請日期:2014年8月1日 優(yōu)先權日:2014年8月1日
【發(fā)明者】呂林濤, 李婉榮, 王錦輝, 譚芳 申請人:西安理工大學