999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于BG-DATT-CNN網絡的方面級別情感分析

2022-12-22 11:46:48余本功王惠靈朱曉潔
計算機工程與應用 2022年24期
關鍵詞:分類機制特征

余本功,王惠靈,朱曉潔

1.合肥工業大學 管理學院,合肥 230009

2.合肥工業大學 過程優化與智能決策教育部重點實驗室,合肥 230009

情感分析(sentiment analysis,SA)是自然語言處理(natural language processing,NLP)的一個子領域,在現實生活中有著非常廣泛的應用場景。例如企業可以對淘寶商品評價、餓了么外賣評價等進行情感分析,判斷其中蘊含的情感傾向,從而更好地洞悉用戶需求,推動產品更新迭代。

傳統的情感分析只關注評論表現出來的整體情感,對其中信息的挖掘往往不夠深入。方面級別情感分析(aspect-level sentiment analysis,ALSA)是一種細粒度的情感分析任務,旨在分析文本針對不同方面的情感極性。如圖1所示,在“Staffs are not that friendly,but the taste covers all.”這句評論中,對于方面詞“service”,句子表現出消極的情感極性。而對于方面詞“food”,句子表現出積極的情感極性。其中,“service”和“food”都是預定義的方面類別。通過方面級別情感分析,可以挖掘產品在各個維度的優劣,進一步明確如何改進產品。

圖1 方面級別情感分類的例子Fig.1 Example of ALSA

早期,人們主要使用機器學習方法來處理ALSA任務,如支持向量機(SVM)[1]。近年來,深度學習的方法漸漸成為主流,如LSTM[2]、記憶網絡[3]等。與傳統的情感分析任務不同的是,ALSA任務不僅需要考慮句子上下文的信息,如何將方面詞的信息融合到模型結構中也是需要研究的重點。

注意力機制[4]最初被用于圖像處理領域中,現在已經成為神經網絡中的一個重要概念。通過對輸入的各個部分賦予不同權重,注意力機制可以使模型高度關注重要信息。目前,結合注意力機制的神經網絡主要包括基于注意力機制的卷積神經網絡(CNN)和基于注意力機制的循環神經網絡(RNN)。RNN及其衍生網絡(如LSTM、GRU等)適合處理序列信息,具有很強的上下文依賴能力。而CNN類模型利用濾波器抽取特征,能夠有效地提取局部信息。基于此,本文提出了基于雙重注意力機制的BG-DATT-CNN模型。該模型結合了CNN和RNN各自的優勢,能夠同時提取方面詞和上下文相關信息,實現對文本信息的深層次挖掘。

1 相關工作

方面級別情感分析本質上屬于NLP領域的分類問題。傳統的方法首先會定義情感詞典[5]、語法規則等一系列特征,然后采用SVM、樸素貝葉斯[6]等分類器進行分類。這種方法雖然在特定領域有良好的表現,但是往往需要耗費大量的人工成本。

近年來,隨著深度學習的發展,越來越多的神經網絡模型[7-9]被應用到ALSA領域中。起初這些模型都沒有考慮到方面詞的信息,導致分類的準確率不高。有學者[10]指出40%的分類錯誤是忽略方面詞信息導致的。

后來人們開始嘗試將方面詞信息融入到模型中。根據方面詞的不同類別可將ALSA任務分為兩個子任務。一類基于目標詞(aspect-target),另一類基于方面類別(aspect-category),即本文的研究重點。兩種任務最大的區別是基于目標詞的任務的方面詞就在句子中,而基于方面類別的任務的方面詞是預定義的具有高度概括性的詞匯。換句話說,基于方面類別的ALSA任務不關心句子中各個具體的實體對應的情感極性,而是關心句子在幾個特定維度上表現出來的情感。例如在“The hamburger is delicious but expensive”這句話中,“hamburger”是一個目標詞,而“food”為方面類別,是一個具有概括性的詞匯。

