本發(fā)明涉及結(jié)合注意力機(jī)制的循環(huán)神經(jīng)網(wǎng)絡(luò)、自然語言處理、情報(bào)分析領(lǐng)域,尤其是一種使用結(jié)合注意力機(jī)制的雙向循環(huán)神經(jīng)網(wǎng)絡(luò)進(jìn)行情報(bào)關(guān)系提取的方法。
背景技術(shù):
隨著信息時(shí)代各項(xiàng)技術(shù)的發(fā)展,信息數(shù)據(jù)量呈爆炸式增長。如今,情報(bào)信息的獲取和存儲(chǔ)技術(shù)較為成熟,而在情報(bào)分析、海量情報(bào)數(shù)據(jù)的關(guān)鍵信息抽取等領(lǐng)域,仍需要許多技術(shù)改進(jìn)。情報(bào)數(shù)據(jù)有著主題性強(qiáng)、時(shí)效性高、隱含信息豐富等特點(diǎn)。對同一主題下的情報(bào)進(jìn)行關(guān)系分析,按時(shí)空、因果等關(guān)系整合情報(bào),可完成主題事件的描述、多角度分析等任務(wù),并為最終的決策研判提供依據(jù)。因此,尋找情報(bào)間的關(guān)系并整合出事件脈絡(luò)有著重要的實(shí)際意義。
目前,情報(bào)的關(guān)系分類多基于標(biāo)準(zhǔn)知識框架或模型范式,即由領(lǐng)域?qū)<姨崛∏閳?bào)的關(guān)鍵特征、整理情報(bào)各關(guān)系類別的表述形式、搭建知識庫來完成關(guān)系分類。專利cn201410487829.9的情報(bào)分析系統(tǒng),基于標(biāo)準(zhǔn)知識框架,利用計(jì)算機(jī)進(jìn)行知識積累、整合零散信息,綜合歷史信息完成情報(bào)關(guān)聯(lián)關(guān)系的甄別,最終提供指揮決策的思維腦圖,輔助決策。專利cn201610015796的情報(bào)關(guān)聯(lián)處理方法,基于領(lǐng)域知識模型,通過命名體識別和領(lǐng)域字典的方式提取特征詞匯,以主題圖模型訓(xùn)練特征詞的主題關(guān)聯(lián)度,從而建立事件的主題詞模板,以此模板完成情報(bào)的關(guān)聯(lián)判斷。
此外,也有一些研究運(yùn)用機(jī)器學(xué)習(xí)的神經(jīng)網(wǎng)絡(luò)方法進(jìn)行關(guān)系抽取。專利cn201610532802.6、專利cn201610393749.6和專利cn201610685532.2分別使用多層卷積神經(jīng)網(wǎng)絡(luò)、結(jié)合距離監(jiān)督的卷積神經(jīng)網(wǎng)絡(luò)、結(jié)合注意力的卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行關(guān)系抽取。
基于上述研究現(xiàn)狀,針對情報(bào)的關(guān)系抽取方法,主要存在以下問題:第一,基于知識框架或模型的情報(bào)分析,需要大量且覆蓋面廣的歷史事例,需要富有專業(yè)知識的領(lǐng)域?qū)<疫M(jìn)行知識庫的構(gòu)建,即工作量大且完成的框架可能泛化能力較弱;第二,基于神經(jīng)網(wǎng)絡(luò)的方法多停留在理論方法的研究上,在實(shí)際應(yīng)用中需要一定調(diào)整,且現(xiàn)使用較多的卷積神經(jīng)網(wǎng)絡(luò),在整句語境的把握上效果欠佳,不經(jīng)特殊處理準(zhǔn)確率不如雙向循環(huán)神經(jīng)網(wǎng)絡(luò)(bi-directionalrnn)。
技術(shù)實(shí)現(xiàn)要素:
發(fā)明目的:為了克服現(xiàn)有技術(shù)中存在的不足,本發(fā)明提供一種智能的、準(zhǔn)確率高、展示效果好的情報(bào)關(guān)系提取方法。
技術(shù)方案:為實(shí)現(xiàn)上述目的,本發(fā)明采用的技術(shù)方案為:
一種基于神經(jīng)網(wǎng)絡(luò)與注意力機(jī)制的情報(bào)關(guān)系提取方法,包括以下步驟:
步驟1)構(gòu)建用戶字典,神經(jīng)網(wǎng)絡(luò)系統(tǒng)已有初始的用戶字典。
步驟2)訓(xùn)練詞向量,從與該領(lǐng)域有關(guān)的數(shù)據(jù)庫中提取文本資料,利用步驟1)得到的用戶字典訓(xùn)練詞向量庫,將文本資料中的文本詞匯映射成數(shù)值化的向量數(shù)據(jù);
步驟3)構(gòu)造訓(xùn)練集,從歷史情報(bào)數(shù)據(jù)庫中提取情報(bào)對,使用步驟2)中得到的詞向量庫將每對情報(bào)轉(zhuǎn)化為情報(bào)關(guān)系三元組訓(xùn)練數(shù)據(jù)<情報(bào)1,情報(bào)2,關(guān)系>;
步驟4)語料預(yù)處理,先利用步驟1)得到的用戶字典對步驟3)得到的訓(xùn)練數(shù)據(jù)進(jìn)行語料預(yù)處理,即分詞和命名體識別;分詞和命名體識別使用現(xiàn)有的自動(dòng)化工具實(shí)現(xiàn),預(yù)處理最終結(jié)果是將每條情報(bào)轉(zhuǎn)化為行為詞向量維度、列為語句長度的情報(bào)詞語矩陣,并標(biāo)注其中命名體位置,情報(bào)兩兩一組;
步驟5)神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練,將步驟4)得到的矩陣加入神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,得到關(guān)系抽取神經(jīng)網(wǎng)絡(luò)模型;其中神經(jīng)網(wǎng)絡(luò)的訓(xùn)練方法,包括以下步驟:
步驟5-1)將情報(bào)詞語矩陣輸入雙向長短時(shí)記憶網(wǎng)絡(luò)bi-lstm單元提取綜合語境的信息,分別將正序語句和倒序語句輸入兩個(gè)長短時(shí)記憶網(wǎng)絡(luò)lstm單元;在計(jì)算本時(shí)刻時(shí),迭代地考慮上時(shí)刻的作用;lstm單元的隱層計(jì)算及特征提取的組合表達(dá)式如下:
it=σ(wxixt+whiht-1+wcict-1+bi)
ft=σ(wxfxt+whfht-1+wcfct-1+bf)
gt=tanh(wxcxt+whcht-1+wccct-1+bc)
ct=itgt+ftct-1
ot=σ(wxoxt+whoht-1+wcoct+bo)
ht=ot·tanh(ct)
式中:xt表示t時(shí)刻步驟4)中得到的情報(bào)詞語矩陣,也是神經(jīng)網(wǎng)絡(luò)的輸入矩陣;
it表示t時(shí)刻輸入門的輸出結(jié)果;
ft表示t時(shí)刻遺忘門的輸出結(jié)果;
gt表示t時(shí)刻輸入整合的輸出結(jié)果;
ct、ct-1分別表示t時(shí)刻和t-1時(shí)刻記憶流狀態(tài);
ot表示t時(shí)刻輸出門的輸出結(jié)果;
ht、ht-1分別表示t時(shí)刻和t-1時(shí)刻隱層信息,即神經(jīng)網(wǎng)絡(luò)提取的特征輸出;
σ()表示sigmoid激活函數(shù),tanh()表示雙曲正切激活函數(shù);
wxi、whi、wci等表示待訓(xùn)練的權(quán)值參數(shù),其角標(biāo)前者表示相乘的輸入量,后者表示所屬的計(jì)算部分;
bi、bf等表示待訓(xùn)練的偏置參數(shù),其角標(biāo)表示所屬的計(jì)算部分;
這里待訓(xùn)練的參數(shù)wxi、whi、wci、bi、bf都是先隨機(jī)初始化,然后訓(xùn)練過程中自動(dòng)修正,最后會(huì)隨神經(jīng)網(wǎng)絡(luò)的訓(xùn)練得到最終的值;
步驟5-2)加權(quán)拼接正序語句和倒序語句的兩個(gè)長短時(shí)記憶網(wǎng)絡(luò)lstm單元輸出作為神經(jīng)網(wǎng)絡(luò)的最終輸出;
ofinal=wfwhfw+wbwhbw
式中,hfw表示處理正序語句的lstm網(wǎng)絡(luò)的輸出,wfw表示其對應(yīng)的待訓(xùn)練的權(quán)值;
hbw表示處理倒序語句的lstm網(wǎng)絡(luò)的輸出,wbw表示其對應(yīng)的待訓(xùn)練的權(quán)值;
ofinal表示神經(jīng)網(wǎng)絡(luò)的最終輸出;
這里待訓(xùn)練的權(quán)值wfw、wbw也是先隨機(jī)初始化,然后訓(xùn)練過程中自動(dòng)修正,最后會(huì)隨神經(jīng)網(wǎng)絡(luò)的訓(xùn)練得到最終的值;
步驟5-3)依據(jù)命名體對應(yīng)位置的神經(jīng)網(wǎng)絡(luò)輸出來計(jì)算情報(bào)整句話的注意力分配,并按照分配組合神經(jīng)網(wǎng)絡(luò)的整句輸出,其公式如下:
α=softmax(tanh(e)·wa·ofinal)
r=α·ofinal
式中,α為注意力分配矩陣,r為情報(bào)語句經(jīng)過針對性整合的輸出;e為循環(huán)神經(jīng)網(wǎng)絡(luò)在命名體位置上的輸出,使用固定窗口的模式,選取前k重要的命名體拼接成命名體矩陣;ofinal為循環(huán)神經(jīng)網(wǎng)絡(luò)的輸出,形如[o1,o2,o3…on],其中o1,o2,o3…on為神經(jīng)網(wǎng)絡(luò)對應(yīng)節(jié)點(diǎn)的輸出,n為情報(bào)的詞語數(shù)量;
wa為待訓(xùn)練的權(quán)值矩陣,softmax()為softmax分類器函數(shù),tanh()為雙曲正切激活函數(shù);這里待訓(xùn)練的權(quán)值wa也是先隨機(jī)初始化,然后訓(xùn)練過程中自動(dòng)修正,最后會(huì)隨神經(jīng)網(wǎng)絡(luò)的訓(xùn)練得到最終的值;
步驟5-4)對于兩條情報(bào)的特征信息r,拼接后輸入全連接層,最后使用softmax分類器進(jìn)行關(guān)系分類,對得到的預(yù)測結(jié)果使用梯度下降法訓(xùn)練權(quán)值;
步驟6)情報(bào)獲取,輸入兩條一組的文字情報(bào),一個(gè)批次可以有多組,其中文字情報(bào)為一段中心明確的文字,若為新情報(bào),則可以選擇擴(kuò)充步驟1)中得到的用戶字典;
步驟7)文本預(yù)處理,通過步驟4)中訓(xùn)練好的分詞工具、步驟2)得到的詞向量庫和步驟4)中使用的命名體識別工具,將步驟6)中原始的整句的文字信息轉(zhuǎn)化為情報(bào)數(shù)值矩陣;其中每行是每個(gè)詞的向量表示,一個(gè)矩陣即表示一條情報(bào),同時(shí)標(biāo)注其中命名體的位置;
步驟8)關(guān)系抽取,將步驟7)處理好的兩兩一組的情報(bào)矩陣對輸入步驟5)訓(xùn)練好的關(guān)系抽取神經(jīng)網(wǎng)絡(luò)模型,進(jìn)行自動(dòng)化的關(guān)系抽取,最終得到每組情報(bào)的關(guān)系類別;得到每組情報(bào)關(guān)系類別;
步驟9)增量式更新,判斷步驟8)得到的每組情報(bào)的關(guān)系類別正誤,若判斷正確,則結(jié)合步驟6)中獲取的情報(bào)和相應(yīng)的關(guān)系類別進(jìn)行可視化展示,若判斷錯(cuò)誤,則可以選擇將正確判斷的情報(bào)關(guān)系三元組訓(xùn)練數(shù)據(jù)加入步驟3)中的訓(xùn)練集,重復(fù)步驟4)與步驟5),重新訓(xùn)練修正神經(jīng)網(wǎng)絡(luò)模型。
進(jìn)一步地:步驟1)中可選方案為構(gòu)建專業(yè)領(lǐng)域用戶詞典,專業(yè)領(lǐng)域用戶詞典指在特定領(lǐng)域的專有名詞、且脫離本領(lǐng)域較難識別的詞語;其他普遍的詞匯可以自動(dòng)識別;所述專有詞匯可從歷史情報(bào)數(shù)據(jù)庫中選取,若從歷史情報(bào)數(shù)據(jù)庫中提取的詞匯為專有詞匯,用戶只需將已知的專有詞匯加入神經(jīng)網(wǎng)絡(luò)系統(tǒng)的用戶字典即可。
優(yōu)選的:訓(xùn)練集的構(gòu)造是從歷史情報(bào)數(shù)據(jù)庫中提取足量的情報(bào),構(gòu)建情報(bào)關(guān)系三元組訓(xùn)練數(shù)據(jù),要求5000條以上;具體首先確定關(guān)系類別,關(guān)系類別包括前因與后果、主題與詳述、位置聯(lián)系、時(shí)間聯(lián)系,按照不同關(guān)系,將情報(bào)對分成形如<情報(bào)1,情報(bào)2,關(guān)系>的三元組。
優(yōu)選的:從與領(lǐng)域有關(guān)的數(shù)據(jù)庫中提取文本資料,結(jié)合網(wǎng)絡(luò)百科、新聞廣播的文本語料,通過google工具包word2vector訓(xùn)練詞向量庫,將文本詞匯映射成數(shù)值化的向量數(shù)據(jù),向量數(shù)據(jù)包含了原語義信息,以此完成自然語言到數(shù)值表示的轉(zhuǎn)化。
優(yōu)選的:中文在語義上以詞為單位,對于整句的輸入,需要先進(jìn)行分詞處理;在分詞過程中,加入專業(yè)領(lǐng)域用戶詞典。
優(yōu)選的:獲取情報(bào)步驟中情報(bào)應(yīng)為一小段100詞以內(nèi)的中心明確的文字;關(guān)系抽取針對的是二元關(guān)系,即處理對象為一對情報(bào),所以長短時(shí)記憶網(wǎng)絡(luò)lstm單元的輸入應(yīng)為兩條一組的文字情報(bào)。
優(yōu)選的:分詞和命名體識別使用現(xiàn)有的自動(dòng)化工具實(shí)現(xiàn),如nlpir和stanford-ner。
優(yōu)選的:在自動(dòng)化工具識別分詞和命名體時(shí)使用專業(yè)領(lǐng)域的用戶詞典。
本發(fā)明相比現(xiàn)有技術(shù),具有以下有益效果:
本發(fā)明使用雙向循環(huán)神經(jīng)網(wǎng)絡(luò)、結(jié)合命名實(shí)體對情報(bào)中各詞的注意力分配,在情報(bào)的詞向量表示中提取出特征信息,使用softmax分類器對提取的特征信息進(jìn)一步分類,從而完成情報(bào)的關(guān)系提取任務(wù)。雙向循環(huán)神經(jīng)網(wǎng)絡(luò)在文本數(shù)據(jù)上有強(qiáng)大的特征提取能力,可克服傳統(tǒng)知識庫方法中人工特征提取工作量大的問題以及主觀性導(dǎo)致的泛化能力弱問題;使用雙向長短時(shí)記憶網(wǎng)絡(luò)可以有效地考慮完整語境信息,使用命名實(shí)體的注意力權(quán)重可依據(jù)這些敘事中心詞自動(dòng)分配情報(bào)中每個(gè)詞的重要程度,這使得本發(fā)明的關(guān)系提取方法較其他神經(jīng)網(wǎng)絡(luò)方法有更高的準(zhǔn)確率。
附圖說明
下面結(jié)合附圖對本發(fā)明的具體實(shí)施方式作進(jìn)一步詳細(xì)的說明,其中:
圖1是本發(fā)明一種基于神經(jīng)網(wǎng)絡(luò)與注意力機(jī)制的的情報(bào)關(guān)系提取方法的流程圖。
圖2是本發(fā)明一種基于神經(jīng)網(wǎng)絡(luò)與注意力機(jī)制的的情報(bào)關(guān)系提取方法中采用的雙向循環(huán)神經(jīng)網(wǎng)絡(luò)示意圖。
圖3是本發(fā)明一種基于神經(jīng)網(wǎng)絡(luò)與注意力機(jī)制的的情報(bào)關(guān)系提取方法中采用的注意力機(jī)制示意圖。
具體實(shí)施方式
下面結(jié)合附圖和具體實(shí)施例,進(jìn)一步闡明本發(fā)明,應(yīng)理解這些實(shí)例僅用于說明本發(fā)明而不用于限制本發(fā)明的范圍,在閱讀了本發(fā)明之后,本領(lǐng)域技術(shù)人員對本發(fā)明的各種等價(jià)形式的修改均落于本申請所附權(quán)利要求所限定的范圍。
如圖1所示為一種基于神經(jīng)網(wǎng)絡(luò)與注意力機(jī)制的情報(bào)關(guān)系提取方法,在實(shí)現(xiàn)上分為兩個(gè)階段:訓(xùn)練階段、應(yīng)用階段。
(一)、訓(xùn)練階段:
如圖1所示,在訓(xùn)練階段,系統(tǒng)需首先構(gòu)建用戶字典(可選)、訓(xùn)練詞向量,然后從歷史情報(bào)數(shù)據(jù)庫中構(gòu)建訓(xùn)練集,進(jìn)行語料預(yù)處理,最后進(jìn)行關(guān)系抽取神經(jīng)網(wǎng)絡(luò)模型的訓(xùn)練。
a、構(gòu)建用戶字典:神經(jīng)網(wǎng)絡(luò)系統(tǒng)已有初始的用戶字典,從歷史情報(bào)數(shù)據(jù)庫中提取詞匯,若從歷史情報(bào)數(shù)據(jù)庫中提取的詞匯為專有詞匯,用戶只需將已知的專有詞匯加入神經(jīng)網(wǎng)絡(luò)系統(tǒng)的用戶字典即可構(gòu)建專有詞匯用戶字典。專業(yè)領(lǐng)域用戶詞典指在特定領(lǐng)域的專有名詞、且脫離本領(lǐng)域較難識別的詞語;其他普遍的詞匯可以自動(dòng)識別;
b、訓(xùn)練詞向量:從與領(lǐng)域有關(guān)的數(shù)據(jù)庫中提取文本資料,結(jié)合網(wǎng)絡(luò)百科、新聞廣播等文本語料,利用步驟(一)a)得到的用戶字典通過google工具包word2vector訓(xùn)練詞向量庫,將文本詞匯映射成數(shù)值化的向量數(shù)據(jù),向量數(shù)據(jù)包含了原語義信息,以此完成自然語言到數(shù)值表示的轉(zhuǎn)化。
c、構(gòu)建訓(xùn)練集:從歷史情報(bào)數(shù)據(jù)庫中提取5000條以上情報(bào)對,使用步驟(一)b)中得到的詞向量庫構(gòu)建情報(bào)關(guān)系三元組訓(xùn)練數(shù)據(jù)。具體需要首先確定關(guān)系類別,如前因與后果、主題與詳述、位置聯(lián)系、時(shí)間聯(lián)系,按照不同關(guān)系,將情報(bào)對分成形如<情報(bào)1,情報(bào)2,關(guān)系>的三元組。
d、語料預(yù)處理:先利用步驟a)得到的用戶字典對步驟(一)c)得到的三元組訓(xùn)練數(shù)據(jù)進(jìn)行語料預(yù)處理,即分詞和命名體識別,分詞和命名體識別使用現(xiàn)有的自動(dòng)化工具實(shí)現(xiàn),如nlpir和stanford-ner。在此過程中,將使用專業(yè)領(lǐng)域的用戶詞典,最終可達(dá)到95%以上的準(zhǔn)確率。預(yù)處理最終結(jié)果是將三元組訓(xùn)練數(shù)據(jù)中的每條情報(bào)轉(zhuǎn)化為行為詞向量維度、列為語句長度的情報(bào)矩陣,并標(biāo)注其中命名體位置,情報(bào)兩兩一組。
e、神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練:步驟(一)d)預(yù)處理后的兩兩一組的情報(bào)矩陣均進(jìn)行下面的神經(jīng)網(wǎng)絡(luò)訓(xùn)練處理:將步驟(一)d)預(yù)處理后的情報(bào)矩陣輸入關(guān)系抽取神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練。首先將情報(bào)詞語矩陣輸入雙向長短時(shí)記憶網(wǎng)絡(luò)bi-lstm提取綜合語境的信息,lstm網(wǎng)絡(luò)的公式如下:
it=σ(wxixt+whiht-1+wcict-1+bi)
ft=σ(wxfxt+whfht-1+wcfct-1+bf)
gt=tanh(wxcxt+whcht-1+wccct-1+bc)
ct=itgt+ftct-1
ot=σ(wxoxt+whoht-1+wcoct+bo)
ht=ot·tanh(ct)
式中:xt表示t時(shí)刻(對應(yīng)第t個(gè)詞向量輸入)步驟4)中得到的矩陣,也是神經(jīng)網(wǎng)絡(luò)的輸入矩陣;
it表示t時(shí)刻(對應(yīng)第t個(gè)詞向量輸入)輸入門的輸出結(jié)果,它決定了記憶流記錄本次信息的比重;
ft表示t時(shí)刻(對應(yīng)第t個(gè)詞向量輸入)遺忘門的輸出結(jié)果,它決定了記憶流依據(jù)本次信息,遺忘記憶數(shù)據(jù)的比重;
gt表示t時(shí)刻(對應(yīng)第t個(gè)詞向量輸入)輸入整合的輸出結(jié)果,它整合了本次輸入的信息;
ct、ct-1分別表示t時(shí)刻(對應(yīng)第t個(gè)詞向量輸入)和t-1時(shí)刻(對應(yīng)第t-1個(gè)詞向量輸入)記憶流狀態(tài);
ot表示t時(shí)刻(對應(yīng)第t個(gè)詞向量輸入)輸出門的輸出結(jié)果,它決定了從記憶流輸出數(shù)據(jù)的比重;
ht、ht-1分別表示t時(shí)刻(對應(yīng)第t個(gè)詞向量輸入)和t-1時(shí)刻(對應(yīng)第t-1個(gè)詞向量輸入)隱層信息,即神經(jīng)網(wǎng)絡(luò)提取的特征輸出;
σ()表示sigmoid激活函數(shù),tanh()表示雙曲正切激活函數(shù);
wxi、whi、wci等表示待訓(xùn)練的權(quán)值參數(shù),其角標(biāo)前者表示相乘的輸入量,后者表示所屬的計(jì)算部分;
bi、bf等表示待訓(xùn)練的偏置參數(shù),其角標(biāo)表示所屬的計(jì)算部分。
這里待訓(xùn)練的參數(shù)wxi、whi、wci、bi、bf都是先隨機(jī)初始化,然后訓(xùn)練過程中自動(dòng)修正,最后會(huì)隨神經(jīng)網(wǎng)絡(luò)的訓(xùn)練得到最終的值;
如圖2所示,雙向循環(huán)神經(jīng)網(wǎng)絡(luò)的具體實(shí)現(xiàn)即訓(xùn)練兩個(gè)循環(huán)神經(jīng)網(wǎng)絡(luò),輸入分別為正序語句和倒序語句,圖中w1、w2、w3...即為一串詞匯(語句),分別以正序和逆序輸入兩個(gè)神經(jīng)網(wǎng)絡(luò)。之后拼接兩者的輸出作為神經(jīng)網(wǎng)絡(luò)的最終輸出,即圖中o1、o2、o3...相應(yīng)公式如下:
ofinal=wfwhfw+wbwhbw
式中,hfw表示處理正序語句的神經(jīng)網(wǎng)絡(luò)的輸出,wfw表示其對應(yīng)的待訓(xùn)練的權(quán)值;
hbw表示處理倒序語句的神經(jīng)網(wǎng)絡(luò)的輸出,wbw表示其對應(yīng)的待訓(xùn)練的權(quán)值;
ofinal表示神經(jīng)網(wǎng)絡(luò)的最終輸出。
這里待訓(xùn)練的權(quán)值wfw、wbw也是先隨機(jī)初始化,然后訓(xùn)練過程中自動(dòng)修正,最后會(huì)隨神經(jīng)網(wǎng)絡(luò)的訓(xùn)練得到最終的值;
如圖3所示,依據(jù)命名體對應(yīng)位置的神經(jīng)網(wǎng)絡(luò)輸出來計(jì)算情報(bào)整句話的注意力分配,并按照分配組合神經(jīng)網(wǎng)絡(luò)的整句輸出,其公式如下:
α=softmax(tanh(e)·wa·ofinal)
r=α·ofinal
式中,α為注意力分配矩陣,r為情報(bào)語句經(jīng)過針對性整合的輸出;e為循環(huán)神經(jīng)網(wǎng)絡(luò)在命名體位置上的輸出,使用固定窗口的模式,選取前k重要的命名體拼接成命名體矩陣;
ofinal為循環(huán)神經(jīng)網(wǎng)絡(luò)的輸出,形如[o1,o2,o3…on],其中o1,o2,o3…on為神經(jīng)網(wǎng)絡(luò)對應(yīng)節(jié)點(diǎn)的輸出,n為情報(bào)的詞語數(shù)量;
wa為待訓(xùn)練的權(quán)值矩陣,softmax()為softmax分類器函數(shù),tanh()為雙曲正切激活函數(shù);
這里待訓(xùn)練的權(quán)值wa也是先隨機(jī)初始化,然后訓(xùn)練過程中自動(dòng)修正,最后會(huì)隨神經(jīng)網(wǎng)絡(luò)的訓(xùn)練得到最終的值;
對于兩條情報(bào)的特征信息r,拼接后輸入全連接層,最后使用softmax分類器進(jìn)行關(guān)系分類,對得到的預(yù)測結(jié)果使用梯度下降法訓(xùn)練權(quán)值;
(二)、應(yīng)用階段:
如圖1所示,本發(fā)明的情報(bào)關(guān)系抽取方法在應(yīng)用階段包括情報(bào)獲取、文本預(yù)處理、關(guān)系抽取、增量式更新四步:
a、情報(bào)獲取,情報(bào)應(yīng)為一小段100詞以內(nèi)的中心明確的文字。關(guān)系抽取針對的是二元關(guān)系,即處理對象為一對情報(bào),所以系統(tǒng)的輸入應(yīng)為兩條一組的文字情報(bào),一個(gè)批次可以有多組。如圖1所示,若為新情報(bào),則可以選擇擴(kuò)充步驟(一)a)用戶詞典以適應(yīng)新情報(bào)中的新詞匯。
b、文本預(yù)處理,通過步驟(一)d)中訓(xùn)練好的分詞工具、步驟(一)b)得到的詞向量庫和步驟(一)d)中使用的命名體識別工具,將步驟(二)a)中兩條一組的原始的整句的文字信息均轉(zhuǎn)化為數(shù)值矩陣,其中每行是每個(gè)詞的向量表示,一個(gè)矩陣即表示一條情報(bào),同時(shí)標(biāo)注其中命名體的位置。
c、關(guān)系抽取,將步驟(二)b)處理好的兩兩一組的情報(bào)矩陣對輸入步驟(一)e)訓(xùn)練好的關(guān)系抽取神經(jīng)網(wǎng)絡(luò)模型,進(jìn)行自動(dòng)化的關(guān)系抽取,最終得到每組情報(bào)的關(guān)系類別。
d、增量式更新,如圖1所示,系統(tǒng)支持糾正錯(cuò)誤判斷,判斷步驟(二)c)得到的每組情報(bào)的關(guān)系類別正誤,若判斷正確,則結(jié)合步驟(二)a)中獲取的情報(bào)和相應(yīng)的關(guān)系類別進(jìn)行可視化展示,若判斷錯(cuò)誤,則可以選擇將正確判斷的情報(bào)關(guān)系三元組訓(xùn)練數(shù)據(jù)加入步驟(一)c)中的訓(xùn)練集,重復(fù)步驟(一)d)與步驟(一)e),重新訓(xùn)練修正神經(jīng)網(wǎng)絡(luò)模型。
以上所述僅是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出:對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤飾,這些改進(jìn)和潤飾也應(yīng)視為本發(fā)明的保護(hù)范圍。