国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

層次視野多頭注意力驅(qū)動的圖譜到文本生成

2023-10-18 10:18鄭衛(wèi)國錢松榮
小型微型計算機系統(tǒng) 2023年10期
關(guān)鍵詞:三元組視野注意力

朱 萍,鄭衛(wèi)國,錢松榮

1(復(fù)旦大學(xué) 信息科學(xué)與工程學(xué)院,上海 200433) 2(復(fù)旦大學(xué) 大數(shù)據(jù)學(xué)院,上海 200433)

1 引 言

知識圖譜(Knowledge Graph,KG)是一種靈活的數(shù)據(jù)結(jié)構(gòu),可以用來在不同的領(lǐng)域建模知識,例如詞匯語義、常識、生物醫(yī)學(xué)研究和圖像中的視覺關(guān)系等.資源描述框架(Resource Description Framework,RDF)已成為知識圖譜的重要標(biāo)準(zhǔn).一個RDF三元組由主體(subject)、謂詞(predicate)、客體(object)構(gòu)成,形式為,并由此形成了實體(主體、客體)之間的關(guān)系(謂詞).然而,RDF的元素通常存儲為統(tǒng)一資源標(biāo)識符(Uniform Resource Identifiers,URIs),且許多謂詞不直觀,所以這種數(shù)據(jù)表示方式不易被人類理解.構(gòu)建基于自然語言的用戶界面是用戶交互研究中的一項重要任務(wù).為知識圖譜生成相應(yīng)的自然語言描述,即KG-to-Text生成,能夠使廣大的終端用戶方便地閱讀和理解嵌入在三元組中的知識.例如,

_(in_metres),25.0>是給定的一個三元組,其謂詞包含較多信息.可以用自然句將它描述為“Aarhus airport is 25.0 metres above the sea level.”或“Aarhus airport is at an elevation of 25 metres above seal level.”.因此,KG-to-Text生成對于其他任務(wù)如基于知識圖譜的問答系統(tǒng)[1]、實體摘要[2]都非常重要.

早期的KG-to-Text生成系統(tǒng)依賴特定領(lǐng)域的規(guī)則或模板,使用傳統(tǒng)自然語言生成(Natural Language Generation,NLG)的流水線型(pipeline)架構(gòu),其由不同的模塊組成.近年來隨著神經(jīng)網(wǎng)絡(luò)和深度學(xué)習(xí)的發(fā)展,基于序列到序列(Sequence-to-Sequence,Seq2Seq)[3]架構(gòu)的NLG模型在機器翻譯和文本摘要方面取得了顯著的成功.因而KG-to-Text生成也從模塊化的pipeline架構(gòu)轉(zhuǎn)向端到端(End-to-End,E2E)架構(gòu).E2E架構(gòu)具體為編碼器-解碼器結(jié)構(gòu):首先編碼器計算圖上各個節(jié)點的向量表征,然后解碼器利用它們?nèi)ヮA(yù)測文本序列.E2E架構(gòu)的代表為Transformer[4]模型.

KG-to-Text生成的一個關(guān)鍵問題是如何對輸入的圖進(jìn)行編碼.原始 Transformer 的多頭自注意力機制使得模型可以隱式地關(guān)注各種特征子空間的相關(guān)信息.受此啟發(fā),本文提出一種層次視野多頭注意力(Hierarchical-View and Multi-Head Attention,HVMHA)驅(qū)動的KG-to-Text生成方法.首先,對知識圖譜依次進(jìn)行Levi圖轉(zhuǎn)換和子詞圖轉(zhuǎn)換,獲得了更為豐富的語義和結(jié)構(gòu)關(guān)系.然后,改變原先Transformer編碼器的自注意力機制并擴展為3個層次,即構(gòu)造了全圖子詞可見矩陣、元組內(nèi)子詞可見矩陣和實體/關(guān)系內(nèi)子詞可見矩陣,分別關(guān)注圖中的全圖連接視野、元組內(nèi)連接視野和實體/關(guān)系內(nèi)連接視野.這使得模型從隱式轉(zhuǎn)為顯式,明確地捕捉圖中不同層次的信息,從而實現(xiàn)對圖結(jié)構(gòu)的建模,增強模型對圖的編碼能力.經(jīng)過該方法層次增強的節(jié)點特征在提高生成文本質(zhì)量的同時,沒有額外增加參數(shù)量,使得模型實用高效.

2 相關(guān)工作

