李超凡,陳羽中
(福州大學 數學與計算機科學學院,福州 350116) (福建省網絡計算與智能信息處理重點實驗室,福州 350116)
答案選擇是問答系統開發中的一項基本任務,它的目的是從幾個候選答案中選擇出正確的答案[1].在大多數情況下,答案選擇任務被視為排序問題[2,3]或分類問題[4,5].目前針對答案選擇問題已經進行了大量的研究工作,所提出的答案選擇模型主要基于統計學習方法[2-11]和深度神經網絡[12-36].
在深度學習興起之前,傳統的答案選擇模型依賴于人工定義的規則來提取特征,比如從問答對中提取詞匯特征、句法結構特征、n-gram特征等,獲取特征后,使用統計學習算法或排序算法識別問題的匹配答案[6-11].該類模型在答案選擇任務上取得了一定的進展,但其主要缺點在于依賴人工進行特征工程,耗時耗力.
近年來,深度神經網絡模型在答案選擇任務中受到了極大的關注,深度神經網絡能夠自動地從文本中提取上下文信息和語義信息,并將潛在信息編碼為連續低維向量的表示形式,并且進行相關性排序,從而將人們從繁瑣的特征工程中解脫出來.因此,深度神經網絡已逐漸成為答案選擇任務中的主流方法.卷積神經網絡能夠有效獲取句子中的語義信息,因此,一些模型使用卷積神經網絡[12-19]來對問題和候選答案之間的語義關聯進行建模.但是,卷積神經網絡無法充分地對句子中的上下文依賴關系進行建模,且卷積核窗口大小難以確定,可能造成語義信息的丟失.與卷積神經網絡相比,循環神經網絡(RNN,Recurrent Neural Network)在序列的上下文依賴關系建模方面具有優勢[20-27],因此許多模型采用RNN,如長短期記憶網絡[20]、門循環單元(GRU,Gate Recurrent Unit)[21]等對問題與答案的上下文相關性進行建模.然而,循環神經網絡是有偏的,詞序列中的后部詞語往往會獲得更高的關注,影響問題與答案間相似度特征的準確提取.因此,單一的卷積神經網絡或循環神經網絡,均難以全面準地提取問題與答案在語義信息、字符序列上下文關系方面的相似特征.
近年來,知識庫作為外部資源在各類自然語言處理任務中獲得了關注[34-36].知識庫可以被用于識別問題和候選答案句子中出現的實體,來自知識庫中的信息則可以作為文本表征的補充幫助生成問題和答案的細粒度語義表征.但是現有的知識增強神經網絡模型通常采用簡單的方式從問答對和知識庫中共同學習語義表示,因此,現有的知識增強神經網絡模型不能準確地利用問答對與知識實體之間的語義交互.并且沒有充分考慮問題與答案的知識表征之間的相互影響,而這對于獲取更精確的知識表征是至關重要的.
針對上述問題,本文提出一種基于知識增強的混合神經網絡模型KE-HNN,主要貢獻如下:
1)提出了一種結合多頭注意機制的混合神經網絡.該混合神經網絡融合CNN和Bi-LSTM對問答句子中的語義信息和上下文信息進行建模.同時在特征提取過程中引入了多頭注意力機制,使模型關注于問題和答案語句中的關鍵部分.
2)來自知識庫中的信息是對于文本語義信息的重要補充.KE-HNN融合外部知識庫,提出了一種文本指導注意力機制,獲取與問答相關的知識表征信息;
3)提出了一種交互注意力機制,獲取基于知識的問答表征交互信息,并通過對問答對的文本表征和知識表征進行聯合建模,增強問答對的細粒度語義特征表征.
4)針對KE-HNN模型與基準模型,在Trec-QA數據集上進行了充分的實驗與分析,實驗結果表明KE-HNN取得了領先的性能.
答案選擇任務的目標是根據給定問題在多個候選答案中自動選擇出最相關的答案,這在問答領域中發揮著重要的作用.
在深度學習網絡流行之前,答案選擇模型將答案選擇視為分類或排序問題,并應用統計學習方法識別問題的匹配答案.Yao 等[6]引入了基于樹編輯距離的新特征并且建立了線性鏈條件隨機場來提取答案.Yin 等[7]結合來自各種語義模型的語義信息用于問題和答案的匹配.Filice等[8]采用排序特征、啟發式特征等多種特征,進一步挖掘了問題和答案之間的語義相關性.上述模型在答案選擇問題上取得了一定的進展,但高度依賴于人工進行特征工程,耗時耗力且缺乏適用性.
近年來,深度神經網絡在包括答案選擇在內的許多自然語言處理任務上取得了顯著的成績.在答案選擇任務中,核心問題是利用深度神經網絡從問答對中獲取具有區別性的語義特征,從而為給定的問題選擇最適合的答案.Yu 等[12]提出了一種基于CNN的答案選擇模型,該模型利用CNN從問題和答案中提取語義信息,分別映射為低維分布式表征向量,并學習了一個語義匹配函數,進行問答對的語義匹配.Severyn 等[13]也提出了一種基于CNN的答案選擇模型,該模型同時學習問答對的中間表征和最終表征,生成更精細的問答對語義表征,用于語義相似度匹配.Kalchbrenner 等[14]提出了用于答案選擇的動態卷積神經網絡(DCNN,Dynamic Convolutional Neural Network),為了精確呈現問題和答案句子中的語義信息,DCNN采用多層的寬卷積并且結合動態k-max池化操作來獲取能夠呈現句子中的短期和長期關系的特征表示,這不但保留了句子中的詞序信息和詞語之間的相對位置,而且能夠動態地處理不同長度的問題答案句子.
與傳統統計學習模型相比,基于卷積神經網絡的答案選擇模型有了顯著的改進,但單一的卷積神經網絡不能有效提取問答對中的上下文語義相關性信息,而這對于從答案序列中選擇出最適合的答案是至關重要的.為了解決上述問題,一些模型將循環神經網絡用于答案選擇任務.吳少洪等[22]通過循環神經網絡獲取文本中不同粒度的語義表示,然后從問題和答案文本不同粒度的語義交互信息中提取它們的語義匹配信息,從而計算問題和答案的語義匹配度.Wang等[23]使用堆疊的雙向長短期記憶網絡從問答句中捕獲前向和后向上下文信息.Tay等[24]利用全息組件擴展長短期記憶網絡,建立了問答對特征表示之間語義關聯的模型.陳柯錦等[25]利用雙向長短期記憶網絡提取問題和答案在各個尺度下的特征,并且使用3種不同的相似度矩陣學習模型從局部特征相似度得到問答整體相似度.
CNN和RNN雖然可以從問答序列中學習語義信息和上下文信息,但無法評估句子中不同詞語對語義信息的重要性,限制了問答對的語義匹配精度的進一步提升.因此,一些模型引入了注意力機制[28-33].Tan等[28]考慮到問題與答案之間的交互作用,提出了一種單向的注意力機制,在給定的問題語境下生成嵌入答案.Wang等[29]提出了3種基于注意力的GRU神經網絡模型,通過在模型中加入了注意力信息來影響GRU隱藏表示的計算.熊雪等[30]基于雙向長短期記憶網絡與詞匹配方法對問題句與候選答案句進行特征提取,提出了一種基于層疊注意力機制的答案選擇方法.
目前,大規模知識庫已被廣泛應用于包括答案選擇任務在內的自然語言處理任務中.DasRajarshi等[34]對通用模式進行了擴展,將結構化知識庫事實與句子對齊,并利用記憶網絡學習文本和知識庫組合中大量事實的最終表示.Shen等[35]設計了一種文本指導的注意力卷積神經網絡來幫助獲取知識庫中實體的精確表示,并且將知識嵌入到句子表示中用于增強問答對的特征表示.
KE-HNN模型的總體架構如圖1所示.模型由輸入嵌入層、特征學習層、融合層、輸出層組成.其中特征學習層包括兩個模塊:文本表征學習模塊和知識表征學習模塊.首先,輸入嵌入層將輸入的問題、答案以及從知識庫中抽取的實體信息轉換為低維表征向量.特征學習層中的文本表征學習模塊使用帶有多頭注意力機制的混合神經網絡獲取問題和答案中的語義信息;知識表征學習模塊則從知識庫中學習問題和答案的背景知識,得到知識表征以增強問題和答案的文本表征,從而得到問題和答案的細粒度語義特征表示.融合層則融合特征學習層的輸出與外部語義特征,得到用于答案選擇的最終特征表示.最后,輸出層利用softmax函數預測給定問題的答案標簽概率分布.

