基于門控圖神經(jīng)網(wǎng)絡(luò)的圖序列學(xué)習(xí)
Graph-to-Sequence Learning using Gated Graph Neural Networks
墨爾本大學(xué)
University of Melbourne
本文是澳大利亞墨爾本大學(xué)發(fā)表于 ACL 2018 的工作,提出了一個在圖中編碼完整結(jié)構(gòu)信息的新模型,將門控圖神經(jīng)網(wǎng)絡(luò)與輸入變換耦合,該輸入變換允許節(jié)點和邊緣具有它們自己的隱層表示,并解決了先前工作中存在的參數(shù)爆炸問題。實驗結(jié)果表明,在AMR圖和基于句法的神經(jīng)機(jī)器翻譯中,本文模型優(yōu)于業(yè)內(nèi)的最好方法。
1 引言
圖結(jié)構(gòu)普遍存在于自然語言的表示中。尤其是,許多句子的語義框架使用有向無環(huán)圖作為基礎(chǔ)形式,而大多數(shù)基于樹的句法表示也可以看作圖。NLP應(yīng)用的范圍可以看作將圖結(jié)構(gòu)轉(zhuǎn)換成序列的過程。例如,句法機(jī)器翻譯需要將帶樹形標(biāo)注的源語句轉(zhuǎn)換為其翻譯。
前人工作大多依賴于基于語法的方法,如tree transducers和超邊替換文法。這些方法的一個關(guān)鍵限制是需要在圖形節(jié)點和tokens之間進(jìn)行對齊。這些對齊通常是自動生成的,構(gòu)建語法時會傳播錯誤。
在本文中,我們提出了一個圖到序列(g2s)學(xué)習(xí)模型,該模型利用神經(jīng)編碼器-解碼器架構(gòu)的最新進(jìn)展。具體地說,我們采用了一種基于門控圖神經(jīng)網(wǎng)絡(luò)的編碼器,它能夠在不損失信息的情況下生成完整的圖結(jié)構(gòu)。這樣的網(wǎng)絡(luò)用邊的信息作為標(biāo)注參數(shù),即使對于小規(guī)模標(biāo)注詞匯(按幾百的順序)來說,這都可能是有問題的。為了解決這個問題,本文還引入了一個圖形變換,將邊改變到其他節(jié)點,解決了參數(shù)爆炸問題。這也確保了邊具有特定于圖的隱藏向量,給網(wǎng)絡(luò)中的注意力和解碼模塊提供更多信息。
我們將本文模型與兩個圖序列問題進(jìn)行比較,即摘要意義表示(AMRS)和基于源依存的信息神經(jīng)機(jī)器翻譯(NMT)。與以前的工作相比,我們的方法在不依賴于標(biāo)準(zhǔn)RNN編碼的情況下,優(yōu)于兩個任務(wù)中的強(qiáng)大的S2S基線。特別地,對于NMT,我們發(fā)現(xiàn),通過在依存樹中添加相鄰單詞之間的連續(xù)邊,避免了對RNNs的需要。這說明了我們的方法的適用性:可以通過簡單的圖形變換將語言偏差添加到輸入,而不需要對模型體系結(jié)構(gòu)進(jìn)行改變。
2 模型
本文架構(gòu)圖如下所示,以AMR圖為例,并將其轉(zhuǎn)換為其表面形式。與標(biāo)準(zhǔn)的S2S模型相比,主要的差別在于編碼器,在這里我們使用GGNN來構(gòu)建圖形表示。在下文中,我們將詳細(xì)解釋該體系結(jié)構(gòu)的組件。
門控圖神經(jīng)網(wǎng)絡(luò)
關(guān)于圖的遞歸網(wǎng)絡(luò)的早期方法假設(shè)參數(shù)的不動點表示并使用contraction maps學(xué)習(xí)。而這限制了模型的容量,使得學(xué)習(xí)節(jié)點間的長距離關(guān)系變得很困難。為了解決這些問題,提出了門控圖神經(jīng)網(wǎng)絡(luò),以與門控遞歸單元類似的方式用門控機(jī)制擴(kuò)展了這些結(jié)構(gòu)。這允許通過現(xiàn)代反向傳播過程學(xué)習(xí)網(wǎng)絡(luò)。
給定有向圖
,
是節(jié)點
的集合,
是邊
的集合,
和
分別代表節(jié)點和邊的詞匯表。給定一個輸入圖,節(jié)點嵌入為
,GGNN定義如下:
在注意力編碼階碼模型中使用GGNNs
在S2S模型中,輸入是tokens序列,其中每個token由嵌入向量表示。然后,編碼器通過合并上下文(通常通過遞歸或卷積網(wǎng)絡(luò))將這些向量轉(zhuǎn)換為隱藏狀態(tài)表示。這些被饋送到注意力機(jī)制中,產(chǎn)生單個上下文向量,通知解碼器中的下一步操作。
我們的模型遵循類似的結(jié)構(gòu),其中編碼器是一個GGNN,它接收節(jié)點嵌入作為輸入,并使用圖結(jié)構(gòu)作為上下文,生成節(jié)點隱藏狀態(tài)作為最終輸出。從上圖的示例中可以看出,我們在AMR圖中每個節(jié)點上有4個隱藏向量。注意力和解碼器組件遵循類似的標(biāo)準(zhǔn)s2s模型,其中我們使用雙線性注意機(jī)制和2層LSTM作為解碼器。
雙向和位置嵌入
雖然我們的體系結(jié)構(gòu)在理論上可以與一般圖一起使用,但是有根有向無環(huán)圖(DAG)可以說是我們所處理的問題中最常見的一類。這意味著節(jié)點嵌入信息以自上而下的方式傳播。在這項工作中,我們也遵循這一過程,確保信息均勻地在圖中傳播。然而,這又帶來了另一個限制:因為圖形基本上是無方向的,所以編碼器現(xiàn)在不知道輸入中存在的任何內(nèi)在層次結(jié)構(gòu)。受Geern等人的啟發(fā),本文通過在每個節(jié)點中加入位置嵌入來解決這個問題。這些嵌入被表示為與根節(jié)點的最小距離的整數(shù)值索引,并且被學(xué)習(xí)為模型參數(shù)。這種位置嵌入被限制為有根DAG:對于一般圖,可以使用不同的距離概念。
Levi Graph Transformation
本文提出將輸入圖轉(zhuǎn)換為等價Levi圖。給定一個圖
,Levi圖定義為
,
,新的邊集合
包含出現(xiàn)在原始圖中的每一個(node,edge)對的一個邊。
直觀地,將圖轉(zhuǎn)換成其Levi圖等價為將邊轉(zhuǎn)換為附加節(jié)點。因為Levi圖沒有標(biāo)記的邊,所以沒有參數(shù)爆炸的風(fēng)險:原始的邊標(biāo)簽以與節(jié)點相同的方式表示為嵌入。此外,編碼器自然生成原始邊的隱藏狀態(tài)。圖2詳細(xì)地展示了轉(zhuǎn)換步驟。
3 實驗
我們使用最新的AMR語料,包含36521/1368/1371個訓(xùn)練、開發(fā)和測試集合的切分。每一個圖首先使用一個包含實體簡化和匿名現(xiàn)象的方法。這個預(yù)處理步驟在將圖轉(zhuǎn)換為等價Levi圖之前進(jìn)行。對于s2s基線,我們也同樣添加了范圍標(biāo)記。本文的基線模型采用基于注意力機(jī)制的s2s模型。對于g2s模型,設(shè)置GGNN編碼器層次為8。維度設(shè)置為512,GGNN編碼器為576。所以模型都使用Adam進(jìn)行訓(xùn)練,初始學(xué)習(xí)率設(shè)置為0.0003,batch大小設(shè)置為16。本文使用BLEU進(jìn)行評價,采用bootstrap resampling檢查統(tǒng)計的重要性。
下圖展示了在測試集上的結(jié)果。當(dāng)使用相當(dāng)數(shù)量的參數(shù)時,我們的方法在單個模型和集成中都顯著優(yōu)于s2s基線。
在圖3中,我們展示了一個例子,我們的模型優(yōu)于基線。AMR圖包含四個重新引用,謂詞引用圖中先前定義的概念。我們可以看到,S2S預(yù)測超越了“India and China”這一短語。G2S預(yù)測避免了超生成,并且?guī)缀跬耆ヅ鋮⒖?。雖然這只是一個示例,但是它提供了保留完整的圖形結(jié)構(gòu)對這個任務(wù)有益的證據(jù),我們的定量結(jié)果證實了這一點。
我們的第二個評價是NMT,使用AS圖源語言依賴句法樹。在專注于一個媒體資源的情況下,額外的語言信息往往更有益。我們的實驗包括兩種語言對:英語德語和英語捷克語。下圖顯示了g2s+的輸入圖的示例,其中附加的順序邊連接單詞(為了簡單起見,省略了反向和自身邊)。上部:具有相應(yīng)的依賴樹的句子。底部:轉(zhuǎn)換后的樹變成Levi圖,在單詞(虛線)之間有附加的順序連接。完整的圖還包含反向和自邊緣,在圖中省略。
下表顯示了這兩種語言對在測試集上的結(jié)果。不考慮序列信息的G2S模型落后于我們的基線。另外。我們發(fā)現(xiàn)BNNN層是獲得最佳結(jié)果的關(guān)鍵。然而,在相同的參數(shù)預(yù)算下,在單個模型和集成場景中,g2s+模型在BLEU得分方面優(yōu)于基線。這個結(jié)果表明,在不依賴于RN或體系結(jié)構(gòu)中的任何其他修改的情況下,在我們的模型中合并順序偏差是可能的。
有趣的是,分析CHRF++數(shù)時我們發(fā)現(xiàn)了不同的趨勢。這個度量在兩種語言對上都展示了PB-SMT模型的優(yōu)勢,同時在En-Cs中還顯示了s2s的改進(jìn)性能。在兩個語言對中,無論是在系統(tǒng)層面還是句子層面上,CHRF++已經(jīng)顯示出更好的與人類判斷相聯(lián)系的BLEU。
4 總結(jié)
我們提出一種新的用于圖到序列學(xué)習(xí)的編碼器-解碼器結(jié)構(gòu),在兩個NLP任務(wù)中的表現(xiàn)都優(yōu)于基線:AMR圖生成和基于語法的NMT。我們的方法解決了以前工作中的線性信息丟失、參數(shù)爆炸等缺點。我們還特別展示了圖轉(zhuǎn)換如何在不改變底層架構(gòu)的情況下解決基于圖的網(wǎng)絡(luò)的問題。這就是所提出的Levi圖轉(zhuǎn)換的情況,它確保解碼器可以關(guān)注邊和節(jié)點,而且在NMT的情況下也可以關(guān)注添加到依賴樹的順序連接。總的來說,因為我們的體系結(jié)構(gòu)可以處理一般的圖,所以以額外的節(jié)點和/或邊信息的形式添加語言偏差是很簡單的。我們相信這在應(yīng)用方面是一個有趣的研究方向。
然而,我們的架構(gòu)有兩個主要的限制。第一種是GGN具有固定數(shù)量的層,即使圖在節(jié)點和邊的數(shù)量方面可以改變大小。更好的方法是允許編碼器具有動態(tài)數(shù)量的層,可能基于輸入圖中的直徑(最長路徑)。第二個限制來自Levi圖轉(zhuǎn)換:因為邊標(biāo)簽表示為節(jié)點,所以它們最終共享詞匯表,因此共享相同的語義空間。但這是不理想的,因為節(jié)點和邊是不同的實體。一個有趣的替代方案是Weave Module Networks,它顯式地解耦節(jié)點和邊表示,而不會引起參數(shù)爆炸。未來工作中,我們考慮將這兩種思想結(jié)合到我們的架構(gòu)中。
-
解碼器
+關(guān)注
關(guān)注
9文章
1176瀏覽量
41989 -
編碼器
+關(guān)注
關(guān)注
45文章
3808瀏覽量
138050 -
神經(jīng)網(wǎng)絡(luò)
+關(guān)注
關(guān)注
42文章
4814瀏覽量
103621
發(fā)布評論請先 登錄
利用深度循環(huán)神經(jīng)網(wǎng)絡(luò)對心電圖降噪
【PYNQ-Z2試用體驗】神經(jīng)網(wǎng)絡(luò)基礎(chǔ)知識
【案例分享】ART神經(jīng)網(wǎng)絡(luò)與SOM神經(jīng)網(wǎng)絡(luò)
一種基于高效采樣算法的時序圖神經(jīng)網(wǎng)絡(luò)系統(tǒng)介紹
如何進(jìn)行高效的時序圖神經(jīng)網(wǎng)絡(luò)的訓(xùn)練
卷積神經(jīng)網(wǎng)絡(luò)簡介:什么是機(jī)器學(xué)習(xí)?
MindSpore圖神經(jīng)網(wǎng)絡(luò)BGCF

評論