基于pipeline架構(gòu),Bontcheva等[5]專注于醫(yī)學(xué)領(lǐng)域,首先過濾重復(fù)的數(shù)據(jù)(文檔規(guī)劃),然后將語義連貫的三元組分組(微觀規(guī)劃),聚合分組后三元組所生成的句子(句子聚合),生成最后的語言描述(語言實現(xiàn)).Cimiano等[6]使用語料庫構(gòu)建了烹飪領(lǐng)域的實體詞典,通過文檔規(guī)劃、微觀規(guī)劃、語言實現(xiàn)生成烹飪食譜.這些方法不僅耗費大量的時間和人力,而且擴展性低、無法處理復(fù)雜的邏輯.

KG-to-Text生成中的E2E架構(gòu)可分為兩類:第1類為經(jīng)典的Seq2Seq架構(gòu),輸入時需要將圖轉(zhuǎn)化為序列.Trisedya等[7]采用拓?fù)渑判蚝蛷V度優(yōu)先遍歷算法實現(xiàn)圖的線性化,所提出的基于圖的LSTM編碼器保留了一定的結(jié)構(gòu)信息.Ferreira等[8]直接將三元組序列輸入到GRU和Transformer兩種模型中.但是,GRU和LSTM不僅受到線性化后節(jié)點序列順序的影響,而且無法解決特別長期的依賴現(xiàn)象,即對于較大的圖轉(zhuǎn)化成的序列經(jīng)過多階段的計算后,會丟失較長時間步之前的特征.Transformer的不足則在于將所有節(jié)點看作互相連接,損失了大量的圖結(jié)構(gòu)信息,無法得到節(jié)點準(zhǔn)確的向量表征.最近Schmitt等[9]將節(jié)點之間最短路徑的長度作為相對位置信息融入Transformer,間接建模了圖的結(jié)構(gòu).

另一類為圖到序列(Graph-to-Sequence,Graph2Seq)架構(gòu),采用圖神經(jīng)網(wǎng)絡(luò)(Graph Neural Network,GNN)直接處理圖結(jié)構(gòu).Marcheggiani等[10]提出了基于圖卷積網(wǎng)絡(luò)(Graph Convolutional Network,GCN)[11]的編碼器,通過跳躍連接疊加多個GCN層,捕獲節(jié)點多跳鄰居的信息.Koncel-Kedziorski等[12]用圖注意力網(wǎng)絡(luò)(Graph Attention Network,GAT)[13]替代Transformer編碼器的自注意力層以適應(yīng)圖的輸入.然而,GNN隨著層數(shù)的堆疊會產(chǎn)生過平滑問題,即訓(xùn)練過程中各個節(jié)點的向量表征會趨向于收斂到近似值,無法區(qū)分.另外,上述GNN方法將實體作為節(jié)點,忽略了單個實體所包含詞語間的關(guān)系以及多個實體間所包含詞語間的關(guān)系.先前Ribeiro等[14]使用級聯(lián)和并聯(lián)方式組合Transformer和GAT以聚合子詞節(jié)點的全局和局部上下文信息,代價是模型參數(shù)量過大.

此外,抽象語義表征(Abstract Meaning Representation,AMR)到文本(AMR-to-Text)生成與KG-to-Text生成同屬于圖到文本生成領(lǐng)域,因此AMR-to-Text生成的相關(guān)方法有一定借鑒意義.Zhu等[15]首次使用Transformer模型解決AMR-to-Text生成問題并取得了當(dāng)時的最佳效果.還有一些模型同時適用于這兩個任務(wù),Song等[16]引入了兩種類型的自編碼損失,保留了更多的結(jié)構(gòu)信息.

3 問題定義與模型架構(gòu)

3.1 問題表述和符號定義

首先給出KG-to-Text生成問題的具體表述:給定一張知識圖譜,任務(wù)是生成一句或多句文本描述它.一個具體實例如圖1所示,上方為輸入的知識圖譜,下方為輸出的文本.

圖1 知識圖譜及相應(yīng)文本描述的示例圖Fig.1 Example of KG and corresponding text description

所生成的文本不僅需要語法正確,而且要滿足充分性(即文本是否涵蓋圖中的所有元素)和流暢性(即文本是否自然、易讀).

