?

基于卷積神經網絡的中文景點識別研究

2020-02-18 15:19劉小安
計算機工程與應用 2020年4期
關鍵詞:命名實體神經網絡

劉小安,彭 濤

1.北京聯合大學 智慧城市學院,北京100101

2.北京聯合大學 機器人學院,北京100101

1 引言

命名實體識別(Named Entity Recognition,NER)是自然語言處理(Natural Language Processing,NLP)的一項基礎任務,它的重要作用是從文本中準確識別出人名、地名、機構名、時間、貨幣等信息[1]。命名實體識別是很多語義理解應用的基礎,可以為上層應用提供實用、有效的文本信息。在問答系統中,常常會遇到需要回答某個人名、地點、機構以及其他實體的事實型問題,常規分詞結果并不能滿足需要,因此將命名實體識別技術應用其中將對問題文本做出更準確的理解[2-4]。在自動文摘任務中,文本中的命名實體通常包含重要的信息內容,因此對文本進行命名實體識別,進一步篩選出重要實體形成文本摘要將獲得更好效果[5-6]。

現有研究主要集中于通用領域人名、地點、機構名的實體識別,已經取得了較好的效果[7-10]。在旅游領域,旅游景點是旅游過程中的重要組成部分,對于旅游景點的識別也很重要,它直接影響旅游領域問答系統的答案獲取和旅游文本中的信息抽取。目前對于中文旅游景點命名實體識別的研究主要采用基于統計機器學習的方法。郭劍毅等人[11]提出一種基于層級條件隨機場的方法,該方法相對于隱含馬爾可夫模型(Hidden Markov Model,HMM)F1值提高了15個百分點。但是該方法主要依賴于特征模板,而特征模板的構建是一個非常費力的過程。此外引入了較多的外部信息(如指界詞),這些外部詞典數量巨大,難以全部收錄,當詞典中的指界詞成為景點實體的一部分時,將導致識別錯誤。

中文旅游景點的識別難點在于:

(1)景點實體數量巨大,不能枚舉,也難以全部收錄到詞典中。經不完全統計,北京大大小小的旅游景點數量就有6 000多個。這里指的景點包含了嵌套景點,如“恭王府”中的“多福軒”,在本文中也視為獨立的景點實體。

(2)景點實體名稱豐富多樣,沒有嚴格的規律可以遵循。如北京雁棲湖有一個小景點名稱為“牽手”;頤和園有一個小景點名稱為“湖山真意”。

(3)經常采用縮寫形式。如“故宮博物院”在實際旅游文本中常用“故宮”,“天壇公園”在實際文本中常用“天壇”。

本文在現有研究的基礎上,提出一種基于CNNBiLSTM-CRF網絡模型的中文景點識別方法。該方法避免了人工特征的構建,實現了“端到端”中文景點實體識別,并且在測試集上達到了93.9%的F1值。

2 相關工作

目前命名實體識別已經得到了國內外學者的廣泛研究。在中文命名實體識別方面,命名實體識別的主要方法分為:基于規則的方法、基于統計機器學習的方法和基于深度學習的方法。早期的命名實體識別研究主要采用基于規則的方法。張小衡等人[12]從語言學的角度總結規則,對中文機構名進行識別分析;張艷麗等人[13]基于經驗對文本數據進行統計分析來總結規則,對中文機構名進行實體識別;Zhang等人[14]利用基于記憶學習(Memory Based Learning,MBL)的算法獲取規則,用于抽取命名實體和它們之間的關系?;谝巹t的方法多采用語言學專家根據經驗和對數據的分析手工構造規則模板,或者是通過啟發式算法獲取模板,這類方法在某些語言學規律性較強的命名實體識別任務下,往往能夠表現出較高的準確率。但是這些規則往往依賴于具體語言、領域、文本格式,編制過程耗時且容易產生錯誤,并且需要富有經驗的語言學家才能完成[15]。

相比而言,基于統計機器學習的方法和基于深度學習的方法主要利用人工標注的語料進行訓練,標注語料時不需要廣博的計算語言學知識,并且可以在較短時間內完成。這類方法將命名實體識別任務規約為序列標注任務?;诮y計機器學習的方法主要包括:隱含馬爾可夫模型、最大熵(Maximum Entropy,ME)、支持向量機(Support Vector Machine,SVM)、條件隨機場(Conditional Random Field,CRF)等。廖先桃等人[16]采用HMM模型進行中文命名實體識別,在北大富士通語料上達到了85.28%的F1值;李麗雙等人[17]使用SVM模型進行中文地名識別;孫麗萍等人利用CRF對企業簡稱進行命名實體識別。在這類方法中,研究者針對不同的問題提出大量的人工特征,包括詞特征、邊界特征、上下文特征、常用命名實體字符特征等。實驗表明,這些特征和基于統計機器學習方法的結合在相關的中文命名實體識別任務上能夠取得較好的識別效果。但是該類方法很大程度上依賴于人工特征的設計,并且有些特征難以清晰地通過機器語言表達和實現,與此同時,人工特征在提高模型性能的同時也使得模型的泛化能力降低。