圖1 KE-HNN模型架構

問題和答案的關鍵詞之間的相關性有利于進行問題-答案匹配.因此我們通過計算問題和答案之間的相關性得分并通過連接的方式來增強它們的初始詞表示.相關性得分是通過對問題和答案句子的初始詞表示上進行乘法操作,然后在該結果的列方向上執行最大池化操作得到的,如以下公式所示:
(1)
(2)

(3)
(4)

(5)
(6)
3.3.1 卷積神經網絡
為了獲取問題答案中語義匹配的部分,在問題句子和答案句子的初始詞表示上使用兩個獨立的CNN網絡來獲取多個特征映射.每一個特征映射都是一個具有固定窗口大小的卷積過濾器的輸出,通過使用不同窗口大小的多個卷積過濾器來生成多個特征映射.然后將多個特征映射相連接分別形成問題和答案的表示,如下所示:
(7)
(8)
3.3.2 雙向長短期記憶
LSTM能夠學習序列的長期依賴關系,一個典型的LSTM細胞包含3個神經門:輸入門it,遺忘門ft和一個輸出門ot.輸入門決定有多少輸入向量的信息將被存儲在記憶細胞中,輸出門決定在下一個時間步驟中允許使用多少記憶信息.遺忘門控制著前一個時間狀態ht-1中應該遺忘多少信息.給定一個輸入句子s=(w1,w2,…,wl),位置t的隱藏向量計算如下:
(9)
(10)
(11)
(12)
ct=ft⊙ct-1+it⊙gt
(13)
ht=ot⊙tanh(ct)
(14)


