徐建國,劉泳慧,劉夢凡
山東科技大學(xué) 計算機(jī)科學(xué)與工程學(xué)院,山東 青島 266590
自然語言處理分析技術(shù)大致分為三個層面:詞法分析、句法分析和語義分析。其中語義分析是自然語言處理研究的關(guān)鍵問題,其目標(biāo)是理解句子表達(dá)的真實語義[1]。而語義角色標(biāo)注其實質(zhì)上是在句子級別進(jìn)行淺層的語義分析,按照現(xiàn)代語法知識將詞語序列分組,并按照語義角色對它們進(jìn)行分類,該方法不對整個句子做詳細(xì)的語義分析,只標(biāo)注句子中給定謂詞(動詞、名詞等)的語義角色(參數(shù)),使計算機(jī)對語句有一個“淺層”的理解[2]。謂詞的語義角色有如“施事者”“受事者”“時間”“地點”“條件”等。語義角色標(biāo)注可用于問答系統(tǒng)[3]、機(jī)器翻譯[4]、信息檢索[5]、指代消解[6]等自然語言處理領(lǐng)域。廣義而言,語義角色標(biāo)注能夠輔助計算機(jī)對自然語言進(jìn)行語義理解,促進(jìn)自然語言處理技術(shù)的發(fā)展。
廣泛的劃分,語義角色標(biāo)注任務(wù)有基于規(guī)則、基于統(tǒng)計機(jī)器學(xué)習(xí)、深度學(xué)習(xí)三種?;谝?guī)則的語義角色標(biāo)注受語料庫、知識庫、詞典等限制,適用于處理小規(guī)模數(shù)據(jù)[7],在處理小規(guī)模數(shù)據(jù)時具備成本低、可擴(kuò)展性高的優(yōu)點[8],而大規(guī)模語料庫的構(gòu)建需要花費大量人力物力,可操作性差。基于統(tǒng)計機(jī)器學(xué)習(xí)的方法可以避免構(gòu)建規(guī)則,主要有最大熵模型(Maximum Entropy,ME)[9]、條件隨機(jī)場(Conditional Random Field,CRF)[10],以及支持向量機(jī)(Support Vector Machine,SVM)[11-12]等方法。但以上方法特征提取仍需要人工參與,也存在特征稀疏、維數(shù)災(zāi)難等問題。深度學(xué)習(xí)方法可以避免人工提取特征而直接對原始數(shù)據(jù)進(jìn)行處理[13],近年來研究學(xué)者將其廣泛地應(yīng)用到語義角色標(biāo)注任務(wù)中。張苗苗等[14]引入Gate 機(jī)制對詞向量進(jìn)行調(diào)整,采用深度Bi-LSTM-CRF模型對CPB 數(shù)據(jù)集進(jìn)行語義角色標(biāo)注,Gate 機(jī)制和LSTM模型的門控單元進(jìn)行互補(bǔ),有效地提高了標(biāo)注的準(zhǔn)確率。王旭陽等[15]采用語義聚類進(jìn)行數(shù)據(jù)預(yù)處理以解決稀疏謂詞對標(biāo)注的影響,對詞向量進(jìn)行“模糊化”處理來提升詞向量與謂詞的相關(guān)性,利用Bi-LSTM 模型和CRF模型對CPB數(shù)據(jù)集進(jìn)行序列標(biāo)注,F(xiàn)值最高可達(dá)到81.24%。王明軒等[16]在多層LSTM 模型中裝置新穎的“直梯單元”進(jìn)行語義角色標(biāo)注,直梯單元可以減少信息損失,讓信息在空間和時間維度上更通暢地傳播,更好地發(fā)揮深度LSTM 模型的作用,在CoNLL-2005、CoNLL-2012 以及領(lǐng)域外數(shù)據(jù)集上都取得了較好的結(jié)果。陳艷平等[17]提出Bi-LSTM-Attention-CRF模型對裁判文書進(jìn)行句法要素的識別,實驗證明了Attention機(jī)制能夠有效識別各句法要素的關(guān)聯(lián)性,深度神經(jīng)網(wǎng)絡(luò)模型能提高句法要素的識別效率。朱曉霞等[18]采用BILSTM和CRF模型對微博評論進(jìn)行語義角色標(biāo)注以篩選無關(guān)語義角色,提取特定語義角色形成情感單元詞表,以便后續(xù)進(jìn)行動態(tài)主題下的情感演化分析。
本文采用融合自注意力機(jī)制的BILSTM 模型自動學(xué)習(xí)政策文本上下文特征,CRF 模型實現(xiàn)序列標(biāo)注,通過對政策文本進(jìn)行語義角色標(biāo)注以獲取政策的主要內(nèi)容。BILSTM 模型能夠自動學(xué)習(xí)政策文本的上下文特征,無需人工選取特征,政策文件中長句居多,加入自注意力機(jī)制能夠更好地捕獲特征內(nèi)部聯(lián)系,提高了對政策文件中的長句語義角色標(biāo)注的準(zhǔn)確率。采用CRF模型進(jìn)行序列標(biāo)注也減少了無效標(biāo)簽的數(shù)量,如標(biāo)簽I 應(yīng)在標(biāo)簽B之后,而不是單獨存在或者在標(biāo)簽O之后。
長短期記憶模型(Long Short-Term Memory,LSTM)是循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)的一種重要變種,其獨特的門結(jié)構(gòu)使其保留了RNN 的處理序列數(shù)據(jù)的能力,又解決了序列學(xué)習(xí)過程存在的長期依賴問題,避免梯度消失和梯度爆炸現(xiàn)象。LSTM由記憶單元、輸入門(Input Gate)、遺忘門(Forget Gate)和輸出門(Output Gate)四個主要元素組成。其單元結(jié)構(gòu)圖如圖1所示。
圖1 LSTM模型單元結(jié)構(gòu)圖
長短期記憶模型的計算過程如式(1)所示:
其中,σ是激活函數(shù)Sigmoid函數(shù),W是矩陣乘法操作,b是函數(shù)的偏置項,?表示點乘操作,tanh 為tanh 函數(shù),ft、it、ct、ot、ht分別為遺忘門、輸入門、記憶細(xì)胞、輸出門、隱藏狀態(tài)的輸出向量。
注意力機(jī)制(Attention Mechanism)最早是在視覺圖像領(lǐng)域中提出,本質(zhì)來自于人類視覺注意力機(jī)制。Attention函數(shù)可以描述為一個源數(shù)據(jù)db到目標(biāo)數(shù)據(jù)de的映射,在計算Attention 時主要分為三步,首先將源數(shù)據(jù)db和目標(biāo)數(shù)據(jù)de進(jìn)行相似度計算得到權(quán)重,常用的相似度函數(shù)有點積、矩陣拼接和感知機(jī)等,如式(2)所示:
其次使用一個softmax 函數(shù)對這些權(quán)重進(jìn)行歸一化,如式(3)所示:
最后將權(quán)重和相應(yīng)的詞向量進(jìn)行加權(quán)得到最后的注意力機(jī)制處理結(jié)果。
條件隨機(jī)場最早由Lafferty等人于2001年提出,其模型思想的主要來源是隱馬爾可夫模型,它是一種用來標(biāo)記和切分序列化數(shù)據(jù)的統(tǒng)計模型[19]。條件隨機(jī)場為判別式概率無向圖,其聯(lián)合概率分布可以進(jìn)行因子分解,對于給定觀察序列x(x1,x2,…,xi)的條件下,相應(yīng)的標(biāo)記序列y(y1,y2,…,yi)的概率[20],即條件隨機(jī)場模型為:
其中,Z(x)為歸一化因子,tk(yi-1,yi,x,i)是整個觀察序列和對應(yīng)標(biāo)記在i-1 和i時刻的特征,為轉(zhuǎn)移特征函數(shù),sk(yi,x,i)為在i時刻整個觀察序列和標(biāo)記的特征,為狀態(tài)特征函數(shù),λk和μk分別為訓(xùn)練得到的轉(zhuǎn)移特征和狀態(tài)特征的權(quán)重。最后用Viterbi算法進(jìn)行解碼,計算條件概率最大的輸出序列。
為提取長篇幅(大于3頁)政策文件中的主要內(nèi)容,利用高校政策文件的特點,本文構(gòu)建一種融合自注意力機(jī)制的 BILSTM-CRF 模型,即 SelfAtt-BILSTM-CRF 模型,模型結(jié)構(gòu)如圖2所示。采用模型對高校政策進(jìn)行語義角色標(biāo)注的方式,提取政策文件的主要內(nèi)容,其理論基礎(chǔ)是利用BILSTM生成包含上下文特征的詞向量,將其與注意力層獲得的權(quán)重進(jìn)行加權(quán),然后輸入到CRF中實現(xiàn)序列標(biāo)注。本文在BILSTM-CRF 模型中引入自注意力機(jī)制,能有效地獲取特定詞語在文本中的長距離依賴,能夠更準(zhǔn)確地捕捉到文本特征的內(nèi)部相關(guān)性,提高語義角色標(biāo)注的準(zhǔn)確率。
圖2 SelfAtt-BILSTM-CRF模型結(jié)構(gòu)
本文除了使用詞特征之外,還使用了詞性和語義角色特征,將輸入的政策文本序列轉(zhuǎn)化為特征向量表示輸入到詞嵌入層。詞性是詞語的基本語法屬性,通常也稱為詞類。語句中的詞性特征也蘊含著信息,結(jié)合詞語的位置,詞性特征能表示詞語的用途和功能[21]。例如,文本序列“特制定本規(guī)定”中,“規(guī)定”本身有名詞和動詞詞性,其位于句末標(biāo)注為名詞,表示謂詞“制定”的受事方,可以看出詞性對語義角色標(biāo)注具有重要參考價值。語義角色標(biāo)注是以謂詞為中心,分析句子中各成分與謂詞的關(guān)系,語義角色有動作的施事方、受事方、目的原因等,其能表示淺層語義信息。設(shè)一個長度為n的句子S,則第i個詞wi的詞向量為ei,詞性向量為pi,語義角色向量為ri。將其拼接得到句子的特征向量為[e1,e2,…,en]⊕[p1,p2,…,pn]⊕[r1,r2,…,rn]∈ Rn×(d+l+t),其中d、l、t分別為詞向量、詞性向量和語義角色向量的維度。拼接得到的特征向量輸入詞嵌入層(Word Embedding),將高維的特征向量訓(xùn)練為語義信息更豐富的低維向量作為BILSTM模型的輸入。
標(biāo)準(zhǔn)LSTM 模型理論上只能按照文本序列的輸入處理上文的信息,而下文的信息對于序列文本的處理也有重要意義。BILSTM 由兩層LSTM 模型組成,詞嵌入層得到的低維詞向量從左到右按序作為正向LSTM 的輸入,每一次的輸出都會結(jié)合后一個詞向量開始下一輪的預(yù)測,以此類推,得到正向輸出hL1,hL2,…,hLt;反向LSTM 的過程與正向LSTM 正好相反,得到反向輸出hRt,hR(t-1),…,hR1,將兩層LSTM 的輸出進(jìn)行串聯(lián)得到包含上下文的特征ht,如式(5)所示。這種結(jié)構(gòu)使得BILSTM 可以充分學(xué)習(xí)輸入序列數(shù)據(jù)中文本的上下文信息。
自注意力機(jī)制(Self Attention Mechanism)是注意力機(jī)制的一種特殊形式,其源數(shù)據(jù)和目標(biāo)數(shù)據(jù)相同,計算同一個樣本數(shù)據(jù)中每個元素的重要程度,獲得樣本數(shù)據(jù)內(nèi)部的聯(lián)系[22]。本文采用的相似度函數(shù)為點積,由式(5)中包含上下文的特征ht計算權(quán)重at,如式(6)所示,將特征ht與對應(yīng)的權(quán)重at相乘,最終得到注意力層的輸出特征向量yt,如式(7)所示:
采用融合自注意力機(jī)制的BILSTM 模型進(jìn)行特征提取,對于政策文件中無法拆分的長句,BILSTM 模型可以充分利用上下文信息,獲得長距離依賴,自注意力機(jī)制可以計算增加重要元素的權(quán)重,精簡元素較多的語義角色。最后采用CRF以注意力層輸出的特征向量作為輸入,以標(biāo)注序列為監(jiān)督信號,完成序列標(biāo)注。一個句子的預(yù)測特征即為一個標(biāo)注序列,可以看作CRF的一個特征函數(shù),特征函數(shù)的輸出值越接近1就表示該標(biāo)注序列越符合特征,越接近0則表示越不符合。融合自注意力機(jī)制的BILSTM模型可以有效地獲取上下文特征,但是在標(biāo)注過程中無法使用特征依賴信息,會出現(xiàn)大量非法標(biāo)注的情況。例如復(fù)合詞正確的標(biāo)簽順序為“BIE”,會出現(xiàn)“IIE”等非法標(biāo)注結(jié)果。CRF模型計算條件概率最大的輸出序列,能夠通過特征函數(shù)得出合理的標(biāo)注結(jié)果。
對政策文件內(nèi)容進(jìn)行語義角色標(biāo)注時,例如,政策文件中句子“為進(jìn)一步加強(qiáng)我校本科教學(xué)工作,提高本科教學(xué)質(zhì)量,把xxxx作為一項基本制度,現(xiàn)結(jié)合我校實際,特制定本規(guī)定?!贝宋谋拘蛄兄兄^詞為“制定”,其目的狀語較長,CNN傾向于獲取局部靜態(tài)信息,而RNN無法解決長期依賴問題,其都不能得到完整的目的狀語。采用融合自注意力機(jī)制的BILSTM 模型不僅能夠捕捉到動態(tài)的時序信息,還能結(jié)合上下文解決長期依賴的問題,最終通過CRF模型完成序列標(biāo)注,進(jìn)而可以得到較為完整的標(biāo)注正確的語義角色。
高校政策是高校發(fā)布的對高校人、財、物等進(jìn)行組織和管理的一系列文件,獲取高校政策的主要內(nèi)容對后續(xù)進(jìn)行政策作用分析研究具有重要意義。對于3 頁以內(nèi)的政策文件,可以快速地獲取政策主要內(nèi)容,而大于3頁的政策文件中信息較多,無法快速清晰地獲取政策中的主要內(nèi)容。因此,利用模型對長篇幅(大于3頁)政策文件進(jìn)行語義角色標(biāo)注提取,有利于把握長篇幅政策文件中的主要內(nèi)容,具有較大的現(xiàn)實意義。
本文將SelfAtt-BILSTM-CRF模型應(yīng)用于高校政策文本的語義角色標(biāo)注,具體流程圖如圖3 所示。首先,爬取某高校的政策文件,統(tǒng)一文件格式并對文件內(nèi)容進(jìn)行初步清洗;然后,將政策文本進(jìn)行切分長句、分詞、去除停用詞、詞性標(biāo)注等形成以句子為單位的文本序列,通過SelfAtt-BILSTM-CRF模型計算出每個句子對應(yīng)的標(biāo)簽序列;最后,根據(jù)標(biāo)簽序列結(jié)合文本找出對應(yīng)的語義角色并進(jìn)行提取。
圖3 政策文件語義角色標(biāo)注流程圖
為驗證本文提出的模型對高校政策文件內(nèi)容的挖掘效果,通過互聯(lián)網(wǎng)爬取某高校辦公系統(tǒng)中的部分政策文件進(jìn)行實驗與對比。
本次實驗爬取某高校2016 年1 月1 日至2019 年12月31日在辦公系統(tǒng)中發(fā)布的政策文件共140篇,除去內(nèi)容少于3頁的文件,余下53篇長篇幅的政策文件進(jìn)行實驗驗證。爬取得到的政策文件為PDF 和Word 格式,首先將文件轉(zhuǎn)換為文本文件,并對文件內(nèi)容進(jìn)行初步清洗,包括去除文件紅頭標(biāo)題、頁碼以及帶有表格的附件等。
政策文件中長句居多,其中由一些短的并列句組成的長句,用模型進(jìn)行角色標(biāo)注時,容易漏標(biāo)一些語義角色,因此將文件內(nèi)容進(jìn)行分句時,以“。;:?!”作為分句的標(biāo)記符號將由并列句組成的長句切分為短句。同時政策文件有固定的格式,章節(jié)條目分明,其中“第一章”“第一條”等字樣會對模型產(chǎn)生一定干擾,因此在去除停用詞時將章節(jié)條目詞去掉。
最終得到有效數(shù)據(jù)4 341 條,實驗采用k折交叉驗證方式訓(xùn)練,將數(shù)據(jù)集等比例劃分為4份,每次3份作為訓(xùn)練集,1份作為測試集,采用各評判指標(biāo)的平均數(shù)作為最終結(jié)果。通過在Python 中安裝NLTK 庫對文本進(jìn)行分詞和詞性標(biāo)注處理。
在正式訓(xùn)練模型之前需要對文本進(jìn)行語義角色標(biāo)注,要提取政策文件中比較全面的內(nèi)容則需要標(biāo)注多種類型的語義角色,本文參考了Chinese Proposition Bank(CPB)語料的標(biāo)注方法,對數(shù)據(jù)集進(jìn)行標(biāo)注的語義角色包括5 類核心語義角色ARG0-ARG4,12 種附加語義角色,其中部分釋義如表1 所示,為了更好地識別語義角色的邊界、對復(fù)合詞進(jìn)行標(biāo)注,采用IOBES標(biāo)注策略,部分結(jié)果示例如表2 所示,B 表示復(fù)合詞詞首,I 表示復(fù)合詞詞中,E 表示復(fù)合詞詞尾,S 表示簡單詞,O 表示語義角色以外的其他詞。
表1 部分語義角色釋義表
表2 部分IOBES標(biāo)注結(jié)果示例
本文由Tensorflow進(jìn)行模型搭建,實驗參數(shù)對整個實驗有較大影響,決定了實驗結(jié)果的準(zhǔn)確度,通過固定一個參數(shù)同時更改其他參數(shù)的方法,反復(fù)對比實驗,最終得到最佳的實驗參數(shù)。為防止訓(xùn)練數(shù)據(jù)發(fā)生過擬合,dropout 值設(shè)為0.5。數(shù)據(jù)集的batch_size 為32、詞嵌入維度為300、詞性嵌入維度為20、語義角色嵌入維度為30、訓(xùn)練學(xué)習(xí)率為0.001,優(yōu)化器采用Adam,模型訓(xùn)練輪數(shù)為50,保存在測試集上F1 最高的模型參數(shù)。實驗結(jié)果采用準(zhǔn)確率、召回率、F1 值作為評判指標(biāo),本文采用CRF、BILSTM、BILSTM-CRF、SelfAtt-BILSTM-CRF 四種模型對政策文本進(jìn)行語義角色標(biāo)注,對比結(jié)果如表3所示。
表3 各模型語義角色標(biāo)注結(jié)果對比 %
由表3可以看出,使用單一模型的實驗結(jié)果總體低于組合模型的實驗結(jié)果,其中CRF模型依賴于人工設(shè)計的特征模板,模板的優(yōu)劣對模型實驗結(jié)果有較大影響,而BILSTM模型無需人工設(shè)計特征,其獨特的門結(jié)構(gòu)可以存儲歷史信息,有效地捕獲上下文特征,但BILSTM模型進(jìn)行標(biāo)注時無法利用上下文依賴信息,會標(biāo)注大量無效標(biāo)簽。第三組實驗中,將兩個單一的模型組合成BILSTMCRF 模型,利用BILSTM 模型自動學(xué)習(xí)上下文特征,而CRF是概率結(jié)構(gòu)化模型,在BILSTM模型后接入CRF模型可以有效地彌補(bǔ)BILSTM模型標(biāo)注偏執(zhí),不能全局歸一的問題。第四組實驗中,在BILSTM-CRF模型中融合了自注意力機(jī)制,自注意力機(jī)制通過增加重要特征元素的權(quán)重,能夠更好地捕獲文本序列內(nèi)部的聯(lián)系,獲得長距離依賴關(guān)系。因此,在四種模型中,數(shù)據(jù)集的F1值呈現(xiàn)依次遞增的情況。對比CRF模型,SelfAtt-BILSTM-CRF模型的F1 值提高了11.77%。實驗證明,本文提出的模型能夠提高對政策文本進(jìn)行語義角色標(biāo)注的準(zhǔn)確率。
本文將深度神經(jīng)網(wǎng)絡(luò)模型應(yīng)用到高校政策文件的語義角色標(biāo)注中,構(gòu)建SelfAtt-BILSTM-CRF 模型提取高校政策文件的主要內(nèi)容。將詞、詞性和語義角色特征向量化進(jìn)行拼接輸入到BILSTM模型,加入自注意力機(jī)制賦予不同特征向量相應(yīng)的權(quán)重,最后利用CRF 模型完成序列標(biāo)注。對比CRF、BILSTM、BILSTM-CRF 和SelfAtt-BILSTM-CRF 四種模型在高校政策文件數(shù)據(jù)集上的實驗結(jié)果,驗證了SelfAtt-BILSTM-CRF 模型的可操作性和有效性。但由于缺乏規(guī)范、完善的高校政策文件語料庫,人工對高校政策文件進(jìn)行標(biāo)注的語義角色存在不可避免的誤差,現(xiàn)階段使用的數(shù)據(jù)集規(guī)模也較小,無法實現(xiàn)模型的高準(zhǔn)確率。對文件內(nèi)容進(jìn)行語義角色標(biāo)注時選取標(biāo)注的語義角色數(shù)量較多,也影響了模型的準(zhǔn)確率,在盡可能多地提取政策文件內(nèi)容的前提下,擴(kuò)展標(biāo)注數(shù)據(jù)集和權(quán)衡語義角色數(shù)量以提高模型的準(zhǔn)確率是下一步的研究方向。