?

基于CNN-BLSTM的食品輿情實體關系抽取模型研究

2021-04-02 06:06王慶棒汪顥懿張青川袁玉梅
食品科學技術學報 2021年2期
關鍵詞:輿情語義向量

王慶棒,汪顥懿,左 敏,*,張青川,溫 馨,袁玉梅

(1.北京工商大學 農產品質量安全追溯技術及應用國家工程實驗室,北京 100048;2.北京工商大學 計算機與信息工程學院,北京 100048)

食品輿情領域知識圖譜以食品行業為基礎,挖掘食品輿情信息的相互聯系,在食品安全、食品輿情分析等方面都有著重要作用。食品輿情的實體關系抽取是構建食品輿情知識圖譜的重要基礎工作之一,旨在抽取句子中已標記實體對之間的語義關系。

食品輿情信息的挖掘依賴于數據的多維度特征[1],多層次的網絡模型實現了基于大規模語料的自動挖掘特征信息,目前的研究主要分為基于特征向量的方法[2]、基于核函數的方法[3]和基于神經網絡模型的深度學習方法。黃衛春等[4]為了解決特征空間維度過高的問題,提出了4種文本文類的特征選擇算法;姚全珠等[5]采用了子樹特征的實體關系抽取方法;Zeng等[6]采取建模的方式,在卷積神經網絡(convolutional neural network,CNN)中引入了位置向量,但對位置信息的挖掘程度有些不足;Nguyen等[7]在CNN上使用不同尺度的卷積核對文本的語義關系進行了表征,但該模型仍然是基于淺層語義關系。本研究擬在注意力機制上,采用基于詞語位置的語義角色標注(semantic role labeling,SRL)方法,使模型更好地對詞匯特征和位置信息進行學習,并提高模型的精確度。

Santors等[8]在CNN中對目標函數做出了改進,雖然該方法提高了實體關系的識別力度,但是CNN卻仍然不能很好地學習語句中上下文的語義信息;Zhang和Wang[9]利用雙向循環神經網絡來學習語句中的上下文語義,然而循環神經網絡本身具有梯度消失和梯度爆炸等問題。雙向長短時記憶(bidirectional long short-term memory,BLSTM)網絡解決了梯度爆炸的問題,同時能學習句子中的上下文語義信息,因此本研究模型中引入了BLSTM網絡。

翟社平等[10]采用BLSTM網絡來提取句子特征,不過該模型對于詞匯特征的挖掘還有些不足;Zhou等[11]改進了BLSTM網絡,使其模型能夠學習詞匯中的某些信息,然而對詞匯位置語義等重要信息沒有進行很好的處理;吳佳昌等[12]提出了基于依存關系和雙通道CNN的關系抽取方法,對詞性的依存關系做出了進一步研究。本研究在BLSTM網絡中引入了基于位置的語義角色標注方法,依據食品輿情領域的文本特點,引入了領域詞機制,進一步挖掘詞語層面上的語義信息,使模型更好地識別不同實體及其關系。

本研究擬針對食品輿情領域的實體關系抽取方法,在分析現有的實體關系抽取方法優劣的基礎上,采用CNN-BLSTM雙網絡模型結構,區分不同的實體關系的同時,有效學習文本遠程語義的信息和結構。

1 數據來源與處理

1.1 數據來源

模型訓練所需數據集選用獨立構建的食品輿情領域數據集(FO-Data)。通過搜集、整理2017~2019年食品伙伴網[13]、中國食品公眾科普網[14]、食安通網[15]公布的文章數據,歸納為包裝材料、保健食品、焙烤食品、茶葉、寵物食品、調味品、方便食品、蜂蜜、罐頭、果蔬、進出口、酒業、糧油、認證體系、乳業、商超、食品儲運、食品機械、食品檢測、食用菌、糖果、添加劑配料、畜禽肉品、飲料、有機食品、漁業、水產轉基因食品27個行業,包括除港澳臺、西藏、新疆、內蒙古、寧夏和甘肅以外的全國26個省份。

實驗平臺使用基于PyTorch(https:∥pytorch.org/)的開源深度學習框架,構建深度學習模型。訓練及使用的系統平臺為美國微軟公司的Windows和開源的LinuxCentOS7系統。

