吉涵之,馬宇宸,李 爽,李靜林
(1. 北京市第十三中學,北京 100009;2. 北京郵電大學網絡技術研究院,北京 100876)
基于SVM的電信詐騙行為特征識別方法
吉涵之1,馬宇宸2,李 爽2,李靜林2
(1. 北京市第十三中學,北京 100009;2. 北京郵電大學網絡技術研究院,北京 100876)
電信詐騙行為種類繁多,受害人分布廣,對其預防存在困難。針對電信詐騙手段開始向最新電信技術和系統漏洞的充分利用演進這種趨勢,論文提出通過通信記錄數據去發現電信詐騙通話行為與普通用戶的通話行為的行為特征差異,并結合用戶屬性,使用支持向量機(SVM)這一機器學習手段進行電信詐騙行為的學習,進而完成電信詐騙行為的識別,以輔助攔截電信詐騙號碼。論文分析了詐騙行為的規律,提出了行為特征的抽取方法及基于SVM的行為識別系統構建方法,最終通過實際樣本數據的訓練和測試,驗證了這一方法的可行性。
大數據;機器學習;支持向量機;電信詐騙
隨著移動電信網和移動互聯網的快速發展和電信資費的逐步下降,中國快速進入信息化時代。現代電信技術一方面為人民群眾帶來了溝通的便利,另一方面也容易被犯罪分子利用,使用身份冒充、電話改號等手段,利用受害人對銀行業務不熟悉、對政府機關流程不熟悉、甚至溝通之間的時間差等,對受害人進行欺騙、恐嚇,騙取受害人的資金。近年來,電信詐騙犯罪從最初技術水平較低的身份冒充向最新電信技術和電信系統漏洞的充分利用演進。如2009年開始利用VoIP技術進行詐騙,2013年則開始通過改號軟件跨境犯罪,2014年開始大規模利用偽基站發送詐騙短信,2015年以后則開始使用綜合手段進行詐騙[1]。由于電信詐騙手段多樣,且電信詐騙的跨地域甚至跨國家特性,導致受害人分散廣,個案金額小,預防和打擊的難度非常大。
近年來國家已經開始推行手機實名制,以希望從源頭控制電信詐騙。但是仍然會存在使用改號軟件跨國犯罪、冒用別人身份證件購買電話號卡等防不勝防的問題。同時,互聯網公司也通過眾包方式,通過手機安全軟件標注詐騙電話,并取得了不錯的效果。但是,由于以上方法一般僅能在案發后起到作用,因此仍具有局限性和滯后性。由于詐騙電話在實施成功詐騙之前,一般存在一定搜索被害者、與被害者多次電話交互的過程,因此,隨著大量的案例積累,及電信大數據處理能力和手段的提升,可以通過電信通話過程產生的話單大數據去發現電信詐騙通話行為與普通用戶的通話行為的行為特征差異,并利用這種差異進行電信詐騙行為的挖掘,以期在電信詐騙完成前對電信詐騙行為進行識別和攔截。
從直觀上,電信詐騙電話由于需要通過大量盲撥鎖定被害人,因此其撥打頻率、通話時間等的行為規律與普通用戶應該有一定差異。2015年周國民[1]等對一些用戶的通話行為進行了統計分析,發現通話時間頻率、通話時間間隔、同一對象通話次數頻率、通話周期和通話間隔相關性等具有較為明顯的規律性,但由于樣本數量有限,未能明確普通用戶和詐騙用戶的行為規律差異。2016年10月,360公司發布了《2016詐騙電話態勢與特征分析報告》[2]。在這一報告中,360對眾包標注結果進行了數據挖掘分析。報告中指出,全國范圍內,詐騙電話的異地呼叫率平均為 68.8%,全國 81.6%的城市用戶接聽詐騙電話的異地呼叫率在85%以上,西藏、青海、內蒙古、寧夏等地區,詐騙電話的異地呼叫率甚至達到了90%以上。這意味著詐騙電話具有較為明顯的異地呼叫特性,長途電話數量較本地電話數量為多。報告顯示,手機詐騙號碼的生存周期約為 54.5天,連續活躍周期為 3.8天,單日單號平均呼出詐騙電話次數為 189次,詐騙成功率為 0.28%,一次成功詐騙所需平均呼叫次數為357次,完成一次成功詐騙平均需 1.9天;生存期長說明手機號碼具有較長的潛伏期,但由于手機號碼詐騙成功率較高,因此手機詐騙號碼激活后搜尋騙詐目標的時間短,活躍周期短,但是完成一次詐騙的時間較長。而境外詐騙號碼的生存周期約為36.4天,連續活躍周期為 36天,單日單號平均呼出詐騙電話次數則達到5076次,詐騙成功率為0.07%,一次成功詐騙所需平均呼叫次數為1429次,完成一次成功詐騙平均需0.3天;這意味著由于詐騙成功率低,境外詐騙電話需要長時間的活躍以搜尋詐騙目標,但完成一次詐騙的時間很短。平均下來,詐騙電話號碼的生存周期約為57.6天,連續活躍周期為7.6天,單日單號平均呼出詐騙電話次數為 185次,詐騙成功率為0.1%,一次成功詐騙所需平均呼叫次數為1000次,完成一次成功詐騙平均需 5.4天。這意味著詐騙電話一般會具有較為明顯的生存期和活躍期,且活躍期中的平均呼叫數量較高。同時,統計顯示,約92.7%的詐騙電話是騙子打給用戶的,而約 7.3%的詐騙電話是用戶主動打給騙子的。手機詐騙號碼有9.8%的用戶主動打出,固話詐騙號碼有4.7%是用戶主動打出的。這意味著詐騙電話具有較高的單向性,呼出電話數量明顯高于呼入電話。360公司的研究報告表明,電信詐騙電話的通話行為與普通用戶的通話行為確實存在一定的差異性,如果能對這些差異進行認知學習,在電信詐騙成功之前識別出電信詐騙企圖是有可能的。
從電信詐騙識別的方法上,傳統應用較為廣泛的分類模型主要包括決策樹模型和樸素貝葉斯模型。文獻[3]和[4]分別使用這兩種模型進行了電信欺詐行為分類分析。但由于這兩種模型都假設樣本的各個屬性間具有獨立性,而這種假設在現實的環境中難以存在,因此其分類的結果難以應用到實際系統中。目前,業界提出的可采用的另一種監督式學習方法是支持向量機(SVM:Support Vector Machine)。SVM 通過尋求結構化風險最小來提高學習機泛化能力,實現經驗風險和置信范圍的最小化,從而達到在統計樣本量較少的情況下,亦能獲得良好統計規律的目的。SVM的優點是它提供了一種避開高維度空間的方法,可以直接借助于空間內的核函數,將線性不可分情況轉化為線性可分的問題,再利用對線性可分的問題的求解方法直接解出對應的高維空間的問題。文獻[5]提出采用 SVM 進行電信客戶欺詐檢測,但該文選取的用戶特征僅局限在通話次數和時長,難以全面的體現出詐騙用戶的特征。同時,其測試驗證沒有使用實際數據,其取得的極高的準確率僅針對測試數據,難以實際應用。
針對以上問題,本文提出了一種電信詐騙行為分析系統,通過分析電信詐騙行為規律構造電信詐騙行為的特征屬性集,并通過SVM進行訓練,最終形成電信詐騙行為識別器。
電信用戶的呼叫記錄主要包括通話開始時間、計費號碼、對方號碼、呼叫類型、通話地點、對方地點、通話時長、通話類型、費用等信息,但是這些信息類型差異大,衡量尺度和單位不一,如果不經過預處理,難以呈現出電信用戶行為特征,也難以通過SVM訓練進行分類。因此,需要對電信用戶的呼叫記錄進行預處理,形成特征屬性,并構建為可用于SVM訓練的電信詐騙行為特征樣本數據。
詐騙電話的用戶行為復雜,根據電信詐騙行為分析的現有研究成果可以看到,詐騙行為的特征不僅僅體現在詐騙電話通話的次數、時長特征,還表現在通話地域的聚集特性,長途甚至國際漫游通話類型的聚集特性等,考慮到通話記錄的參數內容和詐騙電話行為特征規律,本文定義了電信詐騙行為特征樣本的數據結構,如表1所示。
時間粒度的確定比較復雜,時間粒度太小,無法體現出用戶的行為特征,將會造成大量的誤判。時間粒度太大,將會導致用戶的行為特征細節被統計特征掩蓋,同樣會造成誤判。
本文分析了電信用戶呼叫記錄中各種屬性的分布規律,其中每小時平均呼叫次數如圖1所示,每小時平均呼叫次數的頻度分布如圖2所示。
從詐騙電話和正常電話的平均呼叫次數可以看到,詐騙電話的平均呼叫次數在早7~8點開始與普通電話平均呼叫次數產生較大差異,12點左右回落,13點開始再次攀升,18點左右再次回落,并在 19點~20點左右產生一個小波峰。這種規律性的波動現象與工作日的正常上下班及休息時間類似。
從呼叫的頻度可以看到,接近80%的普通用戶的呼叫頻度為平均每小時1次,98.88%的普通用戶呼叫頻度在平均每小時3次以內。而詐騙電話的呼叫頻度的分布較普通用戶要更寬,僅有60.68%的詐騙電話呼叫頻度在平均每小時3次以內,93.45%的詐騙電話呼叫頻度在平均每小時20次以內。這意味著詐騙電話的呼叫頻度比正常電話頻度要高很多。

