劉旭東,蘇馬婧,朱廣宇
(華北計(jì)算機(jī)系統(tǒng)工程研究所,北京 100083)
如今世界各國都在大力發(fā)展自身的綜合實(shí)力,尤以信息技術(shù)為最。隨著人工智能時(shí)代的到來,許多國家都把情報(bào)工作的地位提高到了前所未有的高度,身處大數(shù)據(jù)環(huán)境下,無所不在的信息每分每秒都在產(chǎn)生數(shù)據(jù),世界各國的用戶無時(shí)無刻不在產(chǎn)生海量信息的交互,數(shù)據(jù)量已經(jīng)呈現(xiàn)一種爆炸的狀態(tài)。這些體積大、類型多的數(shù)據(jù)中有許多高價(jià)值的信息,關(guān)鍵在于能否及時(shí)發(fā)現(xiàn)并做出相應(yīng)的決策,因此誰掌握了數(shù)據(jù)誰就掌握了先機(jī)。
同樣,正因?yàn)檫@些非結(jié)構(gòu)化數(shù)據(jù)中包含了大量的情報(bào),例如某些社交軟件與論壇中難免出現(xiàn)一些危及社會安定、公共安全的信息。而這些信息并沒有想象中那么容易分辨,其中常常有一些“行話”,比如“豬肉”常被暗指毒品。傳統(tǒng)文本分析很難對具有該性質(zhì)的文本進(jìn)行準(zhǔn)確的分析。因此,收集和分析來自網(wǎng)絡(luò)的大量評論需要使用文本相似度和情感傾向分析技術(shù),掌握這些信息對于有關(guān)部門在提前預(yù)警、降低風(fēng)險(xiǎn)、提高應(yīng)變能力、打擊違法犯罪、維持社會安穩(wěn)等方面有著很大的輔助作用。
不可否認(rèn)的是,情報(bào)分析在大數(shù)據(jù)時(shí)代也面臨著非常嚴(yán)峻的挑戰(zhàn)。第一是如何準(zhǔn)確穩(wěn)定地獲取情報(bào)信息,第二是情報(bào)信息的分析與可視化,在數(shù)據(jù)量激增時(shí)如何維持信息的利用程度,是目前情報(bào)分析面臨的一大難題。
情報(bào)分析研究分為科技文獻(xiàn)研究、專業(yè)研究、綜合研究三個主要階段。情報(bào)分析方法包括邏輯學(xué)方法、數(shù)學(xué)法、系統(tǒng)分析方法、社會學(xué)方法、情報(bào)學(xué)方法和經(jīng)濟(jì)學(xué)方法等[1]。本文針對海量文本中關(guān)鍵情報(bào)的提取分析,主要使用了文本相似度分析及情感傾向分析。
目前,文本相似度計(jì)算的方法越來越豐富,情感傾向分析的效果取得了一定進(jìn)步。Zhang Shunxiang等[2]實(shí)現(xiàn)了一種基于情感字典的方法來更好地支持網(wǎng)絡(luò)監(jiān)管工作。王春柳[3]等人從表面文本相似度計(jì)算方法、語義相似度計(jì)算方法兩方面進(jìn)行研究分析,對最新成果進(jìn)行了歸納總結(jié)。GOVINOARAJAN M[4]提出了一種混合遺傳算法與樸素貝葉斯的方法來進(jìn)行情感分析,也取得了不錯的效果。李青松[5]認(rèn)為基于傳統(tǒng)機(jī)器學(xué)習(xí)進(jìn)行情感分析也是目前主流的方法,此類方法可以對多種特征建模并進(jìn)行分類。通過在大量的語料庫上進(jìn)行訓(xùn)練,最終輸出的模型不僅能夠提取出特征詞之間的關(guān)系,而且能夠考慮到文本中隨機(jī)詞和詞共現(xiàn)的影響。
但如今面向多源非結(jié)構(gòu)化的海量文本,僅僅依靠一種方法來對其進(jìn)行分析難以精確提取出更為深層次情報(bào)。為了更好地解決這一問題,本文從數(shù)據(jù)的獲取、聚類、分析以及展示層面,提出并設(shè)計(jì)了一套流程化的多源情報(bào)分析系統(tǒng),為當(dāng)今情報(bào)分析提供一定的支撐。
情報(bào)分析是情報(bào)工作的核心環(huán)節(jié),而內(nèi)容分析作為最為直觀的表現(xiàn)形式,具有直觀的說服力。本系統(tǒng)建立在充足數(shù)據(jù)的基礎(chǔ)上,運(yùn)用前沿的深度學(xué)習(xí)方法,通過管理篩選、綜合分析、推理對比等邏輯設(shè)定,使文本信息內(nèi)容的分析系統(tǒng)化、綜合化、準(zhǔn)確化,并形成多種類型的情報(bào)成果,為有關(guān)部門提前預(yù)警、有效打擊違法亂紀(jì)行為提供有力支撐。
完整的情報(bào)分析系統(tǒng)的體系結(jié)構(gòu)模型采用分層設(shè)計(jì),由下到上依次是數(shù)據(jù)層、業(yè)務(wù)邏輯層、界面展示層,如圖1所示。
圖1 情報(bào)分析系統(tǒng)體系結(jié)構(gòu)模型
(1)在數(shù)據(jù)層,確定研究對象,包括分析目標(biāo)、情報(bào)搜集與采集樣本。
(2)在業(yè)務(wù)邏輯層,一是制定標(biāo)準(zhǔn),構(gòu)建語料庫、停用詞典等;二是編碼,將采集到的文本數(shù)據(jù)轉(zhuǎn)化成文本向量;三是數(shù)據(jù)分析,使用自然語言處理相關(guān)的技術(shù)對文本向量進(jìn)行處理,實(shí)現(xiàn)相似文本的推送、文本情感傾向的分析。
(3)結(jié)果分析,將上一步得到的分析結(jié)果在界面展示層進(jìn)行相應(yīng)的可視化。
接下來對各模塊用到的核心技術(shù)進(jìn)行詳細(xì)闡述。
自然語言處理的基礎(chǔ)是各類自然語言處理數(shù)據(jù)集,如tc-corpus-train(語料庫訓(xùn)練集)、面向文本分類研究的中英文新聞分類語料、以IG卡方等特征詞選擇方法生成的多維度ARFF格式中文VSM模型、用于非監(jiān)督中文分詞算法的中文分詞詞庫、UCI評價(jià)排序數(shù)據(jù)、情感分析數(shù)據(jù)集等。
本文通過運(yùn)用深度學(xué)習(xí)與其結(jié)合的方法對數(shù)據(jù)源的文本進(jìn)行了較為透徹的分析。
目前比較常用的相似度分析方法是TF-IDF(Term Frequency-Inverse Document Frequency)和BM25(Best Matching 25)算法,用TF-IDF模型計(jì)算普通的文本相似度分析效果已經(jīng)比較可信,但是在實(shí)際的中文文本里,用TF-IDF表示的向量維數(shù)可能是幾百、幾千數(shù)量級,不易分析計(jì)算。GUAN W提出一種基于VSM的改進(jìn)文本相似度算法[6],JIAO Y提出基于樹結(jié)構(gòu)的文本內(nèi)容相似度計(jì)算[7]。此外一些文本的主題或者說中心思想并不可能完全地通過文本中的詞來表示。Bm25算法通常用來作搜索相關(guān)性評分,通過使用不同的語素分析方法及相關(guān)性判定方法來衍生出不同的相關(guān)性得分計(jì)算方法。而LDA(Latent Dirichlet Allocation)模型有效地解決了文本挖掘中的特征稀疏和分類性能受損問題,文本相似度分析基于LDA模型獲得了比較好的效果。
LDA主題模型是由BLEI等人提出的,其中“文本—主題—詞”LDA基于貝葉斯模型,模型圖如圖2所示。
圖2 LDA模型
假設(shè)有M篇文本,對應(yīng)第d個文本中有Nd個詞,即輸入如圖3所示。
圖3 輸入
為了找到每一篇文本的主題分布和每一個主題中詞的分布,LDA假設(shè)文本主題的先驗(yàn)分布是Dirichlet(狄利克雷)分布,即對于任一文本d,其主題分布θd為:
LDA假設(shè)主題中詞的先驗(yàn)分布是Dirichlet分布,即對于任一主題k,其詞分布βk為:
核心算法如圖4和表1所示。
圖4 核心算法偽代碼
LDA算法算法輸入:分詞后的文本內(nèi)容集(一般一篇文本一行)話題數(shù)K,超參數(shù)α和β算法輸出:1.每個文本的各個詞被指定的話題編號:topic.txt2. 每個文本的話題概率分布θ:theta.txt3. 每個話題下的詞概率分布Φ:varphi.txt4. 程序里詞語WORD的映射表:map.txt5.每個話題下Φ概率排序的TOPN特征詞:topn.txt
目前常見的情感傾向分析方法主要有兩種:基于情感詞典的方法和基于機(jī)器學(xué)習(xí)的方法。前者存在著非常明顯的缺點(diǎn)與局限性,比如段落的得分是其所有句子得分的平均值,這一方法并不符合實(shí)際情況;其次,有一類文本使用貶義詞來表示正向意義,尤其是在含有重要情報(bào)信息的文本中,如果使用情感詞典來判斷會出現(xiàn)與實(shí)際不相符的結(jié)果。ALSAQER A F等人提出了一種使用RapidMiner運(yùn)算符的方法進(jìn)行情感分析,一定程度提高了準(zhǔn)確率[8]。使用深度學(xué)習(xí)的方法能更為有效地解決這類問題。
3.2.1 數(shù)據(jù)預(yù)處理
對數(shù)據(jù)庫中所有的評論進(jìn)行分詞并去除停用詞。因?yàn)槟P偷妮斎胄枰氖菙?shù)據(jù)元組,所以需要將每條評論的詞語組合轉(zhuǎn)化為一個數(shù)值向量。目前常見的轉(zhuǎn)化算法有Bag of Words、TF-IDF、Word2Vec。Word2vec能快速構(gòu)建詞語的詞向量形式,詞向量的每一維的值代表一定的語義和語法上解釋的特征,其核心框架包括CBOW和Skip-gram兩種訓(xùn)練模式,CBOW依據(jù)上下文決定當(dāng)前詞出現(xiàn)的概率,但短文本上下文信息缺失,此模式不適用。Skip-gram采用跳躍組合的方式學(xué)習(xí)詞項(xiàng)規(guī)則,更能適應(yīng)短文本特征稀疏的需要[9]。
核心代碼如下:
def Word2Vecs(content):
vecs = []
for ct in content:
ct = ct.replace(' ','')
try:
vecs.append(model[ct])
except KeyError:
continue
return np.array(vecs,dtype='float')
3.2.2 構(gòu)建模型
本系統(tǒng)使用的是Na?ve Bayes SVM(Support Vector Machine)+PCA(Principal Component Analysis)來構(gòu)建模型,SVM分類表現(xiàn)更為寬松,且使用PCA降維后模型表現(xiàn)有明顯提升。
等式左邊代表的是一條評論的極性類型,P(cj)指該極性類型出現(xiàn)的概率,ΠP(wi|cj)指在當(dāng)前極性條件下文本中各個詞出現(xiàn)的概率的乘積。
其中V就是當(dāng)前訓(xùn)練文本的詞匯量。
系統(tǒng)該模塊的流程圖如圖5所示:
圖5 流程圖
將語料進(jìn)行分詞后轉(zhuǎn)化為向量并對結(jié)果進(jìn)行標(biāo)準(zhǔn)化和PCA降維后,經(jīng)SVM模型訓(xùn)練,得到P(positive)、N(negative)、C(confidence)三元組信息。
在微博、推特上各篩選了2 000條評論,Tor上則選取了6 000條具有“行話”性質(zhì)的評論文本用來測試,如表2所示。
表2 評測樣本數(shù)據(jù)集
常用模型的文本相似度計(jì)算的準(zhǔn)確率對比結(jié)果如圖6所示。
圖6 常用模型文本相似度對比圖
從測試結(jié)果可以看出,Naive Bayes在文本相似度計(jì)算中取得的效果并不令人滿意;而TF-IDF則是中規(guī)中矩,但對于這些具有特定主題的文本的中心思想不能非常準(zhǔn)確地反映;LDA模型很好地彌補(bǔ)了這方面的缺點(diǎn),能更加精確地返回與話題最為相似的文本,取得了比較好的效果。
情感傾向分析結(jié)果如圖7所示。
圖7 分析結(jié)果
表3 特征選擇對比
從表3不難發(fā)現(xiàn),在Na?ve Bayes+SVM模型中,特征選擇的三種技術(shù)對于微博、推特、Tor的數(shù)據(jù)集來說,Binary TF和TF-IDF在情感傾向分析特征選擇上的效果有所不足,而Word2Vec因其神經(jīng)網(wǎng)絡(luò)的性質(zhì)對于最終訓(xùn)練出來的權(quán)重矩陣有著更好的效果,對于準(zhǔn)確把握文本情感傾向起到了關(guān)鍵的作用。
實(shí)驗(yàn)證明該系統(tǒng)的設(shè)計(jì)方法對情報(bào)信息的獲取、分析有較好的效果。
文本相似度和情感傾向分析是自然語言處理中的一些基礎(chǔ)性研究,有著比較悠久的歷史,近年來隨著深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)的發(fā)展,各個模型的性能都得到了一定程度的提高。
目前的研發(fā)成果可以表明,運(yùn)用自然語言處理的方法計(jì)算文本相似度及情感傾向分析在一定程度上可以輔助情報(bào)分析人員進(jìn)行數(shù)據(jù)的存儲、清洗、處理、分析和結(jié)果展示。對于情感分析來說只是僅僅完成情感極性的一個分類、語法分析的任務(wù),本文構(gòu)建的專用于行話信息的語料庫在正負(fù)面情感分析上取得了較為滿意的效果。但是如何做到讓機(jī)器對人類情感進(jìn)行深入細(xì)膩的把握和分析,甚至是讓機(jī)器模仿、創(chuàng)造出人類的情感并與人類進(jìn)行情感交互是情感分析領(lǐng)域需要更加深入研究的問題。