1.2 數據處理

采集的語料數據集按句劃分,剔除無效句子,分別標注句子中的實體對及實體關系,并作為模型的訓練輸入樣本,即每一條輸入語料分為3個部分,第1部分為輸入句子,第2部分為實體對,第3部分為實體關系。數據集整體劃分為3個子數據集:訓練集、測試集和驗證集。子數據集的規模見表1。

表1 數據集規模的統計Tab.1 Statistics of data set size

1.3 評價指標的計算

本研究采用準確率P、召回率R和F1值作為實驗結果優劣的評價指標,計算見式(1)~式(3)。

(1)

(2)

(3)

式(1)~式(3)中,TP為把正類預測為正類的數量;FP為把負類預測為正類的數量;FN為把正類預測為負類的數量。

2 基于CNN-BLSTM的食品輿情實體關系抽取模型建立

2.1 模型描述

在模型的開始,使用提前訓練好的詞嵌入模型,將食品輿情領域的語料進行文本向量化處理。之后將得出的詞嵌入,分別作為CNN層和BLSTM層的輸入,由CNN生成卷積核,BLSTM生成隱層向量。模型將會分成2個部分引入網絡注意力機制:首先,將提前構建好的領域詞詞庫與當前的每個詞語進行逐一匹配,在經過基于位置感知的領域詞語義注意力機制的計算后,得出影響向量,同時模型將影響向量與CNN卷積核輸出的向量進行結合,影響CNN模型輸出結果;其次,模型會對詞語的語義角色進行標注,判斷各個詞語是否為核心主語或謂詞,經過基于位置感知的語義角色注意力機制的計算,將影響向量傳播到BLSTM的隱層向量中計算,從而影響BLSTM的輸出結果。最后模型將會在2個網絡輸出向量的結合層累積影響向量,進一步得出實體及其關系抽取結果。網絡模型整體過程如圖1。

圖1 CNN-BLSTM模型Fig.1 Model of CNN-BLSTM

模型的輸出層包含3層輸出向量。第1層輸出的向量是關于實體關系的輸出向量,第2層是關于實體標注中主體標簽的輸出向量,第3層則是關于實體標注中客體標簽的輸出向量。

在實體關系抽取中,本研究在網絡的輸出層采用了SoftMax函數,對于每種關系進行歸一化處理,得到每種關系的概率值P,計算見式(4)。

P=softmax(CWT+bc) 。

(4)

式(4)中,W為權重向量,T為權重向量的轉置,C為輸出向量,bc為偏置向量。對于實體標注部分,輸入句子的每一個詞都會被指派一個實體標簽,標簽采用相同的編碼模式:0-1標簽(1是主體或者客體)。因此,實體標注問題可以轉變為:對于給定的長度為m的句子S(s1,…st,…sm),假設標注輸出結果為Y(s)(y1,…yt,…ym),在已知序列S下,找出使得Y=(y1,…yt,…ym)的概率為P(y1,…yt,…ym)的最大的序列[y1,…yt,…ym]。計算見式(5)。

(5)

式(5)中,S為輸入的句子,y為預測的關系概率,W為權重向量,ψi(y′,y,s)=exp (WTy′,yzi+bi,y)是一個隱含函數,W為權重向量,T為權重向量的轉置,yi為句子中第i個詞向量,zi為句子中第i個詞向量的權重向量,bi為第i個詞向量的偏置向量。解碼時最高條件概率計算見式(6),使用維特比算法可以進行有效的解碼運算。

=arg maxy∈Y(s)P(y|s;W,b) 。

(6)

網絡模型對于實體標注主體的處理過程如圖2。實體標注中客體的標注過程與主體標注類似,其輸出的位置是模型輸出的第3層向量。經過最后的連接層可以得到客體的標注結果。

圖2 實體標注主體的處理過程Fig.2 Process of entity labeling subject

本研究以2層向量的方式,來對關系實體的主客體做出區分,第1層表示主體的標記結果,第2層表示客體的標記結果。

2.2 基于位置感知的語義角色注意力機制建立

