鄭 津,賈兆軍,徐萬珺,陳 雁,李 平
(西南石油大學 計算機科學學院,四川 成都 610500)
目前研究多跳閱讀理解任務的工作中,大多采用流水線式(Pipeline)的求解框架[1],即首先將多跳閱讀理解任務進行分解,然后借助問題與文檔匹配的檢索、命名實體識別、指代消解等自然語言處理技術來逐次解決。例如,Min S等[2]先對問題進行解析,然后利用解析后的問題分階段進行預測。這類方法對特定的數據集或者任務場景具有不錯的效果,但由于模型不夠靈活,缺乏通用性,使其難以推廣。
本文提出了一種基于多視角和注意力的圖卷積網絡MV-GCN。在MV-GCN中,主要包括多視角圖卷積和多視角注意力兩部分。多視角圖卷積通過構建多個學習通路,并設置每個通路的參數皆可學習且彼此獨立訓練,使得在MV-GCN中多通路之間的學習能力形成互補,有利于提取到不同視角的候選實體語義之間的相關關系。多視角注意力利用Squeeze-and-Excitation機制將每個學習通路得到的特征視作基本單位,并通過為其自適應加權的方式來進行多個通路的信息融合。在WikiHop通用問答數據集上的實驗結果表明,本文所提的MV-GCN能更有效地學習到多跳實體之間的相關關系,其性能優于當前的主流方法,可為進一步研究提供借鑒。
本文的貢獻概括如下:
(1)提出了一個基于多視角和注意力的圖卷積網絡的多跳推理閱讀理解模型MV-GCN,通過實驗驗證了其性能優于當前的主流方法;
(2)設計了多視角的圖卷積通路結構,提高了模型多視角學習多跳實體間語義相關性的表達能力;
(3)構建了自注意力融合結構,可動態地確定不同通路的重要性權重,從而實現多個通路的特征表達的有效融合。
多跳閱讀理解(multi-hop question answering,MQA),也被稱為多文檔閱讀理解(multi-document machine reading comprehension,MMRC),在智能問答[3,4]、多輪對話[5,6]、知識圖譜等自然語言處理任務中有著廣泛的應用。本文集中研究多跳閱讀理解中的答案選擇問題,其主要任務是從多篇文檔中尋找相關信息,進行線索推理,并從候選實體集合中選擇正確的答案。圖1展示了WikiHop數據集(Unmasked)中一個真實樣本的部分數據,分別為問句以及與問句相關的3個文檔、候選實體和答案,任務是從若干候選實體中選出一個正確答案,模型需要在若干不定長的文檔中定位相關語句,并在帶有干擾的相關語句中找到正確推理信息。多跳閱讀理解任務的難點在于如何有效地學習和表達多跳實體間的語義相關關系,因而長期以來是自然語言處理研究領域的熱點問題。