RNN類序列模型適合處理文本信息,在ALSA領域應用十分廣泛。Tang等[11]提出了TD-LSTM和TC-LSTM。TD-LSTM將句子分成左右兩個部分,分別對目標詞的上下文用LSTM建模,最后將隱藏向量連接起來輸入到softmax函數中進行分類。TC-LSTM是在TD-LSTM基礎上的改進,通過將目標詞向量和上下文詞向量連接起來輸入到前后兩個LSTM中,從而實現方面詞和文本的交互。Tang等[3]還引入了記憶網絡[12]解決ALSA問題,捕捉不同的上下文單詞對于特定方面詞的重要性,改善了RNN、LSTM等網絡記憶能力較差的問題。以上模型主要是為了解決基于目標詞的ALSA任務。

目前,注意力機制在情感分析、關系抽取[13]、閱讀理解[14]等NLP任務中應用十分廣泛。在針對方面類別的ALSA任務上,ATAE-LSTM[15]首次將注意力機制應用到模型中,先將方面詞向量和上下文詞向量組合作為LSTM的輸入,再通過注意力機制給上下文單詞賦予不同的權重,極大地改善了模型表現。Tay等[16]認為簡單的拼接會增加模型的參數成本和訓練難度,因此提出在LSTM層后接入方面詞-文本融合層,首先對方面詞和上下文之間的關系進行建模,然后使注意力層專注于學習經過融合后的上下文的相對重要性。使用單層注意力機制可能不足以提取長文本中的重要特征。IAN[17]、AOA[18]、MGAN[19]都是針對基于目標詞任務設計的交互式注意力模型,首先通過對目標詞和文本分別建模,然后利用交互注意力機制獲取兩者的交互信息。孫小婉等[20]提出了結合多頭注意力機制的雙注意力網絡模型,使得模型能夠更全面地理解句中單詞之間的依賴關系。

CNN能有效提取句子局部特征,具有訓練速度快和權值共享等優點。Xue等[21]提出了一種基于CNN和門控機制的方面級別情感分析模型,設計了GTRU門控單元有選擇地提取相關信息。梁斌等[22]結合位置、詞性、目標詞三種注意力機制來構造多注意力機制卷積神經網絡模型,能有效識別不同目標詞的情感極性,證明了注意力機制和CNN結合的有效性。

綜上,現有的基于RNN的模型忽略了局部特征的重要性,而基于CNN的模型不能捕捉長距離依賴的信息。基于此,本文提出了基于雙重注意力機制的BG-DATTCNN模型,將RNN和CNN的優勢相結合,并設計了一種基于綜合權重的雙重注意力機制同時獲取方面詞和上下文相關信息。該模型首先采用BERT[23]對句子和方面詞分別編碼獲得文本的深層特征表示,再利用Bi-GRU提取全局特征,然后通過雙重注意力機制強化特征,給重要程度不同的單詞賦予不同的權重,最后利用CNN分兩階段提取重要特征,從而實現對文本信息更深層次的抽取。

2 BG-DATT-CNN模型

本文的任務是基于方面類別的ALSA任務。以下提到的方面詞均為方面類別。

對于長度為n的句子和m個預定義的方面詞v={a1,a2,…,am}。本文的目標是針對不同的方面詞分析句子的情感極性。例如句子“The price is reason‐able although the appetizers is poor.”,對于給定的方面詞“price”,模型輸出的是積極的情感極性,而對于給定的方面詞“food”,模型輸出的是消極的情感極性。本文利用BERT[23]將每一個單詞映射成低維空間的連續詞向量,得到上下文詞向量矩陣E=[x1;x2;…;xn]∈Rn×dw和方面詞向量V∈R1×dw,其中dw為詞向量維度。

2.1 雙重注意力機制

注意力機制的作用是在訓練過程中,通過計算權重的方式讓模型了解輸入數據中哪一部分信息是重要的。本文通過雙重注意力機制計算兩類權重。外部注意力機制根據方面詞和上下文的相關程度計算權重,內部注意力機制根據單詞對上下文語義重要程度計算權重。

(1)外部注意力機制

