劉 潔,王 錚,王 輝
(河南理工大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,河南 焦作 454000)
電子郵件能夠?yàn)橛脩糸g的通信提供便捷,但垃圾郵件也隨之產(chǎn)生。根據(jù)卡巴斯基信息安全網(wǎng)站Securelist發(fā)布的2018年全球垃圾郵件數(shù)據(jù)顯示,中國(guó)成為全球第一垃圾郵件來(lái)源地,占全球垃圾郵件來(lái)源的11.69%[1]。垃圾郵件不僅占據(jù)大量的網(wǎng)絡(luò)帶寬和郵箱空間,容易造成網(wǎng)絡(luò)擁堵,而且其包含一些惡意軟件和釣魚(yú)網(wǎng)站,可能會(huì)給用戶帶來(lái)巨大的經(jīng)濟(jì)損失。因此,對(duì)垃圾郵件進(jìn)行過(guò)濾研究具有重要意義。
目前,關(guān)于垃圾郵件的過(guò)濾技術(shù)主要有基于黑白名單過(guò)濾技術(shù)、基于行為模式識(shí)別技術(shù)以及基于內(nèi)容的過(guò)濾技術(shù)。其中,基于內(nèi)容的過(guò)濾技術(shù)可行性較高、耗費(fèi)較少,已經(jīng)成為當(dāng)前研究垃圾郵件過(guò)濾技術(shù)的主流方向[2-3],主要包括支持向量機(jī)(Support Vector Machine,SVM)、K鄰近(K-Nearest Neighbor,KNN)、樸素貝葉斯(Naive Bayes,NB)等[4]。樸素貝葉斯分類(lèi)器實(shí)現(xiàn)較為簡(jiǎn)單、且準(zhǔn)確率高,已成為對(duì)垃圾郵件進(jìn)行過(guò)濾的廣泛應(yīng)用分類(lèi)方法[5-6],但該方法基于條件獨(dú)立性假設(shè),即假設(shè)條件之間完全獨(dú)立,在一定程度上影響了分類(lèi)結(jié)果的精確度。
在對(duì)垃圾郵件分類(lèi)前,特征選擇算法的優(yōu)劣性對(duì)分類(lèi)效果會(huì)造成影響,常見(jiàn)的幾種特征選擇方法有文檔頻率(DF)、信息增益(IG)、TF-IDF、開(kāi)方擬合檢驗(yàn)(χ2test)和互信息(Mutual Information,MI)等。其中,互信息效果雖然較差,但是該方法復(fù)雜度低、容易理解,是普遍使用的一種特征選擇方法[7-8]。傳統(tǒng)的互信息方法沒(méi)有計(jì)算特征詞的頻度,可能會(huì)出現(xiàn)低頻詞匯的互信息值較高的情況,導(dǎo)致分類(lèi)精確度受到影響[9-10]。
針對(duì)特征冗余和獨(dú)立性假設(shè)的問(wèn)題,研究人員對(duì)特征選擇和分類(lèi)算法進(jìn)行改進(jìn),以提高郵件的分類(lèi)精度。文獻(xiàn)[11]將樸素貝葉斯、隨機(jī)樹(shù)和隨機(jī)森林3種機(jī)器學(xué)習(xí)算法應(yīng)用于垃圾郵件數(shù)據(jù)集,其分類(lèi)精度高于僅基于貝葉斯分類(lèi)器的算法。文獻(xiàn)[12]提出一種支持向量機(jī)算法與K-均值聚類(lèi)算法相結(jié)合的郵件分類(lèi)算法,以提高分類(lèi)精度、減少訓(xùn)練時(shí)間。文獻(xiàn)[13]將互信息應(yīng)用于加權(quán)樸素貝葉斯,通過(guò)加權(quán)部分消除樸素貝葉斯條件獨(dú)立性假設(shè)對(duì)分類(lèi)效果的影響,從而提高了樸素貝葉斯的文本分類(lèi)效果,但該方法存在沒(méi)有對(duì)傳統(tǒng)的互信息算法進(jìn)行改進(jìn)的問(wèn)題。文獻(xiàn)[14]提出一種TSVM-NB算法,該算法利用樸素貝葉斯算法進(jìn)行初次訓(xùn)練,并使用支持向量機(jī)算法構(gòu)造最優(yōu)分類(lèi)超平面以降低特征項(xiàng)維度。同時(shí),再次利用樸素貝葉斯算法生成分類(lèi)模型,提高垃圾郵件過(guò)濾的速度和正確率,但該算法適用于屬性向量重疊較大的語(yǔ)料集,對(duì)混疊性較弱的語(yǔ)料集的效率提升有限。文獻(xiàn)[15]引入熵的思想,并結(jié)合MapReduce技術(shù)提出一種基于MapReduce的改進(jìn)互信息文本特征選擇機(jī)制,提高文本分類(lèi)的精度。文獻(xiàn)[16]提出一種基于MapReduce的并行特征選擇方法,利用最大互信息理論選擇信息豐富的特征變量組合。上述方法僅改進(jìn)分類(lèi)過(guò)程中的特征選擇算法,并未聯(lián)同分類(lèi)算法對(duì)分類(lèi)進(jìn)行綜合改進(jìn)。
在以上研究基礎(chǔ)上,本文提出一種基于改進(jìn)互信息的加權(quán)樸素貝葉斯(Improved Mutual Information-Weighted Naive Bayes,IMI-WNB)算法。在特征選擇階段,引入詞頻因子以及類(lèi)間差異因子對(duì)傳統(tǒng)的互信息算法進(jìn)行改進(jìn),實(shí)現(xiàn)特征降維。在分類(lèi)階段引入改進(jìn)的互信息(IMI)值對(duì)樸素貝葉斯算法進(jìn)行屬性加權(quán),實(shí)現(xiàn)對(duì)垃圾郵件的精確分類(lèi)。
垃圾郵件在經(jīng)過(guò)文本預(yù)處理后引入大量特征項(xiàng),然而大量的特征項(xiàng)對(duì)于分類(lèi)沒(méi)有意義,屬于噪音特征,不對(duì)其進(jìn)行降維處理將會(huì)影響垃圾郵件過(guò)濾的分類(lèi)效果[17]?;バ畔⑺惴ㄊ翘卣鬟x擇算法的一種,互信息值表示出特征項(xiàng)與類(lèi)別之間的相關(guān)程度,且互信息值越大,則該特征項(xiàng)與類(lèi)別的關(guān)聯(lián)性越緊密?;バ畔⒅档挠?jì)算方法為:
(1)
其中,w表示特征項(xiàng),C表示類(lèi)別,P(w,C)表示特征項(xiàng)w與類(lèi)別C共同出現(xiàn)的概率,P(w)表示特征項(xiàng)在整個(gè)訓(xùn)練文本中出現(xiàn)的概率,P(C)表示訓(xùn)練文本中該類(lèi)別在訓(xùn)練文本中出現(xiàn)的概率,P(w|C)表示特征項(xiàng)w在類(lèi)別C中出現(xiàn)的概率。
m個(gè)類(lèi)別訓(xùn)練文本的互信息值計(jì)算方法為:
(2)
通過(guò)式(2)計(jì)算出互信息值,并選取合適的閾值,可針對(duì)分類(lèi)不重要的特征項(xiàng)進(jìn)行過(guò)濾,從而實(shí)現(xiàn)特征的選擇。
1.2.1 詞頻因子
互信息算法的計(jì)算方式只考慮到特征詞的文本頻率而沒(méi)有考慮到詞頻,這在一定程度上會(huì)影響其分類(lèi)精度。例如,2個(gè)特征項(xiàng)wj和wq的文本頻率相同,且特征項(xiàng)wj的詞頻是特征項(xiàng)wq詞頻的數(shù)倍,即tf(wj)>>tf(wq),一般認(rèn)為詞頻更大的特征項(xiàng)wj與該類(lèi)別的相關(guān)程度更高。然而按照傳統(tǒng)互信息的計(jì)算方式,這2個(gè)特征項(xiàng)的互信息值是相同的,這顯然與實(shí)際情況不符。因此,引入詞頻因子α對(duì)不同特征項(xiàng)間的詞頻差異進(jìn)行描述,詞頻因子α可定義為:
(3)
(4)
其中,tfCspam(wi)與tfCham(wi)分別為特征項(xiàng)wi的垃圾郵件與非垃圾郵件類(lèi)詞頻,dfCspam(wi)表示特征項(xiàng)wi的垃圾郵件類(lèi)文本頻率,dfCham(wi)表示特征項(xiàng)wi的非垃圾郵件類(lèi)文本頻率。
引入詞頻因子α后,改進(jìn)的互信息值計(jì)算方法為:
(5)
特征項(xiàng)的詞頻高于文本頻率時(shí),詞頻因子的權(quán)重越大,說(shuō)明該特征項(xiàng)對(duì)郵件分類(lèi)的能力越強(qiáng)。
1.2.2 類(lèi)間差異因子
如果特征項(xiàng)在2個(gè)類(lèi)別中都平均分布時(shí),則不利于類(lèi)別的判定,在某一類(lèi)別出現(xiàn)較多而在另一類(lèi)別中極少出現(xiàn),一般認(rèn)為該特征項(xiàng)對(duì)于郵件類(lèi)別的判別作用較大。在概率統(tǒng)計(jì)中標(biāo)準(zhǔn)差反映了數(shù)據(jù)集的離散程度,標(biāo)準(zhǔn)差較大的特征項(xiàng)更利于郵件類(lèi)別的判定。通過(guò)計(jì)算垃圾郵件類(lèi)Cspam與非垃圾郵件類(lèi)Cham之間特征項(xiàng)wi頻數(shù)的標(biāo)準(zhǔn)差對(duì)互信息模型進(jìn)行改進(jìn)。假設(shè)特征項(xiàng)wi在垃圾郵件Cspam類(lèi)中的頻數(shù)為tfCspam(wi),在非垃圾郵件Cham類(lèi)中的頻數(shù)為tfCham(wi),頻數(shù)平均值為tfavg(wi),則有:
(6)
引入類(lèi)間差異因子σ對(duì)類(lèi)間詞頻差異進(jìn)行描述,類(lèi)間差異因子σ定義為:
(7)
(8)
引入類(lèi)間差異因子σ后,改進(jìn)的互信息值計(jì)算方法為:
(9)
式(9)在式(5)的基礎(chǔ)上增加了類(lèi)間頻數(shù)差異權(quán)重因子,體現(xiàn)出類(lèi)間頻數(shù)差異對(duì)郵件分類(lèi)的影響,提高互信息算法對(duì)有效特征項(xiàng)的選擇效率。
1.2.3 IMI算法描述
算法1IMI算法
輸入郵件特征向量集T={w1,w2,…,wn},特征子集維度k
輸出特征子集F={w1,w2,…,wk}
1.計(jì)算P(Cham)和P(Cspam)
2.for i=1 to n
3.統(tǒng)計(jì)詞頻tfCspam(wi)和tfCham(wi)
4.統(tǒng)計(jì)文檔頻率dfCspam(wi)和dfCham(wi)
5.計(jì)算P(wi|Cspam)和P(wi|Cham)
6.計(jì)算P(wi)
7.式(2)計(jì)算互信息值MI(wi)
8.式(4)計(jì)算詞頻因子αi
9.式(8)計(jì)算類(lèi)間差異因子σi
10.將式(2)、式(4)、式(8)結(jié)果代入式(9),計(jì)算IMI值
11.end
12.Sort(T) //將特征向量按IMI值降序排列
13.for i=1 to k
14.將特征項(xiàng)wi加入特征子集F中
15.end
算法1是IMI-WNB算法中特征選擇階段的算法,IMI算法改進(jìn)了傳統(tǒng)互信息算法中只考慮到文本頻率而未考慮到詞頻的問(wèn)題,定義并引入詞頻因子與類(lèi)間差異因子,體現(xiàn)詞頻與類(lèi)間詞頻差異對(duì)分類(lèi)的貢獻(xiàn)度,在完成特征降維的同時(shí),還增強(qiáng)了特征項(xiàng)的表達(dá)能力。
樸素貝葉斯分類(lèi)是基于貝葉斯定理與特征條件獨(dú)立假設(shè)的分類(lèi)方法,其通過(guò)計(jì)算已有的事件訓(xùn)練集得到事件概率,并對(duì)事件發(fā)生的概率進(jìn)行預(yù)測(cè)。給定類(lèi)別Cj與文本對(duì)象d時(shí),貝葉斯公式可表示為:
(10)
其中,P(Cj)表示Cj類(lèi)發(fā)生的先驗(yàn)概率,對(duì)于垃圾郵件分類(lèi),類(lèi)別C可被分為垃圾郵件與非垃圾郵件,即C={Cspam,Cham}。P(Cj|d)表示在給定輸入文本對(duì)象為d時(shí),該對(duì)象屬于類(lèi)別Cj的后驗(yàn)概率。假設(shè)文本d的特征項(xiàng)為{w1,w2,…,wn},根據(jù)樸素貝葉斯條件獨(dú)立性假設(shè),則有:
P(d|Cj)=P(w1,w2,…,wn|Cj)=
P(w1|Cj)×P(w2|Cj)×…×P(wn|Cj)=
(11)
將式(11)代入式(10)可得:
(12)
先驗(yàn)概率P(d)為標(biāo)準(zhǔn)化常量,是一個(gè)常數(shù)。因此,樸素貝葉斯計(jì)算的最大后驗(yàn)概率類(lèi)別Cmap如下所示:
(13)
為了避免大量較小數(shù)相乘造成下溢出問(wèn)題,對(duì)式(13)乘積取對(duì)數(shù)可得:
(14)
樸素貝葉斯分類(lèi)算法是基于條件獨(dú)立性假設(shè)的分類(lèi)方法,然而在實(shí)際應(yīng)用中,該獨(dú)立性假設(shè)通常不成立。為了消除部分條件獨(dú)立性假設(shè)對(duì)分類(lèi)造成的不利影響,可通過(guò)在樸素貝葉斯公式中加入屬性權(quán)重值以區(qū)分不同特征項(xiàng)對(duì)分類(lèi)的貢獻(xiàn)度。IMI值可以作為屬性權(quán)重應(yīng)用于貝葉斯分類(lèi)中,當(dāng)IMI值計(jì)算結(jié)果較大時(shí),特征項(xiàng)與類(lèi)別的相關(guān)性較高,當(dāng)IMI值較低甚至為負(fù)值時(shí),表示該特征項(xiàng)對(duì)分類(lèi)的作用較小?;バ畔⒅悼梢栽谝欢ǔ潭壬媳硎咎卣黜?xiàng)與類(lèi)別之間的相關(guān)性,消除部分條件獨(dú)立性假設(shè)對(duì)分類(lèi)的不利影響。將式(13)中的后驗(yàn)概率賦予互信息權(quán)值可得:
(15)
(16)
將屬性權(quán)值代入上式并取對(duì)數(shù)可得:
(17)
為避免出現(xiàn)概率為0的情況,本文對(duì)互信息公式中的P(wi)和P(wi|Cj)進(jìn)行拉普拉斯平滑處理,具體如下式所示:
(18)
(19)
其中,df(wi)表示特征項(xiàng)wi在整個(gè)訓(xùn)練集中的文本頻率,dftotal表示整個(gè)訓(xùn)練集的文本頻率,dfCj(wi)表示特征項(xiàng)wi在類(lèi)Cj訓(xùn)練集中的文本頻率,dfCj表示類(lèi)Cj訓(xùn)練集中的文本頻率。
IMI-WNB算法的實(shí)現(xiàn)過(guò)程如下所示:
算法2IMI-WNB算法
輸入特征子集F={w1,w2,…,wk},郵件樣本集D={d1,d2,…,dl}
輸出樣本集各樣本所屬類(lèi)別C
1.計(jì)算P(Cham)和P(Cspam)
2.for i=1 to k
3.統(tǒng)計(jì)詞頻tfCspam(wi)和tfCham(wi)
4.統(tǒng)計(jì)文檔頻率dfCspam(wi)和dfCham(wi)
5.式(19)計(jì)算P(wi|Cspam)和P(wi|Cham)
6.式(18)計(jì)算P(wi)
7.式(1)計(jì)算互信息值MI(wi|Cspam)與MI(wi|Cham)
8.式(3)計(jì)算詞頻因子αij
9.式(7)計(jì)算類(lèi)間差異因子σij
10.將式(1)、式(3)與式(7)結(jié)果代入式(16)計(jì)算得到IMI(wi,Cspam)與IMI(wi,Cham)值
11.end
12.for i=1 to l
13.for each wiin di
14.計(jì)算P(wi,Cspam)和P(wi,Cham)
15.將IMI(wi,Cspam)、IMI(wi,Cham)、P(Cham)、P(Cspam)與P(wi|Cspam)代入式(17)中進(jìn)行計(jì)算
16.end
17.C(d,map)=max{C(di,ham),C(di,spam)} //判別類(lèi)型
18.end
算法2是垃圾郵件過(guò)濾分類(lèi)階段算法,在通過(guò)特征選擇階段算法1獲得特征子集后,算法2將IMI值作為屬性權(quán)重值應(yīng)用于樸素貝葉斯分類(lèi)中,體現(xiàn)出不同特征項(xiàng)對(duì)分類(lèi)決策貢獻(xiàn)的差異,消除部分樸素貝葉斯條件獨(dú)立性假設(shè)對(duì)分類(lèi)的不利影響,從而提高分類(lèi)精度。
IMI-WNB算法的垃圾郵件過(guò)濾流程如圖1所示。首先,在郵件預(yù)處理階段對(duì)文本進(jìn)行去停用詞處理,然后再對(duì)文本進(jìn)行分詞,采用Python中文分詞組件jieba對(duì)文本進(jìn)行自動(dòng)分詞。其次,在特征選擇階段使用本文所提IMI算法對(duì)文本中的特征項(xiàng)進(jìn)行特征選擇。通過(guò)IMI算法可以將對(duì)分類(lèi)無(wú)關(guān)的特征項(xiàng)篩選出去。最后,在訓(xùn)練階段統(tǒng)計(jì)出樣本中的先驗(yàn)概率與條件概率,并在應(yīng)用階段使用IMI-WNB分類(lèi)器分類(lèi)時(shí)代入計(jì)算,根據(jù)計(jì)算出的最大后驗(yàn)概率對(duì)郵件文本進(jìn)行判定,當(dāng)垃圾郵件概率大于非垃圾郵件概率時(shí),分類(lèi)器判定該郵件文本為垃圾郵件。
圖1 IMI-WNB算法的垃圾郵件過(guò)濾流程Fig.1 Spam filtering procedure of IMI-WNB algorithm
本文使用trec06c郵件語(yǔ)料庫(kù)對(duì)垃圾郵件進(jìn)行過(guò)濾實(shí)驗(yàn),并對(duì)IMI-WNB算法與傳統(tǒng)的NB算法進(jìn)行過(guò)濾效果對(duì)比。同時(shí),為了更充分地體現(xiàn)本文算法的過(guò)濾效果與現(xiàn)實(shí)意義,實(shí)驗(yàn)將本文算法與其他改進(jìn)算法進(jìn)行過(guò)濾效果對(duì)比。
實(shí)驗(yàn)在Windows 10下進(jìn)行,硬件配置為i5-7300HQ 2.50 GHz CPU,內(nèi)存8.00 GB,硬盤(pán)500 GB。采用Python 3.7為實(shí)驗(yàn)環(huán)境。實(shí)驗(yàn)數(shù)據(jù)來(lái)自公開(kāi)的垃圾郵件語(yǔ)料庫(kù)trec06c,從中隨機(jī)抽取14 000封郵件作為樣本集,其中7 000封為正常郵件,7 000封為垃圾郵件。
為了對(duì)垃圾郵件過(guò)濾效果進(jìn)行評(píng)價(jià),實(shí)驗(yàn)引入精確度P、召回率R和F值3個(gè)評(píng)價(jià)指標(biāo)。假設(shè)垃圾郵件被判定為垃圾郵件的總數(shù)為T(mén)spam,垃圾郵件被判定為正常郵件的總數(shù)為Fspam,正常郵件被判定為垃圾郵件的總數(shù)為Fham,則3個(gè)評(píng)價(jià)指標(biāo)的計(jì)算方法分別為:
(20)
(21)
(22)
其中,精確度代表了垃圾郵件的檢對(duì)率,正常郵件被誤判為垃圾郵件會(huì)降低精確度,召回率代表了垃圾郵件的檢出率,召回率低說(shuō)明有大量垃圾郵件被漏檢,F值為綜合精確度和召回率的評(píng)價(jià)標(biāo)準(zhǔn),其表示郵件過(guò)濾的綜合效果。
本文實(shí)驗(yàn)過(guò)程步驟如下:
步驟1對(duì)trec06c語(yǔ)料庫(kù)中選取的郵件樣本進(jìn)行分詞處理,建立停用詞表去除文本中的停用詞,并對(duì)文本進(jìn)行特征選擇。使用MI算法得到的特征項(xiàng)集為T(mén)MI,使用IMI算法得到的特征項(xiàng)集為T(mén)IMI。
步驟2分別從特征項(xiàng)集TMI與TIMI中提取n個(gè)特征項(xiàng)t1,t2,…,tn組建特征向量空間RMI與RIMI,在特征向量空間中分別利用NB算法與IMI-WNB算法進(jìn)行分類(lèi)。
步驟3將14 000封郵件樣本平均分為10份,采用十折交叉法對(duì)樣本進(jìn)行計(jì)算,即每次選取其中9份樣本作為訓(xùn)練集,1份樣本作為測(cè)試集進(jìn)行分類(lèi)實(shí)驗(yàn),每個(gè)樣本均有一次作為訓(xùn)練集進(jìn)行測(cè)試,每個(gè)維度總共進(jìn)行10次測(cè)試,最后計(jì)算10次實(shí)驗(yàn)平均值作為該維度的數(shù)據(jù)結(jié)果。實(shí)驗(yàn)選取向量空間維度n從10到700對(duì)郵件進(jìn)行分類(lèi),取平均值后繪制折線圖。精確度、召回率、F值的實(shí)驗(yàn)結(jié)果如圖2~圖4所示。
圖2 2種算法的精確度實(shí)驗(yàn)結(jié)果Fig.2 Experimental results of precision of two algorithms
圖3 2種算法的召回率實(shí)驗(yàn)結(jié)果Fig.3 Experimental results of recall rate of two algorithms
圖4 2種算法的F值實(shí)驗(yàn)結(jié)果Fig.4 Experimental results of F-value of two algorithms
從圖2可以看出:傳統(tǒng)NB算法的精確度隨著特征項(xiàng)維度的增大呈現(xiàn)先增大后降低再增大的趨勢(shì),且當(dāng)維度為150時(shí)精確度最低,當(dāng)特征維度達(dá)到500后,精確度逐漸趨于平緩;然而本文算法在低維度時(shí)的精確度與傳統(tǒng)NB算法相差不大,當(dāng)特征項(xiàng)的維度達(dá)到75后,其精確度開(kāi)始下降,且在維度為150時(shí)達(dá)到最低,但其精確度受到的影響明顯小于傳統(tǒng)NB算法,且本文算法的精確度整體上高于傳統(tǒng)NB算法。
從圖3可以看出:傳統(tǒng)NB算法的召回率在特征維度達(dá)到20后開(kāi)始下降,當(dāng)特征維度達(dá)到150時(shí)召回率降至最低,接下來(lái)隨著特征項(xiàng)維度的增加召回率逐漸增加,當(dāng)維度達(dá)到500時(shí)召回率趨于穩(wěn)定;本文算法的召回率在特征維度為20時(shí)開(kāi)始下降,但下降速度相對(duì)傳統(tǒng)NB算法更加趨緩,且整體召回率高于傳統(tǒng)NB算法。類(lèi)似地,從圖4可以看出,相比傳統(tǒng)NB算法,本文算法的F值有明顯提高,且波動(dòng)更加平緩。
在使用trec06c語(yǔ)料庫(kù)作為郵件樣本進(jìn)行郵件過(guò)濾時(shí),本文算法與PTw2v算法[18]、C4.5算法[19]、GWO_GA算法[20]的性能對(duì)比如表1所示。從表1可以看出:PTw2v算法的精確度與召回率相差不大,且有較好的分類(lèi)效果;本文算法相較C4.5算法召回率更高,說(shuō)明C4.5算法存在較多的垃圾郵件被漏檢,本文算法在F值上也高于該算法,說(shuō)明本文算法具有更好的分類(lèi)效果;GWO_GA算法的召回率較高,但在精確度上遠(yuǎn)低于本文算法,說(shuō)明該算法存在大量的正常郵件被誤判為垃圾郵件,且該算法的F值也略低于本文算法。
表1 4種算法的性能對(duì)比Table 1 Performance comparison of four algorithms
綜合分析上述實(shí)驗(yàn)結(jié)果可知,相比傳統(tǒng)NB算法,本文算法的精確度、召回率與F值明顯提高,且變化趨勢(shì)更加穩(wěn)定。
由于傳統(tǒng)互信息算法在特征選擇中對(duì)于詞頻以及類(lèi)間頻數(shù)差異考慮不足,本文提出一種改進(jìn)的互信息算法,并針對(duì)特征項(xiàng)在文本中的詞頻數(shù)以及類(lèi)間頻數(shù)差異對(duì)分類(lèi)的影響進(jìn)行分析與改進(jìn),有效利用訓(xùn)練集中的頻數(shù)信息,彌補(bǔ)了傳統(tǒng)互信息算法僅考慮到文本頻率的缺陷。同時(shí),本文對(duì)樸素貝葉斯算法進(jìn)行屬性加權(quán)并提出一種IMI-WNB算法,部分消除了樸素貝葉斯算法獨(dú)立性假設(shè)對(duì)分類(lèi)的不利影響。仿真實(shí)驗(yàn)結(jié)果表明,該算法明顯提高了郵件分類(lèi)的精確度、召回率、F值及穩(wěn)定性,且取得良好的過(guò)濾效果。本文的郵件過(guò)濾技術(shù)是基于郵件的文本內(nèi)容進(jìn)行分類(lèi),然而除了郵件文本內(nèi)容外,郵件還有題目、發(fā)送時(shí)間、收件人與發(fā)件人等郵件頭信息可供分類(lèi)判定。因此,下一步將利用加權(quán)樸素貝葉斯算法對(duì)郵件的文本內(nèi)容與郵件頭信息進(jìn)行綜合分析,以提高郵件過(guò)濾分類(lèi)效果。