近年來,深度神經網絡模型不斷發展,涌現出海量的深度神經網絡模型,并在圖像識別、語音識別等任務上取得了巨大突破。這類模型最大的特點在于大幅減少了人工特征,實現了模型“端到端”的學習。張海楠等人[18]提出一種基于字、詞向量相結合的深度神經網絡模型進行中文命名實體識別,在1998年《人民日報》語料上機構名識別達到了91.06%的F1值。模型主要對輸入文本進行了字粒度和詞粒度的向量化表示,通過字詞結合的方式提升全聯接神經網絡的實體識別效果。該模型雖然在文本的特征表示上進行了優化,但是沒有充分利用文本的上下文信息。王蕾等人提出一種基于神經網絡片段的中文命名實體識別方法,通過引入離散特征與稠密向量結合的方式來充分表示文本的局部特征信息,在MSRA語料上達到了90.44%的F1值。朱丹浩等人[9]提出一種漢字級別循環神經網絡方法來進行命名實體識別,在1998年《人民日報》語料上達到了88.69%的F1值。該模型通過雙向長短記憶神經網絡(Bidirectional Long Short Term Memory,BiLSTM),充分利用片段級上下文信息,并通過對模型輸入層和輸出層的改進來提高模型效果,但是該模型在輸出層的改進沒有進一步考慮輸出序列的上下文信息,并對輸出標注進行全局約束,容易出現標注不合法的情況。

本文在上述研究的基礎上,提出一種基于CNNBiLSTM-CRF的網絡模型。首先使用卷積神經網絡(Convolutional Neural Network,CNN)結構對文本字符級的信息進行編碼,對景點實體的局部特征信息進行表示學習,然后將局部抽象特征信息作為BiLSTM的輸入,進一步通過BiLSTM來充分學習文本的上下文信息,而在BiLSTM模型的輸出層,采用鏈式CRF對模型標簽之間的關系進行學習和約束,最終輸出景點命名實體識別結果。經實驗對比,該模型在本文構建的中文景點數據集中,不需要加入任何人工特征,能達到較好的效果,F1值為93.9%。

3 CNN-BiLSTM-CRF模型

本文提出的基于CNN-BiLSTM-CRF的模型結構如圖1所示。該模型主要包含四部分:字向量矩陣、CNN、BiLSTM、CRF。模型首先通過字粒度的詞袋模型將輸入的字序列轉換成對應字的ID序列;然后通過Skip-Gram模型[19]將輸入ID序列轉換為字向量矩陣;進一步通過CNN來對輸入文本的局部特征進行抽象化抽取和表示;接著通過BiLSTM充分學習文本的上下文特征信息;最后使用CRF來輸出一個全局最優的標記序列。

圖1 CNN-BiLSTM-CRF模型

3.1 卷積神經網絡

卷積神經網絡是一種可以實現“端到端”學習的神經網絡模型,該模型通過局部接收域、權重共享和降采樣三大特點,能夠實現對輸入數據的特征學習和特征表示。Kim[20]使用卷積神經網絡來進行文本分類,取得了較好的效果;Ma[21]、Chiu[22]等人使用卷積神經網絡來進行通用命名實體識別,并在公開英文命名實體識別數據集上取得較好效果。卷積神經網絡的優點在于能夠對局部連續的突出特征進行很好的捕捉和特征表示,并通過多層卷積將多個局部特征進行組合以獲得更為抽象的高層表示。而在中文旅游文本中,旅游景點實體也是處于文本的局部,并且一個實體是由連續的字組成(單字實體除外),具備局部連續的特點。此外有些中文旅游景點實體是由多個獨立實體組合而成(如“故宮博物院”),具備局部組合的特點。因此本文使用卷積神經網絡的特點來對文本中實體的特征信息進行學習和表示,為上層網絡提供更為有效的局部信息。本文使用的卷積神經網絡與Chiu所用網絡基本相似(如圖1中CNN部分所示),而不同點在于,為了盡可能減少額外的輸入和先驗知識,實現“端到端”的學習模型,本文僅采用字符向量矩陣作為網絡模型的輸入;此外,采用ReLU[23]函數作為激活函數,以提高模型收斂速度。