SRL是一種淺層的語義分析技術,標注句子中某些短語為給定謂詞的論元 (語義角色) ,如施事、受事、時間和地點等。本研究通過SRL劃分語義角色,得到不同的句子成分,使位置注意力影響在不同的語義角色中進行傳播。

SRL會將詞語的語義角色、依存關系等標注出來,例如:對于“饅頭的鋁殘留量不符合國家標準”這句話進行語義角色標注,其標注的結果為“饅頭”“鋁殘留量”“不符合”“國家標準”,并且對它們的依存關系進行了標注,最終可以確定各詞語的語義角色,從而確定核心主語和謂語的位置,標注過程如圖3。

圖3 語義角色標注的處理示例Fig.3 Example of semantic role labeling

在根據語義角色判斷語句中的核心主語和謂詞之后,需要讓模型學習到更多的位置信息,從而提高準確率。假設語義角色在特定距離上的影響遵循隱層維度上的高斯分布,基于此假設定義影響的基礎矩陣K,其每一列表示與特定距離對應的影響基礎矢量。K的數學定義見式(7)。

K(i,u)~N[Kernel(u),σ] 。

(7)

式(7)中,K(i,u)代表第i維度中語義角色距離為u時相應的影響。并且N是符合Kernel(u)值的期望值和標準差σ的正態分布。Kernel(u)是高斯核函數,用它來模擬基于位置感知的影響傳播,其數學定義見式(8)。

(8)

根據語義角色的位置關系,可以計算每個語義角色的影響矩陣,通過計算的積累,最后獲得每個特定位置下語義角色的影響向量,見式(9)。

Srj=KCj。

(9)

式(9)中,Srj代表語義角色在位置j處的累計影響向量,Cj表示一個距離的計數向量,來測量屬于各種核心語義角色的數量。將Cj展開,其標準的計算方法見式(10)。

(10)

式(10)中,w代表句子中的一個詞,S為詞語序列,即一個句子。pos(w)表示w在核心語義角色中出現的位置集合。符號[]為判斷符,如果條件滿足則為1,否則為0。

最后將得到的影響向量,與BLSTM的隱層向量結合?;谖恢酶兄恼Z義角色注意力機制在BLSTM的執行和傳播過程如圖1右側模型。

2.3 基于位置感知的領域詞語義注意力機制建立

本研究的實體關系抽取領域為食品輿情領域,為了將食品輿情領域的語言特點融入網絡中,引入了領域詞機制。依據食品輿情領域的專業詞匯,構建食品輿情領域詞詞庫,依據詞語是否匹配到領域詞詞庫的原則,篩選詞語,確定領域詞匯。

對于詞語的匹配計算見式(11)。

(11)

式(11)中,Field(w)表示w在語句中領域詞匹配的位置集合。符號[]是判斷功能,如果條件滿足則為1,否則為0。

對于位置的影響力傳播,與2.3中基本相同,結合式(4)、式(5)得出基于位置感知的領域詞影響向量公式[式(12)]。

Fwj=KWj。

(12)

模型最后將得到的影響向量與CNN卷積層得出的最終向量結合?;谖恢酶兄念I域詞語義注意力機制在CNN的執行過程為圖1左側。

3 結果與分析

3.1 實驗參數的設置

本研究在詞嵌入層使用的是100維的Glove詞向量;BLSTM和CNN的網絡輸出向量的維度為128維;位置影響傳播的距離μ設置為8。另外,選取了交叉熵作為深度學習網絡的目標函數,同時使用Adam算法作為網絡的優化器,進行網絡參數的更新。表2是對比模型中所需的參數設置。

表2 網絡模型參數Tab.2 Parameters of network model

3.2 關系抽取實驗結果

對比模型整體分為2類:一類是無注意力機制的常規CNN和BLSTM神經網絡,一類是引用注意力機制的CNN和BLSTM單神經網絡。不同模型分別在獨立構建的FO-Data數據集上進行訓練及預測實驗,表3是關系抽取結果。

表3 不同模型的關系抽取結果Tab.3 Experimental results of relationship extraction of different models