(15)
(16)

3.3.3 多頭注意力
通過給句子中的每個詞分配不同的權重,注意機制可以有效地捕捉上下文詞的重要性.多頭注意力是一種可以并行執行多個注意力函數的注意力機制[33].每一個注意力函數可以將查詢向量Q和輸入序列K=[k1,k2,…,kN]映射到輸出向量.對于每一個注意力函數,其輸出向量的計算公式計算如下:
(17)
(18)
其中f是一個可以獲取輸入序列K中每個部分ki對Q重要性的對齊函數,如下所示:
f(ki,Q)=Wmftanh([ki;Q])+bmf
(19)
其中Wmf和bmf分別是可學習的權值矩陣和偏移值,tanh是非線性激活函數,[;]表示向量連接操作.將所有注意力函數的輸出進行加權連接得到多頭注意力機制的輸出向量,表示如下:
c=MHA(k,Q)=[c1;…;ch;…;cn_head]Wh
(20)
ch=Attentionh(k,Q)
(21)
其中Wh是可訓練的參數,n_head是并行的注意力函數的數量,c是多頭注意力機制的輸出,ch是第h個注意力函數的輸出,h∈[1,n_head].
句子的語義信息主要由句子的關鍵詞來表示,因此問題和答案的關鍵詞在它們之間的語義匹配中起著重要的作用.為了進一步挖掘句子中詞語之間的依賴關系,分別在Bi-LSTM輸出的問題表征和答案表征上應用多頭注意力機制,得到如下問題表征和答案表征:
(22)
(23)
3.4.1 文本指導注意力卷積神經網絡
知識庫中的信息可以作為增強問題和答案表示的重要背景知識.然而,問題和答案中的候選實體在不同的語境語義可能不同,可能導致歧義.例如,spring這個詞可以指泉水也可以是一個季節.因此,為了更好地增強問答的表征,需要在文本信息的引導下獲得候選實體的準確表示.KE-HNN采用文本指導注意力機制[35]來準確挖掘句子表示和知識表征之間的關聯,從而生成更精確的問答知識表征.問題q的文本指導知識表征可以計算如下:
(24)
(25)
其中Wm∈Rda,We∈Rde×da,Wh∈Rdh×da是注意力訓練參數,da是注意力參數大小,α是一個包含有文本指導注意力權值的向量并且qkb是問題q原來的知識表征經過加權后的表示.同樣可以得到答案a的經過文本指導的知識表征,如下所示:
(26)
(27)
由于CNN具有收集n-gram結構信息的優勢.最后qkb和akb被分別輸入到CNN中來學習抽象化的問答知識表征.
(28)
(29)
3.4.2 交互注意力

