于重重 曹帥 潘博 張青川 徐世璇
摘 要:針對檢索式匹配問答模型對中文語料適應(yīng)性弱和句子語義信息被忽略的問題,提出一種基于卷積神經(jīng)網(wǎng)絡(luò)潛在語義模型(CLSM)的中文文本語義匹配模型。首先,在傳統(tǒng)CLSM基礎(chǔ)上進(jìn)行改進(jìn),去掉單詞和字母的N元模型層,以增強(qiáng)模型對中文語料的適應(yīng)性;其次,采用注意力機(jī)制算法,針對輸入的中文詞向量信息建立實(shí)體關(guān)注層模型,以加強(qiáng)句中核心詞的權(quán)重信息;最后,通過卷積神經(jīng)網(wǎng)絡(luò)(CNN)有效地捕獲輸入句子上下文結(jié)構(gòu)方面信息,并通過池化層對獲取的語義信息進(jìn)行降維?;卺t(yī)療問答對數(shù)據(jù)集,將改進(jìn)模型與傳統(tǒng)語義模型、傳統(tǒng)翻譯模型、深度神經(jīng)網(wǎng)絡(luò)模型進(jìn)行對比,實(shí)驗(yàn)結(jié)果顯示所提模型在歸一化折現(xiàn)累積增益(NDCG)方面有4~10個(gè)百分點(diǎn)的提升,優(yōu)于對比模型。
關(guān)鍵詞:潛在語義模型;注意力機(jī)制;檢索式匹配問答
中圖分類號(hào):TP391
文獻(xiàn)標(biāo)志碼:A
文章編號(hào):1001-9081(2019)04-0972-05
Abstract: Focusing on the problem that the Retrieval Matching Question and Answer (RMQA) model has weak adaptability to Chinese corpus and the neglection of semantic information of the sentence, a Chinese text semantic matching model based on Convolutional neural network Latent Semantic Model (CLSM) was proposed. Firstly, the word-N-gram layer and letter-N-gram layer of CLSM were removed to enhance the adaptability of the model to Chinese corpus. Secondly, with the focus on vector information of input Chinese words, an entity attention layer model was established based on the attention mechanism algorithm to strengthen the weight information of the core words in sentence. Finally, Convolutional Neural Network (CNN) was used to capture the input sentence context structure information effectively and the pool layer was used to reduce the dimension of semantic information. In the experiments based on a medical question and answer dataset, compared with the traditional semantic models, traditional translation models and deep neural network models, the proposed model has 4-10 percentage points ?improvement in Normalized Discount Cumulative Gain (NDCG).
Key words: Convolutional Latent Semantic Model (CLSM); attention mechanism; Retrieval Matching Question and Answer (RMQA)
0?引言
檢索式匹配問答系統(tǒng)的研究伴隨搜索引擎技術(shù)的發(fā)展不斷推進(jìn)。1999年,隨著文本信息檢索會(huì)議中自動(dòng)問答任務(wù)(Text REtrieval Conference (Question & Answering track), TREC(QA))[1]的發(fā)起,檢索式匹配問答系統(tǒng)迎來了真正的研究進(jìn)展。TREC(QA)的任務(wù)是給定特定Web數(shù)據(jù)集,從中找到能夠回答問題的答案。這類方法是以檢索和答案抽取為核心的問答過程,具體過程包括問題分析、篇章檢索和答案抽取[2]。
根據(jù)答案抽取方法的不同,現(xiàn)有的檢索式匹配問答系統(tǒng)可以分為兩類[3]:第一類是基于模式匹配和統(tǒng)計(jì)文本信息抽取的問答方法。該方法需要人工線下設(shè)定好各類問題答案的模式,需要構(gòu)建大量的問答模式,代價(jià)高。第二類是利用神經(jīng)網(wǎng)絡(luò)模型對文本作語義表示后進(jìn)行語義匹配的方法。2013年Huang等[4]針對搜索引擎中問答之間的語義匹配問題,提出了基于多層感知器的深度語義表示模型(Deep Structured Semantic Model, DSSM)。在DSSM中,輸入層是基于文本的詞袋向量,該模型忽略了文本中的詞法、句法和語法信息,將其僅僅看作詞的多種組合,這樣就無法捕捉句子的上下文信息?;诖?,2014年Shen等[5]對DSSM作出改進(jìn),提出了一種基于卷積神經(jīng)網(wǎng)絡(luò)的隱語義模型(Convolutional Latent Semantic Model, CLSM)。該模型將文本的語義信息加入到檢索問答過程中,有效地提高了檢索式問答模型的精確度。2016年CLSM得到了廣泛應(yīng)用,如用它來捕捉目標(biāo)語言在局部上下文或者全局上下文中的含義[6],也有人用它來構(gòu)建推薦系統(tǒng)[7]。
CLSM是基于英文文本作出的改進(jìn):其中字母N元組合模型主要是針對大量不同的英文單詞,從中提取出多種字母組合,對其進(jìn)行特征提取。然而中文漢字的個(gè)數(shù)遠(yuǎn)遠(yuǎn)超過了英文字母的個(gè)數(shù),漢字的組合數(shù)更是遠(yuǎn)遠(yuǎn)超過了英文字母的組合數(shù),因此通過原始CLSM很難對中文文本進(jìn)行語義特征提取。本文結(jié)合中文語料的特點(diǎn),提出了一種基于注意力機(jī)制的改進(jìn)CLSM檢索式匹配問答模型,該模型一方面解決了由于中文漢字遠(yuǎn)遠(yuǎn)多于英文字母而導(dǎo)致的文本特征難提取問題;另一方面加入了基于命名實(shí)體的注意力機(jī)制,能有效提高匹配問答結(jié)果的準(zhǔn)確率。
1?CLSM
如圖1所示,CLSM主要是將一個(gè)潛在語義空間中任意長度的詞語序列所包含的語義信息映射成一個(gè)低維向量。
圖1中:90k表示在不包含下劃線和標(biāo)點(diǎn)符號(hào)的情況下;字母的N元模型層維度是90k;卷積層以及池化層的維度均為300;最終輸出語義信息的維度是128。
CLSM主要由五個(gè)部分構(gòu)成:
1)單詞的N元模型層。此部分的作用是通過一個(gè)自定義大小的滑動(dòng)窗口將輸入的文本序列劃分為多個(gè)固定長度的單詞組合。
2)字母的N元模型層。此部分的作用是將第1)步中的單詞組合轉(zhuǎn)換為由字母組合的向量表示。Wf是轉(zhuǎn)移矩陣。對于單詞N元模型層中的第t個(gè)N元單詞組合,其對應(yīng)的N元字母組合表示為:
3)卷積層。該層通過自定義大小的滑動(dòng)窗口將基于每個(gè)單詞的N元字母特征lt轉(zhuǎn)換為其在上下文中的特征向量ht。
4)最大池化層。通過最大池化將單詞在上下文中的特征向量ht轉(zhuǎn)化為一個(gè)固定長度的句子級(jí)特征向量v。
5)語義層。為輸入的單詞序列提取高級(jí)特征語義向量y。
CLSM是基于英文文本提出的語義特征提取模型,其單詞N元模型層和字母N元模型層都是為了提取英文文本中的特征信息,然而中文文本中漢字的組合數(shù)量遠(yuǎn)遠(yuǎn)超過了英文字母的組合數(shù)量,因此通過N元模型不能有效提取其重要特征?;诖?,本文對CLSM進(jìn)行了改進(jìn)。
2?基于CLSM的改進(jìn)模型
在CLSM中,CNN網(wǎng)絡(luò)扮演了極其重要的作用,對文本序列進(jìn)行字母N元組合卷積。由于本文處理的是中文語料,其漢字組合總數(shù)遠(yuǎn)多于字母組合總數(shù),因此需要將中文語料進(jìn)行分詞,將英文字母組合替換成中文詞組,用中文詞組作為文本序列基本單元。
除此之外,經(jīng)過分詞之后的中文詞組種類繁多,其中含有大量的虛詞以及不相關(guān)的實(shí)詞,這些詞會(huì)嚴(yán)重影響模型的精度。因此本文首先通過命名實(shí)體識(shí)別方法得出文本序列中相關(guān)實(shí)體,然后構(gòu)建實(shí)體關(guān)注層(Entity-attention Layer),目的就是為了更好地解析句子語義,提高模型的精確度。實(shí)體關(guān)注層的結(jié)構(gòu)如圖2所示。
將Wi輸入CNN之后,模型訓(xùn)練與CLSM相同。下面給出數(shù)據(jù)結(jié)構(gòu)的形式化定義:
定義1?實(shí)體類型所對應(yīng)的權(quán)重向量Wentity(t+i)定義為一個(gè)和輸入詞向量v(word(t+i))維度相同的向量。
定義2?實(shí)體關(guān)注層的輸出Wi指的是輸入詞向量矩陣Vx經(jīng)過實(shí)體關(guān)注層后的輸出矩陣,包含句子本身的信息及其權(quán)重信息。
定義3?表示層的輸出y即為最終的語義輸出,其大小定義為128維。
步驟3?構(gòu)建CLSM表示層。該層的輸入為步驟2中計(jì)算獲得的突出命名實(shí)體信息的矩陣Wi,通過與win=1×3進(jìn)行卷積運(yùn)算之后得到初步得到語義信息ht,最終輸出為y=tanh(Ws·max(ht))。
步驟4?最后借助語義匹配模型,通過計(jì)算向量余弦相似度來獲得問答對匹配度sim(ysrc, ytgt),其中ysrc代表問題的語義信息, ytgt代表回答的語義信息。
模型結(jié)構(gòu)如圖3所示。依據(jù)經(jīng)驗(yàn),本文將詞向量的維度設(shè)為300;卷積層和最大池化層的維度分別設(shè)置為300和128;學(xué)習(xí)效率初始值為0.01;卷積層的Filter的大小設(shè)為1×3,這樣既包含了上下文信息,也去除了冗余信息。其輸出是可變長度序列,長度與輸入序列的長度成比例。 在輸入序列的開始和結(jié)尾分別添加一個(gè)特殊的“填充”單詞〈s〉,目的是形成詞組序列中任何位置的單詞的完整窗口。
3?實(shí)驗(yàn)與結(jié)果分析
3.1?實(shí)驗(yàn)數(shù)據(jù)和評(píng)測指標(biāo)
本文采用尋醫(yī)問藥網(wǎng)站上大規(guī)模的在線問答對數(shù)據(jù)作為訓(xùn)練評(píng)估模型的數(shù)據(jù)集。問答對數(shù)據(jù)經(jīng)過分詞和標(biāo)簽替換等預(yù)處理后輸入模型。問答對有47萬對。數(shù)據(jù)分為三個(gè)部分:訓(xùn)練集40萬對、驗(yàn)證集4萬對、測試集3萬對。每個(gè)問答對中問句和答句的平均長度分別為25詞和50詞。問答對數(shù)據(jù)形式如表1所示。實(shí)體代表的是醫(yī)學(xué)領(lǐng)域的核心詞匯,比如疾病、癥狀的名稱等。如表2所示。
神經(jīng)網(wǎng)絡(luò)的初始權(quán)重通過隨機(jī)初始化獲取。模型采用基于小批量隨機(jī)梯度下降的方法進(jìn)行訓(xùn)練,每個(gè)最小批次包括1024個(gè)訓(xùn)練樣本。實(shí)驗(yàn)使用雙重交叉驗(yàn)證方法。模型的評(píng)估都是通過NDCG(Normalized Discounted Cumulative Gain)方法[9]來衡量的。NDCG常用于作為對排序結(jié)果的評(píng)價(jià)指標(biāo),當(dāng)通過模型得出某些元素的順序時(shí),便可以通過NDCG來測評(píng)這個(gè)排序結(jié)果的準(zhǔn)確度,其計(jì)算公式如下:
其中:NDCG@K表示前K個(gè)位置累計(jì)得到的效益;lb (i+1)表示第i個(gè)位置上答案的影響因子的倒數(shù);r(l)表示第l個(gè)答案的相關(guān)度等級(jí),如3表示非常相關(guān),2表示較相關(guān),1表示相關(guān),0表示無關(guān),-1表示垃圾文件。
NDCG其實(shí)是由DCG的值計(jì)算得出的,由式(10)可看出,分子為模型計(jì)算出的Ranking的DCG值,分母為理想情況下的DCG值。
3.2?實(shí)驗(yàn)設(shè)計(jì)
本文設(shè)計(jì)了三組對比實(shí)驗(yàn):1)與傳統(tǒng)語義模型的對比實(shí)驗(yàn)。為了驗(yàn)證本文模型的優(yōu)越性,設(shè)計(jì)了在實(shí)驗(yàn)數(shù)據(jù)集與模型參數(shù)均相同的情況下,本文模型與兩組傳統(tǒng)潛在語義模型的對比實(shí)驗(yàn)。潛在語義模型只能以監(jiān)督學(xué)習(xí)方式或非監(jiān)督學(xué)習(xí)方式在文檔中學(xué)習(xí),其中雙語主題模型(Bilingual Topic Model, BLTM)[10]是監(jiān)督學(xué)習(xí),而概率潛在語義分析模型(Probabilistic Latent Semantic Analysis, PLSA)[11]和文檔主題生成模型(Latent Dirichlet allocation, LDA)[12]是非監(jiān)督學(xué)習(xí)。實(shí)驗(yàn)結(jié)果如表3所示。
2)與傳統(tǒng)翻譯模型的對比實(shí)驗(yàn)。目前,很多學(xué)者將問答對看成源語言和目標(biāo)語言,通過用翻譯模型計(jì)算二者的短語與短語之間的對齊關(guān)系來建立簡單的問答匹配模型。因此,為了驗(yàn)證本文的改進(jìn)模型較傳統(tǒng)翻譯模型的優(yōu)越性,設(shè)計(jì)了一個(gè)基于短語的翻譯模型(Phrase-based Translation Model, PTM)[13]和一個(gè)基于詞的翻譯模型(Word-based Translation Model, WTM)[14]的對比實(shí)驗(yàn),PTM旨在直接模擬多詞短語中的上下文信息。而WTM實(shí)質(zhì)上是PTM的一個(gè)特例。實(shí)驗(yàn)結(jié)果如表4所示。
3)與深度神經(jīng)網(wǎng)絡(luò)模型的對比實(shí)驗(yàn)。為了驗(yàn)證改進(jìn)之后模型的準(zhǔn)確性,設(shè)計(jì)了基于深度神經(jīng)網(wǎng)絡(luò)模型的對比實(shí)驗(yàn)。本文模型是檢索式問答模型,也就是說從眾多候選答案中通過某種方法篩選出最符合要求的答案,理論上可以看作是對候選答案進(jìn)行分類,因此加入一定數(shù)量的負(fù)樣本可以增強(qiáng)和驗(yàn)證模型的檢索匹配的能力。在進(jìn)行與深度神將網(wǎng)絡(luò)模型的對比實(shí)驗(yàn)之前,本文按照以往的經(jīng)驗(yàn)分別將負(fù)樣本數(shù)設(shè)置為0~100,發(fā)現(xiàn)負(fù)樣本數(shù)為50時(shí)訓(xùn)練效果最好,其次是4。因此,分別將J(代表負(fù)樣本數(shù)量)設(shè)置為50和4進(jìn)行了對比實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果如表5所示。
3.3?結(jié)果分析
1)與傳統(tǒng)語義模型的對比實(shí)驗(yàn)。從表3可看出,CLSM+entity_attention模型明顯優(yōu)于傳統(tǒng)的潛在語義模型:在NDCG@1方面較PLSA提升了11個(gè)百分點(diǎn),在NDCG@3方面較LDA提升了12個(gè)百分點(diǎn),與BLTM相比,模型的平均精度提高了10個(gè)百分點(diǎn)。PLSA和LDA均采用了詞袋(bag of words)的方法將每一篇文檔視為一個(gè)詞頻向量,從而將文本信息轉(zhuǎn)化為了易于建模的數(shù)字信息,導(dǎo)致詞與詞之間的順序信息丟失,這不僅簡化了問題的復(fù)雜性,也降低了模型的精度。本文提出的改進(jìn)模型中通過卷積神經(jīng)層恰當(dāng)?shù)亟鉀Q了這一問題。
2)與傳統(tǒng)翻譯模型的對比實(shí)驗(yàn)。從表4可看出,在檢索式問答場景下,PTM優(yōu)于WTM;而CLSM+entity_attention模型與PTM和WTM相比,均有一定幅度的提升。近幾年來,在統(tǒng)計(jì)機(jī)器翻譯領(lǐng)域,基于短語的翻譯模型的性能優(yōu)于基于詞的翻譯模型;但對于句子中非連續(xù)的固定搭配等問題仍然沒有得到有效的解決。本文通過自定義大小的滑動(dòng)窗口來抽取句子中基于詞的上下文信息,然后通過最大池化層進(jìn)行信息篩選,從而提升了模型的優(yōu)越性。
3)與深度神經(jīng)網(wǎng)絡(luò)模型的對比實(shí)驗(yàn)。從表5可看出:CLSM+entity_attention模型較CLSM在NDCG方面有4個(gè)百分點(diǎn)的提升,說明實(shí)體關(guān)注層對模型的精確度提高具有極其重要的作用。在負(fù)樣本數(shù)量J的設(shè)置方面,分別進(jìn)行了三組對比實(shí)驗(yàn):DSSM、CLSM以及CLSM+entity_attention,J=50時(shí)三者各自的NDCG@1和NDCG@2比J=4時(shí)均有一定幅度的提升,因此本文將J設(shè)置為50。
綜上所述,CLSM+entity_attention能夠通過實(shí)體關(guān)注層加強(qiáng)核心詞的信息,同時(shí)利用卷積神經(jīng)網(wǎng)絡(luò)有效地捕獲語義匹配有用的上下文結(jié)構(gòu)方面信息,從而提升檢索式匹配問答的準(zhǔn)確率。
4?結(jié)語
CLSM的新型深度學(xué)習(xí)架構(gòu)主要由CNN的卷積結(jié)構(gòu)支撐,一般通過卷積層來提取句子級(jí)別的特征,通過最大池化層來提取N-gram級(jí)別的局部上下文特征。本文在此基礎(chǔ)上進(jìn)行調(diào)整,加入了基于實(shí)體類型的關(guān)注層,同時(shí)與幾種最先進(jìn)的語義模型進(jìn)行比較,發(fā)現(xiàn)在大規(guī)模真實(shí)問答數(shù)據(jù)集上,改進(jìn)的CLSM檢索式匹配問答模型可進(jìn)一步提高模型對句子的語義理解能力,在NDCG方面有4%以上的提升。不過該模型仍然存在不足,即用于訓(xùn)練模型的中文語料句子復(fù)雜度是不同的,本文主要針對簡單句進(jìn)行了實(shí)驗(yàn),因此未來的工作將在原有基礎(chǔ)上加入基于知識(shí)圖譜的推理式方法,以提高模型應(yīng)用的廣泛性。
參考文獻(xiàn)(References)
[1] AHN D D, JIJKOUN V, MISHNE G A, et al. Using Wikipedia at the TREC QA track[EB/OL]. [2018-05-10]. http://staff.science.uva.nl/~mdr/Publications/Files/uams-trec-2004-final-qa.pdf.
[2] 湯庸, 林鷺賢, 羅燁敏, 等. 基于自動(dòng)問答系統(tǒng)的信息檢索技術(shù)研究進(jìn)展[J]. 計(jì)算機(jī)應(yīng)用, 2008, 28(11): 2745-2748. (TANG Y, LIN L X, LUO Y M, et al. Survey on information retrieval system based on question answering system[J]. Journal of Computer Applications, 2008, 28(11): 2745-2748.)
[3] GAO J F, HE X D, YIH W T, et al. Learning continuous phrase representations for translation modeling [EB/OL]. [2018-05-10]. http://www.aclweb.org/anthology/P14-1066.
[4] HUANG P S, HE X D, GAO J F, et al. Learning deep structured semantic models for Web search using clickthrough data[C]// CIKM 2013: Proceedings of the 22nd ACM International Conference on Information & Knowledge Management. New York: ACM, 2013: 2333-2338.
[5] SHEN Y, HE X D, GAO J F, et al. A latent semantic model with convolutional-pooling structure for information retrieval[C]// CIKM 2014: Proceedings of the 23rd ACM International Conference on Conference on Information and Knowledge Management, New York: ACM, 2014: 101-110.
[6] HE X, GAO J, DENG L, et al. Convolutional latent semantic models and their applications: US 9477654B2[P]. 2015-10-01.
[7] GAO J, PANTEL P, GAMON M, et al. Modeling interestingness with deep neural networks[EB/OL]. [2018-05-10]. http://www.aclweb.org/anthology/D14-1002.
[8] BELLOS C C, PAPADOPOULOS A, ROSSO R, et al. Identification of COPD patients health status using an intelligent system in the CHRONIOUS wearable platform[J]. IEEE Journal of Biomedical and Health Informatics, 2014, 18(3): 731-738.
[9] BUSA-FEKETE R, SZARVAS G, LTETHO T, et al. An apple-to-apple comparison of Learning-to-rank algorithms in terms of normalized discounted cumulative gain[C]// ECAI 2012: Proceedings of the 20th European Conference on Artificial Intelligence. Montpellier, France: IOS Press, 2012:16.
[10] GAO J F, TOUTANOVA K, YIH W T. Clickthrough-based latent semantic models for Web search[C]// SIGIR 2011: Proceedings of the 34th International ACM SIGIR Conference on Research and Development in Information Retrieval. New York: ACM, 2011: 675-684.
[11] 徐佳俊, 楊飏, 姚天昉, 等. 基于LDA模型的論壇熱點(diǎn)話題識(shí)別和追蹤[J]. 中文信息學(xué)報(bào), 2016, 30(1): 43-49. (XU J J, YANG Y, YAO T F, et al. LDA based hot topic detection and tracking for the forum[J]. Journal of Chinese Information Processing, 2016, 30(1): 43-49.)
[12] LU Z D, LI H. A deep architecture for matching short texts[EB/OL]. [2018-05-10]. http://papers.nips.cc/paper/5019-a-deep-architecture-for-matching-short-texts.pdf.
[13] GAO J, HE X, NIE J Y. Clickthrough-based translation models for Web search: from word models to phrase models[C]// CIKM 2010: Proceedings of the 19th ACM International Conference on Information and Knowledge Management. New York: ACM, 2010: 1139-1148.
[14] 劉紅光, 魏小敏. Bag of Words算法框架的研究[J]. 艦船電子工程, 2011, 31(9): 125-128. (LIU H G, WEI X M. Research on frame of bag of words algorithm[J]. Ship Electronic Engineering, 2011, 31(9): 125-128.)