表1 電信詐騙行為特征樣本數據結構Tab.1 Telecom Fraud Behavior Features

圖1 平均呼叫次數Fig.1 Call numbers per hour
基于這些特征的分析可以看到,為了更好地體現電信詐騙與普通用戶的行為差異,可以將一天劃分為上午和下午兩個時間段,取差異較為明顯的時間區間選取特征片段。同時,由于詐騙電話呼叫頻度比普通電話大,較長的時間段能夠累積足夠多的呼叫頻次、時長等統計特征,減小分類誤差。
電信詐騙行為特征分類器的結構主要劃分為數據清洗、特征數據構建、分類訓練與評價三個模塊,如圖3所示。

圖2 呼叫頻度Fig.2 Call frequency

圖3 電信詐騙行為特征分類器Fig.3 Telecom fraud behavior features classifier
數據清洗功能主要根據數據源的類型進行設置。本文根據原始話單和用戶IT信息的差異,設置了兩種數據清洗功能。第一種針對原始話單數據,首先進行缺失數據處理、冗余數據清理等操作,并根據時間粒度需求完成數據分割形成待處理話單,以進行統計分析。第二種針對用戶IT信息,提取用戶固有的開戶時間、是否實名認證、用戶使用產品類型等信息,并進行歸一化處理。
特征數據構建功能則根據分類訓練需求,對數據清洗后的待處理話單數據進行樣本特征值處理,并根據時間粒度歸并數據樣本,形成統計特征。之后,將統計特征和以用戶屬性特征為代表的非統計特征進行整合,形成可用于訓練和驗證的樣本集。
分類訓練與評價功能中的訓練集與測試集分解模塊,首先按照 10%詐騙電話樣本,90%普通電話樣本的方式構建多份訓練集與測試集,供后繼學習評估使用。之后,分類訓練模塊使用選擇的訓練集對SVM模型進行分類訓練。訓練得到的分類器將在分類器評估模塊中,使用選擇的測試集進行測試評估。分類器評估模塊通過多次調整 SVM 參數獲得該分類器在不同輸入參數下訓練得到的準確率(Accuracy)、查全率(Recall)、查準率(Precision),并根據評估結果進行對比,選擇準確率、查全率、查準率都較優的模型。同時,為了避免過擬合,分類器評估模塊還將進行交叉驗證,即控制訓練集與測試集分解模塊分解出不同的訓練集與測試集供分類訓練和分類器評估使用,從而獲得最優的SVM分類器模型。
本文選用SVM實現分類器。SVM核函數類型主要有線性(Linear)內核、多項式(Poly)內核、徑向基(RBF)內核、Sigmoid核等共4種。本文選擇RBF內核,因為RBF核函數包容性很強,無論是多少數據量,不管數據高維還是低維,RBF內核均可以使用。同時RBF核函數可以將樣本映射到一個更高維的空間,因此可以用于線性不可分的環境。本文構建的樣本集中,各種特征差異較大,顯然是線性不可分的,較為適合使用RBF核函數。使用樣本集進行的初步驗證表明,RBF內核在分類準確性上確實比其他內核具有較為明顯的優勢。
本文采用Scikit-Learn機器學習庫實現SVM分類器,其中最重要的有兩個參數,C和Gamma。C是分類器訓練過程中對錯誤項的懲罰參數,C取值越小,泛化能力越強,但容易欠擬合;C取值越大,對訓練樣本間的差異利用的更全面,但容易過擬合,泛化能力越差。而Gamma則決定了樣本集映射到特征空間后的分布,Gamma越小,訓練準確率會提高,但泛化能力可能會減弱。為了提高電信詐騙行為特征分類器的準確率和對新數據的識別能力,需要通過實驗仔細選擇 C和 Gamma的取值。本文基于Scikit-Learn實現SVM分類器,Scikit-Learn開發庫中,Gamma默認使用1/n-features,C默認使用1。由于本文采用了13個特征參數,因此將Gamma的尋優范圍設置為0.01~0.15,將C的尋優范圍設置為1~100,先根據不同參數組合所得的評價結果,縮小參數選擇范圍,之后本文引入隨機參數尋優(RandomizedSearchCV)完成分類器評估,輔助進行 C和Gamma參數的調整,以確定最優值。同時,由于對固定測試集的反復學習容易導致模型陷入過擬合,降低分類器的泛化能力,因此,本文在分類器評估模塊中使用 5折交叉驗證(Cross-Validation)對訓練完成的分類器進行檢測,以避免陷入過擬合。
本文從采用準確率(Accuracy)、查準率(Precision)、查全率(Recall)三個指標對電信詐騙行為特征分類進行評價。
本文首先對線性(Linear)內核、多項式(Poly)內核、徑向基(RBF)內核等不同內核的指標計算結果進行了驗證,如圖4所示。圖中,橫軸是degree取值,縱軸是準確率、查準率、查全率的取值。從驗證結果可以看到,不管是準確率、查準率還是查全率,RBF內核的效果都比線性內核和多項式內核效果要好。這驗證了對用戶行為分類這種指標較難線性劃分的場景下,使用徑向基內核是合適的選擇。