對于ALSA任務而言,外部注意力機制的作用是獲取文本和方面詞的依賴關系,強化文本的方面詞相關特征。通過計算方面詞和句子中各個單詞的注意力得分,給和方面詞相關度不同的單詞賦予不同的權重。例如在“Staffs are friendly,but the taste is bad.”這句話中,“friendly”是用來形容“service”的,而“ok”是用來形容“food”的。因而在該句中,單詞“friendly”相比“bad”與方面詞“service”相關程度更高,因此應該被賦予更大的權重。假設句子的向量表示為h,方面詞的向量表示為V,外部注意力計算公式如下:

首先采用縮放點積注意力計算h和V之間的相似度,然后通過softmax函數歸一化得到注意力權重α1。其中d為詞向量維度。

(2)內部注意力機制

內部自注意力機制即自注意力機制,是注意力機制的一種特殊形式。通過計算句子中每一個單詞的注意力得分,給重要程度不同的賦予不同的權重。比如在“The place is so cool.”這句話中,相比其他單詞,“cool”這個詞直接體現了情感傾向,對句子語義的影響更大,應該被賦予較大的權重。

根據文獻[24]提出的計算文本中注意力的方式,本文首先將句子的向量表示h輸入到一個單層的感知機中得到u作為h的隱層表示。為了衡量每個單詞的重要性,本文用u和一個隨機初始化的上下文向量uw的相似度來表示,然后經過softmax操作獲得了歸一化的注意力權重α2。公式表示如下:

其中,tanh為非線性激活函數,w、uw為參數矩陣,b為偏置。

2.2 基于BG-DATT-CNN網絡的層次特征提取

BG-DATT-CNN模型的整體結構如圖2所示。模型共由6個子模塊組成,分別為詞嵌入層、Bi-GRU層、雙重注意力層、K-Max池化層、CNN層和輸出層。首先將上下文詞向量矩陣E輸入到Bi-GRU中獲取句子的全局特征,然后通過雙重注意力機制強化句子的上下文相關特征和方面詞相關特征,再利用K-Max池化和TextCNN分兩步提取特征,增強模型的特征提取能力。最后將得到的特征輸入到全連接層中得到結果。

圖2 BG-DATT-CNN模型結構圖Fig.2 Architecture of BG-DATT-CNN

(1)Bi-GRU提取全局特征

GRU是一種序列模型,可用于文本建模,雙向的GRU可以從前后兩個方向對句子建模,同時考慮到上下文的信息。因此,本文將上下文詞向量矩陣E輸入到Bi-GRU中提取句子的全局特征。前向的GRU產生一個隱藏向量h1∈Rn×dh,后向的GRU產生一個隱藏向量h2∈Rn×dh,最終的輸出hs由h1和h2連接起來得到。公式表示如下:

其中,dh為隱藏單元個數。

(2)雙重注意力機制強化重要特征

根據上文提出的計算文本中雙重注意力的方式,本文首先對Bi-GRU層輸出的隱藏向量hs計算內部注意力得到注意力權重αin,再對hs和V計算外部注意力注意力權重αout。然后將兩者相加得到綜合權重α。最后將hs和α相乘得到加權后的句子表示s。公式表示如下:

(3)K-Max池化提取前K個重要特征

在NLP領域,池化層主要用來提取特征。最大池化為比較常見的池化操作,做法是保留其中最重要的特征,但這樣會不可避免地丟失部分重要特征。K-Max池化可以取所有特征值中得分在Top-K的值,并保留這些特征值原始的先后順序,即通過保留更多有價值的信息供后續階段使用。本文對注意力層輸出的向量s表示采用K-Max池化,保留前K個注意力分值較大的向量,得到前K個詞的組合特征向量γ。

(4)CNN提取局部特征

本文采用類似于TextCNN模型[25]的結構進一步提取局部特征。該網絡第一層為輸入層,將K-Max池化層提取的前K個向量γ作為輸入;第二層為卷積層,使用多個大小不同的濾波器對輸入的向量進行卷積運算;第三層為池化層,執行最大池化操作,提取最重要的特征,重新構建一個特征向量r。

最后將r輸入到全連接網絡,通過softmax函數分類,得到每個文本所屬類別的概率分布值p,最大值的類別即為預測類別。公式表示如下:

其中,w'為參數矩陣,b'為偏置。C為情感類別數。