其中,為了解決由于文本長度不一致而導致的輸入字向量矩陣不一致問題,本文以通過統計方法獲得數據的文本長度分布,并在此基礎上選擇合適的文本長度,為不夠文本最大長度的文本末尾補充占位符使得輸入矩陣大小一致;在池化層中,本文采用最大池化(Max Pooling)方法進行下采樣,從而獲得更加抽象的文本特征,并且在一定程度上防止模型過擬合。

3.2 雙向長短記憶網絡

雙向長短記憶網絡(BiLSTM)[24]是循環神經網絡(Recurrent Nerual Network,RNN)的一個變種模型,該模型能夠有效地克服傳統RNN在長距離依賴下所帶來的梯度爆炸和梯度消失問題[25]。此外,該模型相對于長短記憶神經網絡(Long Short Term Memory,LSTM),能夠充分利用輸入序列的上下文信息,從而更多挖掘序列中的隱含特征,提升模型整體效果。雙向LSTM的基本思想即通過前向、后向LSTM兩個隱藏層來分別獲取輸入序列的前向和后向信息,并在最后通過結合形成輸出。在命名實體識別任務中,通過對張小衡、張艷麗等人基于規則的方法進行分析可以發現,實體前向、后向所包含的文本信息(如“去”“逛”“參觀”“游玩”等)能夠為實體的識別帶來有效的特征信息。因此本文使用BiLSTM來對上下文的有效信息進行學習,以達到更好的模型效果。本文使用的BiLSTM模型主要結構LSTM單元(如圖2所示)可形式化表示如式(1)~式(6)所示。

圖2 LSTM單元結構

其中,xt是當前時刻的輸入;it、ft、ot分別是輸入門、遺忘門、輸出門函數;ct、ht表示當前時刻的隱狀態;⊙表示點乘運算;σ表示sigmoid激活函數;tanh表示雙曲正切激活函數;ht-1、ct-1分別代表上一時刻的兩部分隱狀態;Wf、Wi、Wc、Wo表示模型權重矩陣;bf、bi、bc、bo表示模型偏置向量。

3.3 條件隨機場

條件隨機場(CRF)是用來標注和劃分序列結構數據的概率化模型結構。該模型能夠考慮到標簽之間的關系以輸出識別序列的全局最優序列。本文使用的是鏈式CRF,對于給定的文本字序列X={x1,x2,…,xn}(n表示字符序號),定義矩陣B表示輸入字序列X時模型BiLSTM層的輸出結果,其維度為N×K(N表示句子字符個數,K表示識別標簽個數),得到給定某一個字序列X,某一個預測序列y={y1,y2,…,yn}與X的聯合概率如式(7)所示。其中,A是狀態轉移矩陣。進一步可得到,給定文本字序列X的條件下,產生標記序列y的條件概率如式(8)所示。

對于鏈式CRF的訓練過程,本文使用極大似然估計作為代價函數;在預測過程中,輸出條件概率最大的預測序列。在本文實驗中,采用維特比算法(Viterbi algorithm)來快速獲得全局最優序列。

4 實驗及結果分析

4.1 數據集

由于目前還沒有公認度較高的旅游領域文本預料,本文從旅游相關網站上爬取了8 900余篇北京旅行游記文本作為初始未標注數據,經過去除空白行、空格、非文本相關內容等預處理操作,得到旅游領域文本34萬余條句子。同時通過高德地圖旅游景點數據和旅游網站檢索構造了北京旅游景點詞典,經過去重和人工審核后,得到有效景點詞8 000余個。本文通過詞典對旅游文本進行自動化標注,標注樣例如表1所示,并構建模型訓練集和測試集,具體數據情況如表2所示。

表1 旅游文本標注樣例

表2 訓練集和測試集數據情況

為了驗證訓練集和測試集的可靠性,本文從自動化標注的數據集中隨機抽取3組數據,每組數據20 000條句子。經過專家人工審核,得到平均標注準確率約為97%,具體如表3所示。

表3 訓練集和測試集數據情況

4.2 評價指標

本文采用命名實體識別常用的評價指標,即準確率(Precision,P)、召回率(Recall,R)和F1測度值(F1-score,F1),如式(9)~式(11)所示。

4.3 模型驗證實驗結果分析

為了驗證本文提出的模型結構的有效性,設計了3組對比實驗,分別與LSTM模型、BiLSTM模型、BiLSTM+CRF模型進行對比。訓練過程中均使用本文構建的全量訓練集進行模型訓練,模型輸入為經過統一處理得到的文本字符向量矩陣,經實驗分析后指定每一個字的向量維度為256。實驗過程受限篇幅不做贅述。訓練過程中所涉及到的模型參數均和本文提出的模型所使用的參數一致,實驗結果如表4所示。