圖4 不同內核SVM分類性能對比Fig.4 Different kernal based SVM classifier comparation
本文從采用準確率(Accuracy)、查準率(Precision)、查全率(Recall)三個指標對電信詐騙行為特征分類器的訓練結果進行了驗證,如圖5所示。圖5a是參數C取值為30時,不同的Gamma參數取值對準確率、查準率、查全率的影響。圖5b是參數Gamma為0.07時,不同的C參數取值對準確率、查準率、查全率的影響。
從驗證結果可以看到,Gamma參數在0.05~0.07左右取值,C參數在30左右,分類效果最好。隨著Gamma參數和C參數的取值變化,準確率、查準率、查全率的效果也在交替變化。整體準確率在74%左右,整體查準率在 73%~76%左右,整體查全率在72%左右。本文提出的基于SVM的分類器能夠滿足電信詐騙行為篩選需求。

圖5 不同參數SVM分類性能對比Fig.5 Different attributes based SVM classifier comparation
本文分析了電信詐騙的行為規律,給出了一種基于話單記錄等電信數據,通過SVM等機器學習手段,對電信詐騙行為識別的方法,完成了電信詐騙行為分類器的設計,并基于Scikit-Learn完成了分類器的實現,探討了SVM相關參數的選擇方法。最后根據實際數據的試驗驗證了分類器的性能。
未來可以進一步對電信詐騙行為特征樣本數據的結構進行調整,引入更豐富的和更有區分度的特征,以進一步提高分類器的準確性。
[1] 周國民, 陳光宣, 周銀座. 基于CDR分析的電信詐騙用戶行為研究[J]. 信息安全與通信保密, 2015 (11): 114-118.ZHOU Guomin, CHEN Guangxuan,ZHOU Yinzuo. User Behavior in Telecommunication Fraud based on CDR Analysis[J]. Information Security and Communications Privacy,2015 (11): 114-118. (in Chinese)
[2] 360手機衛士, 360互聯網安全中心. 2016詐騙電話態勢與特征分析報告[OL]. [2016-10-31]. http://zt.360.cn/1101061855.php?dtid=1101062366&did=490128109360Security, 360 Internet Security Center. 360 Telecomm Fraud Situation and Feature Analysis Report [OL]. [2016-10-31]. http://zt.360.cn/1101061855.php?dtid=1101062366&did=490128109
[3] 360手機衛士, 360互聯網安全中心. 2016詐騙電話活動規律與行為特征分析報告[OL]. [2016-10-31]. http://zt.360.cn/1101061855.php?dtid=1101062366&did=490106344360Secu rity, 360 Internet Security Center. 360 Telecomm Fraud Activity Pattern and Behavioral Characteristics Report[OL]. [2016-10-31]. http://zt.360.cn/1101061855.php?dtid=1101062366&did=490106344
[4] 許婷. 基于話單挖掘的可視化人物關系分析系統的設計與實現[D]. 黑龍江省哈爾濱市:哈爾濱工業大學,2014年.Xu Ting. The Design and Implementation of Visualization Character Relationship Analysis System Based on Mining of Call Records. Harbin, Heilongjiang Province: Harbin Institute of Technology, 2014.
[5] 張秀玲. 數據挖掘技術在電信客戶欺詐分析中的應用[D].北京市: 中國石油大學, 2006年.Zhang Xiuling. Data Mining Techniques Applied to a Telecommunication Anti-fraud System[D]. Beijing: China University of Petroleum, 2006.
[6] 張瑜. 支持向量機在電信客戶欺詐檢測的應用研究[D].湖南省長沙市: 長沙理工大學,2010年.Zhang Yu. Study of SVM application to Customer Fraud Detection in Telecommunication [D]. Changsha, Hunan Province: Changsha University of Science&Technology,2010.
SVM Based Telecom Fraud Behavior Identification Method
JI Han-zhi1, MA Yu-chen2, LI Shuang2, LI Jing-lin2
(1. Beijing no.13 middle school, Beijing 100009, China; 2. Beijing University of Posts and Telecommunications Institute of Network Technology, Beijing 100876, China)
Telecomm Fraud is difficult to prevent because of the various categories and the widely distributed victims. This paper puts forward a SVM based Machine-Learning method to deal with the Telecomm Fraud technology trends, such as the utilization of newest telecommunication technology and the system vulnerabilities. The method used the call logs, which contained behavioral characteristics of the fraud users and common users, and combined with users’ properties to train a SVM based behavior classifier. The categorized results can help to distinguish the frauds and identify the fraud phone numbers. The paper analyzes the regular pattern of the behaviors of telecom fraud, put forward the extraction method of behavior characteristics and present the SVM-based behavior identification system. Finally, the feasibility of this method is verified by the actual sample dataset.
Big data; Machine learning; Support vector machine; Telecomm fraud
TP391.4
A
10.3969/j.issn.1003-6970.2017.12.020
本文著錄格式:吉涵之,馬宇宸,李爽,等. 基于SVM的電信詐騙行為特征識別方法[J]. 軟件,2017,38(12):104-109
國家自然科學基金(61571066)
吉涵之,女,主要研究方向:數據挖掘;馬宇宸(1994-),男,主要研究方向:深度學習與機器學習;李爽(1993-),女,主要研究方向:機器學習。
李靜林,副教授,主要研究方向:融合網絡與服務。