知識圖譜屬于有向標(biāo)記圖,符號定義為G=(V,ε,R).其中,V為頂點的集合表示實體,主體節(jié)點es∈V,客體節(jié)點eo∈V.R為邊的集合表示關(guān)系,關(guān)系r∈R.ε為三元組的集合,三元組(es,r,eo)∈ε,含義為關(guān)系r從實體es指向eo.對應(yīng)的文本為S={s1,s2,…,sT},其中,si為文本的第i個詞元(token),T為詞元的個數(shù).注意,本文中的詞元單位是子詞.以最大化概率P(S|G)為目標(biāo)訓(xùn)練模型.

3.2 模型的總體架構(gòu)

本小節(jié)對HVMHA模型的總體架構(gòu)進(jìn)行介紹.如圖2所示,模型從輸入到輸出主要分為5個模塊:預(yù)處理模塊、輸入嵌入模塊、輸出嵌入模塊、編碼器模塊、解碼器模塊.

圖中左側(cè)為輸入部分,其中預(yù)處理模塊的作用是將輸入的原始知識圖譜轉(zhuǎn)換為模型易于處理且信息增強的子詞圖,共包括數(shù)據(jù)清洗、Levi圖轉(zhuǎn)換和子詞圖轉(zhuǎn)換3個步驟.輸入嵌入模塊的作用是將子詞圖線性化,并生成子詞嵌入將其輸入到編碼器模塊中.編碼器模塊的整體作用是計算圖中節(jié)點的向量表征,與原始Transformer類似,其由相同的多層堆疊而成.每一層又由多個子層組成,包括層次視野多頭注意力子層、前饋(Feed-Forward,FF)子層以及dropout(DO)、殘差連接、和層歸一化(Layer Normalization,LN)等優(yōu)化手段.模型的核心為層次視野多頭注意力子層,可對圖結(jié)構(gòu)數(shù)據(jù)進(jìn)行特定編碼.其由3個層次的多頭注意力拼接而成,分別為全圖連接視野注意力、元組內(nèi)連接視野注意力、實體/關(guān)系內(nèi)連接視野注意力.各個層次視野的注意力也都使用多頭機制,占據(jù)若干個注意力頭.

圖中右側(cè)為輸出部分,其中輸出嵌入模塊為參考文本生成子詞嵌入,并輸入到解碼器模塊中.解碼器模塊的作用是根據(jù)編碼器模塊獲取的知識圖譜編碼特征以及已生成文本的前t-1個子詞,計算第t個子詞的文本解碼特征.本文采用原始Transformer的解碼器模塊,由相同的多層堆疊而成.每一層由3個子層組成:掩碼多頭注意力(Masked Multi-Head Attention,MMHA)子層、編碼器-解碼器多頭注意力(Encoder-Decoder Multi-Head Attention,EDMHA)子層和前饋子層,都使用dropout、殘差連接和層歸一化依次優(yōu)化.最后,將解碼特征通過線性映射和softmax函數(shù)轉(zhuǎn)換為詞表中的子詞概率分布作為輸出.以下為HVMHA模型各個模塊的詳細(xì)介紹.

4 HVMHA模型

4.1 預(yù)處理模塊

4.1.1 數(shù)據(jù)清洗

首先遵循數(shù)據(jù)集的評估規(guī)則,將知識圖譜中的實體和關(guān)系名稱及對應(yīng)的參考文本小寫,并將文本中所有標(biāo)點符號與其他字符用空格分隔.然后,本文將實體和關(guān)系名稱中的下劃線替換為空格,去除引號、括號等特殊符號,分割駝峰命名的詞語,如將“spokenIn”變?yōu)椤皊poken in”,以消除數(shù)據(jù)噪聲,將節(jié)點與文本的語義對齊.

4.1.2 Levi圖轉(zhuǎn)換

為了處理知識圖譜的標(biāo)記邊,本文遵循Beck等[17]的方法將原始的異構(gòu)圖轉(zhuǎn)換為一種二部圖稱為Levi圖.具體地,用一個新的關(guān)系節(jié)點替換節(jié)點之間的標(biāo)記邊r,創(chuàng)建兩條新的無標(biāo)記邊將該節(jié)點分別連接到主體和客體.Levi圖表示為GLevi=(VLevi,VLevi).VLevi為頂點的集合,表示實體和關(guān)系,即VLevi=V∪R.RLevi為邊的集合:

RLevi={(eh,et)∣eh,et∈VLevi}

(1)

表示邊從頭節(jié)點eh指向尾節(jié)點et.

