秦 鵬,唐 忠
(1. 桂林學(xué)院理工學(xué)院,廣西 桂林 541006;2. 廣西醫(yī)科大學(xué)信息與管理學(xué)院,廣西 南寧 530021)
計(jì)算機(jī)技術(shù)與信息技術(shù)水平飛速提升,網(wǎng)絡(luò)應(yīng)用呈多元化發(fā)展。在互聯(lián)網(wǎng)的日益普及下,網(wǎng)絡(luò)逐漸演變成信息與知識(shí)的主要獲取渠道,但與日俱增的數(shù)據(jù)量、越來越復(fù)雜的內(nèi)容與形式,都不斷加劇著目標(biāo)信息的尋找難度。為更便捷地找到目標(biāo)信息,語義網(wǎng)、萬維網(wǎng)等[1,2]搜索引擎層出不窮,其中,由語義網(wǎng)衍生出的知識(shí)圖譜[3]最具研究?jī)r(jià)值與應(yīng)用價(jià)值。知識(shí)圖譜通過字符串符號(hào)映射,根據(jù)語義關(guān)系連接物理世界的實(shí)體與概念,形成有向或無向的語義網(wǎng)絡(luò)。此種知識(shí)表達(dá)模式不僅可以實(shí)現(xiàn)知識(shí)間的智能推理,而且能為用戶提供與檢索詞對(duì)應(yīng)的實(shí)體結(jié)構(gòu)化信息。
隨著大數(shù)據(jù)時(shí)代的到來,知識(shí)圖譜更是在諸多關(guān)鍵領(lǐng)域中發(fā)揮著重要作用,建構(gòu)方案也成為熱點(diǎn)研究課題。例如:電力領(lǐng)域中,郭榕等人[4]利用模式層、數(shù)據(jù)層等部分,架構(gòu)出電網(wǎng)故障處置知識(shí)圖譜,該方法通過綜合運(yùn)用TextCNN、LR-CNN、BiGRU-Attention等多種深度學(xué)習(xí)模型,有效解決了詞錯(cuò)分、候選詞沖突等問題,有效性與應(yīng)用性較為理想;教育領(lǐng)域中,李永卉等人[5]利用Protégé軟件,將本體轉(zhuǎn)換為資源描述框架下的三元組數(shù)據(jù),把映射至圖數(shù)據(jù)結(jié)構(gòu)上的數(shù)據(jù)儲(chǔ)存至Neo4j圖數(shù)據(jù)庫(kù)中,得到詩(shī)詞知識(shí)圖譜,該方法充分發(fā)揮出檢索、分析、應(yīng)用等功能作用,有助于知識(shí)圖譜得到進(jìn)一步開發(fā)與探索。
可視化技術(shù)[6]的發(fā)展,使可視化知識(shí)圖譜被廣泛應(yīng)用且優(yōu)勢(shì)顯著,不僅能提升數(shù)據(jù)的直觀性,而且便于查詢等操作。因此,基于文獻(xiàn)方法優(yōu)勢(shì),采用深度學(xué)習(xí)技術(shù),設(shè)計(jì)一種可視化知識(shí)圖譜建構(gòu)模型。該方法的研究重點(diǎn)如下:
1)jieba分詞工具經(jīng)動(dòng)態(tài)規(guī)劃找出最大詞頻組合,有助于實(shí)現(xiàn)高準(zhǔn)確性與高效率性的知識(shí)圖譜構(gòu)建;
2)文本分類模型中注意力機(jī)制的加權(quán)屬性,有助于提高全局信息的處理效果;
3)以深度學(xué)習(xí)的BiLSTM-CRF算法與BiGRU-Attention模型為基礎(chǔ),設(shè)計(jì)知識(shí)實(shí)體識(shí)別模型與實(shí)體關(guān)系識(shí)別模型,能更好地聯(lián)立詞向量與語義之間的聯(lián)系,更精準(zhǔn)地提取出實(shí)體關(guān)系,為知識(shí)圖譜建構(gòu)奠定基礎(chǔ)。
預(yù)處理待建圖譜的數(shù)據(jù)集,利用知識(shí)實(shí)體識(shí)別與實(shí)體關(guān)系識(shí)別方法,結(jié)合開源的Neo4j圖數(shù)據(jù)庫(kù)[7],建立可視化知識(shí)圖譜建構(gòu)模型,如圖1所示。該模型的四個(gè)主要部分是:數(shù)據(jù)源層、預(yù)處理層、識(shí)別層、建構(gòu)層。
圖1 可視化知識(shí)圖譜建構(gòu)模型
針對(duì)數(shù)據(jù)集中存在缺失、冗余等問題的數(shù)據(jù)類型,采用清洗、分詞、分類等處理手段,減少無效信息,為后續(xù)操作提供高質(zhì)量數(shù)據(jù)集合,提升知識(shí)圖譜建構(gòu)效率。預(yù)處理方法的實(shí)現(xiàn)流程描述如下:
1)清洗:根據(jù)停用詞表[8],直接去除符號(hào)、表情等無效字符串;對(duì)于信息項(xiàng)空白等缺失類數(shù)據(jù),如果不能進(jìn)行有效填充則去除;對(duì)于超文本標(biāo)記語言標(biāo)簽、網(wǎng)絡(luò)地址等冗余類信息,直接去除。
2)分詞:該階段的處理結(jié)果決定知識(shí)圖譜的實(shí)用性與可靠性,采用jieba0.42.1版本中文分詞工具[9]。經(jīng)前綴詞典詞圖掃描輸入的句子,由隱馬爾可夫模型[10]進(jìn)行識(shí)別,通過維特比算法的動(dòng)態(tài)規(guī)劃計(jì)算,得到最優(yōu)狀態(tài)序列,完成分詞處理。
假設(shè)t、t-1、t+1時(shí)刻下詞i與詞o的狀態(tài)分別是it、ot、it-1、ot-1、it+1、ot+1,兩詞的初始狀態(tài)與結(jié)束狀態(tài)分別是i0、o0、ite、ote,則利用下列隱馬爾可夫模型識(shí)別數(shù)據(jù)
(1)
其中,P(·)表示詞當(dāng)前狀態(tài)的受影響指數(shù);{it-1,ot-1,…,i0,o0}表示詞i與詞o的歷史狀態(tài);{ite,ote,…,it+1,ot+1,it,ot,it-1,ot-1,…,i0,o0}表示兩個(gè)詞從初始到結(jié)束的全部狀態(tài)。
通過維特比算法動(dòng)態(tài)規(guī)劃計(jì)算識(shí)別模型,查找出最優(yōu)狀態(tài)序列。已知詞i、o、ι、j,若t時(shí)刻下詞i的單路徑集合是{i1,…,it},則該集合中的最大概率求解公式如下所示:
ιt(i)=max{i1,…,it}P(it-1,ot-1,…,i0,o0|λ)
(2)
其中,λ表示任意詞的任意狀態(tài)。
由此推導(dǎo)出詞ι的遞推公式
(3)
其中,k、l表示詞的兩種狀態(tài),pkl表示兩狀態(tài)間的轉(zhuǎn)移概率;g表示詞的觀察狀態(tài),plgt表示t時(shí)刻下詞狀態(tài)從l狀態(tài)轉(zhuǎn)變?yōu)橛^察狀態(tài)的概率。
針對(duì)t時(shí)刻下詞i的單路徑集合,利用下列公式得出詞頻最大的前n個(gè)詞
jt(i)=arg max(ιt-1(k)pklplgt)
(4)
則t+1時(shí)刻下詞i的動(dòng)態(tài)規(guī)劃結(jié)果如下所示
i′t+1=arg max(ιt(i))=jt+2(i)
(5)
經(jīng)整合,得到由n個(gè)詞構(gòu)成的分詞序列表達(dá)形式,如下所示
I=(i′1,i′2,…,i′n)
(6)
3)分類:基于深度學(xué)習(xí)的卷積神經(jīng)網(wǎng)絡(luò)[11],構(gòu)建分類模型。分類流程如下所述:
①輸入層:輸入經(jīng)過分詞處理的數(shù)據(jù);
②卷積層:假設(shè)句子m中的詞τ經(jīng)嵌入式表示法[12]處理后,得到詞向量xmτ,通過雙向循環(huán)神經(jīng)網(wǎng)絡(luò)[13],取得正反方向的兩種特征編碼h′mτ、h″mτ,如下所示
(7)
③池化層:融合注意力機(jī)制[14]與雙向門控循環(huán)神經(jīng)網(wǎng)絡(luò)[15],構(gòu)建雙層級(jí)網(wǎng)絡(luò)層,針對(duì)詞與句子對(duì)語義影響的權(quán)重比,提取特征。根據(jù)卷積層得到的特征編碼h′mτ、h″mτ,利用tanh激活函數(shù),取得基于注意力機(jī)制的詞向量x′mτ,通過下列sigmoid激活函數(shù)求解其權(quán)值ωmτ
(8)
其中,x′表示融入注意力機(jī)制的任意詞向量。
根據(jù)所得權(quán)重ωmτ與特征編碼h′mτ、h″mτ,生成句子m的雙向特征編碼h′m、h″m,如下所示
(9)
結(jié)合sigmoid函數(shù)解得的句子權(quán)值ωm與網(wǎng)絡(luò)的隱藏層信息,得到數(shù)據(jù)的句向量,如下所示
(10)
④全連接層:拼接所得全部句向量,得到全連接層的輸出項(xiàng)(S′|S″);
⑤softmax函數(shù)層:利用該網(wǎng)絡(luò)層的二分類模型,完成數(shù)據(jù)分類
L=softmax(ωS′|S″×(S′|S″)+b)
(11)
其中,ωS′|S″表示輸出項(xiàng)(S′|S″)的權(quán)值,b表示偏置項(xiàng)。
在深度學(xué)習(xí)的BiLSTM-CRF算法[16]中,添加BERT模型[17],建立知識(shí)實(shí)體識(shí)別模型,加強(qiáng)語義關(guān)聯(lián)度。模型實(shí)現(xiàn)知識(shí)實(shí)體識(shí)別的步驟如下所述:
1)輸入層:把預(yù)處理過的語料集輸入知識(shí)實(shí)體識(shí)別模型;
2)BERT層:采用BERT模型的自注意力機(jī)制函數(shù)Att(·)取得字向量,作為下一層的輸入項(xiàng)
(12)
其中,Q、K、V分別表示字向量矩陣,d指代矩陣Q、K的組合維度。
3)編碼層:經(jīng)雙向長(zhǎng)短時(shí)記憶網(wǎng)絡(luò)[18]處理,完成數(shù)據(jù)編碼。假設(shè)t時(shí)刻下記憶單元c、遺忘門f、輸入門r、輸出門R的輸出結(jié)果分別是tanh(ct)、ft、rt、Rt,則通過下列公式得到編碼項(xiàng)ht
ht=ftrtRttanh(ct)
(13)
4)解碼層:該層通過條件隨機(jī)場(chǎng)模型[19]實(shí)現(xiàn)解碼處理,提升知識(shí)實(shí)體的識(shí)別準(zhǔn)確度。若輸入序列與輸出標(biāo)簽序列各是X、Y,yq、yq+1分別為序列Y中的兩個(gè)連續(xù)標(biāo)簽,則知識(shí)實(shí)體的分值s由下式解得
(14)
其中,Ayq,yq+1表示兩標(biāo)簽間的轉(zhuǎn)移矩陣。
Y′=argmaxs(X,)
(15)
5)softmax層:利用式(11)分類處理所有實(shí)體;
6)輸出層:訓(xùn)練模型,用取得的最優(yōu)模型,輸出測(cè)試集的知識(shí)實(shí)體識(shí)別結(jié)果。
面向BiGRU-Attention模型,引入BERT模型,構(gòu)建雙注意力機(jī)制的實(shí)體關(guān)系識(shí)別模型,在保留關(guān)鍵數(shù)據(jù)的前提下,提高實(shí)體關(guān)系的識(shí)別準(zhǔn)確度。實(shí)現(xiàn)流程分為以下六個(gè)步驟:
1)輸入層:在模型中輸入待識(shí)別的知識(shí)實(shí)體;
2)嵌入層:利用BERT模型構(gòu)建實(shí)體向量,經(jīng)詞嵌入與位置嵌入處理,傳輸至下一層;
3)編碼層:假設(shè)t時(shí)刻下雙向門控循環(huán)單元網(wǎng)絡(luò)的隱藏狀態(tài)及權(quán)重為ut、ωut,則所得輸出編碼h′t的表達(dá)式如下所示
h′t=sigmoid(ωut×ut+b)
(16)
4)機(jī)制層:運(yùn)用雙重注意力機(jī)制與式(8)~(10),得到句向量;
5)分類層:利用式(11)分類句向量;
6)輸出層:重復(fù)運(yùn)行第2)~第4)步,訓(xùn)練模型,針對(duì)測(cè)試集,得到最優(yōu)模型輸出的實(shí)體關(guān)系識(shí)別結(jié)果。
為實(shí)現(xiàn)知識(shí)圖譜可視化,將識(shí)別的知識(shí)實(shí)體與實(shí)體關(guān)系儲(chǔ)存至Neo4j圖數(shù)據(jù)庫(kù)中,繪制知識(shí)圖譜。繪制流程如圖2所示。
圖2 知識(shí)圖譜可視化實(shí)現(xiàn)流程圖
從百度開放數(shù)據(jù)集的人工標(biāo)注數(shù)據(jù)集合中隨機(jī)抽取1000句中文語料,作為知識(shí)圖譜的建構(gòu)對(duì)象。將前300句與后700句分別作為模型的測(cè)試集與訓(xùn)練集。通過不斷訓(xùn)練、更新,得到本文模型中兩個(gè)識(shí)別模型的最優(yōu)參數(shù),如表1所示。
表1 建構(gòu)模型參數(shù)設(shè)置
(17)
(18)
其中,模型的準(zhǔn)確程度與對(duì)數(shù)損失函數(shù)指標(biāo)呈正相關(guān),J(θ,θ′)值越大,模型建構(gòu)的知識(shí)圖譜越精準(zhǔn);模型的有效程度與F1指標(biāo)呈正相關(guān),F(xiàn)1值越高,模型性能越好。
圖3為不同方法下?lián)p失函數(shù)隨迭代次數(shù)變化的曲線走勢(shì)圖。
圖3 不同方法的知識(shí)實(shí)體識(shí)別效果評(píng)估示意圖
根據(jù)圖3可以看出:本文模型的指標(biāo)值與迭代次數(shù)之間存在一定的線性關(guān)系,提升幅度較大且速度較快;而對(duì)比方法則因領(lǐng)域限制,指標(biāo)值始終低于本文模型。這說明當(dāng)?shù)烈欢ù螖?shù)后,本文模型即可根據(jù)預(yù)處理后的高質(zhì)量數(shù)據(jù)集,通過在BiLSTM-CRF算法中添加BERT模型,精準(zhǔn)識(shí)得知識(shí)實(shí)體。
表2為實(shí)體關(guān)系正確識(shí)別數(shù)量對(duì)比結(jié)果,圖4為F1值對(duì)比結(jié)果。
表2 正確識(shí)別數(shù)量
從表2中的數(shù)據(jù)可以看出:對(duì)于正確識(shí)別數(shù)量指標(biāo),本文模型僅在作者、首都及人數(shù)三類關(guān)系上,各出現(xiàn)一次錯(cuò)識(shí)別情況,而對(duì)比方法則因較強(qiáng)的領(lǐng)域性與針對(duì)性,僅識(shí)別出極少部分實(shí)體間的關(guān)系。
圖4 不同方法的實(shí)體關(guān)系識(shí)別效果評(píng)估示意圖
根據(jù)圖4可以看出:對(duì)于F1值,各方法的數(shù)值變化走勢(shì)與實(shí)體關(guān)系識(shí)別環(huán)節(jié)的實(shí)驗(yàn)結(jié)果大同小異。以上分析說明,本文通過融合BiGRU-Attention模型與BERT模型,建立雙注意力機(jī)制的實(shí)體關(guān)系識(shí)別模型,在保留關(guān)鍵數(shù)據(jù)的前提下,使詞嵌入與位置嵌入處理得以有效開展,令詞向量與語義間的關(guān)聯(lián)更加緊密,因此,既取得了優(yōu)越的實(shí)體關(guān)系識(shí)別效果,還拓寬了該模型的應(yīng)用范圍與發(fā)展前景。
知識(shí)圖譜作為高效的知識(shí)表達(dá)模型,在人工智能技術(shù)的推動(dòng)下,得以廣泛應(yīng)用。不論是在個(gè)性化推薦領(lǐng)域還是數(shù)據(jù)挖掘領(lǐng)域中,知識(shí)圖譜通過讓計(jì)算機(jī)學(xué)習(xí)人的語言交流方式,快速獲取目標(biāo)知識(shí)間的邏輯關(guān)系,令反饋給用戶的信息更具智能性。因此,對(duì)知識(shí)圖譜建構(gòu)技術(shù)展開研究意義重大。盡管本文模型適用性較強(qiáng),但仍存在以下幾個(gè)不足之處:選用的分詞工具對(duì)于英文文本不具備良好的適用性,應(yīng)嘗試采用對(duì)中英文均具有較高準(zhǔn)確度的分詞工具,打破模型的語料限制;實(shí)驗(yàn)數(shù)據(jù)量較少,今后應(yīng)針對(duì)大規(guī)模數(shù)據(jù)集建構(gòu)知識(shí)圖譜,探究模型的處理效果;將圖譜后續(xù)使用場(chǎng)景對(duì)建構(gòu)模型的影響作為下一階段的研究方向。