郭宇奇,查文斌,李 斌,劉冬梅
(交通運輸部公路科學研究院,北京 100088)
一般將出行者的滿意度和情感傾向定義為:其在出行過程中在多大程度上對所采取的交通出行方式的服務水平持積極或者是消極態(tài)度。
春運期間,旅客出行集中,運輸需求旺盛,服務保障任務繁重。為及時了解旅客的春運出行體驗和服務需求,更好地掌握春運期間旅客出行規(guī)律,進一步做好春運工作,以在線問卷調(diào)查為基礎,以大數(shù)據(jù)技術為支撐,認真分析廣大旅客春運期間的服務體驗感受與意見建議,挖掘旅客對某種交通出行方式及其配套設施、運營狀態(tài)服務水平的滿意度和情感傾向,客觀評估政府部門春運工作服務舉措的實施效果,為進一步改進和提升春運服務工作提供基礎支撐。本研究通過春運期間對旅客出行體驗調(diào)查問卷的開放性問題中所收集的文本數(shù)據(jù)進行深度挖掘與分析,獲取了出行者的滿意度和情感傾向,并進一步分析識別出了不同地域的旅客在春運期間所關注的不同熱點問題。
從文本數(shù)據(jù)中獲取旅客的情感傾向,目前主要有基于機器學習和基于詞典兩種方法。基于機器學習的方法需要從整體數(shù)據(jù)中選取部分數(shù)據(jù)進行人工標注,以得到情感傾向分別為“正向”和“負向”的標注數(shù)據(jù)作為訓練集。利用機器學習算法進行情感分析常用的特征選擇方法有詞頻過濾方法、文檔頻次方法、TF-IDF方法、互信息法等[1-3]。但在具體的應用中存在如下缺點:(1)由于中文語句存在結構復雜和語義多變等特點,導致在特征選擇中存在詞性、主題、位置、句法結構、專業(yè)詞庫等[4]諸多干擾因素。(2)機器學習后續(xù)模型與算法的有效性過于依賴數(shù)據(jù)集的規(guī)模,且訓練模型的數(shù)據(jù)都需要人工標注。(3)在文本數(shù)據(jù)規(guī)模特別大的情況下,機器學習方法就顯得有些繁瑣且不能保證模型有很高的準確率。而相比較之下基于詞典的情感分析方法只要能獲得覆蓋面廣、質(zhì)量高的情感詞典,結合語義規(guī)則就能得到相對滿意的結果。
所謂基于詞典的方法,就是情感分析依賴于文本情感詞典和句法規(guī)則,根據(jù)情感詞的極性和權值通過加權求和的方法得出單個語句的情感值進而獲得整個文本的情感值,情感詞典包括基礎情感詞典和領域情感詞典,是情感分析的基礎?;谇楦性~典的情感分析重點在于情感詞典的構建和語句分析規(guī)則的制定,國內(nèi)馮超等[5]提出一種基于詞向量相似度的半監(jiān)督情感極性判斷算法(Sentiment Orientation From Word Vector,SO-WV)作為構建領域詞典的基礎??讉タ〉萚6]提出基于HowNet的語義相似度計算方法,結合基準詞構建領域情感詞典。嚴仲培等[7]提出一種基于詞向量的情感詞典基準詞集篩選方法,并利用詞語互信息的SO-PMI詞傾向算法構建領域情感詞典。劉鑫磊等[8]針對領域情感詞來源于分詞后的領域文本數(shù)據(jù),提出基于TF-IDF的方法篩選候選情感詞,過濾掉分詞切分出來的無效詞語,得到具有很好的類別區(qū)分能力詞或短語作為構建情感詞典的基礎。楊玉凡等[9]提出由上下文中的詞語以及組成詞語的字的信息、句子的情感極性信息、標記的種子詞的情感極性信息3部分組成一種新詞向量學習模型。李華等[10]提出基于HowNet的改進語義傾向度計算方法,算法顯示具有較高的語義傾向識別準確率,但不適用于HowNet未登錄詞的語義傾向判別。於偉[11]提出利用BTM文本主題模型去挖掘候選情感詞,利用詞聚類的方法選擇基準詞,在此基礎上利用改進的SO-PMI算法構建領域情感詞典。王志濤等[12]提出了基于統(tǒng)計信息的情感詞挖掘,滿足字串頻數(shù)、內(nèi)部耦合度、鄰字集信息熵3個統(tǒng)計信息閾值的詞作為候選情感詞,并用點互信息(Point-wise Mutual Information,PMI)對候選情感詞進行情感識別進而構建領域情感詞典。趙妍妍等[13]使用表情符做基準提升最終構建的領域情感詞典的規(guī)模,改進了使用情感詞語作為基準詞來構建領域情感詞典時其規(guī)模有限的不足。國外Baccianella等[14-15]基于WordNet構建了其相關領域普遍認可的SentiWordNet基礎情感詞典,但對特定領域的情感詞適應性不強。Cruz等[16]提出基于Window Size Algorithm算法對候選情感詞進行篩選,即在經(jīng)過TreeTagger算法處理后的語料中距離基準詞K個距離的形容詞/名詞作為候選情感詞;然后基于統(tǒng)計測度和概率測度的兩種算法計算候選情感詞的情感傾向并以此構建領域情感詞典。此外,文獻[17-19]在相關方面也進行了研究。綜上所述,基于詞典的文本情感分析主要圍繞基準詞的選取和在基準詞的基礎上構建領域情感詞典開展研究,雖然構建領域情感詞典的方法比較成熟,然而對基礎情感詞典的構建上涉及不多,所選用的基礎情感詞典的規(guī)模太小,或者是僅僅對現(xiàn)有基礎情感詞典做簡單的整合,缺乏強有力的依據(jù)。
本研究基于情感詞典的方法,在現(xiàn)有的研究成果和分析方法的基礎上,通過基于中國知網(wǎng)的語義傾向計算方法整合包括大連理工大學情感本體詞匯、清華大學褒貶義詞典、臺灣大學簡體中文情感極性詞典、中國知網(wǎng)情感詞典及其他個人研究者整理發(fā)布的詞典在內(nèi)的資源,整合過程以情感本體詞匯為基礎,擴展基礎情感詞典,構建規(guī)模大、覆蓋率高、詞語傾向正確的基礎情感詞典,在領域情感詞典的構建上,采用深度學習詞向量和支持向量機結合的方法,在此基礎上結合句分析規(guī)則構建旅客情感分析模型,并以春運大數(shù)據(jù)為實際對象,對旅客的情感進行分析和識別。
基礎情感詞典的構建基于中國知網(wǎng)語義體系,中國知網(wǎng)是揭示詞語的概念以及概念所具有的屬性之間的關系為基本內(nèi)容的常識知識庫,包括“概念”和“義原”兩個內(nèi)容。概念由義原組成,一個詞語可由多個概念來解釋。
(1)詞語相似度計算
根據(jù)相關論述,詞語之間相似度的計算基于在義原層次體系樹狀結構中兩個義原與之間的距離。對于兩個孤立詞語W1和W2,如果W1有n個概念:S11,S12,…,S1n,W2有m個概念:S21,S22,…,S2m;則W1和W2的相似度等于各個概念之間的相似度最大值,即:
(1)
概念之間的相似度由概念中的4個組成部分即第一獨立義原、其他獨立義原、關系義原和符號義原來計算,公式如下:
(2)
式中,p1,p2分別為兩個義原;d為p1和p2在義原層次體系中的距離;α為可調(diào)節(jié)參數(shù)。這樣兩個概念之間的整體相似度計算公式如下:
(3)
式中,βi(1≤i≤4)為可以調(diào)節(jié)的參數(shù),且有:β1+β2+β3+β4=1,β4≤β3≤β2≤β1。
Sim1(S1,S2)為第一獨立義原描述式,Sim2(S1,S2)為其他獨立義原描述式,Sim3(S1,S2)為關系義原描述式,Sim4(S1,S2)為符號義原描述式。
(2)詞語傾向性計算
詞語的傾向性計算基于基準詞和詞語之間的相似度。對于要整合的詞集,需要從中人工選取基準詞,基準詞選取的標準為詞與詞之間的相似度很低,同時每個詞又能代表極強的情感色彩。詞語褒貶傾向計算采用文獻[20]提出的計算公式,如下:
(4)
(5)
Senti(W)=Senti(W1)-Senti(W2),
(6)
式中,k為褒貶詞個數(shù),每個基準詞與候選詞的相似度采用公式(1)進行計算;Senti(W1)為詞W與正向基準詞集的相似度;Senti(W2)為詞W與負向基準詞集的相似度;Senti(W)為詞W的情感傾向,其值表示詞語的傾向強度,大于零表示詞W更接近褒義傾向,小于零表示詞W更接近貶義傾向,γ和β是上述詞傾向計算模型的超參數(shù),在實際應用中可通過參數(shù)尋優(yōu)提高模型準確率。
(3)整合詞典
對除了大連理工大學情感本體詞匯之外的包括清華大學褒貶義詞典、臺灣大學簡體中文情感極性詞典等詞典求交集和并集,從交集里人工初步選取40對基準詞[20]分別加入正、負基準詞集,對兩個基準詞集分別計算詞與詞的相似度,剔除與其他詞相似度比較大的詞語,重新選擇替補基準詞,迭代重復直到基準詞集里詞與詞的相似度在一定范圍。接下來對并集里的未登錄詞做舍棄處理,根據(jù)上述詞語褒貶傾向計算方法,對登錄詞的傾向進行計算,得到帶有情感傾向的新詞典。并對以上算法的準確率進行檢驗,不斷調(diào)整參數(shù)直到符合實際應用標準為止。
最后以大連理工大學情感詞匯本體為基礎,對于新的詞典里的每一個詞,如果這個詞在情感詞匯本體中出現(xiàn),則舍棄;否則就加入情感詞匯本體,最后生成一個覆蓋面較全的基礎情感詞典。
領域情感詞來源于實際的文本數(shù)據(jù),本研究根據(jù)結合詞性和TF-IDF算法進行情感詞的提取,其中多數(shù)情感詞屬于中國知網(wǎng)語義情感詞體系中的未登錄詞,如果采用構建基礎情感詞典的方法構建領域情感詞典,詞典的準確率和覆蓋率難以滿足實際需求?;诖?,本研究提出結合深度學習詞向量和支持向量機的方法構建領域情感詞典。
(1)深度學習詞向量
在詞語是未登錄詞的情況下,一種有效的詞語特征信息表示方法是采用詞向量,詞向量技術將詞轉(zhuǎn)化成為向量。目前主要有兩種詞向量方法,一種是詞的離散表示,包括獨熱編碼表示、詞袋表示等,另一種是詞的分布式表示,其基本內(nèi)涵體現(xiàn)為一個詞語的語義基于它的上下文,上下文相似的詞語,其語義信息也相似。
詞向量用來描述詞語特征時,分布式表示方法相比之下更能保存詞語本身的信息,具有代表性的分布式詞向量學習方法NNLM、CBOW、Skip-Gram,其中Skip-Gram根據(jù)目標單詞預測上下文,CBOW根據(jù)上下文預測目標單詞。本研究采用基于Hierarchical Softmax的CBOW模型訓練詞向量,如圖1所示。與傳統(tǒng)的神經(jīng)網(wǎng)絡語言模型相比,采用了霍夫曼樹來替代從隱藏層到輸出softmax層的映射,霍夫曼樹的所有內(nèi)部節(jié)點就類似之前神經(jīng)網(wǎng)絡隱藏層的神經(jīng)元。其中,根節(jié)點的詞向量對應我們的投影后的詞向量,而所有葉子節(jié)點就類似于softmax輸出層的神經(jīng)元,葉子節(jié)點的個數(shù)就是詞的個數(shù),具體訓練過程如下。
圖1 基于Hierarchical Softmax的CBOWFig.1 CBOW based on Hierarchical Softmax
輸入層為Context(w)中2c個詞的詞向量,最開始初始化的輸入層數(shù)據(jù)可以是詞的獨熱編碼形式,投影層將輸入層的2c個詞向量做求和取平均,即
(7)
式中,c為計算窗口,即某個詞與上下文相關的個數(shù),在訓練開始時人為指定,2c定義為特定詞前后各c個詞。
輸出層對應一棵以詞頻為權重構造出來的Huffman樹,以詞庫中的詞作為葉子節(jié)點,如果詞庫中有D個詞,則有D個葉子節(jié)點。對于詞庫中任意一個詞,Huffman樹必存在且唯一存在一條從根節(jié)點到詞w對應節(jié)點的路徑,路徑上存在分支,每個分支看做是一次二分類,分到樹的左邊定義為負類,分到右邊定義為正類,根據(jù)邏輯回歸模型易知一個節(jié)點被分到正類的概率如下:
(8)
被分為負類的概率就等于1-Ppos(θ),θ是一個向量,對應每個非葉子節(jié)點的待定參數(shù),每一次分類就產(chǎn)生一個概率,將這些概率連乘,就可以得到在上下文2c個詞的情況下,得到特定詞w的概率P(W|Context(w)),如下:
(9)
(10)
(11)
函數(shù)(11)使用隨機梯度上升法迭代求解,求解過程中并沒有把所有樣本的似然乘起來得到真正的訓練集最大似然,僅僅每次只用一個樣本更新梯度,這樣做的目的是減少梯度計算量,其參數(shù)梯度如下:
(12)
(13)
參數(shù)更新機制如下:
(14)
(15)
(2)領域情感詞典構建
在經(jīng)過評估校驗得到比較準確的詞向量模型后,以領域情感詞的詞向量和情感傾向為基礎,結合SVM支持向量機構建詞分類器,分類結果為正向和負向,分類器構建流程如圖2所示。在訓練過程中,取領域情感詞與情感詞匯本體的交集作為詞分類器的訓練數(shù)據(jù),剩余領域詞集作為待分類詞集。在構建完詞分類器后,對分類詞集里的每一個詞,依據(jù)其詞向量輸入到分類器,得到詞的情感傾向,最后將正向詞和負向詞合并即得到領域情感詞典,詞的強度采用公式(1)計算。
圖2 詞分類器訓練過程Fig.2 Training process of words classifier
在具備了比較完整的情感詞典之后,結合詞語和分句搭配規(guī)則就可以對文本的情感傾向進行分析。按照詞組成短語,短語組成句子,句子組成文本的原理,按標點符號對文本進行分句處理,每條語句的情感傾向由分句的情感傾向組成,分句的情感傾向由被修飾的情感詞、句型、詞語組合等關系決定。
(1)詞修飾規(guī)則
定義程度詞的權值為D,情感詞的情感值為W,否定詞的權值采用否定詞的權值相乘,記為N,經(jīng)過修飾后的情感詞的情感值記為E(W)。當程度詞修飾情感詞時,情感詞的傾向E(W)=D×W。當否定詞修飾情感詞時,情感詞的傾向E(W)=N×W。當程度詞和否定詞同時修飾情感詞而且程度詞出現(xiàn)在否定詞之前時,情感詞傾向E(W)=N×D×W。當程度詞和否定詞同時修飾情感詞而且程度詞出現(xiàn)在否定詞之后時,情感詞傾向E(W)=0.5N×W。
(2)句型規(guī)則
句子是陳述句,則句子傾向不改變,如果句子中同時出現(xiàn)反問號和反問詞,則句子傾向發(fā)生改變,如果句子是感嘆句,則句子情感增強,傾向不改變。
(3)句間規(guī)則
句與句之間的關系可依照表1進行分析,以連詞為分界點,分為連詞前的分句和連詞后的分句,按連詞出現(xiàn)的情況賦予不同的權值,比如在轉(zhuǎn)折關系中,如果句子中只出現(xiàn)轉(zhuǎn)折后接詞,則連詞前權值為0,連詞后權值為1,反之亦然。
表1 連詞詞典Tab.1 Conjunction dictionary
本研究采用常規(guī)的人工選取方法對基準詞進行選取,所選取的基準詞滿足詞間相似度不大,但又極具情感色彩,選取結果如表2所示,在此基礎上,利用公式(1)計算詞的情感傾向并構建基礎情感詞典如表3所示。公式(1)中的最優(yōu)參數(shù)組合通過迭代搜索查找,經(jīng)過驗證,公式(1)的算法準確率達了81.4%。
表2 基準詞選取Tab.2 Selection of benchmark words
表3 基礎情感詞典Tab.3 Basic emotion dictionary
(1)詞向量模型訓練
用google的word2vec詞向量工具構建詞向量模型,輸入數(shù)據(jù)為經(jīng)過清洗整理和分詞后的文本語料,每個旅客的數(shù)據(jù)存儲在一個列表中,所有旅客的數(shù)據(jù)組成二維列表。詞向量結果好壞直接影響后續(xù)的文本情感分析,對此需要有衡量措施來把握詞向量的質(zhì)量,目前常用的衡量措施主要有word analogy 和document classification 兩類,但不局限與此,實際上,應該以所得的詞向量對于實際任務的收益和效果為評價標準。對此,針對不同參數(shù)組合的詞向量模型,取文本語料與情感詞匯本體的交集一共561個詞作為評價詞向量模型好壞的依據(jù),把該交集按詞性分為正向詞集和負向詞集,對正向詞集里的每一個詞,分別計算其與正向詞集和負向詞集里每個詞的余弦相似度,然后求和取平均值分別作為該詞與正向詞集和負向詞集的相似度指標,對負向詞集里的每一個詞做同樣的運算。
如果詞向量模型精度足夠應用于實際任務中,那么每個詞對于其原生詞集相似度指標必然大于其對應于詞性對立詞集的相似度指標。事實上,本研究經(jīng)過訓練的詞性量效果完全能滿足實際應用。其中,正向詞向量模型精度檢驗如圖3所示;負向詞向量模型精度檢驗如圖4所示。
圖3 正向詞向量模型精度檢驗Fig.3 Accuracy test of positive word vector model
圖4 負向詞向量模型精度檢驗Fig.4 Accuracy test of negative word vector model
(2)SVM詞分類器訓練
詞分類器訓練數(shù)據(jù)采用文本語料與情感詞匯本體的交集,針對訓練過程中出現(xiàn)的數(shù)據(jù)集類別不均衡,數(shù)據(jù)集數(shù)量不充足的問題,本研究采用SMOTE算法進行處理,在此基礎上進行模型的訓練,模型的輸入為每個詞的詞向量,輸出標簽為1和-1,分別代表“正向”和“負向”,如表4所示。SVM的詞分類器參數(shù)尋優(yōu)過程如圖5和圖6所示,最后確定參數(shù)值C=355,gamma=1,核函數(shù)=“rbf”,經(jīng)過驗證,SVM分類器精度高達90.7%。
表4 訓練數(shù)據(jù)Tab.4 Training data
圖5 詞分類器超參數(shù)尋優(yōu)Fig.5 Hyper parameter optimization of word classifier
圖6 詞分類器核函數(shù)選擇Fig.6 Kernel function selection of word classifier
為了更好地了解春運期間旅客的需求,以便為旅客提供更好地服務、提高服務質(zhì)量與水平。2018年春運大數(shù)據(jù)調(diào)查問卷設置了開放性試題,其題目為:“您對春運服務還有哪些建議?”;旅客可以結合自己的實際情況進行留言,最終共收集到20余萬條旅客建議。
針對收集到的旅客建議,通過整合基礎情感詞典和領域情感詞典,結合句法分析規(guī)則,對2018年春運期間旅客的出行服務體驗調(diào)查文本數(shù)據(jù)進行傾向性分析。其中,“1”表示積極傾向,“-1”表示消極傾向。在測試模型精度上,人工選取并標注測試集,輸入模型,最后經(jīng)過3次重采樣自助法驗證得出本研究提出的模型平均準確率達82%,模型預測結果示例如表5所示。在實際應用中,對春運期間旅客的投訴、建議、看法的情感傾向挖掘可從一定角度客觀地反映出各省份、省各地區(qū)交通運輸管理組織工作開展的質(zhì)量和服務水平,結合LDA文本主題模型,還可挖掘分析出春運期間旅客關注的熱點問題和運輸組織工作不足的地方,本研究選取2018年全國春運客流量前十位的省市為例,對春運期間旅客對春運工作的“正面情感”和“負面情感”進行深度挖掘和分析,繪制出了如圖7所示的旅客情感占比圖。
同時選取具有典型代表的北京、河南、江蘇、廣東、山東、四川等省份,分別對6個省份旅客在2018年春運期間出行期間關注的熱點問題進行挖掘分析,具體結果如表6所示;從分析結果可以看出,旅客的關注度主要集中在“購票問題”、“安全和服務”、“高速公路管理”、“行業(yè)監(jiān)管”等方面;其中不同地域、不同省份的旅客所關注的內(nèi)容有所差別;比如:北京的旅客在樞紐的換乘便利性、購票問題、運力供需方面以及春運期間的安全和服務關注度表較高。相比之下,廣東省的旅客廣為關注春運期間相關部門的監(jiān)管力度、購票問題、高速公路管理以及安全和服務等問題。
表5 模型預測結果Tab.5 Model prediction result
圖7 重點省份的春運旅客情感占比分析Fig.7 Analysis of proportion of passengers’ emotion in Spring Festival transport in different provinces
表6 主要省份旅客關注熱點
Tab.6 Focus of passengers of major provinces
省份熱點內(nèi)容占比/%省份熱點內(nèi)容占比/%北京購票問題31.03換乘便利性26.66安全和服務22.16運力供需問題20.16廣東購票問題32.1安全和服務24高速公路管理23.34行業(yè)監(jiān)管力度20.56河南安全、服務和監(jiān)管33.54運力供需問題34.68購票問題31.78山東安全和服務35.6運力供需問題33.38購票問題31.02江蘇購票問題35.38監(jiān)管力度26.44運力供需問題19.52安全和服務18.66四川購票問題29.03行業(yè)監(jiān)管力度25.38安全和服務24.36運力供需問題21.23
上述分析結果基本符合2018年春運期間的實際情況。
本研究結合自然語言處理、數(shù)據(jù)挖掘和機器學習等技術,基于春運期間旅客出行服務體驗調(diào)查大數(shù)據(jù),構建了旅客情感分析模型并設計了相應的模型算法。通過對2018年實際春運大數(shù)據(jù)的測試分析結果可以看出本研究提出的模型能夠應用于實際的春運工作中,可有效挖掘和識別旅客的情感傾向以及關注的熱點,其結果能夠為客觀評估相關部門在春運的服務工作提供重要依據(jù),更為進一步提升和改進來年春運期間旅客出行服務工作提供基礎支撐。