陳柯錦, 侯俊安, 郭 智, 梁 霄
(1. 中國(guó)科學(xué)院電子學(xué)研究所, 北京 100190; 2. 中國(guó)科學(xué)院大學(xué), 北京 100049;3. 中國(guó)科學(xué)院空間信息處理與應(yīng)用系統(tǒng)技術(shù)重點(diǎn)實(shí)驗(yàn)室, 北京 100190;4. 中國(guó)人民解放軍92269部隊(duì), 北京 100141)
隨著互聯(lián)網(wǎng)的發(fā)展,迎來(lái)了大數(shù)據(jù)時(shí)代,互聯(lián)網(wǎng)已經(jīng)成為人們獲取信息和知識(shí)的重要途徑。數(shù)據(jù)的豐富給用戶(hù)帶來(lái)便利的同時(shí),也使得用戶(hù)獲取到真實(shí)需要信息的難度增加,亟需一種快速、準(zhǔn)確的信息獲取方法。傳統(tǒng)的搜索引擎基于關(guān)鍵字匹配,采取排序算法向用戶(hù)呈現(xiàn)相關(guān)信息,這種方法帶來(lái)了大量冗余的信息,需要用戶(hù)花費(fèi)大量時(shí)間從中篩選答案。智能問(wèn)答系統(tǒng)理解用戶(hù)自然語(yǔ)言方式的提問(wèn),直接返回用戶(hù)所需答案,能夠更好地滿(mǎn)足用戶(hù)的需求。
近年來(lái),隨著神經(jīng)網(wǎng)絡(luò)的發(fā)展,基于深度學(xué)習(xí)的問(wèn)答系統(tǒng)成為當(dāng)前自然語(yǔ)言處理及相關(guān)領(lǐng)域的研究熱點(diǎn)之一。基于相關(guān)技術(shù),許多有影響力的問(wèn)答系統(tǒng)相繼誕生,比如蘋(píng)果的Siri,百度的小度,微軟的小冰以及IBM的Watson等等。根據(jù)問(wèn)答系統(tǒng)依賴(lài)的數(shù)據(jù)組織形式不同,問(wèn)答系統(tǒng)分為基于Web檢索的問(wèn)答系統(tǒng)、基于社區(qū)的問(wèn)答系統(tǒng)以及基于知識(shí)圖譜的問(wèn)答系統(tǒng)。3種問(wèn)答系統(tǒng)都會(huì)通過(guò)分析問(wèn)題,對(duì)答案粗篩選,得到一些候選答案,而如何對(duì)候選答案排序,從中獲取正確答案,這就需要答案選擇技術(shù)。答案選擇是問(wèn)答系統(tǒng)中的關(guān)鍵技術(shù),該任務(wù)定義為針對(duì)一個(gè)給定的問(wèn)題,在眾多的候選答案中選出最佳候選答案。從定義可以看出,答案選擇可以歸結(jié)為排序問(wèn)題,目標(biāo)是計(jì)算問(wèn)題與候選答案的相似度,通過(guò)相似度對(duì)候選答案排序。本文重點(diǎn)研究檢索式問(wèn)答和社區(qū)問(wèn)答中的答案選擇任務(wù),該類(lèi)答案選擇任務(wù)的候選答案通常以短文本形式給出,其示例如圖1所示。

