宋麗娜
本文主要研究基于微信平臺的輿情監(jiān)測分析技術(shù),解決微信平臺公眾號文章數(shù)據(jù)獲取問題,并對網(wǎng)絡(luò)輿情進(jìn)行情感分析。
1引言
微信作為新興的自媒體平臺,體現(xiàn)了鮮明的媒體屬性,已發(fā)展成為主流的輿論聚集平臺。然而,微信的信息傳遞更為私密、信息難以獲取等問題,使得目前國內(nèi)針對微博輿情監(jiān)測的研究已日漸成熟,微信方面卻鮮有問津。因此,本文將針對網(wǎng)絡(luò)輿情具有的特性進(jìn)行分析,并基于微信平臺,進(jìn)一步深入研究輿情監(jiān)測分析系統(tǒng)的關(guān)鍵技術(shù)。
2設(shè)計系統(tǒng)總體架構(gòu)
秉承著軟件工程中高內(nèi)聚、低耦合的思想,系統(tǒng)采用模塊化設(shè)計,對信息采集、傾向性判斷等各功能進(jìn)行設(shè)計,以方便后續(xù)對系統(tǒng)功能的添加及修改。系統(tǒng)總體框架如圖2-1所示。
在系統(tǒng)框架中,第一層為數(shù)據(jù)采集與存儲層,主要包含數(shù)據(jù)獲取、數(shù)據(jù)采集、數(shù)據(jù)存儲,應(yīng)用Python爬蟲和Hook技術(shù)從微信服務(wù)器中獲取信息,存入MySQL數(shù)據(jù)庫中。采集任務(wù)來源于已在數(shù)據(jù)庫中設(shè)定的任務(wù)隊列,任務(wù)列表的初期構(gòu)造通過人工手動建立,之后程序識別新任務(wù)對象,由抓取策略確定任務(wù)順序。第二層為分析層,主要包括自然語言處理、輿情分析等功能,中文文本可根據(jù)需要,對文本分詞、去停用詞及詞性標(biāo)注等文本預(yù)處理過程進(jìn)行選擇。目前輿情分析系統(tǒng)中,主要有文本傾向性分析、話題發(fā)現(xiàn)與跟蹤、突發(fā)事件檢索等多個方向,本文重點(diǎn)研究文本傾向性分析。第三層為展示層,形成可視化信息,提供決策依據(jù),并為進(jìn)一步系統(tǒng)研究提供數(shù)據(jù)分析支持。展示方式多元化,PDF文件可方便存儲,提供相關(guān)證據(jù)支撐,HTML網(wǎng)頁可讀性強(qiáng),方便數(shù)據(jù)分析,可進(jìn)行信息交互。
在數(shù)據(jù)獲取及存儲方面,本文通過Python爬蟲及Hook技術(shù)相結(jié)合的方式,實現(xiàn)微信平臺公眾號文章的自動獲取,并存儲于MySQL數(shù)據(jù)庫中。在輿情分析方面,本文重點(diǎn)研究機(jī)器學(xué)習(xí)方法,對各類特征選擇算法及分類算法進(jìn)行分析和實驗后,選擇出適合微信平臺文本傾向性分析的分類模型。在此基礎(chǔ)上,通過研究Google提出的word2vec模型,將其與機(jī)器學(xué)習(xí)方法結(jié)合,進(jìn)行中文文本傾向性分析,并與傳統(tǒng)分類模型作對比研究,通過對模型調(diào)優(yōu),使其在微信平臺文本傾向性分析中表現(xiàn)更優(yōu)。在輿情分析結(jié)果方面,實現(xiàn)HTML網(wǎng)頁、PDF文件等多元化成果展示方式。
首先由數(shù)據(jù)采集模塊負(fù)責(zé)數(shù)據(jù)爬取,并將數(shù)據(jù)完整信息保存至數(shù)據(jù)存儲模塊中。然后當(dāng)需要進(jìn)行文本處理時,從數(shù)據(jù)存儲模塊中提取相關(guān)信息,進(jìn)行文本預(yù)處理。根據(jù)不同功能應(yīng)用選擇不同功能模塊,文本傾向性分析根據(jù)語料來源,評論類短文本由卡方統(tǒng)計算法進(jìn)行特征選擇,微信文本由已訓(xùn)練好的word2vec詞向量模型處理,經(jīng)過機(jī)器學(xué)習(xí)分類算法給出結(jié)果。關(guān)鍵詞:檢索選擇word2vec訓(xùn)練模型,給定事件輸入,輸出關(guān)鍵詞:,然后由HTML或PDF展示。
3詳細(xì)設(shè)計
3.1設(shè)計實現(xiàn)數(shù)據(jù)采集模塊
在數(shù)據(jù)采集模塊中,將主要研究微信數(shù)據(jù)的自動化獲取。本文數(shù)據(jù)采集需要做到以下四個目標(biāo):第一,微信在數(shù)據(jù)采集時,由于搜狗微信網(wǎng)頁的數(shù)據(jù)有限,且有反爬取設(shè)置,因此,需要利用移動端獲取數(shù)據(jù)。第二,手機(jī)實現(xiàn)自動化操作,提高爬取效率。第三,數(shù)據(jù)自動存儲到服務(wù)器數(shù)據(jù)庫中。第四,多設(shè)備協(xié)調(diào)工作,加快采集速度。
3.2設(shè)計數(shù)據(jù)存儲模塊
數(shù)據(jù)存儲模塊采用MySQL數(shù)據(jù)庫,是一種開放源代碼的關(guān)系型數(shù)據(jù)庫,使用結(jié)構(gòu)化查詢語言(SQL)進(jìn)行數(shù)據(jù)庫管理。關(guān)系型數(shù)據(jù)庫一般由一個或數(shù)個表格組成:表頭(header),每一列的名稱;列(row),具有相同數(shù)據(jù)類型的數(shù)據(jù)的集合;行(col),每一行用來描述某個對象的具體信息;值(value),行的具體信息,每個值必須與該列的數(shù)據(jù)類型相同;鍵(key),表中用來識別某個特定的對象的方法,鍵的值在當(dāng)前列中具有唯一性。在數(shù)據(jù)存儲模塊中,主要包含以下兩個表:data_source表,存儲數(shù)據(jù)對象的主要特征信息,建立數(shù)據(jù)對象ID,存儲數(shù)據(jù)對象名稱、添加時間、監(jiān)測狀態(tài)等信息。data_article表,存儲文章特征信息,建立文章ID,存儲文章標(biāo)題、文章所屬數(shù)據(jù)對象ID、文章內(nèi)容、文本傾向性標(biāo)識等信息。
3.3文本傾向性分類模塊
網(wǎng)絡(luò)輿情傾向性分析主要是對網(wǎng)絡(luò)文章及評論進(jìn)行類別判斷,掌握目前針對某論點(diǎn)的主流態(tài)度,判斷其是支持、反對,或是客觀陳述,屬于分類問題,研究機(jī)器學(xué)習(xí)在傳統(tǒng)文本分類中的應(yīng)用是網(wǎng)絡(luò)輿情分析的重要環(huán)節(jié)。本文針對評論文本、微信文章數(shù)據(jù)的不同特點(diǎn),研究相適應(yīng)的特征選擇方法及分類算法,并對實驗結(jié)果進(jìn)行對比和分析。
在分類模塊當(dāng)中應(yīng)用傾向性分類算法,標(biāo)記數(shù)據(jù)庫中未標(biāo)記的文本,具體見下圖3-1所示。
3.4輿情報告展示模塊
輿情報告展示主要包括網(wǎng)頁模式和PDF模式,并已實現(xiàn)從數(shù)據(jù)獲取到文本分析、網(wǎng)頁展示、PDF文件保存的自動化操作。網(wǎng)頁模式采用B/S結(jié)構(gòu),即瀏覽器和服務(wù)器結(jié)構(gòu),用戶工作界面是通過WWW瀏覽器來實現(xiàn)。B/S主要分三層架構(gòu):表現(xiàn)層(UI)、業(yè)務(wù)邏輯層(BLL)、數(shù)據(jù)訪問層(DAL)。
4總結(jié)及展望
本文基于社交網(wǎng)絡(luò)的輿情監(jiān)測分析需求,設(shè)計系統(tǒng)總體架構(gòu),解決微信平臺文章數(shù)據(jù)獲取問題,并對網(wǎng)絡(luò)輿情進(jìn)行情感分析,提出word2vec模型與機(jī)器學(xué)習(xí)相結(jié)合的微信數(shù)據(jù)輿情分析模型,能夠有效提高分類準(zhǔn)確率、精確度、召回率。
網(wǎng)絡(luò)輿情監(jiān)測分析對互聯(lián)網(wǎng)海量信息自動獲取、采集、存儲,對大數(shù)據(jù)信息進(jìn)行挖掘,實現(xiàn)網(wǎng)絡(luò)輿情傾向性判斷、自動分類聚類、主題關(guān)鍵詞:聚焦等功能,最終形成簡報、圖表等分析結(jié)果,提供決策依據(jù)。
近年來,中文輿情監(jiān)測分析系統(tǒng)快速發(fā)展,并取得了豐碩的研究成果,但微信數(shù)據(jù)資源較少的問題,使得微信平臺在輿情監(jiān)測分析系統(tǒng)中一直比較空缺,在情感分析方面,由于開放的中文數(shù)據(jù)資源較少,情感標(biāo)注質(zhì)量較高的數(shù)據(jù)少之又少,無法形成統(tǒng)一的對比標(biāo)準(zhǔn),造成大量成果結(jié)論無法復(fù)現(xiàn)。本文在數(shù)據(jù)處理方面,雖然已經(jīng)采用交叉驗證的方法,但分類器訓(xùn)練數(shù)據(jù)難免存在人為主觀判斷偏差問題,造成分類模型的性能降低。另外,在word2vec向量模型建立時,由于采用平均值作為向量,忽略了詞的順序問題,也會造成分類不準(zhǔn)確,未來需要進(jìn)一步研究和完善。