圖1 WikiHop數據集(Unmasked)的多跳推理示例樣本
多跳閱讀理解問題的核心是建模和表達多跳實體之間的語義關系,圖網絡在這方面具有天然的優勢。因此,最近的相關工作中提出了基于圖神經網絡的方法[7,8]。但這類方法仍然面臨巨大的挑戰,包括:①該類模型大多采用單視角的特征提取方案,即僅采用一個通路來建模多跳實體語義相關關系,使得這類模型學習實體關系表達的角度單一、學習能力有限;②為更好地提取到結點的特征和相關關系,一些工作嘗試加深網絡深度,但過深的圖卷積結構會導致圖嵌入表達趨同、過擬合等問題。雖然可以通過引入殘差[9]、自注意力[10]等機制緩解,但往往進一步使結構復雜化,出現性能震蕩、難以訓練,加劇過擬合的風險。
針對現有方法中單視角特征提取通路學習能力不足的問題,受Inception工作的啟發,本文提出了基于多視角和注意力的圖卷積網絡MV-GCN(multi-view graph convolutional network)。值得一提的是,MV-GCN中的多通路結構與原始的Inception有明顯區別。首先,原始的Inception主要針對圖像識別任務,因而不同通道中卷積核的尺寸設置成不同,以提取和學習不同感受野下的特征。在本文所提出的MV-GCN中,因任務性質不同,每個通路上的圖卷積被設置具有相同的結構,但在訓練時這些參數并不共享。其次,多個通路所學習到的特征信息需要進行融合。在原始的Inception中是直接將多個通道的特征進行拼接,然后通過1×1的卷積或者pooling來實現融合,其中,默認通道間的權重相同。在本文中,特征提取是在實體圖網絡上進行,直接套用原始Inception中的融合方法會丟失實體間的拓撲信息。
因此,本文在特征融合處理中引入了Squeeze-and-Excitation(SE)機制[11],設計了一種多視角注意力模塊。一方面,通過SE機制可動態地確定不同通路的權重,從而將多個通路的特征表達進行有效融合,另一方面多視角注意力模塊是一種自注意力處理結構,這意味著不需要添加繁重的網絡結構和太多額外的參數,可有效避免過擬合的風險,易于訓練和部署。
本文所提出的基于多視角和注意力的圖卷積網絡包含4個模塊,包括:①“候選實體-文檔”圖構建,得到用于表達候選實體與文檔之間關聯關系的拓撲圖,并對候選實體結點的語義特征進行初始化;②候選實體多跳上下文的嵌入表達,基于多個橫向通路的圖卷積結構來建模結點間的多視角相關關系,并借助SE機制對其進行融合表達,以此學到候選實體的多視角語義特征;③“候選實體-問句”關系映射,利用雙向注意力機制,將上一階段獲得的候選實體多視角語義特征與問句特征進行交互,獲得候選實體與問句的配對映射關系表達;④答案預測,基于候選實體與問句的配對關系輸出最終的答案預測結果。
模型的整體流程如圖2所示,接下來對每個模塊的具體操作做詳細描述。

圖2 模型整體流程
構建表達候選實體與文檔之間關聯關系的“候選實體-文檔”圖(以下簡稱實體圖),包括實體圖的生成以及結點特征初始化兩個方面。
2.1.1 實體圖的生成
根據MQA任務的特性,本文選取候選集中的候選實體作為圖的結點,結點間用無向邊連接,用于表達兩種結點間關系[7]。兩種結點關系分別為:
(1)一個候選實體多次出現在文檔中(包括同一文檔或不同文檔兩種情況),考慮到文檔主題和上下文依賴關系的影響,本文中將該候選實體輔以“文檔+位置”的索引表示為實體圖中的不同結點,并在它們之間設置連邊;
(2)兩個不同候選實體出現在相同文檔中,考慮到同一文檔中的語素信息相關,因此在實體圖中前述兩個不同候選實體間也設置連邊。
圖3展示了依照圖1中示例樣本構建的實體圖,相同顏色代表了相同候選實體,使用不同的虛線來區分文檔內部以及跨文檔的結點連邊類型,箭頭表示推理過程。