2.3 模型訓練

其中,i為文本序號,j為類別序號。λ‖θ‖2為交叉熵正則項。

3 實驗分析

3.1 數據集

本文采用國際語義評測大賽SemEval 2014的Res‐taurant數據集(https://alt.qcri.org/semeval2014/)來驗證模型的有效性。該數據集一共包含3 518條評論,每條評論包含若干個方面詞和對應情感類別。其中方面詞包含“Food”“Aspect”“Service”“Ambience”和“Anecdotes”,情感類別分為“Positive”“Negative”和“Neutral”。實驗的任務是根據輸入評論文本和給定的方面詞,輸出對應的情感類別。表1給出了本文實驗使用數據統計。

表1 實驗使用數據統計Table 1 Statistic of datasets

3.2 參數設置

本文實驗中的詞向量有兩種,分別為斯坦福開源的Glove詞向量(https://nlp.stanford.edu/projects/glove/)和BERT預訓練得到的詞向量,其中Glove每個詞向量維度為300維,詞典大小為1.9 MB。BERT預訓練詞向量為768維。其他參數如表2所示。

表2 模型參數設置Table 2 Parameter settings

3.3 對比實驗與分析

本文選取了基于方面類別任務的5種基準模型在相同的數據集上進行對比實驗。

(1)Bi-LSTM:即雙向循環神經網絡,不考慮方面詞信息,直接將前后兩個隱藏向量拼接后作為句子表示,輸入到softmax分類器中。

(2)Bi-GRU:將Bi-LSTM中的LSTM單元換成了GRU。

(3)AT-LSTM:由Wang等[15]提出,首先通過LSTM對文本上下文建模,然后將隱藏向量和方面詞向量連接后輸入到注意力網絡中,再由注意力向量輸入到softmax中進行分類。

(4)ATAE-LSTM[15]:在AT-LSTM基礎之上將方面詞向量和上下文詞向量拼接后作為模型的輸入,進一步加強方面詞和上下文的交互。

(5)AF-LSTM[16]:相對于ATAE-LSTM模型,最大的不同就是增加了一個word-aspect融合層,代替了原來的直接拼接的操作。

(6)BG-DATT-CNN:本文模型。

本文采用準確率(Accuracy)作為模型分類性能的評估標準,對比實驗結果如表3所示。

表3 不同模型準確率對比Table 3 Accuracy of different models

由表3可知,本文提出的BG-DATT-CNN模型在和幾個基準模型的對比實驗中取得了最好的分類效果,基于Glove詞向量的BG-DATT-CNN分類準確率達到了77.69%,相比AF-LSTM提升了2.50個百分點,從而驗證了模型的有效性。而基于BERT預訓練詞向量的BGDATT-CNN準確率達到了78.24%,比基于Glove詞向量的BG-DATT-CNN準確率提升了0.55個百分點。這說明了BERT預訓練詞向量比Glove詞向量質量更高,包含了更多的語義信息。

將Bi-LSTM和Bi-GRU對比可知,Bi-GRU的效果略優于Bi-LSTM。并且前者的結構更簡單,訓練速度更快。這也是本文模型選擇Bi-GRU提取全局特征的原因。

Bi-LSTM和Bi-GRU由于沒有考慮到方面詞信息,僅僅對上下文建模,因此效果相對較差。AT-LSTM改進了這一點,將LSTM的隱藏向量和方面詞向量連接后再利用注意力機制對重要程度不同的單詞賦予不同的權重,使得準確率有了較大的提升。這也說明了注意力機制的重要作用,即能使模型在訓練過程中高度關注部分信息,忽略不相關的信息。

ATAE-LSTM在AT-LSTM基礎上進一步融合了方面信息,將方面詞向量和上下文向量連接后作為模型的輸入,使得效果更優。然而簡單拼接并不是一種很好的融合方式,ATAE-LSTM不能使注意力機制專注于對上下文單詞之間的關系或方面詞和上下文的關系進行建模,并且增加了參數成本。AF-LSTM摒棄了直接拼接的方式,設計了方面詞-上下文融合層,改進了融合方式,使得準確率提高了1.74個百分點。

以上基于注意力機制的模型都只采用了一種注意力機制,BG-DATT-CNN采用了雙重注意力機制,能夠提取到更加豐富的特征,并且結合了Bi-GRU和CNN各自的優勢,因此取得了最高的分類準確率。

3.4 BG-DATT-CNN模型分析

3.4.1 不同注意力機制作用分析

BG-DATT-CNN模型采用了內外兩種注意力機制對上下文和方面詞建模,為了更深入地探究不同注意力機制對模型的影響,本文設計了多組對比實驗進行分析。實驗模型如下:

(1)BG-CNN。不使用任何注意力機制,將Bi-GRU層得到的隱藏向量直接輸入到CNN層進行特征提取。

(2)BG-IATT-CNN。僅使用內部注意力機制,其他部分與BG-DATT-CNN相同。

(3)BG-EATT-CNN。僅使用外部注意力機制,其他部分與BG-DATT-CNN相同。

(4)BG-DATT-CNN。本文模型。

表4為上述4種模型在SemEval 2014的Restaurant數據集上的實驗結果,詞向量均使用Glove。

表4 不同模型準確率對比Table 4 Accuracy of different models

由表4可得,在不使用注意力機制的情況下,BG-CNN的準確率僅為74.21%。BG-IATT-CNN在BG-CNN的基礎上加上了內部注意力,能夠使模型訓練時更加專注于上下文重要信息,使得準確率提升了0.81個百分點。BGEATT-CNN在BG-CNN的基礎上加上了外部注意力,能夠使模型訓練時更加專注于與方面詞相關信息,使得準確率提升2.07個百分點。BG-DATT-CNN將兩種注意力結合,取得了最好的效果。

將BG-IATT-CNN和BG-EATT-CNN對比可以發現,外部注意力機制的效果明顯好于內部注意力機制。這說明了在ALSA任務中,方面詞信息對于最終分類結果有著更加重要的作用。

3.4.2 K值分析

本文模型在CNN層采用了兩階段特征提取的方式,先利用K-Max池化層將前K個權重較大的向量提取出來,再輸入到TextCNN中進行下一步處理。因此K的取值尤為重要。為了得到最佳K值,本文進行了多次實驗,繪制了準確率隨著K值變化的曲線,如圖3所示。

圖3 準確率隨著K值的變化曲線Fig.3 Curve of accuracy with K changing

從整體上看,模型分類準確率隨著K值的增加而上升,說明了K-Max池化層起到了一定的作用。當K=8時,準確率達到最高,之后呈緩慢下降的趨勢。因此本文KMax池化層的K值設為8。

3.4.3 分類結果分析

為了分析方面詞對分類結果的影響,本文統計了不同方面的分類準確率,如圖4所示。

由圖4可知,除了“Anecdotes”這一方面外,其他方

圖4 不同方面的分類準確率Fig.4 Classification accuracy of different aspects

面的分類準確率均在80%以上。其中,“Price”方面的準確率最高,達到了83.33%。并且雖然各個方面的數據總量不一,但對分類結果并無明顯影響。至于“Anecdotes”方面的分類準確率遠遠低于其他方面,一個最主要的原因即為方面詞的概括性較差。例如“The food was just ok but I would never go back”這句評論,對于“Food”,句子表現為正面的情感;對于“Anecdotes”,句子表現為負面的情感。顯然,“I would never go back”這種表述方式不夠直接,“Anecdotes”并不能很好地概括這一方面,因此容易導致模型分類錯誤。同時,這也印證了方面詞信息的重要性。方面詞與句子的相關性越高,概括性越好,越有利于模型融入重要的信息,從而做出正確的判斷。

為了分析模型對于不同情感傾向的句子的分類效果,本文繪制了模型在“positive”“neutral”“negative”三種情感傾向下的分類準確率,如圖5所示。

圖5 模型在三種情感傾向下的分類準確率Fig.5 Classification accuracy of model towards three sentiment polarities

由圖5可知,模型在正向評論數據上準確率最高,為84.26%,負面評論數據上準確率次之,中立評論數據上準確率最低,只有52.71%。這一方面與數據量大小有一定關系,因為正向評論數據量遠遠高于其他兩類。另一方面,正向和負向情感的評論一般都有明確的情感詞,而中立評論的情感傾向表現得較為模棱兩可,給模型判斷增加了很大的難度。這也是后續工作需要解決的一個問題。

4 結束語

本文根據方面級情感分析任務的特點,設計了一種新的模型。首先本文采用了基于Transformer結構的BERT模型獲得句子和方面詞的向量表示。為了更加充分地提取上下文特征和方面詞相關特征,本文采用了基于綜合權重的雙重注意力機制,并設計了BG-DATTCNN混合網絡提取特征。實驗表明,模型具有良好的分類性能。然而,由于公開的數據集較小易造成過擬合,且存在個別方面詞概括性較差的情況,導致分類準確率依然不高。在后續的工作中本文將考慮通過引入語言學知識等方式進一步提升模型效果。

猜你喜歡
分類機制特征
分類算一算
如何表達“特征”
不忠誠的四個特征
當代陜西(2019年10期)2019-06-03 10:12:04
分類討論求坐標
自制力是一種很好的篩選機制
文苑(2018年21期)2018-11-09 01:23:06
數據分析中的分類討論
教你一招:數的分類
抓住特征巧觀察
破除舊機制要分步推進
中國衛生(2015年9期)2015-11-10 03:11:12
注重機制的相互配合
中國衛生(2014年3期)2014-11-12 13:18:12
主站蜘蛛池模板: 日本高清免费不卡视频| 成人免费视频一区| 就去色综合| 欧美va亚洲va香蕉在线| 国产视频一区二区在线观看| 国产精品亚洲va在线观看| 亚洲国产AV无码综合原创| 毛片基地视频| 72种姿势欧美久久久大黄蕉| 亚洲精品视频免费| 久久久波多野结衣av一区二区| 亚洲看片网| 国产欧美日韩一区二区视频在线| 99精品福利视频| 亚洲成人精品在线| 国产精品一区二区国产主播| 亚洲成年人片| 91精品国产麻豆国产自产在线| 欧美精品在线免费| 国产丝袜第一页| a级毛片免费在线观看| 日韩 欧美 小说 综合网 另类| 亚洲AⅤ永久无码精品毛片| 国产18在线| 亚洲香蕉久久| 91免费片| 国产视频只有无码精品| 国产亚洲精品yxsp| 国产精品无码一区二区桃花视频| 91久久夜色精品国产网站 | 国产美女主播一级成人毛片| 成人欧美在线观看| 青青国产成人免费精品视频| 亚洲精品视频免费| 午夜天堂视频| 久久超级碰| 亚洲成A人V欧美综合天堂| 动漫精品中文字幕无码| a级毛片免费看| 五月综合色婷婷| 91在线日韩在线播放| 欧美 国产 人人视频| 欧美一区福利| 丰满的少妇人妻无码区| h视频在线播放| 亚洲视频四区| 欧美成人h精品网站| 波多野结衣久久高清免费| 性做久久久久久久免费看| 国产成年无码AⅤ片在线| 亚洲AV电影不卡在线观看| 无码免费的亚洲视频| 日韩欧美中文字幕在线精品| 国产av一码二码三码无码| 日韩专区欧美| 四虎影视8848永久精品| 亚洲第一成年网| 欧美激情视频一区| 手机在线免费毛片| 九九香蕉视频| 精品少妇人妻无码久久| 国产精品香蕉在线| 国产精品视频第一专区| 国产精品亚洲天堂| 99精品影院| 天堂成人av| 天天视频在线91频| 婷婷成人综合| 国产成人AV综合久久| 无码精油按摩潮喷在线播放| 免费高清自慰一区二区三区| 国产久草视频| 波多野结衣一区二区三区AV| 91久久国产综合精品| 91色老久久精品偷偷蜜臀| 国产精女同一区二区三区久| 中文成人无码国产亚洲| 国产一区免费在线观看| 免费a级毛片视频| 精品伊人久久久久7777人| 精品小视频在线观看| 亚洲第一香蕉视频|