(30)
(31)
(32)
其中Ms∈Rdc×dc是能夠獲取問題與答案句子表示中相似性信息的相關性矩陣,并且Uq,Ua∈Rdc×dc是學習到的注意力權值矩陣,dc是卷積神經網絡的卷積核大小.
3.4.3 知識增強表示
在得到文本表征和知識表征后,通過連接的方式將知識表征和文本表征進行聚合得到知識增強的問題表示和回答表示:
(33)
(34)
除使用知識增強的問題和答案表示來進行問題-答案匹配之外,我們還增加了幾個特征來充分利用問題和答案之間的語義匹配部分,我們利用諸如可用于衡量問題和答案之間相似性的二元相似性得分[15,16]和統計問題和答案句子(包含和不包含停用詞)中共現詞數量的詞重疊特征[24]作為補充的附加特性,通過將它們與知識增強的問題和答案表示進行連接得到最終的問題-答案匹配向量.
of=concat(qr,ar,add_feature)
(35)
本文中答案選擇任務被當作是一個二元分類問題.聚合層的輸出通過一個全連接的層,并使用softmax函數來生成一個類標簽上的概率分布:
p(yi)=softmax(relu(Wjof+bj))
(36)
其中Wj和bj是可訓練的參數,p是預測為類別i的概率分布.
模型訓練的目標是最小化損失函數,損失函數采用具有L2正則化項的交叉熵損失函數,計算公式如下:
(37)

本文選擇使用Trec-QA數據集[8]的兩個版本(TRAIN-ALL,TRAIN)對KE-HNN模型進行評估,Trec-QA數據集包含一系列事實性問題并且將答案限制在一個句子內.TRAIN-ALL中每個答案的正確性都是通過正則表達式自動判斷的,而TRAIN中的答案是人工判斷和標注的.Trec-QA數據集的統計信息如表1所示.我們采用MRR(Mean Reciprocal Rank)和MAP(Mean Average Precision)作為實驗結果的評估指標,定義如下:

表1 Trec-QA數據集信息
(38)
(39)
這里N是問題的數目,ranki是第i個問題第1個正確答案在答案列表中的排列位置,這里值得注意的是當第1個正確答案沒有出現在第i個問題的答案列表中時,ranki將會被設置為0.mi是對于第i個問題正確答案的數目,ranki,j是對于第i個問題的第j個正確答案的排列位置.
在數據預處理方面,數據集中文本的所有字符均為小寫,不刪除停用詞、符號和數字.選擇數據集中文本的最大長度作為輸入長度,當文本長度小于輸入長度時用0填充,詞向量使用預訓練的300維Glove詞向量,對于未在詞向量表中的詞通過在正態分布N(0,0.05)中采樣進行詞向量初始化.Bi-LSTM網絡的隱藏單元維度設置為300,對于文本表征和知識表征的CNN網絡卷積核大小分別為350和300,窗口大小均為[3,5],多頭注意力機制中并行注意力函數的數量n_head設為8,L2正則化項系數設為0.01.
實驗包含以下部分:
1)在Trec-QA數據集上對模型KE-HNN和其他最新的基于深度神經網絡的模型在答案選擇任務上的性能進行比較,以驗證KE-HNN的性能.
2)對模型KE-HNN進行消融實驗,研究模型的不同組件對模型性能的影響.
3)分析基于文本表征學習模塊中每個卷積濾波器所采用的特征映射的數量對KE-HNN模型性能的影響.
4)分析多頭注意力機制中并行注意力函數的數量n_head對KE-HNN模型性能的影響.
實驗中所選擇的基準模型如下:
1)CNN1[12]:該模型利用二元圖上的一維卷積神經網絡學習問題和答案的特征向量,利用語義匹配函數并且集成了兩個附加的單詞匹配特征評估問題-答案對的語義相關性.
2)CNN2[13]:該模型使用兩個CNN分別學習問題和答案的中間表示,然后模型將它們與相似度評分以及豐富的外部特征連接起來,生成最終的問題-答案匹配表示.
3)QA-LSTM[26]:采用雙向長短期記憶(Bi-LSTM)模型和注意機制來學習問題-答案對的特征表征,然后利用相似度函數來對它們的語義相關性進行評估.
4)HD-LSTM[24]:該模型擴展了全息合成的長短期記憶網絡,建立了問答對特征表示之間的語義關聯模型.
5)IAGRU[29]:該模型在計算RNN隱藏表示之前添加了注意力信息以獲得更好的問答對特征表示.
6)CTRN[27]:該模型利用時間門來同步、聯合地學習問答對之間的交互,以學習它們的細粒度表示.
7)HCAN[17]:該模型使用了一個混合編碼器,其中包括基于CNN和基于LSTM的編碼器,以及每個編碼器層的協調注意力機制,以學習基于上下文的多粒度問題和答案表示.
8)KABLSTM[35]:該模型設計了一個文本指導的注意力卷積神經網絡,通過將知識嵌入到句子表示中來豐富問題-答案對的特征表示.
為了分析KE-HNN與其他基準模型相比是否具有優越性,表2列出了KE-HNN模型和其他基準模型在兩個Trec-QA數據集上的實驗結果.從表2可以發現,在Trec-QA(TRAIN-ALL)上KE-HNN模型MRR和MAP分別達到85.5%和80.2%.在TRAIN上,MRR和MAR的值分別為84.9%和79.2%,均取得了最佳的性能,表明KE-HNN模型的性能優于其他基準模型.

