尹止戈 陸建峰
(南京理工大學(xué) 南京 210094)
命名實(shí)體識別(Named Entity Recognition,NER)是自然語言處理中一項(xiàng)關(guān)鍵的上游任務(wù),也是信息抽取的技術(shù)支撐。傳統(tǒng)的命名實(shí)體識別任務(wù)是識別出文本中的七小類(人名、地名、機(jī)構(gòu)名、時(shí)間、日期、貨幣和百分比),除此以外,NER技術(shù)還可用于特定領(lǐng)域,提取出特定意義的實(shí)體。例如中學(xué)化學(xué)課程中的實(shí)體識別任務(wù)通常是從非結(jié)構(gòu)化的文本數(shù)據(jù)中提取出具有化學(xué)意義和特征的知識點(diǎn)實(shí)體。
早期的NER 系統(tǒng)主要分為三類,基于字典,基于規(guī)則和統(tǒng)計(jì)機(jī)器學(xué)習(xí)?;谧值涞姆椒ǎ?],主要利用字符串匹配,包括精準(zhǔn)匹配和模糊匹配,存在著高精度,低召回,擴(kuò)展麻煩的問題;基于規(guī)則的方法,主要利用模式規(guī)則以及上下文詞語,需要專家輔助和篩選,可移植性弱;統(tǒng)計(jì)機(jī)器學(xué)習(xí)模型包括隱馬爾可夫模型(Hidden Markov Model,HMM),最大熵馬爾可夫模型(Maximum Entropy Markov Model,MEMM),條件隨機(jī)場(Conditional Random Field,CRF)等。HMM 模型基于兩個(gè)重要假設(shè),馬爾科夫性假設(shè)和觀測獨(dú)立性假設(shè),數(shù)據(jù)依賴多為一階,忽略了鄰域多階的信息。MEMM是局部歸一化方法,其利用維特比算法解碼,但不一定全局最優(yōu),會出現(xiàn)標(biāo)注偏置。CRF 通過轉(zhuǎn)移特征函數(shù)和狀態(tài)特征函數(shù),針對前后多個(gè)位置進(jìn)行限定,統(tǒng)計(jì)全局概率,其更依賴標(biāo)注數(shù)據(jù)庫的質(zhì)量和數(shù)量。近年來,深度學(xué)習(xí)技術(shù)為命名實(shí)體識別任務(wù)帶了新的機(jī)遇,以word2vec[2],長 短 期記 憶 網(wǎng) 絡(luò)(Long Short-term Memory Networks,LSTM)[3]為代表的半監(jiān)督模型以及ELMo,BERT[4],XLNet[5]為代表的大規(guī)模預(yù)訓(xùn)練模型,在泛化能力和準(zhǔn)確率上都得到了提高。相比較LSTM 系列模型而言,預(yù)訓(xùn)練模型通常需要更大的訓(xùn)練預(yù)料且對算力要求更高?;贐ootstrapping,CGExpan[6]的半監(jiān)督算法,通過實(shí)體集擴(kuò)充,克服了語料稀缺,數(shù)據(jù)稀疏的問題。
中學(xué)化學(xué)領(lǐng)域缺少大量的具有高質(zhì)量的標(biāo)注數(shù)據(jù),且語料多為非結(jié)構(gòu)化文本。目前中學(xué)化學(xué)領(lǐng)域?qū)嶓w識別的主要問題包括以下兩個(gè)方面:1)中學(xué)化學(xué)課程領(lǐng)域的數(shù)據(jù)往往呈現(xiàn)中英文結(jié)合,化學(xué)式簡寫或嵌套的特點(diǎn)?;瘜W(xué)實(shí)體沒有固定的表述方式,因此,難以構(gòu)建全面合理的實(shí)體特征。2)現(xiàn)有的NER 研究通常針對通用領(lǐng)域,例如新聞?lì)I(lǐng)域,這些研究更多地依賴公開的大規(guī)模訓(xùn)練語料,難以移植到中學(xué)化學(xué)課程領(lǐng)域。
化學(xué)實(shí)體的偏旁部首多為“石”、“氣”、“钅”等,而具有相同詞根的漢字通常具有相近的語義和語法用法,現(xiàn)有的中文處理算法往往把字或詞作為基本單位,而忽略了偏旁部首特征中的詞匯義原知識[7]。因此筆者構(gòu)建了以BiLSTM-CRF 為基礎(chǔ)的改進(jìn)神經(jīng)網(wǎng)絡(luò)模型,融合了偏旁部首的詞根嵌入向量,有效提升了語言模型的可解釋性,在中學(xué)課程化學(xué)領(lǐng)域的非結(jié)構(gòu)化文本數(shù)據(jù)中進(jìn)行信息抽取。實(shí)驗(yàn)表明,該方法在F1 度量上高于實(shí)驗(yàn)中的基準(zhǔn)模型。
Safaa Eltyeb[8]概述了基于字典、基于規(guī)則和機(jī)器學(xué)習(xí)方法在化學(xué)文獻(xiàn)中進(jìn)行化學(xué)實(shí)體識別的解決方案。Zhihao Yang[9]針對生物化學(xué)領(lǐng)域中實(shí)體形式多變,提出了基于詞典擴(kuò)展的CRF實(shí)體識別方法。劉燁宸[10]對特定領(lǐng)域知識圖譜狀況進(jìn)行了較為全面的總結(jié)。Zhiheng Huang[11],Guillaume Lample[12],Yue Zhang[13]提出了多種基于LSTM 的序列標(biāo)注模型及變體,由于加入了CRF 層,使用句子級標(biāo)記信息,與之前的方法相比,具有較強(qiáng)的魯棒性和較少的詞嵌入(word embedding)依賴。Zenan Zhai[14]等在化學(xué)和疾病實(shí)體識別任務(wù)上比較了LSTM 和CNN(Convolutional Neural Networks,卷積神經(jīng)網(wǎng)絡(luò))的字符級詞嵌入在BiLSTM-CRF模型上的差異,識別率相當(dāng),但CNN 具有計(jì)算性能優(yōu)勢。Xinlei Shi[15]等深入研究了漢字處理的基本層次,提出了一種新的深度學(xué)習(xí)技術(shù),詞根嵌入(radical embedding)。Chuanhai Dong[16]將 中 文 詞 根 嵌 入Bi-LSTM-CRF 模型中,在MSRA 數(shù)據(jù)集上取得了良好的識別率。Jie Yang[17]提出NCRF++,設(shè)計(jì)了一個(gè)CRF推理層,通過配置文件建立自定義模型結(jié)構(gòu),對于詞向量和字向量的嵌入更加靈活。Yao Chena[18]在中文不良藥物事件報(bào)道(ADERS)數(shù)據(jù)集上,通過四輪數(shù)據(jù)標(biāo)注和半監(jiān)督擴(kuò)充數(shù)據(jù)集,使用基于詞匯特征的BiLSTM模型在自由文本上取得了較高的F1得分。Xiaoya Li[19]提出的Unified MRC框架通過將NER 任務(wù)格式化為閱讀理解任務(wù),能夠同時(shí)應(yīng)對嵌套NER 和扁平NER 任務(wù)。Jan-Christoph Klie[20]針對實(shí)體歧義,提出了一種實(shí)體鏈接消歧方法,面對資源匱乏,展示了統(tǒng)計(jì)機(jī)器學(xué)習(xí)模型的有效性,且在注釋速度上提升了35%。
針對中學(xué)化學(xué)領(lǐng)域語料,本文確定了五個(gè)實(shí)體類別,分別是化學(xué)藥品(CHE),化學(xué)儀器(EQU),屬性(ATT),反應(yīng)現(xiàn)象(REA)和操作方法(OPE)。本文采用了高效簡潔的BIO 標(biāo)注模式,B 代表實(shí)體的起點(diǎn),I代表實(shí)體的內(nèi)部和終點(diǎn),O 代表非實(shí)體。表1為人教版高中化學(xué)語料的實(shí)體標(biāo)注方法。
表1 人教版高中化學(xué)語料實(shí)體標(biāo)注方法
中學(xué)化學(xué)實(shí)體中有較多中英文結(jié)合實(shí)體以及嵌套式實(shí)體,例如“NaCl 溶液”,“NaCl”通常是一種晶體狀的化學(xué)藥品(氯化鈉),而“NaCl 溶液”則表示的是一種液態(tài)的化學(xué)藥品,此時(shí)應(yīng)該將英文的“NaCl”和中文“溶液”包含在同一個(gè)實(shí)體中,而不應(yīng)該遺漏掉“溶液”,雖然單獨(dú)的“溶液”在這里不屬于預(yù)先定義的五個(gè)實(shí)體類別,但“溶液”接在“NaCl”后便有了不同的實(shí)體含義。圖1 為化學(xué)數(shù)據(jù)集中的標(biāo)注示例。
圖1 化學(xué)數(shù)據(jù)集中的標(biāo)注示例
循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)是針對序列標(biāo)注任務(wù)的重要神經(jīng)網(wǎng)絡(luò)模型,RNN輸入一個(gè)向量序列(x1,x2,…,xn),輸出的是一個(gè)包含狀態(tài)層位置信息的序列(y1,y2,…,yn)。通常,RNN 可以訓(xùn)練得到序列的距離依賴特性,但是往往學(xué)習(xí)到的是近距離的依賴,不擅長捕獲更復(fù)雜的長距離依賴。LSTM 在RNN 的基礎(chǔ)上添加了記憶單元以及Sigmoid 激躍函數(shù),能夠有效捕捉長期依賴關(guān)系。LSTM的記憶單元包括輸入門(it)、輸出門(ot)、遺忘門(ft)和細(xì)胞狀態(tài)(ct) ,c為tanh 網(wǎng)絡(luò)創(chuàng)建的備選值向量,其中輸入門和遺忘門的結(jié)果影響單元狀態(tài)的更新。公式解釋如下:
其中σ是Sigmoid 激躍函數(shù),⊙是元素積,w是權(quán)重矩陣,b是偏差。我們使用雙向的LSTM 得到文本的字符向量。對于一個(gè)給定的句子(x1,x2,…,xn)包含了n個(gè)字符,每個(gè)字符都包含了一個(gè)d維的向量,正向的LSTM 能夠捕獲上文的依賴關(guān)系,得到一個(gè)隱層,在LSTM 的基礎(chǔ)上,加上一個(gè)反向的LSTM 得到下文的信息,將兩個(gè)隱層拼接成一個(gè)新的隱層,以此得到上下文的表示信息。
LSTM 考慮的是輸入序列的上下文信息,條件隨機(jī)場還可以考慮實(shí)體標(biāo)簽之間的依賴關(guān)系。CRF是一種基于統(tǒng)計(jì)的序列標(biāo)注方法,給定的觀測序列X和輸入標(biāo)簽Y,CRF 通過條件概率P(Y|X)來判別,假設(shè)一個(gè)輸入序列X={x1,x2,xn},標(biāo)簽的序列為Y={y1,y2,yn},其中xi表示第i 個(gè)單詞的向量,yi第i個(gè)單詞對應(yīng)的標(biāo)簽,則對于給定序列X,隨機(jī)變量Y的條件概率可由以下公式表示:
公式中tk(yi-1,yi,,X,i)表示相鄰輸出標(biāo)簽之間的轉(zhuǎn)移特征函數(shù),sl(yi,X,i)表示當(dāng)前觀測序列的狀態(tài)函數(shù),Z(X) 是規(guī)范因子,α,β為模型參數(shù),條件隨機(jī)場的訓(xùn)練過程中,使用最大似然估計(jì)L(αk,βl),選取對數(shù)似然最大的參數(shù),在訓(xùn)練集上(X),Y則有
最大條件概率的標(biāo)簽序列為
原始的CRF是統(tǒng)計(jì)每個(gè)實(shí)體對應(yīng)標(biāo)簽的分?jǐn)?shù),然后輸入給解碼器,而LSTM 中的CRF 是使用LSTM 傳上來的隱藏層狀態(tài)值yi作為統(tǒng)計(jì)分?jǐn)?shù),同時(shí)考慮了標(biāo)簽依賴關(guān)系,添加了限定特征。
詞向量是一種分布式嵌入向量,詞向量是根據(jù)大樣本的語言數(shù)據(jù)中的分布屬性來量化和分類語言詞匯之間的語義相似性。最初的詞向量是獨(dú)熱編碼(one-hot),詞出現(xiàn)的位置標(biāo)記為1,其余為0,通過詞出現(xiàn)的頻率排序得到一個(gè)V 維的稀疏矩陣,該方法具有維度災(zāi)難和語義鴻溝的問題。通過對共現(xiàn)矩陣進(jìn)行矩陣分解,能夠得到更加稠密的詞向量,但求解計(jì)算復(fù)雜度較大。word2vec 是利用神經(jīng)網(wǎng)絡(luò)對詞的上下文訓(xùn)練得到詞向量化表示的一種工具,訓(xùn)練方法包括CBOW 和Skip-gram,優(yōu)化效率高,但只考慮了詞的局部信息,得到的是靜態(tài)的詞向量,且無法解決一詞多義問題。與獨(dú)熱編碼(one-hot),共現(xiàn)矩陣的矩陣分解,word2vec 等方法產(chǎn)生的靜態(tài)詞向量相比較,通過語言模型例如雙向LSTM,GPT,BERT 預(yù)訓(xùn)練得到的詞向量是動態(tài)的,其本質(zhì)思想是用模型去動態(tài)調(diào)整單詞的詞向量,使用時(shí)單詞因其在句子中的位置和語法結(jié)構(gòu)具備了特定的上下文信息,因此可以根據(jù)上下文語義動態(tài)調(diào)整單詞的詞向量。傳統(tǒng)的分布式嵌入向量主要包括詞向量和字符向量(character embedding)。在英文或中文中,詞可以拆分為更小的字符,字符向量可以避免分詞的麻煩,能夠更好地解決未登陸詞問題。圖2 是帶有字符向量的BiLSTM-CRF 模型結(jié)構(gòu)。
圖2 帶有字符向量的BiLSTM-CRF結(jié)構(gòu)
偏旁部首向量(radical embedding)是分布式嵌入向量的一種表示形式,與詞向量相似,即將字或詞映射為相對低維空間的實(shí)數(shù)向量,數(shù)字空間中的鄰近性體現(xiàn)了代數(shù)語義關(guān)系,不同點(diǎn)在于它是詞根級別,包含了偏旁部首特征,是更細(xì)粒度的語義單位。中文是象形文字的代表,在語言學(xué)中,具有相同詞根的漢字通常具有相近的語義和語法用法,例如“鐵”和“鎂”,它們是擁有相似化學(xué)性質(zhì)的金屬,又如“氫氣”和“氦氣”,相同的“氣”字頭,具有相似的物理形態(tài)和化學(xué)性質(zhì)。在化學(xué)語料中,95%的化學(xué)元素由兩個(gè)部位組成(包括它的偏旁部首),化學(xué)實(shí)體擁有眾多的相似詞根,因此本實(shí)驗(yàn)針對化學(xué)實(shí)體,融合了詞根級的偏旁部首特征。在融合偏旁特征時(shí),使用了一個(gè)詞根映射的在線新華字典,其包括265個(gè)偏旁部首,20552個(gè)中文字符,每個(gè)字符在字典中都附有它的偏旁部首,例如<碘,石>。我們將化學(xué)元素以及中學(xué)化學(xué)語料中常見的偏旁部首列成表,如表2 所示。
表2 化學(xué)語料常見偏旁部首與實(shí)體舉例
偏旁部首向量的訓(xùn)練本文采用了雙向的LSTM模型,輸入模型的偏旁序列是未經(jīng)過預(yù)訓(xùn)練隨機(jī)初始化的50 維向量,字向量是經(jīng)過BiLSTM-CRF 模型預(yù)訓(xùn)練的100 維向量,最后將字向量和前向偏旁向量,后向偏旁向量拼接。結(jié)合了字向量和偏旁向量的“碳”字表示如圖3所示。
圖3 結(jié)合字向量和偏旁向量的“碳”字表示
實(shí)驗(yàn)數(shù)據(jù)來自于人教版高中化學(xué)教材,選取《人教版高中化學(xué)必修一》與人教版新課標(biāo)《高中化學(xué)選修4 化學(xué)反應(yīng)原理》的教師用書各兩章節(jié)作為語料,選取了中學(xué)化學(xué)實(shí)驗(yàn)作為語料,同時(shí)以《新課標(biāo)高中化學(xué)教學(xué)大綱》為指導(dǎo)。實(shí)驗(yàn)隨機(jī)劃分80%的中學(xué)化學(xué)語料為訓(xùn)練集,20%語料為測試集。此文本數(shù)據(jù)中存在大量的圖片和停用詞,如“的”,“了”,刪除這些干擾信息,同時(shí)將表格中的詞轉(zhuǎn)為文本形式,以保留可能的上下文信息,考慮到LSTM的距離依賴的有限性,將長句子切斷為20 至40 字左右。通過預(yù)處理共得到247條句子,1213個(gè)化學(xué)知識點(diǎn)實(shí)體。
偏旁向量是隨機(jī)的50 維向量,經(jīng)過雙向LSTM和字典映射后,與預(yù)訓(xùn)練過的字向量拼接,其中字向量采用了在人民日報(bào)語料上預(yù)訓(xùn)練過的維度為100 的字向量,為了降低網(wǎng)絡(luò)訓(xùn)練過擬合的風(fēng)險(xiǎn),設(shè)置初始學(xué)習(xí)率為0.001,訓(xùn)練輪次為100,每輪次訓(xùn)練數(shù)為64,每10輪為一個(gè)標(biāo)記點(diǎn),每次標(biāo)記點(diǎn)后學(xué)習(xí)率縮小為原來的一半,既保證了前期訓(xùn)練的速度,又有效防止過擬合。LSTM 尺寸為100,文本窗口大小設(shè)置為5,Dropout設(shè)置在每輪訓(xùn)練中以一定概率使部分神經(jīng)元失活,實(shí)驗(yàn)中Dropout設(shè)置為0.5時(shí),隨機(jī)生成的網(wǎng)絡(luò)結(jié)構(gòu)最多,泛化能力更強(qiáng),因此本實(shí)驗(yàn)設(shè)置Dropout為0.5。
命名實(shí)體識別的基本評價(jià)指標(biāo)有精準(zhǔn)率P(Precision Rate),召回率R(Recall Rate)和F1值,精準(zhǔn)率表示預(yù)測為正樣例的樣例占全部預(yù)測樣例的比率,召回率表示預(yù)測正確的正樣例占全部樣例中正樣例的比率,F(xiàn)1 值的計(jì)算方法為兩倍的精準(zhǔn)率與召回率的乘積再除以精準(zhǔn)率與召回率的和。本實(shí)驗(yàn)以F1 值為最終評價(jià)指標(biāo),針對特定領(lǐng)域中學(xué)化學(xué)語料,實(shí)驗(yàn)分別將本論文模型和CRF,BiLSTM-CRF,NCRF++做對比,實(shí)驗(yàn)結(jié)果如表3所示。
表3 在中學(xué)化學(xué)數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果
在本實(shí)驗(yàn)的中學(xué)化學(xué)數(shù)據(jù)集上,以上模型召回率均比精準(zhǔn)率高,原因可能是此化學(xué)非結(jié)構(gòu)化文本中,負(fù)樣本遠(yuǎn)多于正樣本,例如某些章節(jié)中化學(xué)知識點(diǎn)實(shí)體較少,有些句子在描述實(shí)驗(yàn)的教學(xué)目標(biāo),教學(xué)設(shè)計(jì)等,對于眾多非實(shí)體的負(fù)樣本容易識別錯(cuò)誤。
從CRF和BiLSTM-CRF模型結(jié)果對比可知,雙向LSTM 在精準(zhǔn)率,召回率,F(xiàn)1 值上均有不同程度的提升,加入了char embedding 的BiLSTM-CRF 在精準(zhǔn)率上提升了2%,NCRF++通過配置文件設(shè)置字向量和詞向量,更加靈活,較BiLSTM-CRF+char 模型結(jié)果更優(yōu),但當(dāng)融合了偏旁部首特征向量后,改進(jìn)的BiLSTM-CRF模型在中學(xué)化學(xué)數(shù)據(jù)集上,取得了最優(yōu)的F1值。
本文以中學(xué)化學(xué)領(lǐng)域非結(jié)構(gòu)化信息為抽取對象,針對化學(xué)命名實(shí)體的領(lǐng)域特征,提出了融合偏旁部首特征的BiLSTM-CRF算法模型,通過偏旁向量、預(yù)訓(xùn)練的字符級向量和領(lǐng)域知識的結(jié)合,捕捉化學(xué)知識背后的語義信息,達(dá)到了對化學(xué)非結(jié)構(gòu)化文本實(shí)體精準(zhǔn)識別的目的,證明了當(dāng)沒有大規(guī)模的特定領(lǐng)域語料庫時(shí),偏旁部首特征的有效性。
針對中學(xué)學(xué)科領(lǐng)域和本實(shí)驗(yàn),有待提高的部分,例如能否將詞向量、字向量、詞根向量統(tǒng)一在一個(gè)模型之中,以及如何將BERT 等大規(guī)模無標(biāo)注預(yù)訓(xùn)練模型和領(lǐng)域知識相結(jié)合,充分融合知識與數(shù)據(jù)的優(yōu)勢,使深度學(xué)習(xí)模型具有更好的魯棒性和可解釋性。后續(xù)工作將圍繞上述部分繼續(xù)展開。