圖1 答案選擇示例
Fig.1 Example of question answer selection
答案選擇是自然語(yǔ)言處理中典型的語(yǔ)義相似度計(jì)算任務(wù),目前存在兩大難點(diǎn)。第一,問(wèn)題和答案的長(zhǎng)度不對(duì)稱(chēng),通常情況下,答案中冗余信息較多。答案選擇中的問(wèn)題長(zhǎng)度通常較短,一般在5~15個(gè)單詞,而候選答案長(zhǎng)度往往大于問(wèn)題長(zhǎng)度,主要在20~50個(gè)字符。其主要原因在于答案通常會(huì)對(duì)問(wèn)題的相關(guān)背景進(jìn)行詳細(xì)描述。正如圖1所示,對(duì)于問(wèn)題“陶淵明出生在什么朝代?”,正確答案不僅給出了陶淵明的出生朝代,還給出了陶淵明的相關(guān)介紹。傳統(tǒng)的模型通常學(xué)習(xí)問(wèn)題和答案句子級(jí)的特征向量,通過(guò)計(jì)算向量的相似度對(duì)候選答案排序。該類(lèi)方法學(xué)習(xí)到的聯(lián)合特征包含了大量的冗余特征,通常情況下,冗余特征的相似度較低,鑒于此,考慮問(wèn)題和答案的局部相似度對(duì)消除冗余特征尤為重要。第二,候選答案之間的語(yǔ)義相似度較高。如圖1所示,錯(cuò)誤答案同樣屬于在陶淵明背景下的描述,其與正確答案的語(yǔ)義關(guān)聯(lián)性較強(qiáng),因此,基于關(guān)鍵字匹配或者基于詞袋模型分類(lèi)的方法很難解決此類(lèi)問(wèn)題。
本文為了解決以上難點(diǎn),基于深度學(xué)習(xí)的方法,提出一種基于多尺度相似度的深度學(xué)習(xí)模型。本文將在第2部分介紹答案選擇的相關(guān)工作;第3部分將詳細(xì)介紹模型的具體設(shè)計(jì);第4部分介紹答案選擇的評(píng)價(jià)方法和實(shí)驗(yàn)結(jié)果;第5部分對(duì)全文進(jìn)行總結(jié)。
答案選擇受到了學(xué)術(shù)界和工業(yè)界的廣泛關(guān)注,相關(guān)研究工作主要分為兩類(lèi):一類(lèi)是基于特征工程,通常借助于語(yǔ)言工具或者其他外部資源對(duì)特征進(jìn)行抽取;另一類(lèi)是基于深度學(xué)習(xí)模型,使用深度學(xué)習(xí)模型生成問(wèn)題和答案的分布式表示,從而計(jì)算其相似度。
由于最初的詞袋模型無(wú)法理解深層的語(yǔ)義特征,因此第一類(lèi)工作相繼而出。第1類(lèi)工作主要基于特征工程挖掘問(wèn)題和答案的語(yǔ)法和語(yǔ)義特征,例如,文獻(xiàn)[1]利用問(wèn)題和答案的依存句法樹(shù)(dependency parse trees,DPT)對(duì)問(wèn)題和答案進(jìn)行特征提取。類(lèi)似的,文獻(xiàn)[2]提出一種判別模型來(lái)計(jì)算問(wèn)題和答案的句法樹(shù)的編輯距離,基于編輯距離特征訓(xùn)練分類(lèi)器,最后完成問(wèn)答對(duì)的分類(lèi)。文獻(xiàn)[3]首次將WordNet引入答案選擇任務(wù)中,通過(guò)挖掘語(yǔ)義關(guān)系完成問(wèn)題和答案中詞的對(duì)齊,然后使用淺層語(yǔ)義分析得到同義詞的語(yǔ)義相似度,從而提升答案選擇的準(zhǔn)確率。
基于特征工程的答案選擇方法雖然取得了較好的效果,但由于其無(wú)法挖掘問(wèn)題和答案的深層次的非線(xiàn)性特征,再者,模型的泛化能力較差。因此,近年來(lái),基于深度學(xué)習(xí)的答案選擇方法成為學(xué)術(shù)界研究的主流方法。文獻(xiàn)[4]首次將卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)[5]應(yīng)用到答案選擇任務(wù),模型主要通過(guò)卷積網(wǎng)絡(luò)學(xué)習(xí)問(wèn)題和答案的二元語(yǔ)法特征,將問(wèn)題和答案的特征通過(guò)相似矩陣聚合得到相似度。文獻(xiàn)[6]的基本思想與文獻(xiàn)[4]相同,模型主要由全連接網(wǎng)絡(luò)和卷積網(wǎng)絡(luò)構(gòu)成,并對(duì)全連接網(wǎng)絡(luò)和卷積網(wǎng)絡(luò)的連接順序以及問(wèn)答相應(yīng)網(wǎng)絡(luò)權(quán)重是否共享進(jìn)行實(shí)驗(yàn)與分析。隨著長(zhǎng)短期記憶單元(long short-term memory,LSTM)[7]和注意力機(jī)制[8]在自然語(yǔ)言處理諸多任務(wù)上廣泛應(yīng)用,相關(guān)工作也相繼涌現(xiàn)。文獻(xiàn)[9]采用雙向長(zhǎng)短期記憶單元(bidirectional LSTM,BiLSTM)提取問(wèn)題和答案的語(yǔ)義特征,并通過(guò)答案學(xué)習(xí)問(wèn)題的注意力權(quán)重,顯著提升了答案選擇的準(zhǔn)確率。在此之后,文獻(xiàn)[10]提出一種CNN和LSTM的混合網(wǎng)絡(luò)模型,并對(duì)CNN和LSTM的連接順序以及是否引入注意力機(jī)制進(jìn)行了對(duì)比實(shí)驗(yàn)。文獻(xiàn)[11]為了解決以往答案選擇中池化方法丟失較多信息的不足,提出一種注意力池化的方法,取得了較好的效果。
第2類(lèi)方法目前的工作通常直接提取問(wèn)題和答案的整句特征來(lái)計(jì)算相似度,本文則從挖掘問(wèn)答各個(gè)尺度下特征的相似度出發(fā),對(duì)生成的相似度矩陣進(jìn)行學(xué)習(xí),從局部相似度得到最終的聯(lián)合相似度。
本文方法通過(guò)CNN或BiLSTM提取問(wèn)題和答案各個(gè)尺度下特征,與以往直接計(jì)算問(wèn)答句子級(jí)特征相似度不同,本文采用一種相似度計(jì)算方法計(jì)算問(wèn)答相應(yīng)尺度下特征相似度,進(jìn)而得到相似度矩陣,最后通過(guò)3種不同模型對(duì)相似度矩陣學(xué)習(xí),從局部特征相似度得到問(wèn)答整體相似度。
本文模型整體框架如圖2所示。