圖3 知識圖譜對應(yīng)的Levi圖Fig.3 Levi graph corresponding to KG

經(jīng)過轉(zhuǎn)換,圖3展示了圖1的知識圖譜對應(yīng)的Levi圖.

4.1.3 子詞圖轉(zhuǎn)換

實體和關(guān)系的名稱通常由多個詞語組成.為了緩解數(shù)據(jù)的稀疏問題和挖掘細(xì)粒度的特征信息,本文采用Ribeiro等[14]的方法將Levi圖擴展為子詞圖.該方法首先對實體和關(guān)系分詞,再利用字節(jié)對編碼(Byte Pair Encoding,BPE)[18]將詞語拆分為多個子詞單元.于是,每個Levi圖的節(jié)點eLevi轉(zhuǎn)化為一組子詞節(jié)點:

{v∣v∈eLevi,eLevi∈VLevi}

(2)

每條Levi圖的邊(eh,et)轉(zhuǎn)化為一組邊:

{(u,v)∣u∈eh,v∈et}

(3)

構(gòu)成的子詞圖表示為Gsw=(Vsw,Rsw).

為了便于說明,以圖1中的三元組為例.其中,名稱“Soho_Press”最終被分割為“so@@”、“h@@”、“o”和“press”4個單元;“country”已經(jīng)是最小單元;“United_States”被拆分成“united”和“states”.處理該三元組得到對應(yīng)的子詞圖如圖4所示.

圖4 知識圖譜中一個三元組對應(yīng)的子詞圖Fig.4 Subword graph corresponding to a triple of KG

4.2 輸入嵌入模塊

首先,將預(yù)處理后的子詞節(jié)點以實體和關(guān)系為單位拼接得到輸入序列:

(4)

通過各個子詞的獨熱編碼索引可學(xué)習(xí)的嵌入矩陣,得到對應(yīng)維數(shù)為dz的向量,即zi∈dz,則序列嵌入為:

ZE=(z1,z2,…,zn)

(5)

其中n為所有子詞的總個數(shù).

雖然輸入序列整體沒有連貫的語義關(guān)系,但是為了保留單個實體或關(guān)系中包含子詞的自然順序,本文使用與原始Transformer相同的位置編碼PEE.因此,初始的節(jié)點表征為序列嵌入與位置編碼之和,即:

(6)

4.3 編碼器模塊

4.3.1 概 述

編碼器模塊共有LE層,定義經(jīng)過第L層編碼器層(Encoder Layer)得到的節(jié)點表征為:

(7)

(8)

(9)

FF包含兩個線性變換,變換間使用ReLU激活函數(shù):

FF(x)=DO(ReLU (xW1+b1))W2+b2

(10)

其中,W1、W2、b1、b2為可訓(xùn)練的模型參數(shù).下一小節(jié)將詳細(xì)闡述HVMHA的實現(xiàn)過程.

4.3.2 層次視野多頭注意力子層

以圖5的節(jié)點序列為例進(jìn)行說明.注意,實驗中在屬于實體或關(guān)系的第1個子詞節(jié)點前分別另外加上、標(biāo)簽,加強模型對節(jié)點在結(jié)構(gòu)上的區(qū)分能力.為了簡潔起見,在圖5中省略標(biāo)簽.

圖5 知識圖譜中一個三元組對應(yīng)的節(jié)點序列Fig.5 Sequence of nodes corresponding to a triple of KG

由上而下,第1層次為全圖連接視野,即把原圖G中所有節(jié)點V看作互相連接,使得節(jié)點間可以進(jìn)行全局的信息交換.在本文中這等同于把子詞圖Gsw中所有節(jié)點Vsw看作互相連接.構(gòu)建全圖子詞可見矩陣如圖6(a)所示,即序號0~18的節(jié)點互為可見.

第2層次為元組內(nèi)連接視野,即把原圖G中任意一個三元組(es,r,eo)看作互相連接,以關(guān)系r為單位,使得圖中的單跳鄰居節(jié)點實現(xiàn)信息交換.這相當(dāng)于把子詞圖Gsw中所屬三元組的節(jié)點看作互相連接,構(gòu)建元組內(nèi)子詞可見矩陣如圖6(b)所示.

圖6 子詞可見矩陣Fig.6 Subword visibility matrix

其中序號0~5的節(jié)點屬于三元組;序號6~14的節(jié)點屬于三元組;序號11~17的節(jié)點屬于三元組;序號16~18及0~1的節(jié)點屬于三元組,分別互為可見.

