劉鑫 王皓晨 黃宇煦



摘? 要: 為了清理互聯網與移動通信網絡所帶來的不良詐騙信息,使用文本分類技術來識別電信詐騙信息。采用中文分詞技術(jieba)對數據樣本的中文信息進行分詞,用TF-IDF算法提取電信詐騙信息的特征,向量空間模型(VSM)構建文本內容的特征,選取樸素貝葉斯分類算法的伯努利模型和多項式模型,分別訓練數據并對比測試得出各自對電信詐騙信息的識別效果評估。
關鍵詞: 文本分類; 電信詐騙信息; 機器學習; 樸素貝葉斯
中圖分類號:TP391.1? ? ? ? ? 文獻標識碼:A? ? 文章編號:1006-8228(2023)04-29-04
Abstract: To clean up the harmful fraudulent messages brought from the Internet and the mobile communication networks, the text classification technology is employed to identify telecom fraudulent messages. The Chinese word segmentation technology (jieba) is adopted to segment the Chinese messages in the data samples, TF-IDF algorithm is used to extract features from the telecom fraudulent messages, and the vector space model (VSM) is applied to construct the features of text content. The Bernoulli model and the polynomial model of the naive Bayes classification algorithm are selected to train the data and achieve their respective classification evaluation of the telecom fraudulent messages through contrastive tests.
Key words: text classification; telecom fraudulent message; machine learning; naive Bayes
0 引言
電信詐騙通過電話或網絡等方式對受害人實施遠程、非接觸的詐騙,最終目的是獲得利益[1]。文字型垃圾信息是電信詐騙活動的主要載體和開端,可定義為:信息發送方未經接收方的許可,向接收方傳輸其不愿接收或違法的信息[2],這類信息會破壞用戶對網絡服務的使用體驗,并占用網絡資源而造成網絡擁堵、資源浪費和更多治理成本[3]。通過有效篩查文字型垃圾信息,可以提高網絡資源的利用效率與電信服務機構的信譽,實現相關機構與社會環境的良性運轉[4]。
1 研究背景
1.1 電信詐騙信息識別概述
目前針對電信詐騙信息的識別主要分為基于文本特征的過濾和基于文本內容的二分類方法[3]。基于文本特征的過濾方法主要有流量控制、黑名單過濾等。流量控制法是對某時間段發送量超過預設閾值的信息根據既定標準判定為涉嫌信息,據此監控和限制發送方的信息發送。該方法有局限性。目前的識別研究主要側重在基于文本內容的方法,采用文本分類技術,過程從文本獲取開始,經過分詞、文本特征提取與表示、特征選擇、信息挖掘和決策應用,涉及到各類機器學習算法。
1.2 國內外相關工作
八十年代初,侯漢清介紹了國外的分類技術綜述,開始了國內中文文本分類研究[5]。張培穎等提出了一種基于語義距離的分類方法,將語義信息考慮在內,有效地提高文本分類的有效性[6]。程功平等提出了一種基于改進貝葉斯算法的過濾方法,結合黑白名單機制有效減少了誤判,識別率普遍高于基于文本特征的方法[7]。李潤川等將多種特征融合,結論表明各模型對垃圾短信的過濾均效果良好,但提取代表性特征的工作量龐大[8]。李根等提出了基于距離特征的自分類簇和自學習算法,作為一種聚類算法能學習新的詐騙信息樣本的特征實現自我更新,具有持續識別新加信息的能力[9]。
詐騙信息的識別逐漸凝練為構建合理的語料庫、正確分詞、文本預處理、提取最具統計意義和代表性特征及建立科學高效的過濾模型[10]。對此,國外相關工作大致發展如下:Luhn在1950年提出了詞頻概念應用于文本分類,開啟了領域研究[11]。Maron驗證了概率索引與信息檢索的相關性,提出了概率模型,極大推動了早期文本分類技術[12]。Salton等在1975年提出了文本的空間向量表示模型,文本中具有區分度的關鍵詞表示特征項,文本向量的分量值表示特征項的權重[13]。Blei等于2003年提出了隱含狄利克雷模型,應用貝葉斯方法構建了一種基于主題的文本表示模型,將文檔集內各子集的主題以概率分布的形式給出[14]。Mikolov在2016年提出的FastText引入了n-gram方法捕獲局部序列,較于傳統分類器提升了速度和精度,且無需過多的非線性特征轉換和組合就能獲得良好的分類特征[15]。Kalchbrenner等提出了一種CNN文本分類模型,具有共享權值的網絡結構和局部感知的特點,降低運算復雜度,減少權值數量,借鑒CNN的特點把文本轉化為二維特征矩陣作為輸入,最終分類效果非常理想[16]。
2 文本預處理和識別方法
2.1 文本分類流程概述
文本分類首先收集待分類的文本數據集,然后對數據預處理(包括分詞、去除停用詞等),繼而將投入分類模型[17]。
2.2 文本預處理
2.2.1 中文分詞
詞語是中文語句的基本單元,為了理解文本語義,必須對詞語有效劃分。目前,中文分詞算法主要包括基于理解、基于統計和基于詞典的分詞這三類[17]。基于理解是通過模仿人對句子理解的思路分割語句,可采用ANN方法或者利用邏輯學原理;基于統計則是利用統計學原理,對于一個詞中的文字而言,如果它們在句中總是相鄰伴隨出現,則可以猜測它們是一個詞組,由此對文本統計并分詞;基于詞典是事先建立一個大容量詞典,將待分文本在其中匹配。
目前,常見的中文分詞工具包括NLPIR、SnowNLP、THULAC和jieba等,其中jieba目前受到廣泛使用,它作為Python的第三方庫開源提供,基于查找最大概率路徑實現,支持自定義停用詞,分詞效果較好[18]。本文使用jieba實施分詞工作。
2.2.2 停用詞過濾
在文本分類中,停用詞是指對分類效果幾乎沒有貢獻的字詞或符號,有時停用詞甚至會降低分類精度。常見的停用詞有標點符號、語氣詞、敏感序列等[17]。文本預處理過程應去除停用詞,簡化后序計算,清洗文本數據集,從而有助于提高分類精度。
2.3 文本特征提取及表示
2.3.1 TF-IDF算法
文本特征提取作為文本分類的基礎環節,必須在保持原義的前提下,提取出最具統計意義和代表性的特征。常用的文本特征提取方法包括詞頻-逆文檔頻率(Term Frequency-Inverse Document Frequency, TF-IDF)、互信息(MutualInformation, MI)和信息增益(Information Gain, IG)等[19]。本文采用TF-IDF算法,作為一種文本統計的方法它能反映單個詞在文檔集合中的區分度,其中TF指某個詞在某一文本中出現的次數,TF越大則該詞對所在文本的代表性越高,可作為文本的特征,但如果某個詞在某個文本中的TF很高且在文本集合內其他文本中也多次出現,則降低了該詞對文本的代表性,因此需統計詞語在多個文本中出現的頻率,從而引入了IDF的概念,IDF越大說明該詞在多個文檔中出現的頻率越低,能更好地區分文本類別。單獨考慮TF或IDF都有所片面,需將兩者綜合考慮才能得到更合理的特征權重。
TF定義如下:設count(w,d)為詞w在文檔d中出現的次數,size(d)為文檔d中的總詞數,tf(w, d)為詞w在d中的詞頻,則有:
由于不同文本的詞數不一致,只計算詞頻會帶來偏差,因此公式⑴需要歸一化。
IDF定義如下:設n為文本總數,D為文件集,docs(w, D)為文件集D中包含詞w的文件數,則有:
對于尚未在文本集D中收錄的詞,公式⑵無法得到一個有效值,需做一個平滑處理,有:
綜上,可以得到TF-IDF的定義:
2.3.2 向量空間模型(VSM)
計算機無法直接計算原始文本信息,所以需對文本數值化轉換。向量空間模型(Vector Space Model,VSM)作為文本表示的經典方法之一,可將文本轉換為向量表示,向量的各個項為文本特征,文本特征取TF-IDF值,項數就是向量的維度[19],將文本信息投影為某個維度空間中的點,通過計算向量間的距離判定文本間的相似程度。
設n維坐標系t1,t2,...,tn,在該坐標系中現有兩個文本向量Di=(wi1,wi2,...win),Dj=(wj1,wj2,...wjn),將n維向量Di與Dj表示在坐標系中,如圖1所示。
計算Di與Dj相似度有內積、Dice系數、Jaccard系數和夾角θ的余弦等方法[17]。
2.4 樸素貝葉斯分類模型的分類過程
對于樣本x=(x1,x2,x3,...,xn),其中xi(i=1,2,3,...,n)為樣本的一個特征,有類別集合y={y1,y2,y3,...,ym},yj(j=1, 2,3,...,m)為類別集合中的一個類別,該分類模型會從訓練集中學習到樣本的特征xi在類別yj下的條件概率,從而可以得到一個集合C1={(xi,p(xi|yj))|1≤i≤n,1≤j≤m}。類似地,在訓練過程中可以獲得特征和特征在每個類別中的條件概率,以上的樣本假設和類別假設不變,樸素貝葉斯分類器按以下流程對輸入集x進行分類:
p(yj)為可以根據以往的數據或經驗得出的先驗概率,若不能確定其值,可根據貝葉斯假設獲得,而p(xi|yj)的值在分類模型訓練時得出的集合C1中,因此可以計算得到集合C2。欲判斷樣本x的所屬類別,只需求出集合C2中的最大值:
其中1≤k≤m,樣本x所屬的類別為yk。
3 實驗與分析
3.1 數據集
本文采用某電信服務機構提供的80萬條短信數據集,每條短信的類別已人工標注完成,“1”表示包括電信詐騙信息在內的不良短信,“0”表示正常短信。數據集中涉及人名、電話號碼、數量等內容用“X”取代。表1為數據集中部分信息示例。
3.2 數據預處理與參數設置
使用Python庫jieba對數據集中的原始文本分詞后,首先定義停用詞庫,并從數據集中過濾停用詞,包括阿拉伯數字、標點、語氣詞、疑問詞、邏輯關聯詞、人稱用語等。去除停用詞后,對數據集前三萬條樣本中的垃圾信息和正常信息分別使用Python庫wordcloud生成詞云圖,其中正常信息26986條,垃圾信息3014條,如圖2所示,其中上半部為垃圾信息,下半部為正常信息。
圖2直觀顯示出垃圾信息與正常信息之間的區別,正常信息中的詞語包括而不限于“飛機”、“電梯”、“旅游”等以及一些地名,涉及領域廣泛而隨機,涵蓋日常生活各個領域,而電信詐騙信息中“活動”、“免費”、“優惠”、“女人節”等詞匯,高度集中于營銷獲利等行為且誘導性、針對性極強。
調用Python機器學習庫sklearn中的feature_extraction模塊內的CountVectorizer函數將文本數據集轉換為向量空間,并調用TidTransformer函數采用TF-IDF算法提取特征,其中范數設為L2。選擇樸素貝葉斯分類器中的伯努利模型與多項式模型構建分類器,其中二者的拉普拉斯平滑參數α的值均為1.0,二值化閾值為0.0,驗證方式用隨機采樣法,隨機選取數據集中80%的數據為訓練集,剩余20%為測試集。
3.3 電信詐騙信息分類的評估指標
根據電信詐騙信息的分類結果來評估,指標主要有準確率、精準率和召回率三種,定義如下。
其中,準確率關注整體分類效果,精準率關注模型預測的準確性,召回率關注模型預測的完整性,在評估分類結果時往往需要對上述指標綜合考慮。
3.4 實驗結果與分析
分別采用樸素貝葉斯分類算法的伯努利模型與多項式模型完成文本數據集訓練后,將測試集中算法得出的分類標簽與實際標注類別對比,最后針對各項評估指標得出分類效果如表2所示。
根據表2,在準確率和精確率兩個指標上,兩種分類器都得到了超過97%的分值,表現優良。其中伯努利模型在兩個指標上都相較于多項式模型表現出0.005%左右的輕微優勢;召回率方面分值尚可,其中伯努利模型取得93.055%召回率,多項式模型取得87.567%召回率,較于其他兩種指標相比有所跌落。總體上兩種模型的分類效果都呈優良,但伯努利模型相較多項式模型效果更好。
4 結束語
本文針對計算資源和成本有限的情形,采用了傳統機器學習方法中的樸素貝葉斯算法,通過伯努利模型和多項式模型對電信詐騙信息的識別進行了研究,通過對比實驗將某電信運營機構收集的80萬條信息進行訓練和測試,兩種分類模型均取得了較為優良的分類效果,其中伯努利模型相對于多項式模型在準確率、精確率方面均呈現輕微優勢,在召回率方面呈現明顯優勢。在后續的研究可以進一步橫向對比傳統機器學習與深度學習方法的分類效果,在實踐應用中可以根據二者的橫向對比差距和客觀資源成本綜合考慮,做出合理選擇。
參考文獻(References):
[1] 婁云敬.基于價值迭代的電信詐騙識別系統設計與實現[D].碩士,北京郵電大學,2021
[2] 李洋.基于深度學習的垃圾短信智能識別算法研究[D].碩士,北京工業大學,2019
[3] 梁廳.基于深度學習的垃圾短信識別方法研究[D].碩士,成都理工大學,2019
[4] 袁婷婷.基于人工神經網絡的垃圾短信識別研究[D].碩士,東北師范大學,2012
[5] 侯漢清.分類法的發展趨勢簡論[J].情報科學,1981(1):58-63,30
[6] 張培穎,王雷全.基于語義距離的文本分類方法[J].計算機技術與發展,2013,23(1):128-130,134
[7] 陳功平,沈明玉,王紅,等.基于內容的短信分類技術[J].華東理工大學學報(自然科學版),2011,37(6):770-774
[8] 李潤川,昝紅英,申圣亞,等.基于多特征融合的垃圾短信識別[J].山東大學學報(理學版),2017,52(7):73-79
[9] 李根,王科峰,賁衛國,等.基于自分簇自學習算法的垃圾短信識別[J].吉林大學學報(信息科學版),2021,39(5):583-588
[10] 李圍圍.垃圾短信識別的探索與研究[D].碩士,廣西科技大學,2018
[11] Luhn H P.1958.Auto-encoding of documents for? information retrieval systems[M].IBM Research Center.
[12] Maron M E,Kuhns J L.On relevance, probabilistic indexing and information retrieval[J].Journalof the ACM(JACM),1960,7(3):216-244
[13] Salton G, Wong A,Yang C S.A vectorSpace Model for Automatic Indexing[C].Communications of the ACM,1975,18(11):613-620
[14] Blei D M, Ng A Y, Jordan M I. Latent dirichlet allocation[J].Journal of Machine Learning Research,2016,3:993-1022
[15] Joulin A, Grave E, Bojanowski P, et al. Bag of tricks for?efficient text classification[J].arXivpreprint arXiv:1607.01759,2016
[16] Kalchbrenner N, Grefenstette E, Blunsom P. 2014.A convolutionalneural network for modellingsentences[J]. arXiv preprint arXiv:1404.2188.
[17] 王紅.基于內容的中文垃圾短信分類技術的研究[D].碩士,安徽大學,2011
[18] 石鳳貴.基于機器學習的垃圾短信識別應用[J].電腦知識與技術,2020,16(3):202-204
[19] 趙衛東,董亮.機器學習[M].北京:人民郵電出版社,2018:135-172
作者簡介:劉鑫(1999-),男,貴州畢節人,研究生,主要研究方向:人工智能。
通訊作者:王皓晨(1988-),男,吉林省吉林市人,博士,講師,主要研究方向:機器學習,數據挖掘。