◆蔡洪民 王慶香 郭偉匡
(廣州中醫(yī)藥大學(xué)醫(yī)學(xué)信息工程學(xué)院(信息中心) 廣東 510006)
基于機(jī)器學(xué)習(xí)的校園微博輿情監(jiān)控系統(tǒng)的研究
◆蔡洪民 王慶香 郭偉匡
(廣州中醫(yī)藥大學(xué)醫(yī)學(xué)信息工程學(xué)院(信息中心) 廣東 510006)
新媒體時(shí)代風(fēng)起云涌,由于具有文字短小、傳播力大等特點(diǎn),微博已經(jīng)成為我國(guó)網(wǎng)民主要的上網(wǎng)行為之一。然而,微博上一些負(fù)面輿情信息給社會(huì)和個(gè)人帶來巨大危害,越來越受到各級(jí)部門重視。為了保障校園網(wǎng)絡(luò)的公共安全,本文設(shè)計(jì)實(shí)現(xiàn)了一個(gè)基于新浪微博的校園網(wǎng)輿情監(jiān)控系統(tǒng),它通過關(guān)鍵字匹配和樸素貝葉斯算法相結(jié)合的方法實(shí)現(xiàn)了微博內(nèi)容的分類,然后進(jìn)一步基于聚類算法實(shí)現(xiàn)了微博內(nèi)容的熱點(diǎn)發(fā)現(xiàn),最后結(jié)合輿情數(shù)據(jù)庫實(shí)現(xiàn)了微博輿情預(yù)警。實(shí)驗(yàn)結(jié)果表明,系統(tǒng)穩(wěn)定、高效,加強(qiáng)了校園公共安全。
中文分詞;樸素貝葉斯;K均值聚類
據(jù)《中國(guó)互聯(lián)網(wǎng)絡(luò)發(fā)展?fàn)顩r統(tǒng)計(jì)報(bào)告》顯示,截至2016年12月,我國(guó)網(wǎng)民規(guī)模達(dá)7.31億,互聯(lián)網(wǎng)普及率達(dá)到53.2%。互聯(lián)網(wǎng)已經(jīng)在人民生活中扮演了一個(gè)無法替代的角色。然而,我們也看到各種網(wǎng)絡(luò)安全問題充斥于互聯(lián)網(wǎng)環(huán)境中,比如網(wǎng)絡(luò)負(fù)面輿情信息。論壇、微博、IM軟件、QQ群、微信朋友圈等平臺(tái)在成為網(wǎng)民表達(dá)個(gè)人觀點(diǎn)、抒發(fā)個(gè)人情緒的同時(shí),也成為小部分惡意分子煽風(fēng)點(diǎn)火、刺激網(wǎng)民負(fù)面情緒的重要工具[1]。網(wǎng)絡(luò)輿情已經(jīng)成為關(guān)乎社會(huì)安全穩(wěn)定的一個(gè)重要因素。對(duì)于高校而言,高校大學(xué)生思想尚未完全成熟,波動(dòng)大,容易受到網(wǎng)絡(luò)負(fù)面輿情信息影響。校園網(wǎng)作為高校學(xué)生日常學(xué)習(xí)生活的重要平臺(tái),其安全性不言而喻。因此必須對(duì)高校學(xué)生上網(wǎng)行為進(jìn)行監(jiān)控,輔之以教育引導(dǎo)[2]。
微博近年來由國(guó)外模式演變而來,它集成了手機(jī)短信、博客及社交網(wǎng)站的優(yōu)點(diǎn),是一個(gè)基于用戶關(guān)系的信息分享、傳播及獲取平臺(tái)。由于具有文字短小、傳播力大等特點(diǎn),微博迅速成為廣大網(wǎng)民獲取信息的重要途徑,對(duì)熱點(diǎn)事件的形成和傳播更是起到了超越傳統(tǒng)媒體的趨勢(shì)。通過對(duì)近幾年發(fā)生的諸如演藝明星吸毒被抓事件、趙薇電影涉臺(tái)獨(dú)演員事件、王寶強(qiáng)離婚等事件的觀察,可以發(fā)現(xiàn)微博已經(jīng)成為不少社會(huì)熱點(diǎn)事件的源頭所在[3]。同時(shí),微博內(nèi)容少、口語化等特點(diǎn)往往會(huì)造成信息的無組織現(xiàn)象,從而導(dǎo)致難以分類監(jiān)控[4]。因此,如何實(shí)現(xiàn)從微博大數(shù)據(jù)中發(fā)現(xiàn)熱點(diǎn)話題、追蹤其發(fā)展態(tài)勢(shì)并有效引導(dǎo)是微博信息傳播中亟待解決的問題。
微博的飛速發(fā)展引起了中外學(xué)者的注意,美國(guó)的謝爾·以色列所著《微博力》已翻譯成中文出版。國(guó)內(nèi)對(duì)于微博輿情的研究較多,杜松源從情報(bào)學(xué)的角度,借助信息傳播經(jīng)典理論,結(jié)合近期微博輿情案例進(jìn)行深度挖掘,對(duì)微博輿情的成因、特點(diǎn)等進(jìn)行剖析,總結(jié)出微博輿情擴(kuò)散的一般路徑[5];單月光提出包括特征提取、文本表示、文本聚類和觀點(diǎn)挖掘的文本聚類模型,從而抽取出熱點(diǎn)話題[6];碩士陳彥舟和曹金璇基于微博大數(shù)據(jù)進(jìn)行挖掘、分析,實(shí)現(xiàn)對(duì)輿情熱點(diǎn)話題的發(fā)現(xiàn)及追蹤[7]、對(duì)微博的社會(huì)網(wǎng)絡(luò)分析。基于Hadoop的微博輿情監(jiān)控系統(tǒng),將開源網(wǎng)絡(luò)爬蟲Nutch應(yīng)用到基于微博的公安輿情監(jiān)控系統(tǒng)中,并對(duì)Nutch進(jìn)行了二次開發(fā),增加虛擬登錄的功能使其實(shí)現(xiàn)對(duì)微博平臺(tái)的信息爬取。碩士張華在其碩士論文中,對(duì)BP神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行改進(jìn)。并用遺傳模擬退火算法(GSA)對(duì) BP神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)參數(shù)進(jìn)行優(yōu)化,在用四種輿情預(yù)測(cè)模型進(jìn)行輿情預(yù)測(cè)對(duì)比實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果表明,用GSA優(yōu)化的改進(jìn)BP神經(jīng)網(wǎng)絡(luò)的輿情預(yù)測(cè)模型能夠取得較好的預(yù)測(cè)效果。碩士張華研究的高校微博輿情監(jiān)控系統(tǒng)對(duì)于高校公共安全具有重大意義,且將成為未來高校信息公開監(jiān)控和輿情管理工作的重要工具。
本文基于網(wǎng)絡(luò)爬蟲技術(shù)、中文分詞技術(shù)、樸素貝葉斯算法以及Kmeans聚類算法,實(shí)現(xiàn)一個(gè)校園網(wǎng)新浪微博輿情監(jiān)控系統(tǒng)。實(shí)驗(yàn)結(jié)果表明它能夠發(fā)現(xiàn)微博熱點(diǎn),能夠結(jié)合輿情特征庫對(duì)校園微博輿情進(jìn)行有效識(shí)別并預(yù)警。
1.1 Jieba中文分詞
中文分詞是自然語言處理中最基本、最底層的模塊,分詞精度對(duì)后續(xù)模塊影響很大。比較著名的分詞系統(tǒng)有北京理工大學(xué)張華平博士開發(fā)的 ICTCLAS系統(tǒng)、哈爾濱大學(xué)的語言云系統(tǒng)等。jieba分詞系統(tǒng)是基于Python的分詞組件,它占用資源較小,對(duì)常識(shí)類文檔的分詞精度較高。
本文使用網(wǎng)絡(luò)爬蟲技術(shù)[9]來獲取微博內(nèi)容后,為了實(shí)現(xiàn)對(duì)微博內(nèi)容的結(jié)構(gòu)化表示,使用 jieba分詞系統(tǒng)對(duì)微博內(nèi)容進(jìn)行中文分詞[10]。
1.2 基于Scikit-Learn庫的樸素貝葉斯分類算法和Kmeans聚類算法
Scikit-Learn是一個(gè)用于機(jī)器學(xué)習(xí)的Python庫,它包括了數(shù)據(jù)預(yù)處理、數(shù)據(jù)降維、分類、聚類、回歸等內(nèi)容。
(1)樸素貝葉斯分類基于貝葉期定理,樸素貝葉斯分類器基于一個(gè)簡(jiǎn)單的假定:給定目標(biāo)值時(shí)屬性之間相互條件獨(dú)立。樸素貝葉斯分類的定義如下:
①設(shè) x ={a1,a2,…am }為待分類項(xiàng),而每個(gè)a為x的一個(gè)特征屬性。
②有類別集合C ={y1,y2,...,yn}。
③計(jì)算P(y1|x), P(y2|x)…,P(yn|x)。
④如果P(yk|x)=max{ P(y1|x), P(y2|x)…,P(yn|x)},則x∈yk。
樸素貝葉斯算法實(shí)現(xiàn)簡(jiǎn)單、效率高,且分類效果好,目前在文本分類中應(yīng)用較多。本文研究過程中文本分類部分就是使用Scikit-Learn庫中的樸素貝葉斯算法實(shí)現(xiàn)的。
(2)Mini Batch K-Means算法是K-Means算法的變種,采用小批量的數(shù)據(jù)子集減小計(jì)算時(shí)間,同時(shí)仍試圖優(yōu)化目標(biāo)函數(shù)。小批量 k-均值產(chǎn)生的結(jié)果,一般只略差于標(biāo)準(zhǔn)算法。該算法的迭代步驟有兩步:
①?gòu)臄?shù)據(jù)集中隨機(jī)抽取一些數(shù)據(jù)形成小批量,把他們分配給最近的質(zhì)心。
②更新質(zhì)心。
本文微博熱點(diǎn)發(fā)現(xiàn)中的子類進(jìn)一步劃分部分就是使用Scikit-Learn庫中的Mini Batch K-means聚類算法實(shí)現(xiàn)的。
本文研究以高校大學(xué)生微博用戶群體為研究對(duì)象,運(yùn)用微博信息采集、微博內(nèi)容中文分詞、微博內(nèi)容向量化、樸素貝葉斯分類、聚類等技術(shù),結(jié)合微博熱點(diǎn)話題的特點(diǎn)和傳播模式,匹配輿情特征庫,從而實(shí)現(xiàn)了對(duì)微博輿情信息的預(yù)警和微博熱點(diǎn)話題的發(fā)現(xiàn)。
2.1 系統(tǒng)設(shè)計(jì)
根據(jù)需求分析與系統(tǒng)設(shè)計(jì),本文研究的總體框架分為微博數(shù)據(jù)采集模塊、微博數(shù)據(jù)存儲(chǔ)模塊、Jieba中文分詞模塊、詞頻統(tǒng)計(jì)模塊、微博內(nèi)容文本分類模塊、微博熱點(diǎn)發(fā)現(xiàn)模塊、輿情監(jiān)控報(bào)警模塊等部分,具體如圖1所示:
圖1 系統(tǒng)總體框架
其中:
(1)微博數(shù)據(jù)采集模塊使用模擬登錄的方式,利用網(wǎng)絡(luò)爬蟲技術(shù)獲取微博內(nèi)容及評(píng)論。
(2)數(shù)據(jù)存儲(chǔ)模塊用于將微博內(nèi)容及其評(píng)論保存在 SQLite數(shù)據(jù)庫中,本文設(shè)計(jì)weibo表存儲(chǔ)抓取的微博內(nèi)容,具體設(shè)計(jì)字段如表1所示:
表1 weibo表
(3)Jieba中文分詞模塊用于對(duì)微博內(nèi)容的結(jié)構(gòu)化表示。
(4)詞頻統(tǒng)計(jì)模塊用于計(jì)算文本的權(quán)重向量:本文研究過程中使用TF-IDF權(quán)重策略過濾掉常見的詞語,保留重要的詞語,從而生成微博內(nèi)容的向量空間模型[11]。
(5)文本分類模塊使用樸素貝葉斯算法對(duì)微博內(nèi)容的向量空間模型進(jìn)行處理,從而對(duì)微博內(nèi)容進(jìn)行分類預(yù)測(cè)。
(6)微博熱點(diǎn)發(fā)現(xiàn)模塊在使用關(guān)鍵字匹配技術(shù)對(duì)微博內(nèi)容初步分類的基礎(chǔ)上進(jìn)一步基于Mini Batch Kmeans聚類算法進(jìn)行二次分類,再結(jié)合回復(fù)數(shù)、評(píng)論數(shù)計(jì)算得出一定時(shí)間段內(nèi)的微博熱點(diǎn)。
(7)輿情監(jiān)控報(bào)警模塊結(jié)合敏感詞數(shù)據(jù)庫、微博熱點(diǎn)實(shí)現(xiàn)對(duì)微博輿情的預(yù)警,一旦檢測(cè)到敏感信息,就會(huì)以聲音和發(fā)送郵件兩種方式發(fā)出警報(bào)。
2.2 系統(tǒng)實(shí)現(xiàn)
本系統(tǒng)基于Python語言開發(fā)實(shí)現(xiàn),編程環(huán)境為Anaconda,數(shù)據(jù)庫為SQLite。整個(gè)系統(tǒng)流程分為使用網(wǎng)絡(luò)爬蟲技術(shù)爬取新浪微博內(nèi)容、使用關(guān)鍵字匹配技術(shù)進(jìn)行微博內(nèi)容初步分類[12]、使用Jieba中文分詞系統(tǒng)對(duì)微博內(nèi)容進(jìn)行中文分詞、使用TF-IDF算法對(duì)微博內(nèi)容進(jìn)行詞頻統(tǒng)計(jì)、使用樸素貝葉斯算法進(jìn)行分類預(yù)測(cè)、使用Mini Batch Kmeans聚類算法進(jìn)行二次分類、結(jié)合輿情數(shù)據(jù)庫實(shí)現(xiàn)微博輿情預(yù)警等一系列過程。具體實(shí)現(xiàn)流程如圖2所示。
本系統(tǒng)在某大學(xué)校園網(wǎng)進(jìn)行測(cè)試,將系統(tǒng)部署在一臺(tái)服務(wù)器上。系統(tǒng)運(yùn)行后,首先基于模擬登錄的方式使用網(wǎng)絡(luò)爬蟲技術(shù)在微博上爬取所關(guān)注微博的內(nèi)容,內(nèi)容保存在SQLite數(shù)據(jù)庫中,然后進(jìn)行微博內(nèi)容熱點(diǎn)發(fā)現(xiàn)和輿情監(jiān)控。經(jīng)過半年多的運(yùn)行觀測(cè)與數(shù)據(jù)分析,它能夠?qū)π吕宋⒉﹥?nèi)容進(jìn)行爬取、保存和分類。圖3顯示了系統(tǒng)對(duì)微博內(nèi)容進(jìn)行分類預(yù)測(cè)情況。
圖2 微博監(jiān)控系統(tǒng)流程圖
圖3 本系統(tǒng)在某校園網(wǎng)運(yùn)行測(cè)試圖
之后本文使用Mini Batch Kmeans算法對(duì)各類別進(jìn)一步劃分子類,對(duì)子類中的大類進(jìn)行熱點(diǎn)計(jì)算,計(jì)算結(jié)果得出一段時(shí)間內(nèi)微博的熱點(diǎn)信息。圖4和圖5顯示了系統(tǒng)對(duì)微博熱點(diǎn)信息的熱點(diǎn)發(fā)現(xiàn)。最后結(jié)合輿情數(shù)據(jù)庫實(shí)現(xiàn)了對(duì)新浪微博的輿情監(jiān)控。
經(jīng)過實(shí)驗(yàn)測(cè)試,得到了以下結(jié)果:
(1)本文研發(fā)的系統(tǒng)能夠通過模擬登錄的方式登錄新浪微博,在輸入關(guān)注的微博ID后,能夠使用基于Python的網(wǎng)絡(luò)爬蟲技術(shù)獲得所有微博內(nèi)容及其評(píng)論。
(2)能夠使用Jieba中文分詞系統(tǒng)對(duì)微博內(nèi)容進(jìn)行分詞,并存入SQLite數(shù)據(jù)庫。
圖4 本系統(tǒng)微博熱點(diǎn)發(fā)現(xiàn)統(tǒng)計(jì)
圖5 本系統(tǒng)微博熱點(diǎn)發(fā)現(xiàn)內(nèi)容
(3)能夠基于關(guān)鍵字匹配方法對(duì)微博進(jìn)行預(yù)分類,能夠?qū)χ形姆衷~后的微博內(nèi)容及其評(píng)論進(jìn)行向量化,能夠基于樸素貝葉斯分類方法進(jìn)一步分類預(yù)測(cè),并根據(jù)預(yù)測(cè)結(jié)果調(diào)整類別。
(4)對(duì)各個(gè)子類別使用Mini Batch Kmeans聚類方法進(jìn)行進(jìn)一步分類,能夠?qū)ζ渲凶畲蟮淖宇惱糜?jì)算方法計(jì)算出一定時(shí)期內(nèi)的微博熱點(diǎn),并予以呈現(xiàn)。
(5)由于新浪微博本身已具有對(duì)重要輿情的過濾功能,在校園網(wǎng)實(shí)際環(huán)境中長(zhǎng)達(dá)數(shù)月的監(jiān)控中未發(fā)現(xiàn)反動(dòng)類輿情出現(xiàn)。
眾所周知,微博等新媒體平臺(tái)的負(fù)面輿情信息已經(jīng)危及大學(xué)生的心理健康甚至高校校園的安全穩(wěn)定,高校網(wǎng)絡(luò)輿情形勢(shì)日趨嚴(yán)峻。本文基于機(jī)器學(xué)習(xí)方法實(shí)現(xiàn)了新浪微博輿情監(jiān)控系統(tǒng)的建立,實(shí)驗(yàn)表明本系統(tǒng)能夠?qū)π吕宋⒉﹥?nèi)容進(jìn)行分類、熱點(diǎn)發(fā)現(xiàn)和輿情監(jiān)控預(yù)警,從而為加強(qiáng)校園公共安全提供一種解決方案。
由于微博本身的短文本等特點(diǎn),本方研究過程中對(duì)新浪微博的分類方面存在分類不準(zhǔn)確的情況。另外,微博內(nèi)容不僅有文字還有圖片等內(nèi)容,而本文研究尚未涉及這些內(nèi)容,這將是我們下一步的工作。
[1]劉穎,李欲曉.網(wǎng)絡(luò)輿情傳播特征分析[J].北京郵電大學(xué)學(xué)報(bào)( 社會(huì)科學(xué)版) ,2011.
[2]張思行.高校網(wǎng)絡(luò)輿情的話題演變過程研究[J].北京郵電大學(xué)學(xué)報(bào)(社會(huì)科學(xué)版),2011.
[3]趙璐.網(wǎng)絡(luò)輿情監(jiān)控系統(tǒng)關(guān)鍵技術(shù)研究[D].西安:西安電子科技大學(xué),2014.
[4]丁菊玲,勒中堅(jiān).基于觀點(diǎn)樹的網(wǎng)絡(luò)輿情危機(jī)預(yù)警方法[J].計(jì)算機(jī)應(yīng)用研究,2011.
[5]杜松源.基于微博的網(wǎng)絡(luò)輿情信息擴(kuò)散及其預(yù)警機(jī)制研究[D].綿陽:西南科技大學(xué),2015.
[6]單月光.基于微博的網(wǎng)絡(luò)輿情關(guān)鍵技術(shù)的研究與實(shí)現(xiàn)[D].成都:電子科技大學(xué),2013.
[7]陳彥舟,曹金璇.基于Hadoop的微博輿情監(jiān)控系統(tǒng)[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2013.
[8]張東霞.基于高校學(xué)生微博的網(wǎng)絡(luò)熱點(diǎn)發(fā)現(xiàn)及輿情分析研究[D].廣州:華南理工大學(xué),2013.
[9]程志強(qiáng).基于新浪微博主題的用戶影響力研究[D].沈陽:東北大學(xué),2013.
[10]陳險(xiǎn)峰.微博輿情分析系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].廣州:華南理工大學(xué),2015.
[11]何佳,周長(zhǎng)勝, 石顯鋒.網(wǎng)絡(luò)輿情監(jiān)控系統(tǒng)的實(shí)現(xiàn)方法[J].鄭州大學(xué)學(xué)報(bào)( 理學(xué)版) ,2010.
[12] 江黎黎.網(wǎng)絡(luò)輿情突發(fā)事件的處置機(jī)制研究[J].杭州電子科技大學(xué)學(xué)報(bào)( 社會(huì)科學(xué)版) ,2010.
網(wǎng)絡(luò)安全技術(shù)與應(yīng)用2017年5期