圖3 實體圖
2.1.2 結點特征初始化
候選實體X一般由一個或多個單詞組成,其對應的語義特征可由詞嵌入特征和文檔上下文特征的組合來表達,即候選實體結點的初始化特征Fnode為
(1)
其中,K是候選實體X所包含的單詞個數,GloVe(Xi) 是候選實體X中單詞i的GloVe嵌入,ELMo(X) 是候選實體X的ELMo[12]嵌入, [,] 表示拼接操作。將候選實體所包含全部單詞的GloVe嵌入平均值作為候選實體的嵌入,并與ELMo嵌入拼接后傳入全連接層。使用ELMo嵌入的原因是原始文檔中出現的候選實體與其上下文之間的相關性信息對于建模這些候選實體間關系也十分重要。其中,GloVe(Xi)∈Rd,ELMo(X)∈Rd,Fnode∈Rd,d為單詞及結點的嵌入維度,實體圖初始化特征Fnodes∈RT×d,T為實體圖中結點數量。
在實體圖中,候選實體結點與其多跳鄰居結點之間具有信息相關性,因此候選實體結點的多跳上下文特征學習需要考慮其鄰居結點的影響。在本文中,候選實體特征的多跳上下文特征學習包括多視角圖卷積和多視角特征融合兩個階段。其中,在多視角圖卷積階段,借助多個橫向通路的圖卷積結構來建模候選實體結點間的多視角相關關系,而在多視角特征融合中基于SE機制對前述所提取的多視角特征進行融合,最終學到候選實體的多跳上下文特征的嵌入表達。
2.2.1 多視角圖卷積
在本文中,圖卷積的基本模塊是基于R-GCN[13]的思想來進行構建的。這樣做的原因是R-GCN在建模不同結點間的信息相關性時,引入了連邊的類型和方向作為特征,十分契合本文所研究的MQA任務。同時,受Inception啟發,本文中的圖卷積結構設計為多視角的形式,即由多個圖卷積通路構成。如圖2中“C-多視角圖卷積”所示,這些圖卷積通路的結構相同但獨立訓練。
對于V個圖卷積通路,每個通路的輸入為實體圖初始化特征Fnodes和結點間的連邊信息e, 信息在結點間的傳遞可表示為
(2)


(3)

因此,在本文的實體圖中,候選實體結點的更新公式為
(4)
其中,?代表按位相乘,所有的變換f*都是相似的,經過L層(每個圖卷積通路的層數)后產生的關系感知表示特征為FR-GCN∈RT×d,T為實體圖中結點數量,d為每個結點的嵌入維度。
2.2.2 多視角特征融合
對于多通路的特征提取結構,特征融合是關鍵步驟。在適配機器視覺的Inception結構中一般采用1*1卷積或池化操作來對多個通路不同尺寸的特征進行融合。在一些自然語言處理任務中,會對不同通路上的信息進行加權求和來進行融合[14]。但本文中若直接套用這些方式會忽略實體圖上多視角特征之間的差異性和重要性特征,從而導致多跳過程中拓撲信息的丟失。
Squeeze-and-Excitation機制是一種輕量級的特征重要性動態重校準結構,參數量少,訓練開銷小,可有效避免過擬合風險,且易于遷移。因此,本文引入了SE機制,設計了一種多視角注意力模塊,來增強特征融合過程中對多視角特征的重要性辨別能力,以實現多視角特征的有效融合,如圖2中“D-多視角特征融合”所示。
本文中的多視角注意力模塊包含兩個全連接層,其中,第一個全連接層起到降維的作用,降維系數r為超參數,然后采用ReLU激活,第二個全連接層恢復原始的維度,然后采用Sigmoid激活的門控機制,得到每個通路產生特征的權重。
具體地,首先,對于V個通路產生的特征集合 [f1,f2,…,fV],fv∈RT×d,v∈[1,2,…,V], 其中fv表示第v個通路產生的關系感知表示特征,它的全局特征zv可表示為
(5)
然后,多視角特征融合的重要性度量s可表示為
s=σ(g(z,W))=σ(W2ReLU(W1z))
(6)