第3層次為實體/關(guān)系內(nèi)連接視野,即對應(yīng)原圖G中的一個實體或關(guān)系,把子詞圖Gsw中其內(nèi)部的節(jié)點看作互相連接.構(gòu)建實體/關(guān)系內(nèi)子詞可見矩陣如圖6(c)所示.

不同的實體或關(guān)系內(nèi)部可能存在相同的子詞節(jié)點,如序號0-1節(jié)點對應(yīng)的實體“English_language”和序號18節(jié)點對應(yīng)的關(guān)系“l(fā)anguage”中都包含子詞節(jié)點“l(fā)anguage”,同時它們與其他節(jié)點的相對距離之差較小,所以在多層網(wǎng)絡(luò)計算后的向量表征比較相似,進(jìn)而容易產(chǎn)生語義和結(jié)構(gòu)上的重疊混亂.因此,增加該視野可以加強單實體或關(guān)系的語義和互相之間的結(jié)構(gòu)關(guān)系.

統(tǒng)一定義以上三層可見矩陣為:

(11)

其中,⊙表示子詞wi與wj在矩陣中互為可見,而?表示wi與wj互為不可見.并定義MA、MB、MC分別表示全圖子詞可見矩陣、元組內(nèi)子詞可見矩陣、實體/關(guān)系內(nèi)子詞可見矩陣.

本文所提出的HVMHA機制實現(xiàn)如下.首先,用不同的線性投影矩陣將嵌入矩陣分別映射得到查詢矩陣Q、鍵矩陣K和值矩陣V:

Q,K,V=HEWQ,HEWK,HEWV

(12)

其中,WQ、WK、WV為可學(xué)習(xí)的參數(shù),WQ∈dz×dq,WK∈dz×dk,WV∈dz×dv,dz為輸入嵌入表征的維度.

然后基于原始Transformer中注意力函數(shù)的定義,融合所提出的三層可見矩陣,獲得各個視野的單頭注意力分?jǐn)?shù)與表征分別為:

(13)

(14)

(15)

其中,如果子詞wj對wi不可見,則可見矩陣中Mij將會掩蓋注意力分?jǐn)?shù)中αij為0,這意味著子詞wj對wi的向量表征沒有影響.

賦予各個視野多個頭的注意力進(jìn)行學(xué)習(xí)各自拼接,再進(jìn)一步融合得到節(jié)點的總注意力表征:

(16)

其中,hA、hB、hC分別表示三層視野內(nèi)注意力的頭數(shù),‖表示拼接.

最后,對總注意力表征再次進(jìn)行映射實現(xiàn)HVMHA:

HVMHA (HE)=htotal Wo

(17)

其中,WO∈dz×dz,且投影矩陣的維度滿足以下關(guān)系:

dq=dk=dv=dz/(hA+hB+hC)

(18)

4.4 輸出嵌入模塊

給定經(jīng)過子詞化處理的參考文本序列:

Y=(y1,y2,…,yT)

(19)

其中,T為子詞的個數(shù).

與輸入嵌入模塊相似,得到序列嵌入為:

ZD=(z1,z2,…,zT)

(20)

結(jié)合位置編碼,則初始的文本表征為:

(21)

4.5 解碼器模塊

定義經(jīng)過第L層解碼層(Decoder Layer)得到的文本表征為:

(22)

(23)

其中,MMHA只計算截止當(dāng)前時間步已生成文本的注意力.

將CL送入EDMHA子層,得到交互注意力表征:

(24)

將UL送入前饋子層,最終得到:

(25)

4.6 損失函數(shù)

解碼器模塊共有LD層,將最后一層的輸出表示為:

(26)

計算在時間步t時詞表上的輸出概率分布為:

P(yt|y1:t-1)=softmax(htW+b)

(27)

其中,W和b為可學(xué)習(xí)的參數(shù).

模型通過最小化標(biāo)準(zhǔn)的負(fù)對數(shù)似然損失來訓(xùn)練,即損失函數(shù)表示如下:

(28)

5 實 驗

5.1 數(shù)據(jù)集和評價指標(biāo)

本文使用WebNLG[19]數(shù)據(jù)集,它從DBPedia中提取,包含來自不同類別的子圖和對應(yīng)的眾包文本.WebNLG包含9,674組不同的三元組,每組由1~7個三元組構(gòu)成.其中共包含373種關(guān)系,平均每對數(shù)據(jù)中包含4個實體.