表3的實驗結果顯示:在食品輿情語料中,常規的CNN模型的準確率表現良好,但是在召回率上表現不佳,因此本研究在CNN的基礎上,對CNN模型引入了注意力機制,其召回率有了明顯的提升。對于句子整體的語義而言,CNN模型對比BLSTM模型的學習機制依然有所欠缺,這在第3個對比模型中得到了進一步的驗證。同時,本文發現BLSTM整體上要比CNN具有更好的性能表現。值得注意的是,雙網絡模型均有著較好的準確率和召回率,因為BLSTM不僅能在上下文中根據語義角色有效地處理位置權重的分配,而且在CNN領域詞上,進一步優化了網絡整體的注意力權值計算。對于實體關系抽取而言,CNN-BLSTM網絡模型針對句子結構上有著較好的反饋,同時又不拋棄垂直領域詞匯帶來的更多有用的信息。

3.3 實體抽取實驗結果

關系抽取需要在驗證集和測試集上觀測模型的表現優劣,表4展示了不同模型在FO-Data數據集上的實驗指標數據。為了證明模型的有效性,加入了Zhou等[11]提出的基于注意力機制的BLSTM模型和殷纖慧等[16]提出的改進的CNN模型。實驗結果表明:本研究提出的模型在各評價指數方面均有較大的提升。

表4 不同模型的實體抽取結果Tab.4 Experimental results of entity extraction of different models

Zhou等[11]利用BLSTM模型進行實體關系抽取,但未對句子中詞語的語義角色關系的信息加以利用,而本研究引入的基于位置的語義角色關系注意力機制,充分利用了實體和非實體詞語的語義角色,從而能夠進一步提升模型效果。

本研究提出的CNN-BLSTM模型和兩大注意力機制,提高了CNN對于特殊領域詞的識別能力和BLSTM快速捕捉上下文的實體聯系的能力,使得模型能夠在食品輿情領域中比單獨的CNN和BLSTM模型有著更加優秀的準確率和召回率。

3.4 實驗參數分析

3.4.1損失函數下降趨勢分析

BLSTM是實體關系抽取領域常見的深度學習網絡模型,因此,本研究對比了BLSTM網絡模型和CNN-BLSTM模型的損失函數下降趨勢,如圖4。

圖4 損失函數下降趨勢分析Fig.4 Downtrend analysis of loss function

根據圖4的實驗結果可以發現,CNN-BLSTM模型在訓練的前期與BLSTM模型表現相似,但隨著模型訓練次數的迭代,CNN-BLSTM模型的表現逐漸更優,而且學習能力和迭代速度仍然保持較高的表現。因為模型充分結合了食品領域的特殊詞匯信息及其語義角色關系,使得模型能夠快速提取出更多有價值的句子信息,所以模型整體的收斂速度更快,而且能夠進一步提升針對具有復雜句意或者多重句子結構的語句的表現。

3.4.2詞嵌入維度分析

由于CNN-BLSTM模型的前部分引入了詞嵌入,所以詞嵌入的向量維度會對實驗結果產生一定的影響,為了展示這種影響關系,研究構建了不同詞向量維度對模型F1值的影響,如圖5。

圖5 不同詞向量維度下的實驗結果分析Fig.5 Experimental comparison of word vectors in different dimensions

實驗結果表明,詞向量在300維附近,模型的整體表現更優,因而本模型使用的詞嵌入向量維度為300維。

4 結 論

本研究提出了一種基于CNN-BLSTM的食品輿情實體關系抽取模型。該模型在文本向量化的基礎上,通過語義角色標注抽取輿情語句的主謂語語義,運用上下文語義角色的位置感知來更新詞語權重,構建基于位置感知的語義角色注意力機制;依據食品輿情領域詞詞庫,運用領域詞的位置感知來更新詞語權重,構建基于位置感知的領域詞注意力機制,實現了食品輿情實體對多關系抽取。對比實驗結果表明,該模型比以往常用的深度神經網絡模型性能更優。

猜你喜歡
輿情語義向量
真實場景水下語義分割方法及數據集
向量的分解
聚焦“向量與三角”創新題
語言與語義
數字輿情
數字輿情
消費輿情
向量垂直在解析幾何中的應用
“吃+NP”的語義生成機制研究
向量五種“變身” 玩轉圓錐曲線
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合