許鴻奎,姜彤彤,李 鑫,周俊杰,張子楓,盧江坤
1(山東建筑大學(xué) 信息與電氣工程學(xué)院,濟(jì)南 250101)
2(山東省智能建筑技術(shù)重點實驗室,濟(jì)南 250101)
隨著通信技術(shù)的迅速發(fā)展,電信網(wǎng)絡(luò)詐騙犯罪活動也屢禁不止,給國家和人民帶來了巨大損失.電話詐騙是電信詐騙的一種,是以電話通信的方式對受害人進(jìn)行行騙,騙取信任,最后誘導(dǎo)受害人以銀行卡、網(wǎng)上轉(zhuǎn)賬等方式騙取金錢的犯罪活動.這些詐騙犯罪不僅給受害群眾造成經(jīng)濟(jì)上的重大損失,更是造成精神、心理上的嚴(yán)重傷害,是人民群眾深惡痛絕的犯罪行為.例如,2016年,大一新生徐某某因詐騙電話被騙取9 900元,而導(dǎo)致抑郁猝死;廣東省新生蔡某某被騙后跳海身亡.一系列案件讓電信欺詐問題成為備受矚目的社會熱點,電信欺詐的影響已經(jīng)深入到人們的日常生活中.盡管近幾年隨著國家對此類詐騙案刑事打擊和普法宣傳力度的不斷加大,電信網(wǎng)絡(luò)詐騙犯罪得到一定程度的遏制,但總體上仍呈現(xiàn)高發(fā)態(tài)勢,在互聯(lián)網(wǎng)快速發(fā)展和智能手機(jī)高度普及的新形勢下,如何有效治理電信詐騙,是運營商面臨的一大挑戰(zhàn).2019年,騰訊聯(lián)合公安部、工信部和移動、聯(lián)通、電信等企業(yè),發(fā)布了《電信網(wǎng)絡(luò)詐騙治理研究報告(2019 上半年)》,報告顯示,電信網(wǎng)絡(luò)詐騙呈現(xiàn)日趨專業(yè)化、公司化的趨勢,2019年上半年,全國各級公安機(jī)關(guān)共破獲電信網(wǎng)絡(luò)詐騙案件5.8 萬起,同比上升3%;共抓獲電信網(wǎng)絡(luò)犯罪嫌疑人5.14 萬人,同比上升32.28%.其中,跨平臺交易日益增多,發(fā)生詐騙最多的兩個平臺為二手交易平臺和婚戀招聘網(wǎng)站,分別占了28%和19%,而電話詐騙占了9%,由此可見,電話詐騙仍占據(jù)相當(dāng)高的比重,通過電話進(jìn)行行騙仍是犯罪分子主要的詐騙方式之一,有效防范電話詐騙,是遏制電信欺詐的重要手段.
針對國內(nèi)電信詐騙頻發(fā)的現(xiàn)狀,很多學(xué)者也進(jìn)行了廣泛的探究.
傳統(tǒng)的防范詐騙電話體系主要是通過對詐騙電話號碼的結(jié)構(gòu)進(jìn)行分析,構(gòu)建黑白名單庫,從而對疑似號碼進(jìn)行攔截處理[1-3],此時的詐騙行為已經(jīng)發(fā)生,只能進(jìn)行事后分析處理,而且詐騙類型和手段一直在更新,這就存在一定的滯后性,無法在第一時間對詐騙電話進(jìn)行攔截.
近年來,機(jī)器學(xué)習(xí)迅速發(fā)展,已在各個領(lǐng)域得到廣泛應(yīng)用,為電話詐騙的治理帶來了新的轉(zhuǎn)機(jī)和挑戰(zhàn).張慧嫦等[4]提出基于信令的電話詐騙行為檢測方法,采用大數(shù)據(jù)挖掘的方式,對電話詐騙的行為特征進(jìn)行分析,對疑似詐騙電話號碼進(jìn)行叫停、攔截等處理.程錦紅等[5]提出基于大數(shù)據(jù)挖掘的防范電話詐騙模型,從詐騙通話的前、中、后三階段作研判分析,構(gòu)建基于號碼特征和通話行為特征的混合模型,實現(xiàn)了對詐騙行為進(jìn)行事前預(yù)判、事中攔截、事后分析.白晶晶等[6]提出基于大數(shù)據(jù)挖掘技術(shù)構(gòu)建的電話詐騙識別模型,根據(jù)詐騙電話特征,分析通信行為,建立挖掘模型,不僅可以識別詐騙電話號碼,而且能夠提前預(yù)測詐騙行為,同時準(zhǔn)確找到詐騙電話來源.
基于以上分析,可以發(fā)現(xiàn),以往的防范詐騙手段大多是從政府和運營商的角度,本文則采用深度學(xué)習(xí)的方法構(gòu)建一個詐騙電話識別模型,從用戶視角來提高公民的反詐騙意識,當(dāng)用戶接通電話后,首先使用語音處理技術(shù)將語音轉(zhuǎn)換為文字,本文對轉(zhuǎn)換后的文字進(jìn)行研究,利用自然語言處理領(lǐng)域中的文本分類技術(shù)來對電話文本進(jìn)行識別,計算一個電話為詐騙電話的概率.
文本分類問題是自然語言處理領(lǐng)域的一個經(jīng)典問題,已廣泛應(yīng)用于垃圾過濾、新聞分類、詞性標(biāo)注、情感分類等領(lǐng)域.文本分類技術(shù)的發(fā)展經(jīng)歷了從基于規(guī)則的方法到機(jī)器學(xué)習(xí)再到深度學(xué)習(xí)的過程.基于規(guī)則的方法是依據(jù)預(yù)先定義好的規(guī)則將文本分成不同類別,例如任何帶有關(guān)鍵詞“籃球”“足球”的文本就可以劃分為體育類,這種方法太依賴專家知識和歷史數(shù)據(jù),可遷移性差.20世紀(jì)90年代初,許多機(jī)器學(xué)習(xí)方法開始成為主流趨勢,如支持向量機(jī)[7]、樸素貝葉斯[8]、決策樹[9]等,在文本分類領(lǐng)域得到廣泛應(yīng)用,使用機(jī)器學(xué)習(xí)方法進(jìn)行分類,需要兩步,第一步是人工提取特征,第二步將特征輸入分類器進(jìn)行分類.但是繁瑣的人工特征工程、過度依賴特定領(lǐng)域知識以及不能利用大量的訓(xùn)練數(shù)據(jù)又限制了其進(jìn)一步發(fā)展.21世紀(jì)后,隨著深度學(xué)習(xí)的發(fā)展,很多學(xué)者開始將神經(jīng)網(wǎng)絡(luò)模型引入文本分類任務(wù),并取得了不錯的進(jìn)展.
RNN的線性序列結(jié)構(gòu)使其非常適合用于處理序列數(shù)據(jù),但是由于其反向傳播路徑太長,容易導(dǎo)致梯度消失和梯度爆炸問題,為解決這一問題,Hochreiter 等[10]提出了長短時記憶神經(jīng)網(wǎng)絡(luò)(LSTM),引入“門”結(jié)構(gòu),很大程度上緩解了梯度消失問題.很多學(xué)者開始將這種模型用于自己的研究中,黃賢英等[11]提出一種基于Word2Vec和雙向LSTM的情感分類方法,利用Word2Vec算法訓(xùn)練詞向量,BiLSTM 提取特征,最后用支持向量機(jī)(SVM)進(jìn)行情感分類,取得了良好的分類效果;吳鵬等人[12]提出一種BiLSTM和CRF 結(jié)合的網(wǎng)民負(fù)面情感分類模型,增加具有情感意義的詞向量來提高分類性能;趙明等[13]提出一種基于LSTM的關(guān)于飲食健康的分類模型,利用Word2Vec 實現(xiàn)詞向量表示,LSTM作為分類模型,自動提取特征,解決了數(shù)據(jù)稀疏和維度災(zāi)難問題.盡管這種循環(huán)神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)在處理時序數(shù)據(jù)的研究上表現(xiàn)出良好效果,但它無法捕獲對重點詞的關(guān)注,因為很多時序數(shù)據(jù)在時間維度上的重要程度存在一定的差異,因此有學(xué)者提出將注意力機(jī)制引入自然語言處理領(lǐng)域.
注意力機(jī)制[14]來源于人類視覺的選擇性注意力機(jī)制,最早被用于計算機(jī)視覺領(lǐng)域[15],之后有學(xué)者將其引入自然語言處理領(lǐng)域,與神經(jīng)網(wǎng)絡(luò)模型結(jié)合使用來進(jìn)改善模型性能.例如,Bahdanau 等[16]將其用于神經(jīng)網(wǎng)絡(luò)的機(jī)器翻譯模型,取得了卓越效果;關(guān)鵬飛等[17]提出一種基于注意力機(jī)制的雙向LSTM 情感分類模型,利用注意力得到每個詞的權(quán)重分布,來提升分類效果;汪嘉偉等[18]將Attention 機(jī)制和卷積神經(jīng)網(wǎng)絡(luò)結(jié)合,利用CNN 捕捉局部特征,注意力機(jī)制捕捉文本的長距離關(guān)系,結(jié)合二者優(yōu)勢,也在一定程度上彌補(bǔ)了CNN的不足,實驗結(jié)果表明,與CNN 模型相比,分類準(zhǔn)確率有提升.本文將注意力機(jī)制引入詐騙電話分類模型,來彌補(bǔ)BiLSTM 模型不能準(zhǔn)確提取關(guān)鍵信息的不足,以提升分類效果.
預(yù)處理的主要目的是減少噪聲的影響,此階段主要包括分詞、去停用詞以及類別匹配3 個步驟.本文選用的分詞方法是jieba 分詞;去停用詞可以在進(jìn)行分類任務(wù)之前過濾掉一些對分類無實際意義的語氣助詞,提高分類效率;本文的研究屬于有監(jiān)督學(xué)習(xí),使用帶標(biāo)簽的數(shù)據(jù)集,所以需要對收集的數(shù)據(jù)進(jìn)行人工標(biāo)注,將數(shù)據(jù)標(biāo)記為兩類,詐騙和非詐騙,最終得到詐騙數(shù)據(jù)5 890 條,非詐騙數(shù)據(jù)6 230 條.
目前通常用的詞嵌入方法是神經(jīng)網(wǎng)絡(luò)的分布式表示,神經(jīng)網(wǎng)絡(luò)在訓(xùn)練模型的同時可以得到詞語的向量表示.使用最普遍的向量表示方法是Word2Vec 算法[19],該算法包含兩種模型,CBOW 模型和Skip-gram 模型,CBOW是用上下文詞作為輸入,來預(yù)測當(dāng)前詞,而Skip-gram 則相反,是用當(dāng)前詞來預(yù)測上下文詞,網(wǎng)絡(luò)結(jié)構(gòu)分別如圖1和圖2所示.Word2Vec的思想是訓(xùn)練一個語言模型,該模型以詞語的one-hot 形式作為輸入,比如輸入的一個x=[1,0,0,…,0],訓(xùn)練完得到神經(jīng)網(wǎng)絡(luò)的權(quán)重v,vx正是所需的詞向量,該詞向量的維度與隱層節(jié)點數(shù)一致,本質(zhì)上也是一種降維操作.Word2Vec得到了一個有效表示詞語特征的向量形式,是自然語言處理領(lǐng)域的重要突破.
圖1 CBOW
圖2 Skip-gram
本文提出了一個基于Attention 機(jī)制的BiLSTM 電話文本分類模型,通過引入Attention 機(jī)制,建立如圖3所示的BiLSTM-Attention 神經(jīng)網(wǎng)絡(luò)框架結(jié)構(gòu),主要由詞嵌入層、特征提取層、注意力模塊以及Softmax分類層組成.
詞嵌入層:將經(jīng)過預(yù)處理后的電話文本數(shù)據(jù)映射為維度相同的詞向量,圖3中詞向量的維度為6 維.
圖3 BiLSTM-Attention 模型架構(gòu)
特征提取層:為BiLSTM 模型,對詞向量進(jìn)行抽象的特征提取,可以得到文本的長距離依賴關(guān)系.
注意力模塊:為進(jìn)一步提高模型的擬合能力,引入Attention 機(jī)制對特征矩陣進(jìn)行參數(shù)優(yōu)化,抽取句中單詞之間的句法和語義特征,捕獲對當(dāng)前分類任務(wù)更為重要的關(guān)鍵詞.
分類層:由全連接層和Softmax層組成,輸入為經(jīng)過Attention 機(jī)制后得到的句向量,完成對電話文本的分類,得到文本分別為詐騙和非詐騙的概率.
長短時記憶神經(jīng)網(wǎng)絡(luò)(LSTM)是循環(huán)神經(jīng)網(wǎng)絡(luò)的一種,它可以很大程度上解決梯度消失問題.LSTM 特有的門結(jié)構(gòu)可以讓信息有選擇性地通過,決定哪些信息應(yīng)該被保留,哪些信息應(yīng)該被遺忘.LSTM的內(nèi)部結(jié)構(gòu)如圖4所示.
圖4 LSTM 結(jié)構(gòu)圖
其中,Xt為當(dāng)前時刻的輸入值;Ct-1為上一時刻的單元狀態(tài);ht-1為上一時刻的隱層狀態(tài);Ct為當(dāng)前時刻的單元狀態(tài);ht為當(dāng)前時刻的隱層狀態(tài).
LSTM的工作過程如下:
第一步是“遺忘門”(forget gate),這一步?jīng)Q定了要保留多少前一時刻的單元狀態(tài)信息到當(dāng)前單元,它查看上一時刻的隱層單元狀態(tài)ht-1和當(dāng)前時刻的輸入Xt,經(jīng)過Sigmoid 激活函數(shù),得到遺忘門的權(quán)重向量Wf,這一計算過程表示如下:
然后是“輸入門”(input gate),它決定了要保留多少當(dāng)前時刻的輸入狀態(tài)Xt到當(dāng)前時刻的單元狀態(tài)Ct.這一過程分兩步,首先由Sigmoid 激活函數(shù)決定更新哪些值,得到?jīng)Q策向量it;然后由tanh 激活函數(shù)構(gòu)建候選向量Vt,由這兩個向量來得到更新值,計算過程如下:
當(dāng)前時刻的單元狀態(tài)Ct的計算過程如下所示:
最后一步是“輸出門”(output gate),這一步是基于單元狀態(tài),決定輸出什么.單元狀態(tài)Ct的決策向量Ot和隱層狀態(tài)ht的計算過程表示如下:
其中,Wx、Wf、Wo分別代表輸入門、遺忘門、輸出門的權(quán)重向量;bf、bo和bc分別代表輸入門、遺忘門、輸出門和記憶單元的偏置值;σ(·)表示Sigmoid 激活函數(shù);tanh 表示雙曲正切激活函數(shù).
自然語言處理的很多情況下,當(dāng)前時刻的輸出不僅取決于之前的狀態(tài),還和未來的狀態(tài)有關(guān),由于LSTM 只能依據(jù)之前時刻的序列信息來預(yù)測下一時刻的輸出,Graves 等[20]提出雙向LSTM,該網(wǎng)絡(luò)結(jié)構(gòu)由前向和后向的兩個LSTM 疊加構(gòu)成,其結(jié)構(gòu)如圖5所示.對于任一時刻,輸出由兩個方向相反的LSTM的狀態(tài)共同決定,正向LSTM 能夠從前向后捕捉“過去”時刻的信息,反向LSTM 能夠從后向前捕捉“未來時刻”的信息,同時還能獲取單詞之間的長距離依賴特征,真正做到了基于上下文判斷,豐富了句子特征,有利于提高分類準(zhǔn)確率.
圖5 BiLSTM 神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
在時刻i,網(wǎng)絡(luò)的最終輸出由前向和后向的特征采取按位加和操作得到,如式(7)所示:
視覺注意力機(jī)制是人類視覺所特有的一種大腦信號處理機(jī)制.人類視覺通過快速掃描全局圖像,獲得需要重點關(guān)注的目標(biāo)區(qū)域,即所謂的注意力焦點,而后會更多關(guān)注目標(biāo)區(qū)域的細(xì)節(jié)信息,抑制其他無用信息.人類通過這種注意力機(jī)制,可以快速從大量信息中快速篩選出少量高價值信息,從而極大地提高了視覺信息處理的效率.
深度學(xué)習(xí)中的注意力機(jī)制正是受啟發(fā)于人類視覺的選擇性注意力機(jī)制,核心目標(biāo)也是從大量信息中選擇出對當(dāng)前任務(wù)目標(biāo)更關(guān)鍵的信息,忽略其他不重要的信息.
注意力機(jī)制的實質(zhì)是為每個值分配一個權(quán)重系數(shù),其本質(zhì)思想可以表示為式(8)所示:
其中,Source為已知的某個元素,由<Key,Value>,數(shù)據(jù)對構(gòu)成;Query為目標(biāo)元素.
注意力模型在訓(xùn)練過程中動態(tài)調(diào)整每個時間步的權(quán)重,計算每個單詞的權(quán)重系數(shù),其計算過程可以表示為下式所示:
其中,hi為BiLSTM的輸出,αi為注意力權(quán)重系數(shù),wi為權(quán)重矩陣,si為經(jīng)過注意力機(jī)制后的輸出向量.
本文使用Softmax回歸模型作為分類器實現(xiàn)對電話短文本的分類.Softmax回歸模型是Logistic 模型在多分類問題上的推廣,當(dāng)類別數(shù)為2 時,即為Logistic模型.假設(shè)樣本輸入X={(x1,y1),(x2,y2),…,(xm,ym)},其中,Xi∈Rn,i表示第i個樣本的文本向量,維度為n,樣本總數(shù)為m;yi∈{1,2,…,k}表示第i個樣本對應(yīng)的類別,類別數(shù)為k,本文為二分類,所以k=2.判別函數(shù)hθ(xi)為:
其中,θ1T,θ2T,…,θkT∈Rn+1表示模型參數(shù);p(yi=k|xi;θ)為當(dāng)前樣本對應(yīng)第k個類別的概率.
Softmax模型的代價函數(shù)為:
其中,j代表某個類別;1{·}表示示性函數(shù),當(dāng)?shù)趇個樣本屬于第j個類別時,1{y(i)=j}=1,當(dāng)?shù)趇個樣本不屬于第j個類別時,1{y(i)=j}=0.在實際的工程應(yīng)用中,一般會用隨機(jī)梯度下降法來優(yōu)化最小代價函數(shù),將涉及到J(θ)對各個參數(shù)求偏導(dǎo),經(jīng)過數(shù)次迭代計算得到最優(yōu)參數(shù),此時的模型即為最佳分類模型.
本文實驗所用的數(shù)據(jù)集一部分是由中國移動設(shè)計院提供的,一部分來自百度、微博、知乎問答社區(qū)等網(wǎng)站,其中包含詐騙數(shù)據(jù)5 890 條,非詐騙數(shù)據(jù)6 000條,詐騙數(shù)據(jù)與非詐騙數(shù)據(jù)的比例約為1:1,將其按照7:3的比例分別劃分為訓(xùn)練集、測試集,數(shù)據(jù)集的具體組成情況如表1所示.該數(shù)據(jù)集來自從網(wǎng)絡(luò)上搜集爬蟲來的近幾年出現(xiàn)的各類電話詐騙案件,涉及范圍包括刷單、虛假中獎、網(wǎng)貸、彩票股票、快遞丟件、冒充海關(guān)、冒充警察等為由的詐騙案件,幾乎涵蓋了所有的詐騙類型.
表1 數(shù)據(jù)集統(tǒng)計表
本文算法的實現(xiàn)采用基于PyTorch的NLP 框架AllenNLP,AllenNLP是由Allen 人工智能實驗室構(gòu)建和維護(hù)的一個開源工具,是專門用于研究自然語言理解的深度學(xué)習(xí)方法平臺.
實驗環(huán)境如表2所示.
表2 實驗環(huán)境
實驗使用由北京師范大學(xué)中文信息處理研究所與中國人民大學(xué) DBIIR 實驗室的研究者提供的開源中文詞向量語料庫sgns.target.word-word.dynwin5.thr10.neg5.dim300.iter5.gz 作為預(yù)訓(xùn)練詞向量,該詞向量維度為300 維,是通過Word2Vec 方法訓(xùn)練得到,訓(xùn)練語料來自百度百科,涵蓋各領(lǐng)域[21].
經(jīng)過反復(fù)實驗,本文最終選取的最優(yōu)超參數(shù)設(shè)置如表3所示.
表3 超參數(shù)
實驗采用的評價指標(biāo)為準(zhǔn)確率accuracy,精確率precision,召回率recall和F1 值.
混淆矩陣,如表4所示.
表4 混淆矩陣
1) 準(zhǔn)確率是指所有預(yù)測為正類占總數(shù)的比例.
2) 精確率是指所有正確預(yù)測為正類占全部正類的比例.
3) 召回率是指所有正確預(yù)測為正類占全部實際為正類的比例.
4)F1 值綜合了精確率和召回率,把Pre和Rec的權(quán)重看作是一樣的,是基于兩者的調(diào)和平均,通常作為一個綜合性的評價指標(biāo),F1 值越高,代表模型的性能越好.
為驗證本文提出的基于Attention 機(jī)制的BiLSTM電話詐騙識別模型的有效性,在同一數(shù)據(jù)集下,分別對LSTM,BiLSTM 以及本文提出的BiLSTM-Attention 模型進(jìn)行了對比實驗,實驗結(jié)果如表5所示.
表5 實驗結(jié)果 (%)
基于以上3 種模型進(jìn)行對比試驗,并針對評價指標(biāo)精確率、召回率、F1 值以及準(zhǔn)確率作對比分析.由表中實驗結(jié)果可以發(fā)現(xiàn):
1) 本文提出的BiLSTM-Attention 模型的準(zhǔn)確率為94.74%,比LSTM 高2.15%,比BiLSTM 高0.6%;F1 值為94.86%,比LSTM 高2.34%,比BiLSTM 高0.48%;
2) 通過LSTM和BiLSTM的對比實驗可以看出,BiLSTM的精確率、召回率、F1 值均要高于LSTM,即BiLSTM 模型的分類效果更好.因為前者只是提取了上文信息,而后者提取了上文和下文的信息,特征更豐富,說明基于上下文的判斷更有利于分類;
3) 通過BiLSTM和BiLSTM-Attention的對比試驗可以看出,BiLSTM-Attention的精確率、F1 值、準(zhǔn)確率較BiLSTM,盡管提高不大,但都有顯著的提升,但召回率要低于BiLSTM 模型,這一點有待改進(jìn),說明注意力機(jī)制對實驗分類效果具有一定程度的影響.這是因為注意力機(jī)制可以通過增大重點詞的權(quán)重,增加對重點詞的關(guān)注,突出了對當(dāng)前詐騙電話分類任務(wù)更關(guān)鍵的信息,即進(jìn)一步捕獲經(jīng)過BiLSTM 提取長距離特征后的重點信息,來提升模型性能,提高分類準(zhǔn)確率.
本文提出一種基于Attention 機(jī)制的BiLSTM 詐騙電話分類方法,首先對文本進(jìn)行預(yù)處理,包括分詞、去停用詞等,然后利用預(yù)訓(xùn)練詞向量模型得到每個詞的詞向量,輸入BiLSTM 模型,提取長距離特征,并通過引入注意力模塊進(jìn)一步捕捉關(guān)鍵信息,來提升模型性能.實驗證明,提出的模型較單模型LSTM和BiLSTM,都有顯著的提升.同時本文實驗也存在一定的不足之處,比如實驗數(shù)據(jù)不足,所提出模型分類效果提升不高等問題.未來的研究中,將考慮從以下幾個方面來改進(jìn)模型,繼續(xù)搜集更新詐騙信息,擴(kuò)大數(shù)據(jù)集;采取下采樣的方法增加詐騙數(shù)據(jù);針對本研究的小數(shù)據(jù)特點,采用先進(jìn)的預(yù)訓(xùn)練語言模型來訓(xùn)練,如ELMo、BERT、GPT 等.