訓(xùn)練集和驗證集中的實體共包括10個類別:大學(xué)、建筑、城市、機場、紀(jì)念碑、食物、宇航員、漫畫人物、運動隊伍和書面作品.除了以上類別,測試集中的實體還包含另外5個:運動員、藝術(shù)家、政治家、天體和交通工具.稱前10種類別為“可見類別”,而后5種為“不可見類別”.本文屬于非預(yù)訓(xùn)練模型的方法,需要與先前的研究保持一致,測試時只比較屬于“可見類別”數(shù)據(jù)的生成效果.

由于每組三元組對應(yīng)1~8條參考文本,因此共有25,298對(圖,文本)數(shù)據(jù).以數(shù)據(jù)對為單位劃分訓(xùn)練集,共有18,102對.而驗證和測試時,以各組三元組為單位,則使用的驗證集有872組,測試集有971組“可見類別”三元組,都對應(yīng)多條參考文本.

本文使用文本生成中常用的BLEU[20]、METEOR[21]和CHRF++[22]3種指標(biāo)進(jìn)行評價,都是數(shù)值越大表示文本生成質(zhì)量越高.通常使用參考文本越多,結(jié)果會越好.本文按照WebNLG要求,計算時至多使用3條.另外,計算模型使用的參數(shù)數(shù)量(以百萬為單位)來反映模型的大小和復(fù)雜度,用#P表示.

5.2 實驗設(shè)置

本文基于OpenNMT-py[23]框架實現(xiàn)模型.模型優(yōu)化使用Adam優(yōu)化器,參數(shù)beta1為0.9,beta2為0.98.批大小(Batch Size)為1024,以token為單位,至多訓(xùn)練200,000步.采用Noam[4]方法更新學(xué)習(xí)率,將訓(xùn)練的前8000步作為預(yù)熱(Warm Up)步.另外采用標(biāo)簽平滑[24](Label Smoothing)技術(shù),參數(shù)設(shè)置為0.2,防止過擬合,提高模型的泛化能力.

由于KG-to-Text生成任務(wù)的輸入端和輸出端數(shù)據(jù)的語種相同,且兩端詞匯高度重合,因此本文采用共享詞表機制,以共享語義信息.具體實現(xiàn)為將訓(xùn)練集中子詞圖的節(jié)點與對應(yīng)文本拼接后一起訓(xùn)練BPE詞表,再將該詞表應(yīng)用到整個數(shù)據(jù)集上進(jìn)行子詞分割.本文的BPE詞表大小為2000.

編碼器模塊的層數(shù)為2,解碼器模塊的層數(shù)為4.輸入和輸出嵌入模塊的維度都為256.編碼器和解碼器模塊中前饋子層的維度都為512,而dropout的大小都為0.3.解碼器模塊的注意力頭數(shù)為4.見公式(18),由于三層視野內(nèi)注意力的頭數(shù)之和需要能整除嵌入模塊的維度,因此最終調(diào)參設(shè)置總注意力頭數(shù)為8,關(guān)注全圖連接視野、元組內(nèi)連接視野、實體/關(guān)系內(nèi)連接視野的多頭注意力頭數(shù)分別為4、3、1,稱該模型為HVMHA_431.推斷時,在驗證集和測試集上都采用大小為3的波束搜索(Beam Search).同時為了鼓勵模型生成更長的文本,引入大小為3的長度懲罰[25](Length Penalty).所有超參數(shù)都在驗證集上進(jìn)行調(diào)優(yōu),即當(dāng)模型在驗證集上的BLEU分?jǐn)?shù)達(dá)到最高時,再將其應(yīng)用到測試集.

5.3 結(jié)果分析

為了減小隨機性的影響,下文如無特殊說明,本文模型都是取4個不同的隨機種子訓(xùn)練,將它們在測試集上的結(jié)果取平均值.

5.3.1 整體對比結(jié)果

選擇數(shù)據(jù)集上9個基準(zhǔn)模型進(jìn)行對比,實驗結(jié)果如表1所示.其中,UPF-FORGE、Melbourne和Adapt是最初WebNLG挑戰(zhàn)賽的優(yōu)秀模型.UPF-FORGE模型基于pipeline架構(gòu),手工構(gòu)造規(guī)則和模板實現(xiàn)句子規(guī)劃.Melbourne模型和Adapt模型都采用基于注意力機制的E2E架構(gòu),后者基于子詞處理數(shù)據(jù).其余模型都已在相關(guān)工作中介紹.

