徐娟 卞良

摘要:為有效攔截、過濾垃圾郵件,本文研究基于SVM的中文垃圾郵件過濾技術。經測試實驗表明,該方法能夠有效的預測中文垃圾郵件,在準確率、精度、召回率方面表現較優。
關鍵詞:支持向量機算法;中文垃圾郵件預測;中文分詞
中圖分類號:TP393 文獻標識碼:A 文章編號:1007-9416(2020)01-0038-02
0 引言
隨著互聯網技術的高速發展,電子郵件為人們提供便捷地服務,同時隨之產生的垃圾郵件也帶來了巨大的影響。大量垃圾郵件不僅占用網絡帶寬,同時也消耗存儲空間。不僅影響網絡傳輸和運算速度,同時嚴重影響郵件服務器的正常工作。
1 相關技術
1.1 中文分詞技術
我們采用jieba分詞進行中文語句切分,jieba分詞是一種結合基于規則和基于統計這兩類方法的分詞工具,它提供全模式、搜索引擎模式以及精確模式三種分詞方式。全模式主要目標是掃出所有可以成詞的詞語,分詞力度較細。搜索引擎模式,適合用于搜索引擎分詞。除了可以進行分詞外,它還可以進行詞性標注。精確模式分詞適用于文本分析。
1.2 垃圾郵件過濾技術
目前垃圾郵件過濾主要是黑白名單過濾、基于規則過濾和基于內容統計過濾三種方式。樸素貝葉斯、支持向量機、最近鄰等算法是基于內容統計的過濾方式。
黑白名單是一種被廣泛應用的垃圾郵件過濾技術。黑名單主要基于拒絕列表,首先將目標郵件的Email地址、IP地址或域名加入拒絕列表,也稱“黑名單”,當郵件服務器接收到新郵件時,先到拒絕列表上查找。白名單主要基于信任列表,信任列表也稱白名單,其內容和黑名單拒絕列表一致。但其檢驗原則是:信任列表中存在的名單用戶均合法,均為可靠聯系人。當郵件服務器檢測到與拒絕列表相反的用戶時,將用戶的郵箱地址標記為可信任并記入白名單。每當接收到白名單內聯系人的郵件時,郵件系統自動將其標記為正常郵件。
樸素貝葉斯過濾法是中文、英文垃圾郵件檢測領域中的常用方法,被廣泛應用于各類反垃圾郵件軟件中。樸素貝葉斯算法是一種基于規則的分類法,該算法將郵件分為兩種類型,即垃圾郵件和非垃圾郵件(正常郵件),算法通過分析兩類郵件中各特征詞分別出現的初始概率,并進行記錄。
支持向量機(Support Vector Machine),簡稱SVM,是美國統計學習理念的創始人Vapnik等提出的一種機器學習方法。該算法首先將訓練數據集由低維空間映射至高維空間,在目標高維空間內求解最優線性分類超平面,由此在輸入空間產生一個最優非線性決策邊界。在實際應用中,我們獲得的訓練數據并不總是完美的線性可分,其中可能會有個別噪聲點,這些噪聲點錯誤的被分類到了其他類中,將會直接導致分類結果產生嚴重誤差。如果將這些特異的噪點去除后,可以很容易的線性可分。但是,我們無法確定對于龐大數據集中哪些是噪聲點。對于這類線性不可分問題,本文選擇RBF核函數解決。
1.3 評價指標
本文使用準確率(Accuracy)、精度(Precision)、召回率(Recall)來評價預測算法。下文中變量均源于表1中2*2混肴矩陣。真正例(TP)是指模型將正類別樣本正確地預測為正類別。真負例(TN)是指模型將負類別樣本正確地預測為負類別。假正例(FP)是指模型將負類別樣本錯誤地預測為正類別。假負例(FN)是指模型將負類別樣本正確地預測為負類別。
正確率是我們最常見的評價指標,也稱查準率,通常來說,正確率越高,分類器越好。正確率的求解公式為:Accuracy = (TP+TN)/(TP+FP+FN+TN);
精度是精確性的度量指標,表示被分為正例的示例中實際為正例的比例。精度求解公式為:Precision=TP/(TP+FP);
召回率是覆蓋面的度量指標,也稱查全率,召回率度量有多個正例被分為正例。召回率計算公式為:Recall=TP/(TP+FN)。
2 垃圾郵件預測
本文實現了基于RBF核函數的SVM中文垃圾郵件檢測系統,并對郵件檢測系統進行量化評價。人工收集、匯總8000封郵件作為數據集,我們選取數據集中3100垃圾郵件、2900正常郵件為訓練樣本數據集,并對訓練樣本做類別標注。對已標注類別的訓練樣本,首先,對所有的文本進行數據預處理,去除特殊字符、停頓詞。然后,使用jieba分詞進行中文分詞,得到總詞庫,使用詞頻向量法,選取3000高頻分別構建正常郵件和垃圾郵件的特征向量。最后,根據得到的特征詞,采用Java、Scikit-Learn庫進行預測機模型訓練。針對測試樣本數據集中的每一封郵件,采用模型預測其類別,對整體結果進行統計分析。垃圾郵件預測流程如圖1所示。
3 測試與結果
本文測試樣本集,包含垃圾郵件數為1036封、正常郵件數為964封,測試結果:在964個正常郵件測試樣本中,使用本文的郵件檢測系統分類正確的郵件數為896,在1036個垃圾郵件測試樣本中,使用本文的郵件檢測系統分類正確的郵件數為932。由此可得到本系統的平均準確率為91.4%左右,精度92.9%,召回率89.6%。
4 結語
本文研究基于支持向量機SVM的中文垃圾郵件過濾技術。經測試實驗表明,該方法能夠有效的預測中文垃圾郵件,在準確率、精度、召回率方面表現較優。人工收集匯總數據存在人為主觀性、收集數據量少的特點,訓練數據集中提取得特征詞無法較為全面表征垃圾郵件特征。在后續工作中,我們將采用自動化郵件采集器,同時改進特征提取方法并引入特征詞數據字典,從而進一步提高分類準確性。
參考文獻
[1] 施麗容.基于P2P網絡結構的垃圾郵件識別技術研究[D].成都:西南交通大學,2008.
[2] 周志華.機器學習[J].航空港,2018(2):94.