張潔
摘 要: 電子郵件分類有利于垃圾郵件的過濾,節(jié)省網(wǎng)絡(luò)資源。為了提高郵件分類的精度,提出了改進支持向量機的電子郵件分類器模型。首先提取電子郵件的原始特征,并采用主成分分析法對特征進行選擇,減少特征數(shù)量,提高郵件分類效率;然后采用支持向量機建立電子郵件分類器,并對傳統(tǒng)支持向量機參數(shù)選擇方法進行改進,改善郵件分類效果,最后采用郵件分類的標準數(shù)據(jù)庫——UCI進行性能分析。結(jié)果表明,改進支持向量機解決了當前電子郵件分類模型的不足,獲得了理想的電子郵件分類效果,分類結(jié)果可以幫助管理人員攔截垃圾郵件。
關(guān)鍵詞: 電子郵件; 分類模型; 特征提??; 垃圾郵件; 主成分分析
中圖分類號: TN915.08?34 文獻標識碼: A 文章編號: 1004?373X(2017)01?0077?03
Abstract: The E_mail classification is conducive to filter out the spam mail and save the network resources. In order to improve the accuracy of the E_mail classification, an E_mail classifier model using improved support vector machine is proposed. The original features of E_mail are extracted, and selected with the principal component analysis to reduce the feature quantity and improve the E_mail classification efficiency. The support vector machine is used to establish the E_mail classifier. The parameter selection method of the traditional support vector machine was improved to perfect the E_mail classification effect. The standard database UCI of the E_mail classification is used to analyze the classification performance. The results show that the improved support vector machine has solved the insufficient of the current E_mail classification model, and obtained the satisfied E_mail classification effect, which can help managers to block the spam mail.
Keywords: E_mail; classification model; feature extraction; spam mail; principal component analysis
0 引 言
隨著經(jīng)濟水平的不斷提高,家家戶戶有了計算機,網(wǎng)民越來越多。電子郵件(E_mail)是一種人們在網(wǎng)絡(luò)上交流的常用工具,受到了人們的廣泛關(guān)注[1]。網(wǎng)絡(luò)是一個新興事件,網(wǎng)絡(luò)中有大量垃圾郵件,它們不僅浪費網(wǎng)絡(luò)資源,給人們工作帶來困擾,而且給一些不法分子提供了可乘之機,因此,對E_mail進行有效分類找出其中的垃圾郵件具有重要的實際意義[2]。
E_mail與文本有很多相似之處,為此一些學者將文本分類方法引入E_mail分類中,通過分類算法將郵件分為正常郵件和垃圾郵件[3]。同時E_mail是一種半結(jié)構(gòu)化文本,具有自身的特殊性,采用傳統(tǒng)文本分類方法用于E_mail分類,分類的精度低,郵件錯分現(xiàn)象嚴重,導(dǎo)致一些正常郵件被攔截,而且一些垃圾郵件沒有被過濾掉[4]。近些年來,一些學者將模式識別技術(shù)引入到E_mail分類中,首先提取E_mail的原始特征,然后采用K近鄰算法和神經(jīng)網(wǎng)絡(luò)等建立E_mail分類模型,獲得了不錯的E_mail分類效果[5]。E_mail的原始特征維數(shù)高,若直接輸入到K近鄰算法和神經(jīng)網(wǎng)絡(luò)進行分類,分類時間長、效率低,而且可能存在一些無用特征,對E_mail分類效果產(chǎn)生干擾[6]。特征篩選可以去除無用特征,減少特征數(shù)量,提高學習效率[7]。K近鄰算法假設(shè)E_mail的類別與特征間是線性變化關(guān)系,這與實際情況不相符,分類精度要低于神經(jīng)網(wǎng)絡(luò)[2]。神經(jīng)網(wǎng)絡(luò)雖然可以描述E_mail的類別與特征間的變化關(guān)系,但要求樣本多,網(wǎng)絡(luò)結(jié)構(gòu)復(fù)雜,當特征維數(shù)高時,出現(xiàn)“維數(shù)災(zāi)”現(xiàn)象的概率高[8]。支持向量機(Support Vector Machine,SVM)是一種新型機器學習算法,避免了“維數(shù)災(zāi)”現(xiàn)象的出現(xiàn),且分類效果要優(yōu)于神經(jīng)網(wǎng)絡(luò),在E_mail分類中得到了廣泛的應(yīng)用[9]。支持向量機參數(shù)優(yōu)化問題一直懸而未解,影響在E_mail分類中的應(yīng)用范圍[10]。
針對當前E_mail分類模型存在的難題,為了提高郵件分類的精度,提出一種改進支持向量機的電子郵件分類器模型(ISVM),結(jié)果表明,改進支持向量機獲得了良好的電子郵件分類效果,可以滿足垃圾郵件處理的要求。
1 E_mail分類模型的工作原理
E_mail分類模型的工作原理如圖1所示。從圖1可以看出,特征提取和選擇是獲得較優(yōu)E_mail分類結(jié)果的基礎(chǔ),當前E_mail特征提取和選擇研究少,主要采用人工憑經(jīng)驗確定特征的數(shù)量,特征選擇具有主觀性,影響E_mail分類器的構(gòu)建;E_mail的分類器是獲得理想分類結(jié)果的關(guān)鍵,雖然SVM可以描述E_mail的變化特點,但如果核函數(shù)及參數(shù)選擇不合理,E_mail分類效果很差,本文采用布谷鳥搜索算法選擇SVM的核函數(shù)參數(shù),以獲得高精度的E_mail分類結(jié)果。
2 改進支持向量機
2.1 標準支持向量機
支持向量機根據(jù)最優(yōu)分類超平面將訓練樣本分開,而且類別之間的間隔最大。對于包含兩個樣本的訓練集,如果超平面可將它們?nèi)糠珠_,表示訓練樣本集是線性可分的,訓練集的數(shù)量為那么訓練集描述為:其中表示樣本輸入;表示樣本的類別。支持向量機的超平面如圖2所示。
基于支持向量機的懲罰參數(shù)和徑向基核參數(shù)影響的性能,本文選擇布谷鳥搜索算法確定和的值。
2.2 布谷鳥搜索算法
布谷鳥搜索算法(CS)是一種應(yīng)用范圍很廣的智能搜索算法,假設(shè)有三種狀態(tài),具體如下:
(1) 一只布谷鳥僅下一個蛋,并隨機分布于鳥巢中。
(2) 部分較優(yōu)的鳥巢直接進入到下一代,組成新的鳥巢[11]。
(3) 每一個鳥巢中的布谷鳥蛋被宿主發(fā)現(xiàn)的概率是相等的。
將支持向量機參數(shù)和編碼成為一個鳥巢位置,根據(jù)訓練樣本計算每一組參數(shù)的和目標函數(shù)值,并選擇目標函數(shù)值最優(yōu)者作為當前最優(yōu)鳥巢,然后對布谷鳥搜索的路徑和位置不斷迭次,產(chǎn)生新一代的鳥巢,當?shù)螖?shù)達到最大迭代次數(shù)時,最優(yōu)鳥巢位置對應(yīng)的和即為找到的最優(yōu)參數(shù)。
3 改進支持向量機的E_mail分類
改進支持向量機的E_mail分類步驟為:
Step1:收集相應(yīng)數(shù)量的E_mail,并進行一些預(yù)處理,如刪除其中沒有意義的數(shù)據(jù),將它們轉(zhuǎn)換為相應(yīng)的格式。
Step2:提取E_mail特征,通過詞和類別的互信息量作為E_mail原始特征,對它們進行歸一化處理。
Step3:采用主成分分析法對E_mail原始特征進行選擇,提取最優(yōu)的特征子集,并根據(jù)特征子集對E_mail訓練樣本和測試樣本進行處理,減少數(shù)據(jù)規(guī)模。
Step4:將訓練樣本輸入到支持向量機進行訓練,并采用布谷鳥搜索算法確定最優(yōu)參數(shù)和建立E_mail分類器。
Step5:采用測試樣本對E_mail分類器的性能進行測試和分析。
4 實驗結(jié)果與分析
為了分析ISVM的E_mail分類性能,選擇郵件分類的標準數(shù)據(jù)集——UCI數(shù)據(jù)庫作為研究對象,該數(shù)據(jù)集共有4 601個樣本,每一個樣本有58個特征,垃圾郵件的標簽為“1”,正常郵件的標簽為“0”,在Matlab 2014工具箱編程中實現(xiàn)E_mail分類模型。由于數(shù)據(jù)庫中的樣本比較多,隨機選擇30%的樣本進行仿真實驗,訓練樣本和測試樣本數(shù)量采用31的形式進行劃分。采用分類準確率(Precision)、分類召回率(recall)對結(jié)果進行分析,具體如下:
5 結(jié) 語
為了消除垃圾郵件對人們工作和生活的負面影響,提高電子郵件分類精度,本文提出一種改進支持向量機的電子郵件分類模型,結(jié)果表明,改進支持向量機解決了當前電子郵件分類模型存在的不足,獲得了理想的電子郵件分類效果,減少了系統(tǒng)分發(fā)郵件的工作量,分類結(jié)果可以幫助管理人員攔截垃圾郵件,具有廣泛的應(yīng)用前景。
參考文獻
[1] 蒲筱哥.Web自動郵件分類技術(shù)研究綜述[J].情報學報,2009,28(2):233?241.
[2] 劉赫,劉大有,裴志利,等.一種基于特征重要度的郵件分類特征加權(quán)方法[J].計算機研究與發(fā)展,2009,46(10):1693?1703.
[3] 陳東亮,白清源.基于詞頻向量的關(guān)聯(lián)郵件分類[J].計算機研究與發(fā)展,2009,46(2):464?469.
[4] 吳江寧,劉巧鳳.基于圖結(jié)構(gòu)的中文郵件表示方法研究[J].情報學報,2010,32(4):618?624.
[5] 王波,黃迪明.遺傳神經(jīng)網(wǎng)絡(luò)在電子郵件過濾器中的應(yīng)用[J].電子科技大學學報,2005,34(4):505?508.
[6] 李惠娟,高峰,管曉宏,等.基于貝葉斯神經(jīng)網(wǎng)絡(luò)的垃圾郵件過濾方法[J].微電子學與計算機,2005,22(4):107?111.
[7] 陳華輝.一種基于潛在語義索引的垃圾郵件過濾方法[J].計算機應(yīng)用研究,2000,17(10):17?18.
[8] 宋勝利,王少龍,陳平.面向郵件分類的中文郵件語義表示方法[J].西安電子科技大學學報,2013,40(2):89?97.
[9] 張兢,侯旭東,呂和勝.基于樸素貝葉斯和支持向量機的郵件智能分析系統(tǒng)設(shè)計[J].重慶理工大學學報(自然科學版),2010,24(1):77?81.
[10] 陳功平,沈明玉,王紅,等.基于內(nèi)容的郵件分類技術(shù)[J].華東理工大學學報(自然科學版),2011,37(6):770?774.
[11] YANG X S, DEB S. Engineering optimization by cuckoo search [J]. International journal of mathematical modeling and numerical optimization, 2010, 11(4): 330?343.