表1 WebNLG數(shù)據(jù)集的模型對比結(jié)果Table 1 Comparison results of models on WebNLG dataset

見表1,本文HVMHA_431的表現(xiàn)優(yōu)于絕大多數(shù)的基準(zhǔn)模型,而且使用了最少的參數(shù)量,顯示出模型的高效性.雖然效果與當(dāng)前先進(jìn)(State-Of-The Art,SOTA)模型CGE-LW略有差距,但本文方法在只使用了45.19%參數(shù)量的情況下,仍然在3個指標(biāo)上分別達(dá)到了98.84%、99.51%和99.31%的性能.其中GCN EC是基于Graph2Seq架構(gòu)的模型,由此展現(xiàn)出本文提出的基于HVMHA機制建模圖結(jié)構(gòu)方法比普通的GNN更為有效.比起其它以Transformer為基礎(chǔ)結(jié)構(gòu)的模型,如Graformer與E2E Transformer,本文方法在3個指標(biāo)上都有明顯的提升,說明本文對Transformer的擴展更好地適應(yīng)了KG-to-Text生成任務(wù).

5.3.2 參數(shù)量影響

為了深入研究參數(shù)量的影響,本文將上文中已公布參數(shù)的模型放縮到近似的參數(shù)量大小再對比結(jié)果.其中,將SOTA模型CGE-LW中的前饋子層維度由2048改為256,其余超參數(shù)保持不變,使得總參數(shù)量由10.4降至5.0(百萬),并將其命名為CGE-LW (small),結(jié)果如表2所示.

表2 參數(shù)量的影響結(jié)果Table 2 Influence of number of parameters

從表2可以看出,本文模型以最少的參數(shù)達(dá)到了最好的性能.與GCN EC和Graformer相比,不僅參數(shù)量分別減少了20萬和60萬,而且BLEU值分別提高了7.05和1.8.而SOTA模型對于參數(shù)量的影響較為敏感,參數(shù)量的減少導(dǎo)致各個指標(biāo)降低顯著.本文HVMHA_431比CGE-LW (small)參數(shù)減少30萬,BLEU值提高1.35,在參數(shù)效率上具有較大的優(yōu)勢.

5.4 超參數(shù)分析

本文模型的關(guān)鍵超參數(shù)為各個層次視野中多頭注意力的頭數(shù).本節(jié)進(jìn)一步分析不同的注意力頭數(shù)組合對于模型效果的具體影響.固定關(guān)注全圖連接視野的多頭注意力為4,改變另外兩層視野的注意力頭數(shù).以HVMHA_431的命名規(guī)則分別稱對應(yīng)的模型為HVMHA_422和HVMHA_413.結(jié)果如表3所示.

表3 HVMHA模型不同超參數(shù)的對比結(jié)果Table 3 Performance of different hyper-parameter combination

由表3可知,相比表現(xiàn)最好的模型HVMHA_431,HVMHA_413的3個指標(biāo)值分別下滑了0.15、0.11、0.13,而HVMHA_422的評價結(jié)果有更為明顯的下跌,分別為0.34、0.17、0.14.從以上結(jié)果可以看出,元組內(nèi)連接視野和實體/關(guān)系內(nèi)連接視野的多頭注意力頭數(shù)相同時,各自捕獲的信息疊加后會對模型產(chǎn)生負(fù)面的擾動.在保證注意全連接視野不變的情況下,需要側(cè)重注意實體/關(guān)系內(nèi)連接視野,輔助注意實體/關(guān)系內(nèi)連接視野,才能達(dá)到最佳的組合效果.

5.5 消融研究

本節(jié)進(jìn)行消融研究以探究關(guān)注不同層次視野的多頭注意力對于文本生成效果提升的單獨作用.以本文模型HVMHA_431作為基線,分別去除全圖連接視野、元組內(nèi)連接視野、實體/關(guān)系內(nèi)連接視野的多頭注意力,再將8個注意力頭均分給余下2個視野,獲得模型命名為HVMHA_044、HVMHA_404和HVMHA_440.以上模型在相同的單個隨機種子下訓(xùn)練,消融結(jié)果如表4所示.

表4 模型HVMHA_431的消融研究結(jié)果Table 4 Ablation study of HVMHA_431 model

