韓洪勇 姜錦琨 楊超然 陳照奇

摘 要:隨著網絡信息時代的到來和新聞數據的不斷增加,人們需要對新聞進行分類的難度也不斷加大。那么,是否有一種有效的分類新聞信息的方法將新聞進行分類呢?而在文本分類中,有較好的文本分類的算法是樸素貝葉斯算法。本研究以通過網絡爬蟲的方式爬取某新聞網站的少量新聞數據數據,然后對數據進行簡單的數據預處理、中文文本分詞等,構建樸素貝葉斯分類器,進而實現對新聞分類的目的。
關鍵詞:樸素貝葉斯;新聞文本;中文文本分類
1 緒論
隨著網絡的迅速發展和大數據時代的到來,與網絡隨著而來的新聞數據也大量增加。面對爆炸的數據,需要使用恰當的方法對文本進行分類。文檔分類大致需要以下三個要素:文本向量模型表示、文本的特征選擇和文本訓練分類器。而目前比較流行的分類方法主要有貝葉斯方法、SVM、神經網絡、k2最近鄰算法等等。
本文采用貝葉斯的分類方法。貝葉斯是一種比較簡單、學習效率和預測效率都很高,并且性能又較好的基于概率的一種學習算法。樸素貝葉斯是在貝葉斯定理和特征條件獨立的前提下,給定訓練數據集,根據特征條件獨立學習計算輸入輸出的聯合概率分布,然后這就是構建的基礎模型,然后再給定輸入數據集x,根據貝葉斯定理求出后驗概率最大的輸出y。
2 樸素貝葉斯算法描述
一般的樸素貝葉斯分類算法的過程如下:
(1)從網絡上獲取數據,然后對數據進行分類,并標記。
(2)將分好類的數據進行中文分詞。
(3)將數據文本中垃圾詞語去除。
(4)將上面整理好的詞條組合成特征組,計算詞條的頻率信息。
(5)通過計算得到的詞條的頻率信息,計算出詞條再各個類別文本的先驗概率。
(6)再次輸入新的數據文本,進行中文分詞,去除垃圾詞語,合成特征組。
(7)將新的數據樣本的特征詞條計算得到的先驗概率帶入樸素貝葉斯公式當中,計算得到后驗概率,那么計算得到的最大概率的那個對應類別就是新聞文本的類別。
3 新聞文本的獲取及處理
對于新聞數據的獲取途徑主要是從新聞官網上進行獲取,對于一般的新聞網站,可以采用BeautifulSoup庫的方法編寫代碼爬取頁面數據,然后對頁面數據中的HTML標簽進行去除。而對于較為復雜的、大量的頁面新聞,甚至具有反爬取處理的網站,就需要使用scrapy框架和代理池的配合來爬取頁面數據。
4 分類器的構建
與英文可以通過非字母的方式進行語句的分割,但是新聞內容中都是中文文本,無法使用這種方式。這里使用第三方的中文分詞:jieba。使用jieba將中文的語句進行分割,并標記好各自的類別。
在分詞完成之后,會發現有很多垃圾詞匯(指與分類無關的詞匯,比如:的、是、在等),過多的垃圾詞匯會降低文本數據的分類的準確率,這里需要自定義一個去除垃圾詞匯的規則來去除垃圾詞匯。那么,去除垃圾詞匯之后的剩余的所有的分詞,將這些分詞全部用來訓練樸素貝葉斯分類器。除此之外,h還要對訓練集中的所有分詞進行詞頻的統計,將詞頻較高的分詞排列在前面。排列完成之后,將分詞進行文本向量化。
由于利用樸素貝葉斯分類器進行新聞文本分類時,需要計算各個分詞向量的概率,然后將這些概率進行相乘,得到乘積,使用這個乘積來獲得這個新聞對應的類別。但是如果這個詞向量中有一個的概率是0,那么最后分類的結果也是0,無法完成新聞的分類。本文使用拉普拉斯平滑的方法,將所有詞向量的出現的詞頻數增加1,也就是由之前的最低詞頻0變成現在的最低詞頻1,然后最低分母初始化為2,這樣就阻止了出現0的概率。
為了更加快速構建文本分類器,本文直接使用sklearn庫里面的naive_bayes方法直接構建分類器,采用先驗概率為多項式分布的樸素貝葉斯方法來進行構建。在sklearn中我們可以通過觀察多次去掉多少個高頻詞的個數和最終檢測率的關系,這里繪制出高頻詞(deleteNs)和準確率之間的關系來選擇本文最終決定刪除高頻詞的個數。
通過觀察上圖,本文最終選定deleteNS的個數為810,然后使用去掉高頻詞的個數為810,構建新聞分類的樸素貝葉斯分類器。最終測試的分類精確度為79.368%。
5 問題及改進
樸素貝葉斯算法是由貝葉斯定理發展而來,算法比較簡單,對于分類問題有著比較穩定的分類效率。同時,樸素貝葉斯分類器對于小規模的數據分類表現很好,并且適合增量式訓練。除此之外,樸素貝葉斯算法對于缺失數據不太敏感,用于文本分類效果較好。理論上來說,樸素貝葉斯分類算法與其他分類算法相比誤差較小,但是在實際情況上來看,當屬性個數比較多的情況下或者各個屬性之間相關性比較大時候,分類效果并不是很好,只有在各個屬性之間的相關性較小的情況下,樸素貝葉斯算法才能達到較好的分類效果。對于這種情況,可以通過改進部分屬性的關聯度,也就是半樸素貝葉斯算法。由于樸素貝葉斯是在假設各個條件相互獨立的前提下求出的先驗概率,但是在現實情況下先驗概率未必準確,所以預測效果可能沒有那么好。除此之外,樸素貝葉斯算法對輸入數據的形式也有很大的敏感性。
參考文獻:
[1]崔哲.基于樸素貝葉斯方法的文本分類研究[D].河北科技大學,2018.
[2]Peter Harrington.Machine Learning in Action[M].人民郵電出版社,2013.
[3]麥好.機器學習實踐指南[M].機械工業出版社,2016.
作者簡介:韓洪勇(1999-),男,山東青島人,現于山東科技大學攻讀學士學位,目前主要從事于計算機科學與技術的專業研究。