圖2 模型整體框架圖Fig.2 Framework of our model
傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)采用全連接的方式導(dǎo)致網(wǎng)絡(luò)的訓(xùn)練參數(shù)過(guò)多,為了解決該問(wèn)題,卷積網(wǎng)絡(luò)采取局部連接和參數(shù)共享方式,極大減少了網(wǎng)絡(luò)訓(xùn)練參數(shù),此外,卷積神經(jīng)網(wǎng)絡(luò)更擅長(zhǎng)于提取局部特征。
本文采用卷積網(wǎng)絡(luò)作為特征提取的底層模型,對(duì)問(wèn)題和答案的詞嵌入矩陣分別采取一維卷積神經(jīng)網(wǎng)絡(luò)對(duì)特征提取,卷積核的長(zhǎng)度等于詞嵌入維度,特征提取示意圖如圖3所示。

圖3 不同窗口大小下卷積神經(jīng)網(wǎng)絡(luò)特征提取示意圖Fig.3 Illustration of extracted features by the CNN model in different filter length
圖3中左側(cè)是對(duì)問(wèn)題或答案進(jìn)行詞嵌入初始化后的矩陣Xn×k,其中n表示句子中單詞的個(gè)數(shù),k表示詞嵌入維度。當(dāng)使用卷積核Wh×k對(duì)矩陣Xn×k進(jìn)行卷積操作可以得到n-h+1個(gè)特征,其具體表達(dá)式為
ci=f(Wh×k*Xi∶i+k-1+b)
(1)
式中,Wh×k表示卷積網(wǎng)絡(luò)卷積核;h表示窗口大小;k為詞嵌入維度;Xi∶i+k-1為語(yǔ)句中第i到i+k-1單詞的詞向量構(gòu)成的矩陣;b為網(wǎng)絡(luò)偏置向量;f為激活函數(shù),本次實(shí)驗(yàn)中采用tanh;ci為最終提取到的特征。通過(guò)對(duì)整個(gè)特征矩陣進(jìn)行卷積操作后,得到特征向量f={c1,c2,…,cn-h+1}。類(lèi)似的,通過(guò)設(shè)定卷積網(wǎng)絡(luò)的窗口大小和濾波器個(gè)數(shù),可以得到問(wèn)題和答案不同尺度下的特征向量,即
(2)
式中,j表示卷積網(wǎng)絡(luò)窗口大小;m表示第m組濾波器。由于卷積網(wǎng)絡(luò)窗口大小不同,所以特征的尺度也不同。本文實(shí)驗(yàn)中將問(wèn)題各尺度特征聚合得到如式(3)所示問(wèn)題特征矩陣,同理,可以得到答案特征矩陣。以往的方法通過(guò)池化對(duì)特征降維得到聯(lián)合特征,最后直接計(jì)算問(wèn)答聯(lián)合特征的相似度,本文實(shí)驗(yàn)則是將問(wèn)題和答案相應(yīng)尺度下的特征聚合成相似度矩陣,通過(guò)對(duì)相似度矩陣學(xué)習(xí)得到最終的相似度,即
(3)
對(duì)于自然語(yǔ)言的理解,需要關(guān)注上下文信息,循環(huán)神經(jīng)網(wǎng)絡(luò)(recurrent neural network,RNN)[12]當(dāng)前時(shí)刻的輸出跟其前面時(shí)刻的輸出有著緊密聯(lián)系,其具備一定記憶能力,能有效解決序列化問(wèn)題。而LSTM則是為了解決RNN中的梯度消失的問(wèn)題,由文獻(xiàn)[13]提出改進(jìn)模型。LSTM結(jié)構(gòu)圖如圖4所示。

