郭煒杰,包曉安
(浙江理工大學(xué),浙江 杭州 310018)
隨著互聯(lián)網(wǎng)技術(shù)[1]的飛速發(fā)展,計(jì)算機(jī)中以電子文檔形式存儲(chǔ)與處理的事件信息數(shù)量與日俱增。作為信息的主要載體與交流平臺(tái),互聯(lián)網(wǎng)已成為不同信息的匯集處。盡管互聯(lián)網(wǎng)使信息獲取更及時(shí)、全面、便捷,但與此同時(shí)也帶來(lái)了一定的負(fù)面影響。如信息搜索時(shí)間長(zhǎng)、搜索結(jié)果模糊等。因此,為用戶提供更準(zhǔn)確信息的信息抽取技術(shù)[2]應(yīng)時(shí)而生。大數(shù)據(jù)時(shí)代的到來(lái)導(dǎo)致存儲(chǔ)于網(wǎng)絡(luò)上的大部分信息數(shù)據(jù)形式均為非結(jié)構(gòu)化[3]形式,這對(duì)現(xiàn)有信息抽取技術(shù)提出了巨大的挑戰(zhàn)。為此,該領(lǐng)域相關(guān)研究者進(jìn)行了大量的研究,并取得了一定成果。
文獻(xiàn)[4]提出基于深度學(xué)習(xí)的信息實(shí)體抽取方法。該方法以簡(jiǎn)歷信息為目標(biāo),利用數(shù)據(jù)清洗、分詞等預(yù)處理手段,將非結(jié)構(gòu)化信息變成詞序列,再將word2vec無(wú)監(jiān)督訓(xùn)練得到的詞向量表映射成低維實(shí)數(shù)向量,采用LSTM層融合語(yǔ)境信息,CRF層獲取全部標(biāo)簽序列分值,根據(jù)標(biāo)簽約束計(jì)算最優(yōu)序列,完成信息的抽取。該方法在可有效將非結(jié)構(gòu)化信息進(jìn)行轉(zhuǎn)化,且抽取的信息精度較高,但該方法在信息轉(zhuǎn)化和最有序列獲取中耗時(shí)較長(zhǎng),存在一定局限性。文獻(xiàn)[5]提出 基于大數(shù)據(jù)技術(shù)的文檔關(guān)鍵詞提取方法。該方基于Hadoop平臺(tái)的HDFS與HBase,分布式存儲(chǔ)多種地學(xué)文檔資料,自動(dòng)讀取、處理非結(jié)構(gòu)化數(shù)據(jù),通過(guò)融合多種算法,得出一種組合關(guān)鍵詞提取,實(shí)現(xiàn)了相關(guān)信息數(shù)據(jù)的提取,但該方法研究的信息數(shù)據(jù)較少,存在信息數(shù)據(jù)抽取精度較低的問(wèn)題。
針對(duì)上述方法中存在的不足,提出設(shè)計(jì)一種新的非結(jié)構(gòu)化文本關(guān)鍵信息抽取模型。通過(guò)改進(jìn)隱馬爾可夫模型,挖掘觀察值出現(xiàn)對(duì)前后狀態(tài)標(biāo)注的相關(guān)性關(guān)聯(lián),提升信息分類準(zhǔn)度;應(yīng)用勢(shì)分布概率假設(shè)密度平滑算法,有效解決不完整訓(xùn)練樣本引發(fā)的零概率事件與稀疏矩陣問(wèn)題;改進(jìn)Viberbi算法,增加狀態(tài)序列的最優(yōu)程度;結(jié)合觀察值序列的正序、逆序解碼,使信息抽取結(jié)果更加精準(zhǔn)。與傳統(tǒng)方法相比所提方法抽取的非結(jié)構(gòu)化文本關(guān)鍵信息精度更高,效果更好。
在非結(jié)構(gòu)化文本關(guān)鍵信息抽取模型設(shè)計(jì)中,采用隱馬爾可夫模型實(shí)現(xiàn)文本關(guān)鍵信息的抽取。
在隱馬爾可夫模型中,待識(shí)別觀察序列為可視層,馬爾可夫過(guò)程為隱含層,該模型也是一個(gè)有限狀態(tài)機(jī)[6],各狀態(tài)轉(zhuǎn)移均存在轉(zhuǎn)移概率。利用五元組界定一個(gè)隱馬爾可夫模型,即
λ={S,V,A,B,Π}
(1)
五元組中各參數(shù)表達(dá)式分別為
S={S1,S2,…,SN}
(2)
V={V1,V2,…,VM}
(3)
A={aij=P(qt+1=Sj|qt=Si)},i≥1,j≤N
(4)
B={bj(Vk)=P(Vt=Vk|qt=Sj)},
1≤j≤N,1≤k≤M
(5)
Π={πi=p(q1=Si)},1≤i≤N
(6)
上述各式中,與隱馬爾可夫模型隱含層相對(duì)應(yīng)的狀態(tài)集為S,狀態(tài)數(shù)量為N種;與模型可視層相對(duì)應(yīng)的觀察值輸出集為V,輸出數(shù)量有M個(gè);N*N狀態(tài)轉(zhuǎn)移概率矩陣為A,由Si到Sj的狀態(tài)轉(zhuǎn)移概率為aij;N*M釋放概率矩陣為B,狀態(tài)Sj下模型釋放單詞Vk的概率為bj(Vk);模型初始狀態(tài)概率集合用Π表示,當(dāng)狀態(tài)為第i個(gè)時(shí),初始狀態(tài)概率用πi表示。
通過(guò)改進(jìn)隱馬爾可夫模型,挖掘觀察值出現(xiàn)對(duì)前后狀態(tài)標(biāo)注的相關(guān)性關(guān)聯(lián)。改進(jìn)t時(shí)刻的觀察值Oi出現(xiàn)與當(dāng)前狀態(tài)Si、t+1時(shí)刻狀態(tài)Si+1之間的依賴關(guān)系。改進(jìn)隱馬爾可夫模型的發(fā)生概率為
BB={bij(k)=P(Ot=Vk|qt=Si,qt+1=Sj)}
(7)
根據(jù)上式將改進(jìn)的隱馬爾可夫模型界定為一個(gè)六元組,即
λ={S,V,A,B,BB,Π}
(8)
因訓(xùn)練文本的各樣本與狀態(tài)轉(zhuǎn)移、符號(hào)輸出路徑一一對(duì)應(yīng)。所以,模型參數(shù)估計(jì)通過(guò)最大似然法[7]實(shí)現(xiàn),令模型中A,B,Π是為固定值,則采用下列表達(dá)式求解發(fā)生概率BB,即
(9)
式中,訓(xùn)練樣本狀態(tài)為Emission(i,j,k)。
在參數(shù)估計(jì)過(guò)程中,不完整的訓(xùn)練樣本會(huì)引發(fā)零概率事件與稀疏矩陣。此時(shí),可利用CPHD平滑算法[8]對(duì)其展開(kāi)平滑處理,即
(10)
(11)
式中,當(dāng)樣本在訓(xùn)練樣本里的發(fā)生次數(shù)為1時(shí)用N1表示,發(fā)生次數(shù)為2時(shí)用N2表示;對(duì)應(yīng)樣本占比為sum(N1)、sum(N2);N1樣本的發(fā)生次數(shù)總和為Num(N1)。在平滑處理階段,超過(guò)兩次發(fā)生次數(shù)的事件需與折扣系數(shù)D1做差,而零概率事件則要與折扣系數(shù)D2做和,確?!芇取值為1。
假設(shè)模型處理對(duì)象為中文引文,為抽取出引文含的文本關(guān)鍵信息段,諸如:標(biāo)題、作者、期刊名稱等,構(gòu)建基于改進(jìn)隱馬爾可夫模型的抽取模型。
2.3.1 Viterbi優(yōu)化解碼算法
在模型參數(shù)估計(jì)完成后,采用Viterbi解碼算法選取出最優(yōu)狀態(tài)序列,該序列在給定觀察值序列的相應(yīng)狀態(tài)序列內(nèi)具有最大概率。在改進(jìn)隱馬爾可夫模型時(shí),將其從五元組轉(zhuǎn)變?yōu)榱M,因此,對(duì)Viterbi算法[9-10]也需做出對(duì)應(yīng)的優(yōu)化改進(jìn)。
若q1,q2,…,qt(qt-1=Si,qt=Sj)表示路徑,O1,O2,…,Ot為該路徑上t時(shí)刻的釋放觀察值序列,其最大概率為δt(i,j),即:
i≥1,j≤N,2≤t≤T
(12)
推導(dǎo)得出t+1時(shí)刻釋放觀察值序列最大概率表達(dá)式為
j≥1,k≤N,2≤t≤T-1
(13)
假定記錄節(jié)點(diǎn)數(shù)組為ψt+1(j,k),利用以下Viberbi優(yōu)化算法流程,獲取最優(yōu)狀態(tài)序列。
步驟1 :采用下列各式實(shí)現(xiàn)釋放觀察值序列的初始化處理,即
δ2(i,j)=πiaijbi(O1)bij(O2)
(14)
ψ2(i,j)=0
(15)
其中,i≥1,j≤N。
步驟2 :當(dāng)滿足j≥1,k≤N,2≤t≤T-1時(shí),可得出以下表達(dá)式
(16)
(17)
步驟3:終結(jié)操作主要通過(guò)下列兩個(gè)表達(dá)式完成
(18)
(19)
步驟4 :利用下列表達(dá)式獲得最優(yōu)狀態(tài)序列
(20)
2.3.2 逆序Viterbi解碼算法
采用Viberbi優(yōu)化算法解碼觀察值序列O=(O1,O2,…,OT)時(shí)滿足下列等式
P(qi+1|q1,q2,…,qi)=P(qi+1|qi)
(21)
該式表明O1的標(biāo)識(shí)狀態(tài)對(duì)O2狀態(tài)有決定性作用。
針對(duì)觀察值序列O′=(OT,OT-1,…,O1),t時(shí)刻的狀態(tài)qt決定t+1時(shí)刻狀態(tài)qt+1。此時(shí),O2的標(biāo)識(shí)狀態(tài)對(duì)O1狀態(tài)有決定性作用。綜上所述,解碼觀察值序列O′=(OT,OT-1,…,O1)的關(guān)鍵點(diǎn)為:基于觀察值序列O=(O1,O2,…,OT),t+1時(shí)刻的狀態(tài)qt+1決定t時(shí)刻狀態(tài)qt,此時(shí)需滿足下列等式
P(qi|q1,q2,…,qi,qi+1)=P(qi|qi+1)
(22)
2.3.3 歧義消除
經(jīng)過(guò)解碼觀察值序列,對(duì)比得到的正序解碼序列與逆序解碼序列,濾除無(wú)解碼歧義的狀態(tài),篩選出存在的解碼歧義與前N(N≤3)個(gè)狀態(tài),對(duì)歧義進(jìn)行消除。
已知狀態(tài)序列S=(S1,S2,…,Si,…,SN)的發(fā)生概率表達(dá)式為
P(S)=[P(S1),P(S2|S1),…,P(SN|S1S2…SN-1)]
(23)
結(jié)合觀察值序列的正序、逆序解碼,得出以下兩個(gè)狀態(tài)序列為
S=(S1,S2,…,Si,…,SN)
(24)
S′=(S′1,S′2,…,S′k,…,S′N(xiāo))
(25)
式中,狀態(tài)Si的觀察值等同于狀態(tài)S′k的觀察值,且滿足i+k-1=N。若兩狀態(tài)的觀察值存在差異性,則提取出狀態(tài)序列TS與TS′,前者包含狀態(tài)Si在內(nèi)的前n(n=min(i,k))個(gè)狀態(tài),后者包含狀態(tài)S′k在內(nèi)的后n個(gè)狀態(tài)。采用常用于詞性標(biāo)注的統(tǒng)計(jì)語(yǔ)言模型——N-Gram模型[11-12],對(duì)序列概率P(TS′)、P(TS)進(jìn)行求解,最佳解碼序列即為最大概率的狀態(tài)序列,也就是所要抽取的文本關(guān)鍵信息。
為驗(yàn)證所提方法的有效性,進(jìn)行仿真分析。實(shí)驗(yàn)在Matlab 平臺(tái)上進(jìn)行,操作系統(tǒng)為Windows XP 系統(tǒng),運(yùn)行內(nèi)存為8 GB ,CPU 為3.6 GHz。
實(shí)驗(yàn)中在搜索引擎中檢索附有答案的NLPCC 2017問(wèn)答評(píng)測(cè)問(wèn)題集,經(jīng)過(guò)預(yù)處理后,從中抽選15000條數(shù)據(jù)作為實(shí)驗(yàn)用數(shù)據(jù)集,驗(yàn)證抽取模型的有效性。其中,由百度搜索引擎檢索得到的文本片段分別為候選信息集與候選信息句集,如果候選信息答案正確,則標(biāo)注1;反之,則標(biāo)注0。由訓(xùn)練集與測(cè)試集組成所用數(shù)據(jù)集,各類語(yǔ)料具體分布情況如表1所示:
表1 數(shù)據(jù)集語(yǔ)料分布信息統(tǒng)計(jì)表(單位:條)
利用IG方法對(duì)文本各信息特征的重要性展開(kāi)檢驗(yàn),特征重要性與信息增益得分之間成正相關(guān),文本各信息特征的重要性如表2 所示:
表2 文本信息特征重要性統(tǒng)計(jì)表
基于相同數(shù)據(jù)集,利用準(zhǔn)確率precision、召回率recall、綜合指標(biāo)F,對(duì)比抽取出的關(guān)鍵詞集合,檢驗(yàn)?zāi)P偷某槿⌒阅?,各指?biāo)計(jì)算公式為
(26)
(27)
(28)
為驗(yàn)證所提方法的有效性,從數(shù)據(jù)集中選取人物、地點(diǎn)以及時(shí)間等關(guān)鍵詞,對(duì)比了所提方法、深度學(xué)習(xí)的信息實(shí)體抽取方法以及大數(shù)據(jù)技術(shù)的關(guān)鍵詞提取方法的關(guān)鍵詞抽取效果如圖1 所示。
圖1 不同方法抽取效果對(duì)比
分析圖1 可以看出,在相同實(shí)驗(yàn)環(huán)境下,采用三種方法進(jìn)行文本關(guān)鍵信息的效果存在一定差異。其中,采用所提方法抽取文本關(guān)鍵信息的準(zhǔn)確率、召回率以及綜合指標(biāo)值均在0.9 以上,而其它兩種方法抽取文本關(guān)鍵信息的準(zhǔn)確率、召回率以及綜合指標(biāo)值始終低于本文方法。這是由于本文模型改進(jìn)了隱馬爾可夫模型與Viberbi算法,解決了零概率事件與稀疏矩陣問(wèn)題,取得了最優(yōu)狀態(tài)序列,通過(guò)對(duì)比得到的正序解碼序列與逆序解碼序列,濾除了無(wú)解碼歧義的狀態(tài),消除了歧義,進(jìn)而提升了關(guān)鍵信息抽取準(zhǔn)度,驗(yàn)證了所提方法的科學(xué)有效性。
為進(jìn)一步驗(yàn)證所提方法的可行性,實(shí)驗(yàn)對(duì)比了三種方法在抽取文本關(guān)鍵信息的耗時(shí),實(shí)驗(yàn)結(jié)果如表3 所示:
表3 不同方法文本關(guān)鍵信息抽取耗時(shí)(s)
分析表3 中數(shù)據(jù)可以看出,隨著迭代次數(shù)的改變,三種方法抽取文本關(guān)鍵信息的耗時(shí)隨之發(fā)生改變。其中,所提方法的抽取耗時(shí)始終低于1.3 s,深度學(xué)習(xí)信息實(shí)體抽取方法的耗時(shí)最短約為3.2 s,大數(shù)據(jù)技術(shù)關(guān)鍵詞提取的最短耗時(shí)約為3.6 s,始終高于所提方法,驗(yàn)證了所提方法的可行性。
文本信息抽取技術(shù)是自然語(yǔ)言處理領(lǐng)域的重要組成部分,隨著信息技術(shù)的發(fā)展與應(yīng)用,文本信息抽取技術(shù)成為研究熱點(diǎn),并引起了廣泛關(guān)注,為解決其存在的弊端與問(wèn)題,本文以知識(shí)數(shù)據(jù)庫(kù)為背景,構(gòu)建出一種非結(jié)構(gòu)化文本關(guān)鍵信息抽取模型。通過(guò)改進(jìn)隱馬爾可夫模型與Viberbi算法,解決零概率事件與稀疏矩陣問(wèn)題,獲取正序解碼序列與逆序解碼序列,濾除無(wú)解碼歧義的文本狀態(tài),實(shí)現(xiàn)了文本關(guān)鍵信息的抽取。實(shí)驗(yàn)結(jié)果表明:采用所提方法抽取文本關(guān)鍵信息的準(zhǔn)確度始終高于0.9,且抽取的耗時(shí)較短。