最后,將學習到的各個通路生成特征的權重與它的原始特征加權求和,得到融合后的多視角特征Fgraph
(7)
其中,fv∈RT×d是第v個通路產生的關系感知表示特征,sv為每個通路對應的特征權重,·表示矩陣相乘,Fgraph∈RT×d為融合后的多視角候選實體上下文嵌入表達,T為實體圖中結點數量,d為每個結點的嵌入維度。
在MQA任務中,“候選實體-問句”的關聯是獲得最終答案的關鍵步驟。在本文中,借鑒BiDAF[15]、BAG[8]等相關工作的思路,“候選實體-問句”的關系映射也是采用雙向注意力的機制獲得的。雙向注意力操作的輸入為式(7)候選實體上下文嵌入表達Fgraph和問句嵌入表達Fquery, 處理過程如下所述。
2.3.1 問句嵌入表達Fquery
Fquery由問句詞嵌入特征和問句上下文特征的組合來表達,可表示為
Fquery=LSTM([GloVe(Qi),ELMo(Qi)])
(8)
其中,GloVe(Qi) 表示問句Q中第i個單詞的GloVe嵌入,ELMo(Qi) 表示問句Q中第i個單詞的ELMo嵌入, [,] 表示拼接操作。問句嵌入表達Fquery的初始化方法與實體圖中候選實體結點特征的初始化方法類似,唯一不同的是,由于問句包含的單詞數量比候選實體的多,所以問句中單詞的GloVe特征和ELMo特征不進行平均的操作,而是直接拼接后通過一個雙向LSTM得到相應的嵌入編碼。其中,GloVe(Qi)∈RM×d,ELMo(Qi)∈RM×d,Fquery∈RM×d,M為問句中的單詞數量,d為問句嵌入的維度。
2.3.2 “候選實體-問句”關聯度矩陣
“候選實體-問句”關聯度矩陣用于表達每個候選實體與每個問句單詞之間的關聯程度,可表示為
S=avg-1fa([Fgraph,Fquery,(Fgraph?Fquery)])
(9)
其中, fa表示線性變換操作, avg-1表示在最后一個維度上求均值, [,] 表示拼接操作,?表示按位乘法,S∈RT×M,T為實體圖中的結點數量,M為問句中的單詞數量,Fgraph∈RT×d為候選實體上下文嵌入表達,Fquery∈RM×d為問句嵌入表達。由此得出的關聯度矩陣也可以看作是候選實體與問句單詞間的Attention。
2.3.3 雙向注意力計算
本文中的雙向注意力包括“候選實體→問句”以及“問句→候選實體”兩種。
(10)

(11)

2.3.4 “候選實體-問句”關系映射
(12)



(13)

本文在WikiHop數據集上對提出的模型進行實驗分析,WikiHop是基于維基百科開放域的文章數據集,其中每一個樣本包含一個問題、多個支撐文檔和多個候選實體。為了能進一步驗證模型的推理能力,該數據集在Unmasked版本的基礎上構建了Masked版本,唯一的區別是在Masked版本中,所有候選實體均用“__MASK__”標記來進行替換,這樣模型在進行推理時無法利用候選實體本身的語義信息,只能借助上下文信息,對模型的推理能力提出了更高的要求。WikiHop數據集目前只公開了訓練集Train和驗證集Dev兩部分,為了方便測試,本文在實驗中將驗證集Dev中的部分數據作為測試集Test-1,相關統計見表1。

表1 數據集指標統計
在實驗中,將準確率作為評價指標
(14)
其中, Max()i表示第i個樣本中概率最大的實體,即預測結果,labeli表示第i個樣本的標簽, I(,) 為指示函數,如果兩者相同就返回1,否則返回0,N表示數據集中樣本數量。
在預處理中,模型采用840B 300 d的GloVe預訓練嵌入作為詞語級別的初始特征,使用1024維的標準ELMo表示作為上下文級別的語義信息,用于結點編碼的1層線性映射網絡維度為512,并且使用Tanh作為激活函數;用于問句編碼的2層雙向LSTM網絡維度為256。多視角圖卷積的通路數量C設置為4,多視角注意力模塊中Squeeze-and-Excitation操作的降維系數r設置為4。參照R-GCN[13],每個圖卷積通路的層數L設為5。此外,對于每個樣本,最大結點數量和最大問題長度分別設置為500、25。
每個圖卷積通路中的Dropout率設置為0.2,在顯存為16 G的Tesla T4上進行實驗,batch size設為32,使用初始學習率為0.0002的Adam優化器,并且每2個epoch后學習率減半,損失函數選用交叉熵,損失計算如下
(15)