通過表4的數(shù)據(jù)對比可知,在刪除任意一個視野內(nèi)的多頭注意力后,生成性能都有所下降.這說明3種視野獲得的信息是互補的,互相結(jié)合確實可以提高生成文本的質(zhì)量.其中,模型HVMHA_404的METEOR、CHRF++指標(biāo)下降最大,分別為0.45和0.46.關(guān)于BLEU值,HVMHA_044、HVMHA_404、HVMHA_440互相之間的差距不大,在0.17之內(nèi).以上表明元組內(nèi)連接視野的注意力在編碼圖結(jié)構(gòu)上貢獻(xiàn)最大,而全圖連接視野與實體/關(guān)系內(nèi)連接視野的注意力貢獻(xiàn)近乎持平.

5.6 案例研究

本節(jié)給出一個詳細(xì)的案例研究展示模型的輸出結(jié)果,并選取公布了生成文本且效果較好的兩個模型(Adapt和CGE-LW)進(jìn)行比較.表5顯示了當(dāng)WebNLG子圖較為復(fù)雜(由6個三元組構(gòu)成)時的一個案例.粗體表示該模型生成的文本與對應(yīng)的三元組發(fā)生了匹配問題,包括誤生成問題、重復(fù)生成問題和漏生成問題.

本文模型HVMHA_431生成了正確的文本,充分表達(dá)了所有三元組的含義,并且語句較為流暢自然,沒有邏輯問題.注意1號三元組中實體“Lars_L?kke_Rasmussen”的“?”為非英語的特殊字母,HVMHA_431用ASCII碼中與之對應(yīng)的“o”代替,不屬于誤生成.但是Adapt卻引入了不屬于該圖的“幻覺”字符“”使得單詞拼寫錯誤.這證明了通過實體/關(guān)系內(nèi)連接視野的多頭注意力可以有效聚攏單個實體/關(guān)系內(nèi)的信息,不受噪聲信息干擾.另一方面,Adapt和CGE-LW分別對序號為1和4的三元組重復(fù)生成了2次,以及它們分別對序號為2和1的三元組產(chǎn)生了漏生成的問題.這暴露出盡管CGE-LW用大量參數(shù)換來了較好的平均表現(xiàn),但有時仍然會因為所用GNN的過平滑問題而丟失部分信息或者重復(fù)關(guān)注已生成的信息.特別是面對實體和關(guān)系較多的復(fù)雜知識圖譜,本文提出的模型能夠有效地保留圖中各個節(jié)點的信息以及全圖的結(jié)構(gòu)信息.

表5 WebNLG的一個復(fù)雜案例Table 5 Case study on a complicated KG of WebNLG dataset

6 結(jié)束語

本文提出一種基于HVMHA的方法用于KG-to-Text生成任務(wù).該方法首先在預(yù)處理時將知識圖譜轉(zhuǎn)換為基于子詞的Levi圖,為原圖顯式增加單個實體所包含詞語間的關(guān)系以及多個實體間所包含詞語間的關(guān)系.然后構(gòu)建關(guān)注3個層次視野的子詞可見矩陣,將它們?nèi)谌氲阶⒁饬τ嬎愫?每個注意力頭都能靈活和動態(tài)學(xué)習(xí)不同的結(jié)構(gòu)視野.實驗結(jié)果表明,三層視野的信息經(jīng)驗上是互補的,將其結(jié)合使用以比其它模型少得多的參數(shù)獲得了具有競爭力的結(jié)果.

在后續(xù)工作中,可以根據(jù)圖的不同類型將本文中的子詞可見矩陣適當(dāng)調(diào)整,將其應(yīng)用于如AMR圖上,驅(qū)動AMR-to-Text生成.另外,由于本文模型基于Transformer結(jié)構(gòu),考慮將其引入到各種Seq2Seq架構(gòu)的預(yù)訓(xùn)練模型中,進(jìn)一步突破預(yù)訓(xùn)練模型領(lǐng)域的方法在KG-to-Text任務(wù)上的性能.

猜你喜歡
三元組視野注意力
基于帶噪聲數(shù)據(jù)集的強魯棒性隱含三元組質(zhì)檢算法*
讓注意力“飛”回來
特征標(biāo)三元組的本原誘導(dǎo)子
居· 視野
關(guān)于余撓三元組的periodic-模
“揚眼”APP:讓注意力“變現(xiàn)”
A Beautiful Way Of Looking At Things
視野
真相
三元組輻射場的建模與仿真