表4 模型有效性驗證對比實驗結果

實驗結果顯示,BiLSTM模型在各評價指標上相比于LSTM模型有較大幅度的提升。通過對LSTM模型預測錯誤的結果進行分析發現,LSTM模型識別錯誤主要是丟失實體開頭一兩個字,導致實體本身不完整,使得識別錯誤。比如“這個是蘇州街”中的“蘇州街”,模型預測為“州街”;“順貞門乃內延通往神武門之重要通道”中的“順貞門”“神武門”,模型預測為“貞門”“武門”。其主要原因在于LSTM相對于BiLSTM,不能夠更加充分地學習到文本的上下文信息。相比于BiLSTM模型,BiLSTM+CRF模型在準確率上提高了2.51個百分點,在召回率和F1值上也分別有一定的提升。由于CRF本質上是給定觀測序列和標識序列的轉移矩陣,該模型充分利用相鄰標簽關系,輸出全局最優序列。對模型預測錯誤的結果進行對比發現,相對于BiLSTM將各個標簽視為相對獨立進行計算,CRF模型很少出現將一個完整實體拆分成兩部分非實體詞的情況(如“夜幕中的國家大劇院”中的“國家大劇院”,模型識別為“國家”“劇院”兩個實體),能夠更為準確地識別實體。本文提出的模型相比于BiLSTM+CRF模型,在召回率上提高了近1個百分點,并且準確率和F1值也得到了一定的提升,表明CNN能夠進一步抽取文本的局部有效特征,提升模型的識別效果。

4.4 相關工作對比結果分析

為了進一步驗證本文模型的識別效果,本文設計了4組對比實驗。由于現有研究對于中文旅游景點命名實體識別的研究較少,本文選擇了主流的兩組基于統計機器學習的方法和兩組基于深度學習的方法進行對比實驗:廖先桃等人[16]提出的基于HMM模型的方法;郭劍毅等人[11]提出的基于層級條件隨機場的方法;Lample等人[26]提出的基于BiLSTM+CRF的方法;Chiu等人[22]提出的基于CNN+BiLSTM的方法。實驗結果如表5所示。

表5 相關工作對比實驗結果

實驗結果表明,基于深度學習方法的模型效果要優于基于統計機器學習方法。在基于深度學習的方法中,Lample等人的方法通過BiLSTM+CRF模型,充分學習訓練文本的上下文特征信息,得到了94.76%的準確率和91.96%的召回率。而本文模型在該模型的基礎上,準確率提高了0.27%,召回率提高了0.84%。因為本文在BiLSTM之前采用CNN對文本的局部特征信息進行建模和學習,除了利用上下文信息之外,也充分利用景點實體自身的局部特征信息。Chiu等人的方法充分學習文本的局部信息,因此在召回率上相對于Lample的方法提高了約1個百分點。而本文模型既考慮文本的上下文信息,又關注于文本的局部特征信息,在準確率上,相對于該模型提高了1.46%。此外,本文通過鏈式CRF模型對輸出序列的上下文信息進行全局約束,減少模型輸出標注不合法的情況。從上述對比實驗可以看出,本文提出的模型不用加入任何人工特征,取得了最好的實驗效果。

5 結束語

本文針對中文旅游景點實體識別的特點和難點,提出一種基于CNN-BiLSTM-CRF的網絡模型。實驗結果表明,該模型在未使用人工特征的情況下,取得了較好的效果。該模型通過卷積神經網絡來對文本的局部信息特征進行抽象化抽取和表示,使得模型在召回率上得到一定的提升;同時,通過BiLSTM充分學習訓練文本的上下文信息;在輸出結果上,使用鏈式CRF來輸出全局最優的標記序列,提高了模型的準確率,進而達到最高的F1值。下一步工作可以考慮將Attention機制[27]加入到當前模型,也可以進一步探索將最新的語言表示模型——雙向編碼器表示模型(Bidirectional Encoder Representations from Transformers,BERT)[28]嵌入到字粒度向量矩陣中,進一步提高實體識別效果。

猜你喜歡
命名實體神經網絡
命名——助力有機化學的學習
前海自貿區:金融服務實體
神經網絡抑制無線通信干擾探究
基于神經網絡的中小學生情感分析
有一種男人以“暖”命名
為一條河命名——在白河源
實體的可感部分與實體——兼論亞里士多德分析實體的兩種模式
兩會進行時:緊扣實體經濟“釘釘子”
振興實體經濟地方如何“釘釘子”
基于神經網絡的拉矯機控制模型建立
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合