圖4 LSTM結(jié)構(gòu)圖Fig.4 LSTM architecture
本文采用的LSTM為Graves 等[14]使用的改進(jìn)模型,對(duì)于輸入t時(shí)刻序列xt={x1,x2,…,xn},其在本文模型中表示為第t個(gè)單詞的詞嵌入向量,隱狀態(tài)向量ht在t時(shí)刻的更新公式為
it=σ(Wixt+Uist-1+bi)
(4)
ft=σ(Wfxt+Ufst-1+bf)
(5)
ot=σ(Woxt+Uost-1+bo)
(6)
(7)
ht=ot*tanh(Ct)
(8)

LSTM當(dāng)前時(shí)刻的輸出能有效利用前面時(shí)刻的信息,為了充分利用文本上下文信息,采取雙向LSTM,即對(duì)輸入從正反兩個(gè)方向使用LSTM學(xué)習(xí),最后將其聚合得
(9)

QBiLSTM=[h1,h2,…,ht]
(10)
本文提出3種相似度矩陣學(xué)習(xí)模型,分別為相似度矩陣特征聚合(similarity matrix feature concatenating,SMFC)模型,相似度矩陣特征分開(kāi)學(xué)習(xí)(similarity matrix separate learning,SMSL)模型,相似度矩陣問(wèn)題特征學(xué)習(xí)(similarity matrix question learning,SMQL)模型,3種模型對(duì)相似度矩陣學(xué)習(xí)得到聯(lián)合相似度,相似度矩陣的計(jì)算方法如式(11)~式(14)所示,其物理意義為問(wèn)題和答案各尺度特征的余弦相似度矩陣,相似度矩陣的行向代表問(wèn)題特征,列向代表答案特征,矩陣元素大小代表該行問(wèn)題特征和該列答案特征的余弦相似度大小。
Qsum=row_sum(Q⊙Q)
(11)
Asum=col_sum(A⊙A)
(12)
Pqa=element_max(QsumAsum,ε)
(13)
SIMQA=element_div(QAT,Pqa)
(14)
式中,Q代表問(wèn)題特征矩陣;A為答案特征矩陣,當(dāng)特征提取層為CNN時(shí),特征矩陣如式(3)所示;當(dāng)特征提取層為BiLSTM時(shí),特征矩陣如式(10)所示。ε為精度矩陣,防止式(14)中出現(xiàn)運(yùn)算異常情況,col_sum表示對(duì)矩陣列向求和得到行向量,row_sum表示對(duì)矩陣行向求和得到列向量,element_max為矩陣與矩陣之間對(duì)應(yīng)元素取最大值運(yùn)算,element_div為矩陣與矩陣之間對(duì)應(yīng)元素相除,SIMQA為相似度矩陣,其中Pqa、SIMQA和QAT的維度為n×n,n為式(3)或式(10)中特征矩陣的特征向量總數(shù)。
2.4.1 相似度矩陣特征聚合模型
該模型的基本結(jié)構(gòu)是對(duì)相似度矩陣分別進(jìn)行列向最大池化和行向最大池化,然后聚合得到聯(lián)合特征,最后將其送入全連接層學(xué)習(xí)得到相似度。本文采取3種方法對(duì)特征聚合,其分別為向量對(duì)應(yīng)相加(sum)、向量對(duì)應(yīng)相乘(mul)和向量拼接(concat),其方法如式(15)~式(19)所示,SMFC模型如圖5所示。
x1={a0,a1,…,an}
(15)
x2={b0,b1,…,bn}
(16)
sum(x1,x2)={a0+b0,a1+b1,…,an+bn}
(17)
mul(x1,x2)={a0×b0,a1×b1,…,an×bn}
(18)
concat(x1,x2)={a0,a1,…,an,b0,…,bn}
(19)
對(duì)相似度矩陣做行向最大池化,可以得到問(wèn)題特征在答案中的最大相似度。同理,列向量最大池化可以得到答案中特征在問(wèn)題中的最大相似度。相似度的大小直接反映了該局部特征的匹配程度,通過(guò)對(duì)局部特征的最大相似度學(xué)習(xí)可以有效抑制冗余特征,得到更為準(zhǔn)確的聯(lián)合相似度,這是一種從局部相似度解決全局相似度的學(xué)習(xí)模型。

