方小宇 羅補干 周鑠洋 郭麗莎
(中南民族大學數(shù)學與統(tǒng)計學學院,湖北 武漢430074)
近年來,互聯(lián)網(wǎng)已經(jīng)發(fā)展成為人們獲取信息、關(guān)注熱點事件、了解國情乃至了解世界的重要媒介。目前,我們已經(jīng)步入了“互聯(lián)網(wǎng)+”的生活時代。社會各方面高速發(fā)展、科技發(fā)達、信息泉涌,人們與政府之間的交流越來越密切,微信、微博、市長信箱、陽光熱線等網(wǎng)絡(luò)問政平臺逐步成為政府了解民意、匯聚民智、凝聚民氣的重要渠道。各類社情民意相關(guān)的文本數(shù)據(jù)量不斷攀升,給以往主要依靠人工來進行留言劃分的相關(guān)部門的工作帶來了極大挑戰(zhàn)。同時,隨著大數(shù)據(jù)、云計算、人工智能等技術(shù)的發(fā)展,建立基于自然語言處理技術(shù)的智慧政務(wù)系統(tǒng)已經(jīng)是社會治理創(chuàng)新發(fā)展的新趨勢,對提升政府的管理水平和施政效率具有極大的推動作用。本文首先通過網(wǎng)絡(luò)爬蟲搜集到7 個類別的9210條留言,然后對搜集到的數(shù)據(jù)進行處理和分析,接著運用樸素貝葉斯算法建立了多標簽分類模型,最后對模型進行評估。
為了模型建立的有效性,首先要對搜集的留言進行數(shù)據(jù)處理,包括數(shù)據(jù)清洗、文本分詞、文本向量化等,具體處理流程如圖1 所示。
圖1 數(shù)據(jù)預處理流程
通過對文本的分析,發(fā)現(xiàn)文本中存在許多無用無意義的字符或連接,如空白字符、“baidu.cm”等,這些無意義的字符給模型訓練和評估帶來負面的影響,因此,首先在文本中將這些無關(guān)字符去除。
去除無關(guān)字符后,接下來就是對文本進行分詞,常見的分詞方法有:基于字符串匹配的分詞方法、基于理解的分詞方法、基于統(tǒng)計的分詞方法和基于規(guī)則的分詞方法,每種方法下面對應許多具體的算法。對于此問題而言,本文采用Jieba 分詞庫。但因為jieba 詞庫中一些分詞與現(xiàn)實生活中人們習慣的分詞存在差別。比如下列一部分對留言主題的分詞結(jié)果:
1''“[‘西湖’,‘建筑’,‘集團’,‘占’,‘道’,‘施工’,‘安全隱患’]”
2''“[‘市中坡’,‘山’,‘公園’,‘內(nèi)溜狗’,‘有損’,‘景區(qū)’,‘環(huán)境’,‘應’,‘嚴禁’]”
3''“[‘農(nóng)村信用’,‘合作’,‘聯(lián)社’,‘208’,‘戶’,‘合伙’,‘建房’,‘工程’,‘招投標’,‘問題’]”
4''“[‘申請’,‘市公’,‘租房’,‘問題’,‘咨詢’]”
5''“[‘城市居民’,‘保障’,‘房’,‘相關(guān)’,‘政策’]”
6''“[‘校園’,‘暴力事件’,‘屢屢’,‘發(fā)生’]”
在這些分詞中,劃線的詞語的分詞都與現(xiàn)實生活中的分詞不太符合,所以要對分詞的詞庫進行添加,使這些詞語能夠符合現(xiàn)實的詞語表達,比如:“‘占道’,‘公園內(nèi)’,‘農(nóng)村信用合作聯(lián)社’,‘公租房’,‘保障房’,‘校園暴力’”。所以要將這些詞語更新到詞庫中,再次進行分詞。
在分詞之后,會發(fā)現(xiàn)分詞結(jié)果中存在大量無意義的詞,比如:“‘了’,‘的’,‘地’”等,不僅對文本分類沒有作用,還會增加之后的工作量,所以要將這些停用詞過濾。首先是使用傳統(tǒng)的停用詞庫去停用詞,由第一次去停用詞的結(jié)果,更新停用詞庫后,再次去除停用詞。
定義一個詞的權(quán)重通常采用的是TF-IDF 的方法。在信息檢索理論中,TF-IDF 是Term Frequency-Inverse Document Frequency 的簡寫,TF 是詞頻,IDF 是逆文檔頻率,用于反映一個詞對于語料中某篇文檔的重要性。在信息檢索和文本挖掘領(lǐng)域,它經(jīng)常用于因子加權(quán)。TF-IDF 的主要思想就是:如果某個詞在一篇文檔中出現(xiàn)的頻率高,也即TF 高;并且在語料庫中其他文檔中很少出現(xiàn),即DF 低,也即IDF 高,則認為這個詞具有很好的類別區(qū)分能力。
Cornell SMART 系統(tǒng)的詞頻的計算公式如下:
本文先將語料轉(zhuǎn)化為詞袋向量,根據(jù)詞袋向量統(tǒng)計TF-IDF,根據(jù)數(shù)據(jù)集文本序列長度,通過計算發(fā)現(xiàn)98.6%的樣本文本序列長度都小于2500。為了簡化計算,做出每2500 詞劃分一次的調(diào)整,長度大于2500 的進行切分,小于2500 的進行填充。最終可以得到文本的TF-IDF 表示。
首先,觀察數(shù)據(jù)集,數(shù)據(jù)分布如圖2 所示,共有七個分類,且數(shù)據(jù)具有不平衡的特性,最多的類別“城鄉(xiāng)建設(shè)”的數(shù)量是最少類別“交通運輸”的三倍多。由于多數(shù)類和少數(shù)類在數(shù)量上的傾斜,以總體分類精度最大為目標會使得分類模型偏向于多數(shù)類而忽略少數(shù)類,導致少數(shù)類被判斷為多數(shù)類的概率大大增加,造成少數(shù)類的分類精度較低。
圖2 類別分布圖
對于數(shù)據(jù)不平衡問題,可以從三個角度予以解決,分別是數(shù)據(jù)角度、評價指標角度和算法角度。此處采用從數(shù)據(jù)角度來著手,對原始數(shù)據(jù)進行回譯以達到增強數(shù)據(jù)的效果,即將目標數(shù)據(jù)進行多次不同語種翻譯,再翻譯回來的一種方法,將其它六類擴充到與城鄉(xiāng)建設(shè)數(shù)量相同。擴充后數(shù)據(jù)集數(shù)量達到14063條。數(shù)據(jù)增強示意圖如圖3 所示。
圖3 數(shù)據(jù)增強示意圖
3.2.1 貝葉斯定理
貝葉斯方法采用計算每一個樣本屬于每一類的概率,然后將樣本劃分為具有最大概率的那一類中。即已知樣本x 的條件下,計算屬于某一類的概率。
3.2.2 貝葉斯公式中的相關(guān)概率
先驗概率P(cj):表示訓練樣本數(shù)據(jù)前cj(類別)擁有的初始概率。P(cj)常被稱為cj的先驗概率(prior probability),通常采用樣例中屬于cj的樣例數(shù)|cj|與總樣例數(shù)|D|的比值來近似表示。如(1)式所示:
后驗概率P(cj|X):指當給定數(shù)據(jù)樣本X,屬于cj的概率。P(cj|X)被稱為cj的后驗概率(posterior probability),它反映先看到數(shù)據(jù)樣本X 后cj成立的置信度。使用貝葉斯公式計算后驗概率,如(3)式所示。
貝葉斯公式:
由于P(X)對所有類都是相同的,因此在實際的應用中我們只需計算貝葉斯公式分子部分,求取最大值,如(4)式所示,然后把X 就分到最大值對應的類ccmp中。
3.2.3 樸素貝葉斯分類器
由于計算(2)式相當困難,所以樸素貝葉斯分類器假設(shè):在給定樣本的目標值時屬性之間的相互條件獨立。即(2)式求取的類條件概率就是每個單獨屬性對應的概率的乘積,如(5)式所示。
因此,對于樸素貝葉斯學習方法就是從訓練樣本中估計不同的P(cj)和P(ai|cj),針對新的待分樣本實例,采用(4)式、(5)式進行計算給出分類結(jié)果。
表1
本文中使用準確率、召回率、F1-score 三個指標來評估算法效果。
4.1 精確率(Precision):分類結(jié)果中正確分類為Ci 的樣本數(shù)占分類結(jié)果中所有分為Ci 類別的樣本數(shù),衡量分類的查準率:
4.2 召回率(Recall):分類結(jié)果中正確分類為Ci 的樣本數(shù)占所有Ci 類的樣本數(shù)的比例,衡量分類的查全率:
4.3 F1-score:在精確率和召回率的基礎(chǔ)上提出了F1 值的概念,來對精確率和召回率進行整體評價:
最終得到整體的分類效果:
本文基于如上實驗步驟實現(xiàn)了樸素貝葉斯分類算法,衡量分類效果的F1 值高達92%,實驗結(jié)果表明樸素貝葉斯分類算法有很好的多文本分類能力。
樸素貝葉斯是經(jīng)典的機器學習算法之一,通過考慮特征概率來預測分類,是為數(shù)不多的基于概率統(tǒng)計學的分類算法,文章論述了貝葉斯模型的基本理論,采用貝葉斯分類器對網(wǎng)絡(luò)問政平臺的群眾留言進行了多標簽分類研究。通過將樣本14063條數(shù)據(jù)80%劃分為訓練集,20%劃分為測試集。進行測試評估,在測試集上準確率達到了91.68%,F(xiàn)1-Score 達到了0.9161。不足之處是貝葉斯分類模型需要知道先驗概率,并假設(shè)屬性之間相互獨立,因此當屬性個數(shù)較多或?qū)傩灾g相關(guān)性較大時,分類效率比不上決策樹模型。