表2 KE-HNN與基準模型的性能對比
首先討論各模型在Trec-QA(TRAIN-ALL)數據集上的表現,在所有基準模型中,CNN1的性能表現最差,起MRR和MAP分別為78.4%和71.1%.KABLSTM的性能表現最佳,其 MRR和MAP分別為84.4%和79.2%.KE-HNN模型的MRR和MAP則分別為85.5%和80.2%,分別比比KABLSTM提高1.1%和1%.與CNN1相比,CNN2同樣使用一維卷積神經網絡來學習問題和答案的語義表示,但CNN2引入了一些額外的語義特征,如詞重疊特征、相似度評分等,這些特征有助于建立問題與答案之間的語義相關性,因此CNN2的性能表現略優于CNN1.
在基準模型中,發現基于LSTM的模型的性能總體上優于基于CNN的模型的性能,表明LSTM能夠比CNN更有效地對問題和回答中潛在上下文語義信息進行建模.從實驗結果還可以發現,與僅使用RNN或CNN的基準模型如CNN1、CNN2以及HD-LSTM相比,HCAN獲得了更好的性能表現,這是由于HCAN結合了基于CNN和基于LSTM的編碼器在對句子語義信息和句子的語義信息以及上下文相關性信息建模的優勢,而句子語義信息和句子的上下文相關性信息對于構建用于問答匹配的細粒度特征表示是至關重要的.此外,KABLSTM的性能顯著優于其他基準模型.我們認為這是由于KABLSTM將知識庫作為外部信息源,將知識表征集成到句子表示中,進一步增強了問答匹配的特征表示,KABLSTM的性能表現也證明知識庫是彌補問題和答案之間語義鴻溝的重要補充.
接下來討論各模型在Trec-QA(TRAIN)上的性能表現.在各基準模型中,IAGRU和CTRN分別取得了最佳的MRR和MAP,分別為83.2%和75.9%.作為比較,本文提出的KE-HNN模型MRR和MAP的值分別為84.9%和79.2%,分別提高了1.7%和3.8%.值得注意的是,與CNN1、CNN2以及HD-LSTM相比,IAGRU模型由于將注意力機制和深度神經網絡相結合,將問題的上下文表示以注意力的方式引入到答案表征的學習過程中,能夠專注于問題與答案中富含相關語義信息的部分,這對于揭示問題和答案之間的語義相關性是至關重要的.CTRN模型在學習問答對的表示過程中引入了時間門的思想,以成對的方式對問題和答案對進行聯合學習.該方法通過在問題和答案之間交叉應用時間門,使得問題和答案能夠在相互交互地學習句子的語義信息,有助于獲取回答對之間的語義匹配關系.
從以上實驗結果可以看出,本文提出的KE-HNN模型獲得了優于所有基準模型的性能表現.將其歸因于KE-HNN引入了混合神經網絡、知識表征和上下文感知混合注意機制,從而能夠有效地學習問題和答案的細粒度語義相關性特征.首先KE-HNN模型采用由CNN和Bi-LSTM組成的混合神經網絡來獲得句子的初始語義表示,與單個CNN或RNN相比,混合神經網絡能夠更好地學習句子的語義和上下文信息.KE-HNN模型還引入知識庫作為問題和答案的背景知識,同時學習問答的知識表征和句子表征,并且進一步利用相關性得分來增強問題和答案的初始語義表示.此外,KE-HNN模型還通過多頭注意力機制聚焦于學習問答對中包含豐富相關語義信息部分.因此,KE-HNN模型可以利用基于上下文和背景知識的語義相關性,構建更豐富、更具區分性以及更細粒度的用于問答匹配的特征表示,從而能夠更準確地定位問題的正確答案.
本節通過Trec-QA數據集上的實驗,比較KE-HNN與其消融模型的性能表現,分析KE-HNN中的各個模塊對其整體性能的影響.KE-HNN的消融模型包括KE-HNN w/o MHA,KE-HNN w/o KB,KE-HNN w/o Relevance-score和KE-HNN w/o KB-Attention.KE-HNN w/o MHA 從KE-HNN中移除多頭注意力機制,將經過混合神經網絡的問題和答案表征作為最終的特征表示.KE-HNN w/o KB從KE-HNN中移除知識表征模塊,僅依靠學習來自問題和答案自身語句的文本表征來確定兩者之間的語義相關性.KE-HNN w/o Relevance score則未使用相關性得分來增強問題和答案的文本表征.KE-HNN w/o KB-Attention則移除知識表征學習模塊中的文本指導注意力機制和交互注意力機制,只使用從輸入嵌入層獲得的問題和答案的初始知識表征,而不考慮兩者的知識表征之間的交互以及問題和答案的文本表征對知識表征的影響.
實驗結果如表3所示,可以看出各模塊對KE-HNN模型的總體性均有積極的影響.從表3可以發現,與KE-HNN相比,KE-HNN w/o Relevance-score在Trec-QA(TRAIN-ALL)數據集上的MRR和MAP分別下降了3.8%和4.2%,在Trec-QA(TRAIN)數據集上則分別下降了3.0%和2.8%.上述結果表明相關性得分是反映問題與答案之間的語義相關性的一個重要特征,同時也表明輸入嵌入層輸出的初始表征的質量對最終輸出的問答對語義匹配特征有著顯著的影響.與KE-HNN相比,KE-HNN w/o MHA在Trec-QA(TRAIN-ALL)數據集上的 MRR和MAP的值分別下降了3.4%和4.1%,在Trec-QA(TRAIN)數據集上則分別下降了1.6%和2.9%.性能的顯著下降表明利用多頭注意力機制獲取問題和答案的語句中的關鍵詞語義信息對于獲取問答對語義匹配特征同樣有著至關重要的影響.與KE-HNN相比,KE-HNN w/o KB在Trec-QA(TRAIN-ALL)數據集上的MRR和MAP分別下降了1.8%和2.1%,在Trec-QA(TRAIN)數據集上則分別下降了1.3%和0.9%.上述結果證明了引入知識表征能夠很大程度上彌合問題和答案之間存在的語義鴻溝.與KE-HNN相比,KE-HNN w/o KB-Attention在Trec-QA(TRAIN-ALL)數據集上的MRR和MAP分別下降了1.3%和1.2%,在Trec-QA(TRAIN)數據集上則分別下降了0.9%和1.3%.上述性能下降表明未考慮問答句知識表征之間的交互以及文本指導信息的缺乏,將使得模型無法精確獲取知識庫中與問題和答案的語義信息密切相關的重要信息.