圖5 相似度矩陣特征聚合模型Fig.5 SMFC model
2.4.2 相似度矩陣特征分開(kāi)學(xué)習(xí)模型
SMFC中采用最大池化方法得到局部特征的最大相似度,該方法忽略了局部特征出現(xiàn)的頻次。如圖6所示,“F-35”在答案中出現(xiàn)次數(shù)為兩次,而“戰(zhàn)斗機(jī)”出現(xiàn)次數(shù)為一次,通常頻次較高的特征對(duì)問(wèn)答相似度計(jì)算的重要程度更高?;谏鲜鰡?wèn)題,本模型使用卷積網(wǎng)絡(luò)代替最大池化,對(duì)相似特征矩陣和轉(zhuǎn)置后的相似特征矩陣分別進(jìn)行卷積神經(jīng)網(wǎng)絡(luò)學(xué)習(xí),得到問(wèn)題和答案的相似度分布特征,然后放入全連接網(wǎng)絡(luò)得到最終特征,最后通過(guò)GESD計(jì)算特征相似度,GESD為文獻(xiàn)[6]提出的相似度計(jì)算方法,如式(20)所示,SMSL模型結(jié)構(gòu)如圖7所示。
(20)
式中,x和y分別表示SMSL模型中兩個(gè)全連接層輸出的特征向量,其分別代表問(wèn)題和答案的相似度分布特征;γ和c分別為公式超參,實(shí)驗(yàn)中γ和c都設(shè)置為1。

圖6 采用不同顏色表示問(wèn)答局部相似特征
Fig.6 Different colors indicate the local similarity degree between the question and answers
2.4.3 相似度矩陣問(wèn)題特征學(xué)習(xí)模型
答案選擇中,對(duì)于判斷答案是否是該問(wèn)題的正確匹配,人們通常會(huì)關(guān)注問(wèn)題的特征在答案中是否有相似特征,而對(duì)于答案中的冗余信息并不關(guān)注。例如,在圖6的問(wèn)題中“F-35”“戰(zhàn)斗機(jī)”和“多少”此類(lèi)局部特征的相似度的大小對(duì)整體相似度的影響遠(yuǎn)遠(yuǎn)大于答案中“美國(guó)”“洛希德·馬丁”等特征,所以只對(duì)相似度矩陣的問(wèn)題相似度學(xué)習(xí),可以減少冗余,消除噪聲,與此同時(shí),簡(jiǎn)化了模型,降低了模型復(fù)雜度。

圖7 相似度矩陣特征分開(kāi)學(xué)習(xí)模型Fig.7 SMSL model
本文采用3種方式對(duì)問(wèn)題相似度學(xué)習(xí),分別為最大池化、平均池化和CNN模型,最后將其接入全連接層學(xué)習(xí),其模型結(jié)構(gòu)如圖8所示。

