葛海波,車虹葵,趙其實,安 康
(西安郵電大學 電子工程學院,陜西 西安 710121)
命名實體識別(Named Entity Recognition,NER)是自然語言處理中一個重要領(lǐng)域[1],旨在檢測給定文本中的實體,并將其分類到預定義的類別中。NER生成的結(jié)果是問答系統(tǒng)、機器翻譯和對話系統(tǒng)等許多下游任務的關(guān)鍵。
近年來,物聯(lián)網(wǎng)領(lǐng)域發(fā)展迅速,其設(shè)備外延從傳統(tǒng)的感知器、執(zhí)行器向更多元化發(fā)展。為解決物聯(lián)網(wǎng)實體多樣化帶來實體信息形式多樣化和對實體信息的理解能力不足的問題,研究者們將語義網(wǎng)[2]中的智能化特征引入到物聯(lián)網(wǎng)中。由此,物聯(lián)網(wǎng)由傳統(tǒng)的物聯(lián)網(wǎng)(Internet of Things,IoT)向基于語義技術(shù)的萬維物聯(lián)網(wǎng)(Web of Things,WoT)邁進,WoT技術(shù)的核心是構(gòu)建一個高可用實體庫。目前,針對物聯(lián)網(wǎng)領(lǐng)域暫無已經(jīng)做好標注的語料,且無特定的物聯(lián)網(wǎng)領(lǐng)域命名實體模型。對于物聯(lián)網(wǎng)領(lǐng)域的命名實體識別研究的難點主要體現(xiàn)在物聯(lián)網(wǎng)實體種類多樣化和實體命名不規(guī)范等方面。在研究過程中需要根據(jù)物聯(lián)網(wǎng)實體特征構(gòu)建模型,把握好實體邊界的劃分。
如何自動化構(gòu)建物聯(lián)網(wǎng)本體庫是WoT發(fā)展的核心需求,而構(gòu)建物聯(lián)網(wǎng)本體庫的前提是能夠在非機構(gòu)化的語料中識別出物聯(lián)網(wǎng)實體,針對上述問題,研究自然語言處理中的NER技術(shù),將NER應用到物聯(lián)網(wǎng)領(lǐng)域中,提出基于XLNet的物聯(lián)網(wǎng)領(lǐng)域NER模型,以期在物聯(lián)網(wǎng)數(shù)據(jù)集中取得較好效果。
NER的主要技術(shù)方法包括基于規(guī)則的方法、基于機器學習的方法和基于深度學習的方法[3]?;谝?guī)則的方法依賴領(lǐng)域?qū)<抑贫ㄒ?guī)則模版,其識別效果對規(guī)則的依賴性高,且不同場景下的實體識別規(guī)則不同,可擴展性弱。
基于機器學習的方法主要是對于特征的學習,并將特征添加到特征向量中,主要方法有隱馬爾可夫模型 (Hidden Markov Model ,HMM )[4]、支持向量機 (Support Vector Machine ,SVM )[5]和決策樹[6]等。該類方法對特征的選取要求較高,比較依賴語料的質(zhì)量。
隨著深度學習的發(fā)展,利用深度神經(jīng)網(wǎng)絡(luò)模型完成NER別任務成為一種趨勢。Hammerton[7]首次使用長短期記憶模型(Long Short Term Memory,LSTM)進行NER任務。以LSTM為基礎(chǔ),后續(xù)產(chǎn)生較好的LSTM-CRF命名實體識別框架。Tomas等[8]提出Word2Vec模型,對文本進行了低維稠密的向量化表示,但是Word2Vec不能解決多義詞的向量映射問題。Peter等[9]提出詞嵌入模型(Embeddings from Language Models,ELMO)有效解決了一詞多義問題。Alec等[10]針對中文電子病例命名實體識別,提出基于Transformer的NER模型,F(xiàn)1值高達95.02%。Devlin[11]等提出了BERT(Bidirectional Encoder Representation form Transformers)預訓練模型,楊飄等[12]將BERT模型應用在命名實體模型,提高了中文命名實體識別效果。BERT模型基于Transformer模型并結(jié)合遮罩(Mask)語言模型,使得模型考慮到文本的上下文信息,Mask語言模型在預訓練和微調(diào)中階段的不對稱性在具體任務時會影響精確度。Yang等[13]提出廣義自回歸語言模型(XLNet),該模型引入排列語言模型思想,在預訓練階段應用Transformer-XL[14]相對位置編碼,能夠考慮序列歷史信息,使得該模型有強大的表義能力,基于XLNet優(yōu)秀的語義表征能力,并考慮模型在實體識別中標簽依賴問題,基于XLNet在上層搭建模型解決物聯(lián)網(wǎng)領(lǐng)域命名實體識別問題。
許多組織及個人針對物聯(lián)網(wǎng)不同應用場景下的語義需求,提出不同概念的系統(tǒng)本體,歐盟首次將語義技術(shù)引入物聯(lián)網(wǎng)[15]。Sheth[16]提出使用設(shè)備自描述信息中的時空信息以及傳感觀測信息對感知數(shù)據(jù)進行標注,該方法包含的語義屬性較少,缺少與通用知識庫數(shù)據(jù)的對齊。物聯(lián)網(wǎng)行業(yè)的快速發(fā)展,其外延在不斷擴大和發(fā)展,感知器、執(zhí)行器、各種智能設(shè)備和微電子機械被包含其中,進一步加劇物聯(lián)網(wǎng)系統(tǒng)的泛在性和動態(tài)性特征。為了應對物聯(lián)網(wǎng)更智能化的需求,需要一種更為高級和抽象的數(shù)據(jù)模型表示物理網(wǎng)領(lǐng)域設(shè)備和數(shù)據(jù)服務。
為了對物聯(lián)網(wǎng)內(nèi)數(shù)據(jù)及服務進行語義化標注,在傳統(tǒng)物聯(lián)網(wǎng)架構(gòu)增加了資源抽象層,由物理設(shè)備層、數(shù)據(jù)層、資源抽象層和應用服務層等4層組成,其整體架構(gòu)如圖1所示。
圖1 物聯(lián)網(wǎng)架構(gòu)模型
物理設(shè)備層包括物聯(lián)網(wǎng)系統(tǒng)中所有完成物理環(huán)境感知和控制任務,數(shù)據(jù)層是對物理設(shè)備層的軟硬件進行分類抽象,資源抽象層是對物聯(lián)網(wǎng)應用系統(tǒng)內(nèi)的數(shù)據(jù)、服務進行語義化標注,應用服務層為開發(fā)者所搭建的服務應用。為了正確表示物聯(lián)網(wǎng)領(lǐng)域?qū)嶓w,需要涵蓋幾個重要概念,如表1所示。
表1 物聯(lián)網(wǎng)領(lǐng)域?qū)嶓w模型標簽
參考自然語言處理通用實體劃分,根據(jù)物聯(lián)網(wǎng)領(lǐng)域特點加入領(lǐng)域內(nèi)主要概念類型,并去除領(lǐng)域關(guān)聯(lián)較少的實體,將物聯(lián)網(wǎng)實體分為人物、地名、組織機構(gòu)名、時間、傳感器、執(zhí)行器、應用名稱、電子器件名稱、數(shù)據(jù)流名稱和其他實體。
1.3.1 數(shù)據(jù)預處理
語料數(shù)據(jù)來自Wiki百科中文數(shù)據(jù)集以及爬取物聯(lián)網(wǎng)領(lǐng)域相關(guān)文本。通過爬取獲得的語料數(shù)據(jù),存在大量非文本標簽影響文本標注。通過預定義的清理規(guī)則,刪除非法格式的文本數(shù)據(jù),獲取規(guī)范的物聯(lián)網(wǎng)語料庫數(shù)據(jù)。
1.3.2 數(shù)據(jù)標注
實體標注使用BIO標注方式,其中,B表示實體開始,I表示實體結(jié)尾或者中間部分,O表示其他實體或非實體。根據(jù)物聯(lián)網(wǎng)實體命名分類,實體標簽如表2所示。
表2 物聯(lián)網(wǎng)領(lǐng)域?qū)嶓w標簽
基于XLNet強大的語義表征能力,提出了基于XLNet命名實體識別模型,該模型由XLNet層、Bi-LSTM層、Attention層和CRF層等4個部分組成,結(jié)構(gòu)如圖2所示。該模型通過XLNet模型提取字向量特征,將字向量拼接后作為Bi-LSTM層輸入,經(jīng)過Bi-LSTM層對語義進一步編碼獲取隱藏層輸出并輸入Attention層,CRF層專注于上下文注釋信息,最終輸出概率最大序列標簽。該模型使用XLNet可以獲得更佳的詞向量表示,再經(jīng)過“Bi-LSTM+Attention”層利用字符上下文信息,最后通過CRF層降低非法標注出現(xiàn)的概率。
圖2 “XLNet+Bi-LSTM+Attention+CRF”模型結(jié)構(gòu)
無監(jiān)督學習模型分為自回歸(Autoregressive,AR)語言模型和自編碼(Autoencoding,AE)語言模型。與傳統(tǒng)AR語言模型不同的是,以BERT為代表的AE語言模型實現(xiàn)了雙向預測。
圖3 XLNet模型Mask機制
給定序列長度為T,排序方式總數(shù)m=T!,模型可以通過m種排列方式學習到各種上下文,在實際應用中,XLNet隨機采樣m中的部分排列,其全排列模型的公式為
(1)
其中:E表示序列集合;z~ZT為所有可能的文本排列方式;xz,t表示當前詞;Xz XLNet的核心為Transformer-XL,在Transformer結(jié)構(gòu)基礎(chǔ)上引入相對位置編碼思想和循環(huán)機制。Transformer在訓練中規(guī)定輸入序列是定長序列,長序列在訓練中分割后模型利用不到片段之間的聯(lián)系,會造成信息缺失問題。Transformer-XL在片段之間插入隱狀態(tài)信息,在當前段的預測通過隱狀態(tài)信息可以利用前一段的信息,模型可以學習更為長遠的語義信息。兩個片段之間循環(huán)機制的信息傳遞方式如圖4所示,灰線表示記憶信息,在Sgment2段訓練中可以利用Segment1段的Cache信息,XLNet通過該機制實現(xiàn)歷史信息的傳遞。 圖4 XLNet循環(huán)機制 Transformer通過正弦函數(shù)的形式將絕對位置編碼成一個向量,上層可以通過該向量學習兩個詞的相對位置的關(guān)系,計算公式為 hr+1=f(hr,Dsr+1+U1:L) (2) hr=f(hr-1,Dsr+U1:L) (3) 其中:hr表示r時刻向量編碼;Dsr表示當前片段文本向量位置編碼;U1:L表示位置編碼,不同片段中U1:L一樣,模型無法通過向量準確判斷是哪個片段的具體位置。絕對位置編碼對于每個片段的相同位置編碼都是相同的,而Transformer-XL可以利用不同片段的歷史信息,考慮到片段不同而位置編碼相同的詞對于當前片段的信息貢獻度不同,因此,Transformer-XL使用相對位置編碼思想,其在計算Attention時根據(jù)當前位置和需要利用到的位置計算相對距離。 XLNet以Transformer-XL框架為核心,通過引入循環(huán)機制和相對位置編碼,充分考慮雙向語義信息和挖掘較為長遠的歷史信息,可以獲得更為準確的詞向量表示。 LSTM是一種特殊的循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN),其單元結(jié)構(gòu)如圖5所示。傳統(tǒng)循環(huán)神經(jīng)網(wǎng)絡(luò)在實際應用存在梯度消失和梯度爆炸的問題,其記憶長度有限。LSTM通過控制門選擇“記憶”當前信息和“遺忘”歷史信息,解決了長依賴問題,其內(nèi)部包含輸入門、輸出門、遺忘門和記憶單元等4個部分。 圖5 LSTM單元結(jié)構(gòu) LSTM單元具體實現(xiàn)的方程組為 (4) 其中:it為輸入門;ft為遺忘門;ot為輸出門;ct和ht指t時刻的候選記憶單元、新記憶單元和隱藏狀態(tài);ct-1和ht-1指模型t-1時刻的記憶單元和隱藏狀態(tài);σ是Sigmoid的函數(shù);W為權(quán)重矩陣;b表示偏置。 實驗采取雙向LSTM實現(xiàn)對上下文信息的共同編碼。Bi-LSTM層的輸入為從ALNet層得到的詞向量,該層由多個Bi-LSTM單元組成,并分別輸出各時刻的隱狀態(tài)。 考慮實體在文本中多次出現(xiàn)且表述方式不同,通過Attention機制計算實體不同時刻的特征向量權(quán)重,關(guān)注實體的重要特征信息,減少實體標注不一致問題。Attention層實現(xiàn)的方程組為 (5) 式中:s為當前時間字符得分;v表示當前狀態(tài);A表示當前字符權(quán)重;M表示得分的總數(shù);g表示含有各字符信息的特征向量。通過Attention機制增強語料中上下文之間實體聯(lián)系,得到更準確的實體信息。 在標記序列中,標簽之間存在著依賴關(guān)系,該依賴性可以看作約束條件。如實體標記的第一個字應該為B,不能為I;一組實體序列開始與結(jié)尾標記類型應該相同。CRF可以關(guān)注標簽之間的相鄰關(guān)系得到最優(yōu)標簽序列,提高實體識別精度。 給定輸入n維序列x=(x1,x2,x3,…,xn)和對應標簽序列y=(y1,y2,y3,…,yn),定義評價方法的表達式為 (6) 其中:Vyi-1,yi表示標簽轉(zhuǎn)移分數(shù);Qi,yi表示該字符被定義為第yi的概率。CRF的訓練使用最大條件似然估計,似然函數(shù)表達式為 (7) 其中,概率Q的表達式為 (8) 在構(gòu)建的物聯(lián)網(wǎng)領(lǐng)域數(shù)據(jù)集上驗證模型的識別性能。該數(shù)據(jù)集約57 780條句子,將該數(shù)據(jù)集按比例8∶1∶1分為訓練集、驗證集和測試集,各類實體統(tǒng)計如表3所示。 表3 標記實體類型統(tǒng)計 3.2.1 環(huán)境配置 實驗運行環(huán)境如表4所示。 表4 實驗環(huán)境 3.2.2 參數(shù)設(shè)置 實驗中模型參數(shù)配置如表5所示。 表5 參數(shù)配置 對于命名實體識別的評價標準為精確率P、召回率R和模型評價標準F1值,其定義分別為 (9) 其中:TP表示模型所正確識別的實體總數(shù);FP表示模型識別錯誤的實體總數(shù);FN表示模型未能識別出的實體數(shù)。 為了驗證模型的效果,實驗選取機器學習中的CRF模型、基于深度學習中的“Bi-LSTM+CRF”模型和“BERT+Bi-LSTM+CRF”作對比,與所搭建“XLNet+Bi-LSTM+Attention+CRF”模型對同一數(shù)據(jù)集進行訓練和驗證,對比結(jié)果如表6所示。 表6 實驗結(jié)果 由表6可以看出,CRF模型評價結(jié)果最低。Bi-LSTM可以融合輸入序列的上下文語義信息,有著更強的語言表征能力,因此,“Bi-LSTM+CRF”模型F1值比CRF模型高12.94% ,提高了命名實體識別的F1值。Word2Vec只是在句子的表面對上下文信息進行提取表示,沒有融入更多的內(nèi)部特征,而BERT可以利用到上下文信息,能夠更好地挖掘語義信息,因此,“BERT+Bi-LSTM+CRF”比Bi-LSTM模型F1值高出1.98%。基于XLNet的“XLNet+Bi-LSTM+Attention+CRF”模型,通過XLNet訓練得到具有更好的表征能力字向量,識別效果最好,優(yōu)于其他模型。 “XLNet+Bi-LSTM+Attention+CRF”有著更好的實體識別效果,該模型對于物聯(lián)網(wǎng)各個實體的識別效果如表7所示。 表7 實體評價結(jié)果 表7中,時間、組織機構(gòu)、傳感器、數(shù)據(jù)流和電子器件這幾類實體規(guī)律性,如“組織機構(gòu)”類實體一般格式為“××地××組織”,命名方式規(guī)范。因此,這幾類實體識別效果較好?!皯妹Q”類命名規(guī)律性較差,且該類數(shù)據(jù)集較少,訓練出的模型對于該類的識別效果較差,導致F1值較低。 基于物聯(lián)網(wǎng)本體的語義特征,歸納出物聯(lián)網(wǎng)核心語義概念,提出新型命名模型,該模型涵蓋物聯(lián)網(wǎng)領(lǐng)域中物理設(shè)備層、數(shù)據(jù)層、資源抽象層和應用服務層,將其具體化為感知單元、計算單元、執(zhí)行單元、消息單元、服務單元、位置單元和觀測單元,基于該命名規(guī)范特點搭建4個物聯(lián)網(wǎng)領(lǐng)域本體命名實體識別模型。通過實驗分析對比,可以得出“XLNet+Bi-LSTM+Attention+CRF”模型的效果最好,為以后該模型的下游任務應用的研究奠定了基礎(chǔ)。對于后續(xù)研究,主要考慮基于知識蒸餾對于原有模型進行壓縮,使得模型滿足物聯(lián)網(wǎng)應用場景輕量化的需求。2.2 Bi-LSTM層
2.3 Attention層
2.4 CRF層
3 實驗及結(jié)果分析
3.1 實驗數(shù)據(jù)
3.2 實驗環(huán)境
3.3 評價標準
3.4 實驗結(jié)果與分析
4 結(jié)語