表3 KE-HNN及其消融模型的性能對比
KE-HNN模型的文本表征學習模塊利用融合CNN和Bi-LSTM的混合神經網絡來獲得問題和答案的語義表示,其中CNN的每個卷積核的特征映射的數量是影響KE-HNN性能的重要參數.圖2、圖3分別給出了文本表征模塊中的CNN采用不同特征映射數量時KE-HNN在Trec-QA(TRAIN-ALL)和Trec-QA(TRAIN)數據集上的性能變化情況.特征映射數量取值范圍為[100,500],間隔為50.從圖2可以發現,隨著特征映射數量的增加,KE-HNN的MAP和MRR逐步提高,當特征映射數量為350時,KE-HNN獲得最優的MAP和MRR.但是,KE-HNN的性能并不隨著特征映射數量的增加而單調遞增,當特征映射的數量從350增加到500時,KE-HNN的性能會逐步下降.上述實驗結果表明,當特征映射數量過小時,文本表征向量無法充分反映問題和答案中蘊含的語義信息,因此需要增加特征映射的數量來避免語義信息的丟失.但是,特征映射數量過大將顯著增加模型的復雜性,容易導致模型的過度擬合,引起性能下降.此外,從圖2與圖3可以發現,特征映射數量變化所導致的KE-HNN的性能波動范圍較小,表明KE-HNN模型對特征映射數量的變化較不敏感,具有較好的健壯性.