圖8 相似度矩陣問(wèn)題特征學(xué)習(xí)模型Fig.8 SMQL model
本文采取噪聲對(duì)比估計(jì)方法對(duì)模型進(jìn)行訓(xùn)練,其方法描述如下:對(duì)給定問(wèn)題Q,在訓(xùn)練中選取正確答案A+和錯(cuò)誤答案A-,應(yīng)用本文模型分別計(jì)算(Q,A+)和(Q,A-)的相似度得到S+和S-,本文模型的訓(xùn)練的目標(biāo)是使得正確問(wèn)答對(duì)的相似值大于錯(cuò)誤問(wèn)答對(duì)的相似值,因此本文將問(wèn)答相似度的距離與間隔M比較,得到如式(24)所示的損失函數(shù),當(dāng)S+-S->M時(shí),不更新網(wǎng)絡(luò)參數(shù),反之采用隨機(jī)梯度下降法更新。
S+=sim(Q,A+)
(21)
S-=sim(Q,A-)
(22)
(23)
Loss=max(0,M-S++S-)
(24)
對(duì)于間隔M,與以往采取固定間隔的方法不同,本文采取如式(23)所示的方法,其中α、β為模型超參。該方法使得間隔M與相似度的距離有關(guān),當(dāng)S+-S->β時(shí),間隔M隨著S+-S-的增大而快速減小,與此同時(shí),訓(xùn)練誤差也相應(yīng)減小,而當(dāng)S+-S-≤β時(shí),M值最大,模型得到較大的訓(xùn)練誤差。
本次實(shí)驗(yàn)采用百度的公開(kāi)數(shù)據(jù)集WebQA[15]。WebQA是一個(gè)大規(guī)模的中文人工標(biāo)注問(wèn)答數(shù)據(jù)集,其來(lái)源主要為百度知道。所有問(wèn)題的候選答案由搜索引擎對(duì)問(wèn)題檢索的前3頁(yè)結(jié)果清洗得到,最后通過(guò)人工將候選答案標(biāo)注為正確答案和錯(cuò)誤答案。本次實(shí)驗(yàn)對(duì)WebQA數(shù)據(jù)集進(jìn)一步清洗,主要清洗工作為糾正錯(cuò)誤標(biāo)注,最終形成如表1所示規(guī)模的訓(xùn)練數(shù)據(jù)集。

