李凱 邵連杰 秦志宇
摘?要:在信息技術飛速發展的今天,電子郵件作為一種快捷,經濟的通信方式得到了普及,但隨之而來垃圾郵件問題也愈加嚴重。郵件中包含的廣告、不良信息甚至是病毒,會對用戶造成更大的危害。本文通過對當前反垃圾郵件技術的研究,選取關鍵字過濾、黑白名單過濾與貝葉斯過濾三種過濾法來實現一個反垃圾郵件管理系統,旨在幫助用戶過濾垃圾郵件,獲取更好的郵件使用體驗。
關鍵詞:垃圾郵件識別;特征選擇;貝葉斯算法
1 研究背景
目前,email早已是非常基礎的網絡交流方式,然而目前卻有大量的人被垃圾郵件所困擾。目前市面上存在的反垃圾郵件方式主要有四種,分別是關鍵詞過濾技術、黑名單技術、白名單技術以及智能概率過濾技術。他們都有其優點,但各自也在應用空間上存在一些不足。[1]貝葉斯算法在垃圾郵件的分類上效果是很好的,但訓練數據集的數量和質量將會非常影響貝葉斯算法的實際效果。[2]
2 研究目的
本文研究的內容為實現一個穩定的反垃圾郵件管理系統,可通過黑名單過濾方式、關鍵字過濾方式和貝葉斯過濾方式實現對垃圾郵件的過濾。旨在使用多種技術來解決垃圾郵件對用戶的困擾,解決垃圾郵件頻繁騷擾用戶的情況,實現實用的垃圾郵件過濾管理系統。
3 關鍵技術
3.1 中文分詞技術
對英文進行分詞,只需按空格進行切片即可將句子拆分為詞語,而中文文本因為無明顯的拆分規則的特點,需要復雜的算法對文本進行分析處理。本系統使用JAVA平臺開源的IKAnalyer工具對文本進行分詞。IKAnalyer具有優化的詞典存儲,更小的內存占用,支持用戶詞典擴展定義等優點。
3.2 貝葉斯算法
貝葉斯過濾算法是基于貝葉斯概率公式設計實現的一種分類算法,是一種簡單有效的分類算法,在算法處理的對象相互之間的關系較小時,該算法可獲得非常好的分類效果。而當算法處理的對象相互之間的關系較大時,算法的效果將會變差。使用貝葉斯算法處理垃圾郵件、垃圾短信和垃圾評論可獲得非常好的效果,由于貝葉斯算法可以根據用戶收到的新郵件以及用戶對郵件的操作來進行自我學習,這使貝葉斯算法對垃圾郵件的識別越來越準確。
4 系統實現
4.1 郵件管理模塊
在郵件管理中,主要需要實現郵件刪除、郵件還原和徹底刪除功能。郵件刪除功能允許用戶刪除自己接收的郵件信息,該郵件刪除功能主要是將郵件移入垃圾箱,而不是徹底刪除郵件信息。郵件還原功能為郵件刪除功能的逆向操作,即將用戶通過郵件刪除功能移入垃圾箱的郵件還原到用戶收件箱。徹底刪除郵件功能允許用戶徹底從數據庫和磁盤上刪除用戶接收的郵件信息和郵件附件,且不可恢復。
4.2 郵件過濾模塊
郵件過濾模塊需要實現的直接功能主要有設置過濾方式和添加黑名單功能,還需要實現三種過濾方式的過濾算法。設置過濾方式主要設置當前用戶所使用的垃圾郵件過濾方式,主要包括黑名單過濾、關鍵詞過濾和貝葉斯過濾。用戶在過濾方法設置界面挑選想使用的過濾規則,系統根據用戶的選擇調用相應的過濾規則進行使用。
4.3 郵件收發模塊
郵件收發模塊主要實現了收郵件、發郵件、郵件存草稿和瀏覽郵件功能。支持從外部郵箱收發郵件。
收郵件的過程為:首先用戶點擊收取郵件后,程序前臺想后端發送收件請求,通過IMAP協議連接上該用戶所在的郵件服務器,進行認證后從郵件服務器上拉取該用戶的未讀郵件,并將郵件加入本系統的數據庫中。統計未讀郵件的數量,顯示有多少封未讀郵件顯示給用戶。如果未發現用戶有未讀郵件,則顯示未發現有未讀郵件。
發送郵件過程類似于郵件接收過程,在發送時檢查發送用戶是否在本系統中,若沒有,再將郵件發送到對方的郵件服務器上。
郵件存草稿功能為用戶在編寫郵件過程中,可點擊存草稿來將郵件內容保存到草稿箱,以供以后發送和編輯。
瀏覽郵件功能允許用戶查看已經收到的郵件,并在查看頁面進行相應的操作,如進行郵件刪除、還原、徹底刪除等操作。
4.4 貝葉斯過濾總體設計
貝葉斯過濾的過程為首先對訓練樣本進行分詞處理,然后根據分詞結果分別將垃圾郵件中詞的詞頻和正常郵件中詞的詞頻進行存儲。然后在收取一份新郵件時,先進行分詞,然后根據數據庫中的多個詞的詞頻在垃圾郵件分類中和正常郵件中的概率進行聯合分析,計算多個詞影響下該郵件時垃圾郵件的概率,如果大于設置的閥值,則認為是垃圾郵件,需要有豐富的垃圾郵件和正常郵件數據集作為訓練樣本。[3]
實現貝葉斯分類器的一般步驟為,首先對有標記的樣本數據進行分類,分為50%的訓練樣本,25%的驗證樣本以及25%的測試樣本,所有的分類均是從數據集中隨機抽取。接著取訓練樣本對貝葉斯分離器進行訓練,得到訓練后各個對象的概率,最后使用訓練的結果對驗證樣本進行分類,驗證正確率和誤判率,最后使用測試樣本對算法進行測試。[4]
參考文獻:
[1]金彩琴.對垃圾郵件過濾技術的問題研究[J].計算機技術與發展,2011,21(9):225-228.
[2]霍軍昌.垃圾郵件過濾中信息增益的改進研究[J].計算機科學,2014,41(06):214-224.
[3]MA X L.Research of spam-filtering based on optimized native Bayesian algorithm[J].Alication Research of Computer,2012,29(3):1091-1094.
[4]WANG S C,DU R J,LIU Y.The learning and optimization of full Bayes classifiers with continuous attributes[J].Chinese Journal of Computer,2012,35(10):2129-2138.