3.3.1 多跳問答任務測試
為了驗證本文所提出的MV-GCN模型的有效性,此處將其與兩類基線模型進行對比,分別在WikiHop數據集的Unmasked、Masked兩個版本上進行實驗。兩類基線模型是:①基于RNN的模型,包括FastQA、BiDAF、Coref-GRU[16];②基于圖網絡的模型,包括MHQA-GRN、Entity-GCN[7]、BAG[8]。其中基線模型Entity-GCN、BAG展示了與本模型相同環境下的運行結果,其它基線模型的設置皆參照其原始論文進行。
對比結果如表2所示,“MV-GCN”即本文提出的模型,表中報告的結果是在多視角圖卷積參數C為4,降維系數r為4設置下的結果。從表2的實驗結果可以看出,本文提出的模型整體上優于目前所有的基線模型,并且在Unmasked版本測試集上達到了68.6%的準確率。說明通過設計多視角圖卷積來提取結點間的傳遞信息,以及多視角信息融合的方法能很大程度上提高模型的特征表征和推理能力;并且在多次實驗過程中發現相較于基線模型,本文提出的模型在穩定性上表現更好,這是因為神經網絡本身具有不穩定性,再加上隨機初始化等因素,單視角的網絡穩定性較差,而多個視角之間可以形成互補與增強,從而在提高性能的同時達到一個動態平衡。

表2 多跳問答任務下不同模型的準確率對比/%
3.3.2 對多視角圖卷積參數C的分析
圖4展示了關于多視角圖卷積參數的實驗,驗證不同多視角圖卷積參數對模型性能的影響。由于Inception中每層的通道數量較大,所以對應的Squeeze-and-Excitation機制中降維系數r也設置的很大,比如16、32;但在本文的模型中多視角圖卷積數量并不是很大,所以將降維系數為r設為4,其它設置相同。從圖4可以看出,當多視角圖卷積參數設為4時準確率達到最高,這是因為圖網絡本身具有較強的特征抽取及推理能力,當視角參數過大時,反而會形成信息冗余及視角間的互相干擾,而視角數量過少則會出現信息抽取角度不夠的問題。

圖4 關于多視角圖卷積參數C的實驗
3.3.3 對多視角融合中降維系數r的分析
圖5展示了關于多視角融合中降維系數r的實驗,驗證降維系數r對模型性能的影響,實驗時將多視角圖卷積參數C設置為24,這樣可以盡可能多地測試多組r值,其它設置相同;為了提高實驗效率,分別隨機選取了5000條訓練樣本和1000條驗證樣本進行實驗。從折線圖可以看出,當r值為4時,準確率最高,此時降維后的維度為6,能對多個視角進行最大程度的權重篩選,但又不影響信息的融合,最終使整個模型的性能達到最優。

圖5 關于降維系數r的實驗
3.3.4 對MV-GCN模型訓練穩定性的分析
在基線模型中,目前BAG的綜合性能最好,圖6為MV-GCN與BAG在穩定性方面的性能對比,展示了從訓練開始5個epoch(215 000步)內的損失變化情況。從圖中可以看出,訓練開始階段,MV-GCN的損失快速且平滑下降;在訓練中后期的每個epoch內,BAG的損失會略有上升,而MV-GCN的損失變化平緩,波動幅度小,且在整個訓練過程中MV-GCN的損失都略低于BAG,表明相較于BAG有更好的穩定性。

圖6 訓練過程中損失變化
本文針對多文檔多跳推理閱讀理解問題,提出了基于多視角圖卷積的MV-GCN模型,摒棄了傳統加深網絡的思路,而是采用在橫向設計多個圖網絡通路的思路來加寬網絡,引入更加豐富的特征信息,并通過SE機制對多個圖卷積通路的全局信息進行動態重校準的方式實現信息融合。經過驗證,整個模型擁有較好的性能,但在實際應用場景中還存在著一些問題,比如針對不同的問句需要不同的跳轉次數,這就需要模型能夠動態進行答案推理。為應對這些問題,在下一步研究工作中,將通過引入更加靈活有效的注意力機制[10]的方式,并結合門控圖網絡等方法來進一步提高多跳推理閱讀理解模型的推理能力。