表1 WebQA數(shù)據(jù)集
其中驗(yàn)證集是訓(xùn)練數(shù)據(jù)集隨機(jī)抽取10% 獲得,測(cè)試集為WebQA數(shù)據(jù)集的Test_lr清洗得到,Test_lr為WebQA人工標(biāo)注測(cè)試集,其候選答案包含正確答案和同等語(yǔ)義背景下的錯(cuò)誤答案。圖1為WebQA數(shù)據(jù)集示例。
本文實(shí)驗(yàn)評(píng)價(jià)指標(biāo)采用信息檢索中的平均準(zhǔn)確率均值(mean average precision,MAP)和平均倒數(shù)排名(mean reciprocal rank,MRR),在本文實(shí)驗(yàn)中,MAP代表問(wèn)答對(duì)相似度排序中準(zhǔn)確率的均值,其計(jì)算方法如式(25)所示。MRR代表的是問(wèn)答對(duì)相似度排序中的第一個(gè)正確答案的位置得分平均值,即關(guān)注系統(tǒng)返回正確答案的位置,位置越靠前評(píng)分越高,位置的倒數(shù)為單個(gè)評(píng)分值,最后統(tǒng)計(jì)求和,其計(jì)算方法為
(25)
(26)
式中,n為問(wèn)題總數(shù);qi為第i個(gè)問(wèn)題;prec(qi)為第i個(gè)問(wèn)題的候選答案相似度排序的準(zhǔn)確率,正確答案排在第一位則得分為1,否則為0。rank(qi)為第i個(gè)問(wèn)題的候選答案排序結(jié)果中正確答案的排名。
本文在整理后的WebQA數(shù)據(jù)集上,應(yīng)用文獻(xiàn)[6]提出的CNN模型和文獻(xiàn)[9]提出的BiLSTM方法作為實(shí)驗(yàn)的基線(xiàn)模型,并在此基礎(chǔ)上分別添加SMFC,SMSL和SMQL方法作對(duì)比驗(yàn)證實(shí)驗(yàn)。對(duì)于SMFC方法,本文采用向量求和,向量拼接和向量相乘3種聚合方法,而對(duì)于SMQL的方法采取CNN、最大池化和平均池化3種方法對(duì)相似度矩陣進(jìn)行特征提取。
本次實(shí)驗(yàn)的實(shí)驗(yàn)環(huán)境為GeForce GTX 1080、Intel Core i7-6700k 4.0GHZ、內(nèi)存16G的PC。本文模型詞向量采用WebQA中已訓(xùn)練好的詞向量初始化,該詞向量是通過(guò)五元語(yǔ)法的神經(jīng)語(yǔ)言模型[16]訓(xùn)練得到,詞向量維度為64維。本次實(shí)驗(yàn)網(wǎng)絡(luò)學(xué)習(xí)采用隨機(jī)梯度下降法(stochastic gradient descent,SGD),其初始學(xué)習(xí)率設(shè)置為lr=0.1,網(wǎng)絡(luò)訓(xùn)練的批大小設(shè)置為100,問(wèn)題截取長(zhǎng)度設(shè)置為50,答案截取長(zhǎng)度設(shè)置為50。網(wǎng)絡(luò)迭代次數(shù)設(shè)置為200,采取早停止(early-stop)[17]策略。最后相似度計(jì)算公式采用GESD,文獻(xiàn)[6]在之前實(shí)驗(yàn)已經(jīng)證明,采用GESD作為相似度計(jì)算公式的實(shí)驗(yàn)結(jié)果優(yōu)于其他相似度計(jì)算公式。
本實(shí)驗(yàn)將CNN作為底層特征提取的實(shí)驗(yàn)結(jié)果如表2所示,其中CNN使用的是一維的卷積網(wǎng)絡(luò),其窗口大小設(shè)置為1、2、3和5,濾波器個(gè)數(shù)設(shè)置為500,激活函數(shù)使用tanh。對(duì)于SMQL中相似度特征學(xué)習(xí)的1-CNN網(wǎng)絡(luò)參數(shù)設(shè)置,本文將窗口大小設(shè)置為1,濾波器個(gè)數(shù)200。SMSL中對(duì)相似度特征學(xué)習(xí)的CNN參數(shù)設(shè)置與SMQL相同,但網(wǎng)絡(luò)參數(shù)不共享。SMQL和SMFC的全連接網(wǎng)絡(luò)采用dropout機(jī)制,dropout設(shè)置為0.5,網(wǎng)絡(luò)的激活函數(shù)設(shè)置為tanh。

表2 基于CNN的相似特征學(xué)習(xí)模型實(shí)驗(yàn)結(jié)果
實(shí)驗(yàn)結(jié)果表明,添加了相似度特征學(xué)習(xí)方法有效地提升了實(shí)驗(yàn)結(jié)果,其中采用SMQL和SMFC方法提升明顯,相比于基線(xiàn)模型,其MAP值提升了3.2%~4.7%,SMFC采取向量對(duì)應(yīng)相加聚合(sum)方式優(yōu)于其他聚合方式,其MAP值提升了4.3%,SMQL采取最大池化方法對(duì)問(wèn)題的相似度特征學(xué)習(xí)得到了本次實(shí)驗(yàn)的最優(yōu)結(jié)果,MAP值提升了4.7%,這也證實(shí)了問(wèn)答相似度矩陣中問(wèn)題的相似度特征的重要性,抽取問(wèn)題特征實(shí)質(zhì)為一種粗糙的特征篩選,能夠防止模型過(guò)擬合,除此之外,相比與本文其他方法,SMQL訓(xùn)練周期也較短,模型復(fù)雜度更低。
為了進(jìn)一步驗(yàn)證相似度特征學(xué)習(xí)方法的有效性,本文將BiLSTM作為底層特征抽取,添加相似度特征學(xué)習(xí)方法進(jìn)行對(duì)比實(shí)驗(yàn)。實(shí)驗(yàn)中LSTM的隱層維度設(shè)置為141,添加dropout機(jī)制,dropout設(shè)置為0.5。實(shí)驗(yàn)結(jié)果如表3所示。
從實(shí)驗(yàn)結(jié)果可以看到,添加了相似度特征學(xué)習(xí)方法同樣適用于BiLSTM模型,基于相似度特征學(xué)習(xí)的BiLSTM模型的MAP值相比于基線(xiàn)模型都有提升,SMFC采取向量拼接方式聚合特征的實(shí)驗(yàn)結(jié)果最好,相比于基線(xiàn)模型提升了1.9%,這也證實(shí)了本文模型的有效性。

