米健霞,謝紅薇
太原理工大學 軟件學院,太原030024
隨著互聯(lián)網(wǎng)的迅猛發(fā)展,電子招投標依托于互聯(lián)網(wǎng)的開放環(huán)境也得到了迅速發(fā)展,并形成了一種全新的投標采購活動。用戶依托于電子招投標,可以互不謀面地與供應商進行采購活動。然而,隨著電子招標采購領域的深化與擴展,命名實體識別成為從海量數(shù)據(jù)中為用戶提取有價值的信息的重要手段之一。
命名實體識別最早采用基于規(guī)則和字典的方法,此方法可以對具有一定規(guī)律的語句準確反映,但依賴于大量的人工,耗費代價太大,且泛化能力極差。隨后出現(xiàn)了最大熵模型[1]、條件隨機場(conditional random field,CRF)[2]、隱馬爾可夫模型(hidden Markov model,HMM)[3]等基于統(tǒng)計機器學習的方法,此方法能夠減少人工成本,但這類方法仍需要大量語料庫和標注支持。隨著卷積神經(jīng)網(wǎng)絡(convolutional neural networks,CNN)[4]、循環(huán)神經(jīng)網(wǎng)絡(recurrent neural network,RNN)[5]、長短期記憶網(wǎng)絡(long short-term memory,LSTM)[6]、雙向長短期記憶網(wǎng)絡(bi-directional long-short term memory,BiLSTM)[7]等基于深度學習方法的迅猛發(fā)展,命名實體識別的研究迎來了新的曙光,打破了傳統(tǒng)方法的約束,解決了數(shù)據(jù)中高維、冗雜等傳統(tǒng)機器學習難以解決的問題,不需要大量的人工干預便可以得到較好的識別效果。
雖然針對命名實體識別的研究已較為廣泛,但在招投標領域尚未得到較好的發(fā)展?,F(xiàn)階段,招投標公司仍使用規(guī)則的方法解決物料識別問題,時間及人力成本較高。因此,提出一種基于深度學習的面向招投標領域的命名實體識別方法,不僅能夠降低時間和人力成本,而且能夠增強泛化能力,為招投標物料問題的解決提供了一種高效的新方案。
近年來,大量學者對命名實體識別方法及應用進行了深入研究,梅豐等[8]將電子數(shù)碼領域中的品牌知識庫與最大熵模型結合進行訓練學習,最終F1值達到86.91%;劉非凡等[9]為證明隱馬爾可夫模型在解決多尺度嵌套序列方面的有效性優(yōu)于最大熵模型,對電子數(shù)碼和手機兩個領域的產(chǎn)品名、產(chǎn)品型號、產(chǎn)品品牌三種實體進行識別,F(xiàn)1值分別為79.7%、86.9%、75.8%;谷川等[10]在條件隨機場中融合詞、詞性、品牌、數(shù)字、特殊符號五種不同層次特征,在電子數(shù)碼和家電領域中的F1值達到了93.67%;蔣超[11]提出創(chuàng)新的回溯CRF算法,并結合特征提取優(yōu)化算法運用到研報領域產(chǎn)品中,豐富了模型特征,準確率達到了87.34%;雖然這些方法取得較好的效果,但這類方法仍需要大量語料庫和標注支持。隨著深度學習的迅猛發(fā)展,此類方法被廣泛使用,李博等[12]使用Transformer-CRF模型,在醫(yī)學電子病歷中取得了95.02%的F1值;買買提阿依甫等[13]通過構建BILSTM-CRF深層模型,驗證了該模型在解決維吾爾文命名實體識別中的魯棒性;李一斌等[14]在中文包裝產(chǎn)品命名實體中驗證了雙向GRU-CRF模型優(yōu)于單向長短期記憶模型,最終準確率達到了82.45%;張應成等[15]對標書的實體識別進行了研究,運用BiLSTM-CRF模型對標書中的招標人、招標代理和招標編號三種實體進行識別,其準確率分別為82.16%、88.91%、85.74%;但此類方法仍有缺點,無法有效地處理一詞多義問題,且沒有考慮到分詞的影響,從而影響命名實體識別。唐煥玲等[16]提出BERT預訓練模型和CRF相結合的方法,驗證了BERT模型能夠充分學習語義特征,從而解決語料中一詞多義。
中文作為一種象形文字,有獨特的字形特征,如部首、筆畫、五筆等特征以及端點、折角點、交叉點等特殊特征。漢字結構特征和其所蘊含的事物信息往往具有關聯(lián)相似性,如具有“艸”“竹”“木”等偏旁的漢字多于植物有關,許多疾病實體詞往往帶有“疒”部首,Dong等[17]用漢字的偏旁部首信息來增強漢字信息,用LSTM-CRF模型對中文實體進行識別;趙健等[18]為了驗證特殊特征對手寫漢字識別率提升的重要性,選擇漢字筆畫的特殊特征進行提取,例如端點、折角點、交叉點特征;Dai等[19]為了證明字形特征對命名實體識別的影響,運用CNN提取漢字的圖像特征達到了較高的識別率。但以上方法只使用了漢字的一種特征,泛化能力較差。
考慮到BERT模型可以解決招標物料的多義性和分詞問題,CNN提取漢字的五筆特征可以增強語義向量,BiLSTM可以對其結合的信息進行上下文提取,CRF能夠對BiLSTM的標簽結果進行檢查約束,從而獲取最優(yōu)的全局標注序列,本文提出一種CB-BiLSTM-CRF模型,用來識別招標物料中名稱、自然高、胸徑、冠幅、光束角、功率、光通量等12種實體。
本文首先采用BERT預訓練模型對輸入文本進行特征提取,通過雙向Transformer編碼器,對詞前后的信息充分利用,從而獲取更準確的詞向量分布表征;同時將輸入文本轉換為五筆編碼的形式,通過CNN對五筆編碼進行卷積提取字形特征,隨后,將BERT獲得的字向量與漢字五筆字形向量相結合,并將組合結果作為雙向LSTM的輸入進行訓練,最后將雙向LSTM模型的結果輸入到CRF中進行約束,最終得到最優(yōu)預測結果,這樣既結合了中文特有的字形特征,避免了分詞,又實現(xiàn)了一詞多義。這一創(chuàng)新模型通過對中文特有的字形特征與BERT預訓練模型結合,減少了命名實體的識別錯誤,能夠以少量的資源實現(xiàn)高效的識別效果。本文提出的CB-BiLSTM-CRF模型結構如圖1所示。
圖1 CB-BiLSTM-CRF模型架構圖Fig.1 CB-BILSTM-CRF model architecture diagram
卷積神經(jīng)網(wǎng)絡由Yan Lecun于1998年提出,卷積神經(jīng)網(wǎng)絡由卷積層、激活層和池化層三部分構成,該模型采用局部鏈接和權值共享的策略,減少了網(wǎng)絡參數(shù),具有平移不變形。卷積層的作用是利用不同尺寸的卷積核在輸入的特征上以特定的步長滑動進行卷積計算;在池化層中,卷積數(shù)據(jù)和參數(shù)量被壓縮,一方面可以簡化神經(jīng)網(wǎng)絡的計算復雜度,另一方面能夠通過壓縮來提取主要特征;激活層是利用激活函數(shù)對結果做非線性映射,使其能夠更好地解決復雜的問題。
漢字作為世界上最古老的象形文字之一,所蘊含的含義大多與漢字字形密切相關,具有相似字形的漢字往往也具有相似的含義,但是漢字的這一特性在電子招投標命名實體識別領域還未充分利用。五筆特征在編碼時充分結合了漢字的筆畫和字形結構,是一種能較好表征漢字字形特點的編碼形式。例如,漢字“花”由“艸”“亻”“匕”三種筆畫組成,分別用“a”“w”“x”表示,“花”的上下結構和最后筆畫“折”用識別碼“b”來表示,由漢字的筆畫信息和結構信息便組成了“花”的五筆編碼,即“awxb”。因此,本文充分利用這一特點,將漢字轉換為五筆編碼形式,然后利用CNN的卷積和池化操作進行特征提取,最終得到五筆特征向量。字形特征提取步驟如下:
步驟1將輸入的中文語句拆分為單個漢字。
步驟2用程序實現(xiàn)每個漢字向五筆編碼的轉換,以特殊符號>作為每個漢字五筆編碼間的分隔符。
步驟3通過五筆編碼獲取對應漢字的五筆向量矩陣表示,利用CNN網(wǎng)絡的卷積和池化操作對每個漢字的五筆特征進行提取。
2018年,Devlin等[20]提出了BERT模型,該模型采用了只有編碼模塊,沒有解碼模塊的雙向Transformer結構。
BERT模型將三個能夠充分表達語義信息的向量相加作為輸入,分別為token詞向量、segment句子向量和位置向量;其中segment句子向量的作用主要是通過在句首添加[CLS]開始標志,句尾加[SEP]結束標記來判定詞匯的語句歸屬;BERT模型通過這三個輸入的向量,既能夠實現(xiàn)對字符級、詞級、句子級甚至句子之前的關系的充分描述,又可以更好地表征不同語境中的句法與語義信息。
BERT模型有兩大核心任務:Masked LM和下一句話預測。Masked LM,即mask語言訓練模型,BERT模型中,作者隨機抽取訓練集15%的詞,在抽取的詞中,80%用[mask]替換,10%維持不變,10%用隨機詞進行替換,通過這樣的方式對被msak的詞的原意進行預測。下一句話預測是針對所有訓練的語句,對語句之間的關系進行判斷,例如,A、B是預訓練樣本,B有50%的概率是A的下一句,記為IsNext,同理,B有50%的概率不是A的下一句,而是一句隨機從訓練集中抽取的語句,記為NotNext。BERT模型通過這兩大任務分別捕捉詞和句子的表示,進而更好地利用上下文信息。
BERT模型的核心是Transformer中的自注意力機制,首先對每句話中每個詞與其他詞的相似度進行計算,然后對相似度做歸一化得到注意力權重,利用注意力權重對字向量進行加權線性組合,從而使得每個字向量都含有當前句子中所有字向量的信息。計算公式如下:
其中,Q為要查詢的詞,K為其他詞,V為真實被取出來的值,dk為Q和V的維度,先用Q與每個K做attention點積計算,然后通過與dk做除把注意力矩陣轉為標準正態(tài)分布,保證結果的穩(wěn)定性,接著用softmax進行歸一化,最后乘以V得到輸出向量。
softmax函數(shù),常用于多分類問題中,作用是將得到的分值進行歸一化,最終概率值分布在[0,1]之間,且概率和為1,概率最大的便是預測目標,計算公式如公式(2):
為了確保每個head關注的信息都不同,BERT模型利用多頭自注意力機制,將詞的多種維度作為多個head,這樣每個head便可以從不同的表示子空間進行學習。公式如下:
BERT模型解決一詞多義問題,Masked LM、下一句話預測這兩大核心任務和多層雙向Transformer及其多頭自注意力機制發(fā)揮著重要的作用,Masked LM使其不僅學習下文信息,也能夠學習到上文信息,多頭自注意力機制能夠同時提取特征,解決長距離依賴問題,這樣便使每個詞可以同時利用該詞的上下文信息,從而達到一詞多義的效果。
1997年,Hochreiter、Scmidhuber[21]為了解決RNN模型的缺點提出LSTM網(wǎng)絡,該模型的誕生,為RNN中梯度消失及爆炸問題的解決提供了途徑,從而擺脫了在處理長期依賴信息方面的困擾。
LSTM整體功能的實現(xiàn)主要依靠細胞狀態(tài)、輸入門、遺忘門、輸出門等組件。其中,遺忘門輸入的是上一時刻隱含層ht-1和這一時刻的輸入xt,sigmoid激活函數(shù)作為是否遺忘上層細胞狀態(tài)內(nèi)容的標準;輸入門既要對輸入信息進行處理,又要對更新信息進行確定,同時更新細胞狀態(tài);最后,輸出門決定輸出細胞狀態(tài)中保存的哪些信息。圖2為LSTM的結構圖。
圖2 LSTM結構圖Fig.2 LSTM diagram
LSTM網(wǎng)絡的計算過程如公式(5)~(10)所示,其中ht-1表示上一時刻隱含層狀態(tài),xt表示這一時刻的輸入,以it作為輸入門,ot作為輸出門,ft為遺忘門,W作為權重矩陣,用b表示偏置,Sigmoid激活函數(shù)為δ,雙曲正切函數(shù)為tanh。
Sigmoid函數(shù)和tanh函數(shù)是兩種使用廣泛的激活函數(shù)。Sigmoid激活函數(shù),如公式(11),用于二分類問題中,其取值范圍為(0,1),即經(jīng)過Sigmoid函數(shù)激活后恒為正值;tanh雙曲正切函數(shù)以(0,0)為中心點,其取值范圍為(-1,1),收斂速度與Sigmoid相比更快,如公式(12)。
BiLSTM模型,即雙向LSTM模型,由前向LSTM和后向LSTM共同結合而成,結構如圖3所示。BiLSTM不僅可以學習到前向的有效信息,還可以學習到后向信息,更好獲取上下文信息,進而提高識別率。
圖3 BiLSTM結構圖Fig.3 BiLSTM diagram
2001年,Lafferty等[22]提出CRF模型,CRF模 型可以解決BiLSTM模型難以實現(xiàn)的標簽依賴的問題,如BiLSTM模型可能會在“O”標簽后輸出“I-mc”等錯誤標簽,CRF模型通過計算句子的標注序列概率可以得到標簽之間的約束條件,如標簽開頭應該是“B”或“O”,“O”后邊不應該輸出“I-mc”,“B-mc”后應該是“I-mc”或“O”等;CRF模型通過給定句子x計算標注序列y的概率如公式(13)、(14),其中F(y,x)是轉移矩陣和狀態(tài)矩陣。
本文采用python語言,通過整合Flask輕量級框架設計并構建了“智能物料”可視化Web在線識別平臺,可以快速識別出名稱、胸徑、藤長、功率、光通量、光束角、品牌等特征。該平臺初始界面如圖4。
圖4 “智能物料”在線識別平臺初始界面Fig.4 Initial interface of“Smart Materials”online identification platform
其中,輸入框記錄用戶提交的物料信息,“在線識別”按鈕將用戶參數(shù)傳遞至Web后端,通過調(diào)用訓練好的模型對輸入數(shù)據(jù)進行識別,最后將識別結果返回到“智能物料”在線平臺中,識別界面如圖5所示。
圖5 “智能物料”在線識別平臺識別界面Fig.5 Identification interface of“Smart Materials”online identification platform
由于電子招投標領域的特殊性,缺乏權威性的語料支持,所以本文采用人工收集的方式來構建實驗樣本。實驗數(shù)據(jù)來源于兩部分,一部分是招標公司提供的真實發(fā)生采購的物料數(shù)據(jù),另一部分是從各招標網(wǎng)站中爬蟲的產(chǎn)品數(shù)據(jù),一共收集了約8萬條數(shù)據(jù),其中植物類約2萬條,燈具類數(shù)據(jù)約3萬條。實驗中,使用植物類、燈具類兩類數(shù)據(jù),并將數(shù)據(jù)集按2∶2∶6的比例隨機分為驗證集、測試集和訓練集。本文采用的標注方法為BIO標注法,采用的判斷預測正確的條件為實體的邊界和類型都正確。實體標簽及標注如表1所示。
表1 實體標簽及標注Table 1 Physical labeling and labeling
本文將準確率P、召回率R、F1值作為實驗的評價標準,公式如下:
本實驗使用12層的谷歌BERT-Base預訓練模型,隱藏層數(shù)為768,12頭,參數(shù)共110×106。實驗參數(shù)如表2所示。
表2 實驗參數(shù)Table 2 Experimental parameters
為了證明模型的實驗效果,本文用相同的數(shù)據(jù)集分別以GRU-CRF、LSTM-CRF、BiLSTM-CRF、CNNBiLSTM-CRF、BERT-BiLSTM-CRF、CB-BiLSTM-CRF模型進行了實驗,并用同樣的評價標準進行評價,各方法的實驗結果如表3所示。
實驗1為了對比GRU和LSTM在命名實體識別的效果,使用GRU-CRF和LSTM-CRF兩種方法進行實驗,由表3可知,LSTM-CRF準確率、召回率、F1值分別為75.12%、77.63%、76.35%,分別比GRU-CRF提高了0.59、0.76、0.82個百分點。由此可見,LSTM-CRF識別效果較好,因此本文選用LSTM-CRF作為基準模型。
表3 各方法識別結果Table 3 Results identified by each method單位:%
實驗2采用BiLSTM-CRF模型,由表3可知,其識別效果比LSTM-CRF模型提高3.05、1.96、2.52個百分點,這是因為BiLSTM-CRF模型能夠提取前向和后向兩個方向的語義信息,相較于特性提取方向單一的LSTMCRF模型而言,具有更好的實體識別效果。
實驗3在實驗2的基礎上增加了卷積神經(jīng)網(wǎng)絡,由表3可知,CNN-BiLSTM-CRF模型在識別準確率、召回率、F1值上比BiLSTM-CRF模型分別提高7.91、5.97、6.94個百分點,說明通過CNN能夠有效對招標物料特征進行局部提取,從而提高招標物料命名實體的識別效果。
實驗4將實驗3的CNN換為BERT預訓練模型,實驗表明BERT-BiLSTM-CRF模型比CNN-BiLSTM-CRF模型提高了約8個百分點,主要因為本文的招標物料內(nèi)容更多涉及一詞多義的處理,CNN僅對招標物料局部特征進行提取,難以處理一詞多義問題,BERT模型利用多頭注意力機制提取句子中的語義信息從而解決這一問題,因此BERT-BiLSTM-CRF模型整體優(yōu)于CNNBiLSTM-CRF模型。
實驗5為了進一步提高招標物料的命名實體識別準確率,本文提出CB-BiLSTM-CRF模型,利用CNN對招標物料五筆字形特征提取,最終F1值達到了95.82%,說明將BERT預訓練模型獲得的字符向量和CNN模型獲得的字形五筆特征相結合可以強化招標物料的語義信息,從而達到更高的識別效果。
最后對本文招標物料名稱、胸徑、藤長、冠幅等12類實體在CB-BiLSTM-CRF模型和BERT-BiLSTM-CRF模型進行實驗做細化對比,兩模型在12類實體的F1值結果如表4所示??梢钥闯觯渲忻Q和胸徑相較于其他實體識別效果最好,F(xiàn)1值均達到98%以上,這是因為名稱和胸徑實體有較為明確的上下文信息以及字形特征;而品牌這一實體的識別效果最差,其原因是品牌種類繁多,沒有特定的字形特征,邊界不好確定,但相較于BERT-BiLSTM-CRF模型提高了1.01個百分點。綜上所述,從表中可以看出本文模型對招標物料的識別效果有一定的積極影響。
傳統(tǒng)招標物料數(shù)據(jù)的識別過度依賴人工,人為定義的數(shù)據(jù)識別規(guī)則對物料的識別率起決定性作用。隨著招標領域物料數(shù)據(jù)的復雜性、多樣性、數(shù)據(jù)量的不斷提升,通過人工定義規(guī)則的識別方式已經(jīng)不能滿足需求,本文提出CB-BiLSTM-CRF模型,在提升識別效果的同時降低了人力成本。通過采用不同模型對多類物料數(shù)據(jù)進行實驗,最終使F1值達到95.82%,說明了在招標物料的命名實體識別中,CB-BiLSTM-CRF模型效果更好。同時,本文搭建了在線招標物料命名實體識別網(wǎng)頁平臺,方便用戶快速從文本中提取有效信息。
雖然本文提出的模型在招標物料中達到了95.82%的F1值,但本文僅使用植物類和燈具類兩種物料數(shù)據(jù),且沒有考慮到錯別字和別稱的問題,接下來將結合錯別字和別稱的情況在更多種類的物料數(shù)據(jù)進行實驗對比,以提高招標物料的命名實體識別效果。