李晉源,康 雁,楊其越,王沛堯,崔國榮
云南大學 軟件學院,昆明650500
隨著人工智能、大數(shù)據技術的廣泛使用,網購中的在線點評數(shù)據包含著巨大的潛在價值,有助于消費者的選擇與企業(yè)在產品開發(fā)與銷售環(huán)節(jié)方面的決策。因此在互聯(lián)網數(shù)據呈爆炸性增長的背景下,如何從海量數(shù)據中挖掘有價值信息成為了急需解決的問題。產品具有多維屬性,不同消費者購買產品時會依據其各自偏好而會更多關注某些方面的特征。在線點評分為數(shù)字評分和在線評論,數(shù)字評分的粒度比較粗且難于細化,而在線評論能夠表達消費者對產品各方面屬性的真實感受,為其他購買者所信賴。因此如何對在線評論進行分析、挖掘,并將挖掘的信息運用到網絡銷售和顧客選購參考標準中,成為在線評論情感分析的重要方向[1-3]。
在線評論多為缺乏組織結構的文本信息,導致研究者難以直接獲取評論文本中所包含的有效信息。因此如何從繁雜無序的數(shù)據中獲取有效信息就顯得尤為重要。目前,許多研究者對情感分析算法進行了研究,并取得一定的成果。楊立公等[4]對使用馬爾科夫邏輯網將句子上下文與情感特征相結合進行情感分析,實現(xiàn)跨領域文本的情感分析。明均仁[5]將關聯(lián)規(guī)則方法運用到文本挖掘的情感分析中,設計出融合語義,關聯(lián)挖掘的文本數(shù)據情感分析方法,提高了情感分析的準確率。Medhat等[6]提出對商品進行情感分析的常規(guī)分析步驟為商品評論、情緒識別、特征選擇、情感分類、情緒極性判斷。羅慧欽等[7]提出基于隱樸素貝葉斯方法進行商品評論情感分類。
基于上述背景,本文提出一種深入挖掘評論信息的有效方法,以用戶需求為導向來對產品評論數(shù)據進行基于方面的更細粒度情感分析。
本文的主要貢獻如下:
(1)本文使用特征提取效果更好的Bi-LSTM-CRF模型對IT產品評論數(shù)據進行分詞,同時在方面詞的提取上進行深入細致的分析,利用哈工大的句法依存關系客觀地對評論數(shù)據中的方面詞進行抽取。
(2)采用基于self-attention機制的深度記憶網絡模型對從評論數(shù)據中提取出的方面詞進行情感分類。模型引入多頭注意力(Multi-headed attention)機制方法對embeeding層的輸出進行編碼,同時采用共享參數(shù),可以學習到每個上下文單詞的重要性/權重。
(3)通過量化情感評價指標,獲取用戶對IT產品的熱門關注點以及相應的情感評價傾向,為以后探索構建面向用戶需求的產品評估體系做基礎。
主題詞抽取是文本主題挖掘的基礎工作之一,本文采用公冶小燕等[8]提出的基于改進的TF-IDF算法及共現(xiàn)詞的主題詞抽取算法進行IT產品主題詞的抽取,結合已有的搜狗詞庫等專業(yè)詞庫來構建主題詞庫。
情感分析中分詞結果的好壞將直接影響后續(xù)信息處理的結果。由于神經網絡方法能夠極大地減少特征工程的工作量,中文分詞的方法也從傳統(tǒng)的非神經網絡方法遷移到基于神經網絡方法上來。Chen等[9]提出了一種帶有自適應門結構的遞歸神經網絡(Gated Recursive Neural Network,GRNN)。針對滑動窗口的局部性,Chen[10]提出用長短時記憶神經網絡(Long Short-Term Memory Neural Networks,LSTM)來捕捉長距離依賴。本文采用Bi-LSTM-CRF模型[11-12]來實現(xiàn)中文分詞任務,對文本序列采用word2vec方式[13]進行字級別的分布式向量化,既利用了雙向LSTM模型能夠保存上下文信息的優(yōu)勢,同時也利用了CRF層從句子層面考慮前后標注之間的影響,提高中文自動分詞的準確率和召回率。
相比粗粒度的情感分析,更細粒度的情感分析能實現(xiàn)對在線評論數(shù)據的深度挖掘。在細粒度情感分析的任務上,Kim等[14]基于Word Net建立情感詞典,并以此識別情感詞與情感極性,再通過觀點詞探測出產品特征并計算情感傾向。Xu等[15]使用主題模型識別隱式屬性,從而計算屬性情感傾向。Carenini等[16]使用詞語相似性對特定領域的產品屬性進行屬性分類,以類為標準計算類情感傾向。鄭安怡等[17]提出了一種新的ITS算法對文本情感分析領域內的特征加權進行研究。傳統(tǒng)的神經模型如Tree-LSTM[18]以隱式方式捕獲上下文信息,而且無法明確地展示出重要的上下文線索,使用相同的方式操作每個上下文單詞,因此無法明確顯示每個上下文單詞的重要性。
本研究旨在深入挖掘產品在線評論數(shù)據中有價值信息,對用戶所關注的產品方面詞進行情感分類。因此本文主要解決如下兩個問題:
(1)如何從在線評論數(shù)據中客觀準確地抽取反映用戶所關注的產品方面詞。
(2)基于評論文本中的方面詞,如何進行更細粒度情感分析,獲取針對方面詞的情感類別,量化情感指標。
特征觀點是指從在線評論中挖掘出的商品屬性及其相應的情感詞所形成的組合。特征觀點對的抽取,是對在線評論進行細粒度情感分析的基礎。Zhao等[19]提出在目標極性詞(T-P)搭配提取前,采用情感語句的壓縮步驟(Sent Comp)去除了情感分析中不必要的信息,降低句法分析時評論語句信息冗余帶來難度。
本文采用哈工大的依存句法分析[20]的方法,充分考慮句子的結構信息,并結合鄰近法作為補充對評論數(shù)據中方面—情感詞對進行抽取。依存句法分析是通過語言單位內成分之間的依存關系揭示其句法結構,識別句子中的“主謂賓”、“定狀補”這些語法成分,用于分析各成分之間的關系,進而提取出每條評論數(shù)據中的方面-情感詞對。LTP的依存句法分析關系如表1所示,關系類型表示每對相互依存的詞之間存在怎樣的句法關聯(lián)。
表1 句法依存分析標注表
通過對評論文本的詞性標注與句法分析發(fā)現(xiàn),評論數(shù)據中的方面詞通常是名詞和動名詞,而體現(xiàn)用戶情感的主要為形容詞和名詞。因此可通過詞性與依存句法關系組合的句法模板,對方面-情感詞對進行抽取。
評論集具有語法不嚴謹,表達隨意等特點,很多句子沒有嚴格按照語法規(guī)則來表達,因此本文制定以下6條規(guī)則根據句法依存關系提取方面-情感詞對,按照語法的規(guī)范性分為一般情況和特殊情況,一般情況包括規(guī)則1、2、3、4,特殊情況為規(guī)則5、6。
規(guī)則1若評論中方面詞作為主語,謂語為情感詞時,則抽取SBV關系,根據ADV等關系,可得到<SBV,主語,情感詞>或者<SBV,主語,修飾詞,ADV,情感詞>,若謂語為非情感詞,其后關系為CMP、VOB等,且CMP、VOB所指向的是情感詞,因此可得到<SBV,主語,謂語,CMP/VOB,情感詞>。
例1“蠻不錯,外觀很棒”,如圖1(a)所示,評論中“外觀”作為主語,“很”為修飾詞,“棒”作為情感詞,抽?。糞BV,主語,修飾詞,ADV,情感詞>,因此可得到方面-情感詞關系對(外觀,很棒)。圖1(b)中,“系統(tǒng)”作為主語,“反應”作為謂語,“慢”作為CMP關系中情感詞,因此可得到(系統(tǒng),慢)。
圖1(b)規(guī)則1示例2
規(guī)則2若評論中方面詞存在ATT關聯(lián)時,需要將ATT關系中的非情感詞和方面詞連接起來,將情感詞作為該方面詞的情感詞,表示為<ATT,方面詞,情感詞>或者<ATT,非情感修飾詞,方面詞ATT,情感詞>。
例2“電腦外觀滿分”,如圖2所示,評論中方面詞“外觀”關聯(lián)兩個“ATT”關系,方面詞“外觀”前面的ATT關系中的“電腦”為非情感修飾詞,則方面詞為“電腦外觀”,后面的“滿分”為情感詞,因此可得到方面-情感詞的關系對(電腦外觀,滿分)。
圖2 規(guī)則2示例
規(guī)則3若評論中出現(xiàn)一個方面詞且核心詞為動詞,其賓語為方面詞,則依據ADV,ATT等關系找到情感詞,從中選取同一分句中距離不超過6的情感詞,則可抽?。糣OB,賓語,謂語>,其賓語,謂語依據規(guī)則1,2構成方面詞和情感詞。
例3“可惜不支持Win7系統(tǒng)?!保鐖D3所示,核心謂詞“支持”,其賓語為“系統(tǒng)”,根據ATT關系可得“Win7系統(tǒng)”為方面詞,“不支持”為距離小于6的動詞情感詞,因此抽取得到方面-情感詞對(Win7系統(tǒng),不支持)。
圖3 規(guī)則3示例
規(guī)則4評論中含有并列關系,可通過COO并列結構和規(guī)則1,2,3,抽取方面詞-情感詞對。
例4“看電影和玩游戲都很順暢”,如圖4所示,存在COO并列結構,“電影”和“玩游戲”是并列結構,結合規(guī)則1,抽取得到(電影,很順暢),(玩游戲,很順暢)。
圖4 規(guī)則4示例
規(guī)則5評論中只含有一個關鍵詞且不符合規(guī)則1,2,3,4,因此可根據距離不超過6,找到情感詞,再根據ADV,ATT等關系找到修飾詞組成新的情感詞。
例5“唯一感到不順暢的就是鼠標”,如圖5所示,該句中存在方面詞“鼠標”,根據規(guī)則4找到距離不超過6的情感詞“順暢”,再依據ADV找到修飾詞“不”,組成新的情感詞“不順暢”,因此抽取到的方面-情感詞對為(鼠標,不順暢)。
圖5 規(guī)則5示例
規(guī)則6若含有明顯情感詞且無關鍵詞的情況下,可用比較常見的搭配進行關聯(lián),然后使用ADV,ATT等關系找到修飾詞。
例6“有明顯顆粒感,看著不舒服”,如圖6所示,該句中無方面詞,找到一個名詞情感詞“顆粒感”,通常使用“顆粒感”形容屏幕,然后根據ATT關系找到修飾詞“明顯”,因此抽取得到方面-情感詞對(屏幕,明顯顆粒感)
圖6 規(guī)則6示例
由以上6條規(guī)則可得到其規(guī)則覆蓋率,如表2所示,一般情況中的規(guī)則提取方面-情感詞對占到90.84%,特殊情況中規(guī)則6使用常用的關聯(lián)搭配占3.34%,使用規(guī)則6原因是在評論集中表達的內容往往是人們默認為已知的,因此有缺省方面詞。表4統(tǒng)計出最頻繁搭配表及其出現(xiàn)的次數(shù)。如表3所示,列舉的10個常用方面-情感詞對關聯(lián)搭配。
表2 規(guī)則覆蓋率
表3 常用方面-情感詞對關聯(lián)搭配(取10個)
面向方面的情感細粒度分類是產品評論情感分析方法的核心部分,本文提出基于self-attention機制的深度記憶網絡模型來對方面詞進行情感分析,如圖7所示。
給定一個句子m={w1,w2,…,wi,…,wn}和其方面詞(aspectword)wi,采用詞嵌入的方式對句子的每個單詞進行向量化,方面詞向量和上下文向量,如式(1):
其中,ek=[ ]0,…,0,1,0,…,0是第k個標簽的one-hot編碼形式,通過embeeding矩陣UE,得到300維的詞向量。
設置一個編碼器的模塊,如圖8所示,采用多頭注意力(Multi-headed attention)機制方法對embeeding層的輸出進行編碼,使得上下文的每個單詞與句子中的所有單詞進行self-attention計算,學習句子內部的詞依賴關系,捕獲句子的內部結構,得到上下文的隱藏狀態(tài),如式(2)、(3):
圖7 基于attention的深度記憶網絡
MultiHead(Q,K,V)=Concat(head1,head2,…,headh)WO,
圖8 Multi-headed attention模塊
由于上下文中的每一個詞不僅對于句子的表示貢獻度不同,而且不同的上下文詞對特定方面詞的情感傾向的重要性也是不同的。因此模型有針對性地處理相對重要的單詞,即將編碼后的外部存儲器m(m∈Rd×k)和一個方面詞向量vaspect∈Rd×1作為輸入,由attention(注意力模型)輸出一個連續(xù)矢量vec(vec∈Rd×1),再計算輸出向量作為每段記憶(每個存儲器m)的加權和,即:
其中K是記憶量的大小,?i∈[0,1]是mi的權重且
對于每一份記憶mi,使用前饋神經網絡來計算它與這個aspect的語義相關性。評分函數(shù)計算如式(5):
其中Watt∈R1×2d,batt∈R1×1。得到{g1,g2,…,gk}后,將其代入一個softmax函數(shù)來計算最后的重要分數(shù){?1,?2,…,?k},如式(6):
最后一層中的文本表示為情感分類的特征。由于每個組件都是可微的,整個模型可以通過梯度下降進行端到端的有效訓練,其中損失函數(shù)是情感分類的多分類交叉熵(categorical_crossentropy)如式(7):
為了達到預期效果,實驗數(shù)據集使用經過預處理的40 000條IT產品評論數(shù)據以及公共數(shù)據集Restaurant。深度記憶網絡模型的訓練過程中,批大?。╞atch_size)設置為32,迭代次數(shù)設置為4,同時使用初始值為0.9,學習率為1E-3的Adam優(yōu)化算法來訓練模型。
為驗證本文提出的模型在文本分類上的效果,本文采用深度學習框架Keras進行實驗研究。服務器配置如下:
14.04-Ubuntu,CP為Intel酷睿i7-5820K處理器,主頻3.30 GHz,32 GB內存,GPU為NVIDIAGeForce GTX970,4 GB顯存。
如表4所示,本文提出的面向方面的深度記憶網絡模型,在公共數(shù)據集Restaurant[21]的分類準確率相比模型LSTM、TDLSTM+ATT[22]和ContextAVG模型都所提升。同時,實驗通過疊加計算層的層數(shù)來測試模型的性能,可知計算層數(shù)增加時,模型準確率有明顯下降。
表4 模型在不同計算層下的準確率
同時,實驗對IT產品評論數(shù)據集進行面向方面的細粒度情感分析。在依存句法分析獲取的方面-情感詞對的基礎上進行人工處理得到10 000條數(shù)據用來訓練模型,然后對余下的數(shù)據進行基于方面詞的情感分類預測。實驗部分結果如圖9與如表5所示,不僅可以得到當前用戶對于IT產品集中關注點,還可以得到具體產品的情感傾向與量化值。譬如“顯示器”的評價偏向于正向,而“散熱器”的評價尤其是在“風扇”屬性方面用戶情感偏向于負向。因此,根據用戶對IT產品的情感需求,未來在IT產品制造與設計方面,需要側重于散熱方面尤其是在風扇上性能的改進。
圖9 部分評價對象的情感指標
表5 部分評價對象的不同屬性的情感指標
本文提出了一種面向方面深度記憶網絡的細粒度情感分析方法,通過引入self-attention機制來對依存句法分析提取的方面詞進行情感分類,進而量化情感指標,從中得到用戶對產品的集中關注點以及相應的情感傾向與量化指標,實驗表明該方法在IT產品細粒度情感分析方面有著良好的效果,有助于為產品設計者、制造商和管理者提供詳細的決策信息。
本文僅涉及自然語言處理應用和領域需求分析研究的主要部分,這是一個復雜而廣泛的主題。未來,不僅將對產品評論數(shù)據的方面詞抽取和分類的準確性再進一步深入的研究,同時也會研究構建以用戶需求為導向的評價體系。將情感和需求分析相結合并將其應用于特定的決策應用是一種具有生命力的方向。