表3 基于BiLSTM的相似特征學(xué)習(xí)模型實(shí)驗(yàn)結(jié)果
答案選擇是問(wèn)答系統(tǒng)中的關(guān)鍵技術(shù),本文提出了一種基于相似度特征的深度學(xué)習(xí)模型。該方法相比于傳統(tǒng)的深度學(xué)習(xí)模型,不僅對(duì)問(wèn)題和答案的特征進(jìn)行提取,而且對(duì)各個(gè)尺度的特征的相似度進(jìn)行訓(xùn)練,從局部相似度得到聯(lián)合相似度。從特征學(xué)習(xí)、特征聚合和特征篩選3個(gè)方面出發(fā),本文提出了3種相似度特征訓(xùn)練模型,其分別為SMSL模型、SMFC模型和SMQL模型。實(shí)驗(yàn)證明,本文方法在CNN和BiLSTM模型的基礎(chǔ)上都有明顯提升,其中CNN模型采用SMQL方法得到68.2%的MAP值,相比于基線(xiàn)模型提升了4.7%。
參考文獻(xiàn):
[1] WANG M, SMITH N A. What is the jeopardy model? a quasi-synchronous grammar for QA[C]∥Proc.of the Joint Conference on Empirical Methods in Natural Language Processing and Computational Natural Language Learning, 2007: 22-32.
[2] HEILMAN M, SMITH N A. Tree edit models for recognizing textual entailments, paraphrases, and answers to questions[C]∥Proc.of the Annual Conference of the North American Chapter of the Association for Computational Linguistics, 2010: 1011-1019.
[3] YIH W, CHANG M W, MEEK C, et al. Question answering using enhanced lexical semantic models[C]∥Proc.of the 51st Annual Meeting of the Association for Computational Linguistics, 2013: 1744-1753.
[4] YU L, HERMANN K M, BLUNSOM P, et al. Deep learning for answer sentence selection[J]. Computer Science, 2014.
[5] LECUN Y, BOTTOU L, BENGIO Y, et al. Gradient-based learning applied to document recognition[J]. Proceedings of the IEEE, 1998, 86(11): 2278-2324.
[6] FENG M, XIANG B, GLASS M R, et al. Applying deep learning to answer selection: A study and an open task[C]∥Proc.of the IEEE Automatic Speech Recognition and Understanding, 2015: 813-820.
[7] GERS F A, SCHMIDHUBER J, CUMMINS F. Learning to forget: continual prediction with LSTM[J]. Neural Computation, 2000, 12(10): 2451-71.
[8] BAHDANAU D, CHO K, BENGIO Y. Neural machine translation by jointly learning to align and translate[J]. Computer Science, 2014.
[9] TAN M, SANTOS C D, XIANG B, et al. LSTM-based deep learning models for non-factoid answer selection[J]. Computer Science, 2015.
[10] TAN M, DOS SANTOS C, XIANG B, et al. Improved representation learning for question answer matching[C]∥Proc.of the 54th Annual Meeting of the Association for Computational Linguistics, 2016.
[11] DOS SANTOS C N, TAN M, XIANG B, et al. Attentive pooling networks[J]. CoRR, abs/1602.03609, 2016, 2(3): 4.
[12] MEDSKER L, JAIN L. Recurrent neural networks[J]. Design and Applications, 2001.
[13] HOCHREITER S, SCHMIDHUBER J. Long short-term memory[J]. Neural computation, 1997, 9(8): 1735-1780.
[14] GRAVES A. Generating sequences with recurrent neural networks[J]. Computer Science, 2014.
[15] LI P, LI W, HE Z, et al. Dataset and neural recurrent sequence labeling model for open-domain factoid question answering[J]. arXiv Preprint arXiv:160706275,2016.
[16] BENGIO Y, DUCHARME R, VINCENT P, et al. A neural probabilistic language model[J]. Journal of machine learning research, 2003, 3(2): 1137-1155.
[17] PRECHELT L. Early stopping-but when?[M]. Berlin Heidelberg: Springer,1998: 55-69.