圖2 特征映射數量對KE-HNN在Trec-QA(TRAIN-ALL)數據集上性能的影響

圖3 特征映射數量對KE-HNN在Trec-QA(TRAIN)數據集上性能的影響
KE-HNN模型的文本表征學習模塊利用多頭注意力來融合句子的不同部分的語義信息,多頭注意力機制的輸出通過對n_head個注意力函數的輸出進行加權拼接得到.因此,注意力函數的數量n_head是影響KE-HNN性能的重要參數之一.圖4、圖5分別給出了文本表征模塊中的多頭注意力機制采用不同數量的注意力函數時KE-HNN在Trec-QA(TRAIN-ALL)和Trec-QA(TRAIN)數據集上的性能變化情況.n_head的取值范圍[1,12].從圖4與圖5可以發現,n_head為1時,KE-HNN的性能表現最差.這是由于當n_head為1時,多頭注意力機制退化為單注意力機制,而單注意力機制無法為上下文中高度相關的詞語準確地分配注意力權重,導致語義匹配信息的丟失.隨著n_head的增加,KE-HNN的MAP和MRR逐步提高.當n_head為8時,KE-HNN獲得最優的MRR和MAP.上述性能提升表明多頭注意力機制在提取上下文中高度相關的詞語方面具有優勢,這對構造問題和回答的細粒度語義表征是十分重要的.但是,KE-HNN性能并不隨n_head增加而單調遞增,當n_head超過8后,KE-HNN的性能會逐步下降.原因在于引入過多的注意力函數將引入大量的訓練參數,增加模型的復雜度,使訓練變得困難,導致模型過擬合.

圖4 n_head對KE-HNN在Trec-QA(TRAIN-ALL)數據集上性能的影響

圖5 n_head對KE-HNN在Trec-QA(TRAIN)數據集上性能的影響
本文提出了一種結合多頭注意機制的混合神經網絡模型KE-HNN.為了充分利用問答句子中的語義信息和上下文信息,KE-HNN采用由CNN和Bi-LSTM融合成的混合神經網絡對輸入句子進行建模,此外使用多頭注意力機制在特征提取過程中關注問答句子中富含信息、具有高度相關性的關鍵部分,并減少噪聲詞的干擾.此外,KE-HNN融合來自外部知識庫中的信息,提出了一種文本指導注意力機制,獲取與問答相關的知識表征信息.針對KE-HNN模型與對比模型,在Trec-QA數據集上進行了充分的實驗與分析,實驗結果表明KE-HNN取得了領先的性能.
在未來的工作中,由于圖神經網絡可以利用句子的語法結構來更好地獲取文本中潛在的語義特征,我們將嘗試在答案選擇任務中引入圖神經網絡,此外我們還將嘗試多任務的學習模式通過將回答選擇任務和其他問答任務相結合共同學習來進一步提高KE-HNN的性能.