欒克鑫+孫承杰+劉秉權(quán)+王曉龍
摘要:答案自動(dòng)抽取是答案融合任務(wù)的關(guān)鍵技術(shù),其效果直接影響答案融合任務(wù)結(jié)果的準(zhǔn)確性。為了捕捉問題與答案之間的聯(lián)系,提高答案自動(dòng)抽取的準(zhǔn)確性,本文引入句內(nèi)注意力機(jī)制用來捕捉問題與答案之間的聯(lián)系,進(jìn)而提高答案自動(dòng)抽取的準(zhǔn)確性。實(shí)驗(yàn)結(jié)果表明,句內(nèi)注意力機(jī)制能夠有效發(fā)現(xiàn)問句與答案的關(guān)系,提升答案自動(dòng)抽取效果。
關(guān)鍵詞: 答案自動(dòng)抽取; 句內(nèi)注意力機(jī)制; 答案融合
中圖分類號(hào):TP391
[KG3]文獻(xiàn)標(biāo)志碼: A
文章編號(hào): 2095-2163(2017)05-0087-06
Abstract: The automatic answer extraction is the key technology of the answer fusion task, whose effect directly affects the accuracy of the answer fusion task results. In order to capture the relationship between the question and the answer and improve the accuracy of the automatic answer extraction, this paper introduces the innerattention mechanism to capture the connection between the question and the answer, and then improve the accuracy of the automatic answer extraction. Experimental results show that the innerattention mechanism can effectively find the relationship between the question and the answer, therefore improve the effect of automatically extracting the answer.
Keywords: automatic answer extraction; innerattention mechanism; answer fusion
收稿日期: 2017-06-14
0引言
答案融合[1]任務(wù)的核心問題是答案自動(dòng)抽取[2],答案自動(dòng)抽取結(jié)果的準(zhǔn)確率影響任務(wù)結(jié)果的準(zhǔn)確率。因此需要確保模型能夠準(zhǔn)確從各個(gè)文檔中準(zhǔn)確尋找到答案。
例如用戶向系統(tǒng)輸入一個(gè)問題“什么是低碳生活?”,候選答案中包括“低碳生活是一種健康的生活方式”,“低碳意指較低的溫室氣體”,“這股風(fēng)潮逐漸在大城市興起?!逼渲?,“低碳生活是一種健康的生活方式”是能夠回答問題的答案。答案自動(dòng)抽取是根據(jù)用戶輸入的問題“什么是低碳生活?”,從候選答案文檔中得到正確答案,即“低碳生活是一種健康的生活方式”。
傳統(tǒng)的答案自動(dòng)抽取,依據(jù)問句以及答案中提取的多種特征對(duì)答案進(jìn)行打分,并依據(jù)打分抽取答案。隨著知識(shí)庫[3]的出現(xiàn),學(xué)者嘗試將知識(shí)庫技術(shù)應(yīng)用于答案自動(dòng)抽取任務(wù)中,并基于知識(shí)庫的先驗(yàn)知識(shí)判斷問句與候選答案之間具有相同實(shí)體的個(gè)數(shù),同時(shí)計(jì)算問句與候選答案之間的相關(guān)度,由此將抽取出相關(guān)答案。隨著深度學(xué)習(xí)的出現(xiàn),人們嘗試將深度學(xué)習(xí)技術(shù)應(yīng)用于答案自動(dòng)抽取中,從而減少人工特征的提取。
唐朝霞[4]提出了一種基于特種特征融合的答案自動(dòng)抽取方法,從問題及答案中抽取出多種特征,如詞形相似度特征、長(zhǎng)度相似度特征、詞序相似度特征、詞語相似度特征以及問句語義相似度特征等。模型通過提取出多種特征,并進(jìn)行融合輸入到分類器中,得到句子評(píng)分,基于評(píng)分進(jìn)行篩選。傳統(tǒng)方法中的特征提取更多依賴于Hownet以及特征融合過程中的權(quán)值設(shè)置。Hownet對(duì)于很多新出現(xiàn)的詞匯無法處理,同時(shí)權(quán)值設(shè)置過分依賴人工的選取。
余正濤[5]提出了一種基于答案模式的答案自動(dòng)抽取,通過對(duì)問題進(jìn)行分類,然后通過構(gòu)建語料庫,對(duì)不同類型的問題進(jìn)行答案模式的訓(xùn)練,答案模式是一種對(duì)答案句法規(guī)則的形式化描述,針對(duì)不同類型的問題,答案模式都是不同的。在答案抽取的過程中,先對(duì)問題進(jìn)行分類,然后利用訓(xùn)練好的模型,通過候選答案進(jìn)行篩選,保留有限個(gè)最符合該答案模型的答案句子。與傳統(tǒng)的基于多種特征的答案自動(dòng)抽取相比,該方法依照模型學(xué)到的問題類型的回答規(guī)范進(jìn)行篩選答案,同時(shí)輔以特征,能夠較好地從文檔中抽取出答案。
隨著深度學(xué)習(xí)的日趨成熟,深度學(xué)習(xí)的諸多方法被引入到答案自動(dòng)抽取任務(wù)中,如長(zhǎng)短期記憶網(wǎng)絡(luò)(Long Short-Term Memory, LSTM)[6]和卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks, CNN)[7]等。Yu[8]嘗試了基于卷積神經(jīng)網(wǎng)的答案排序方法,將答案排序作為二分類問題來處理,利用模型得到問題與答案相關(guān)度的分?jǐn)?shù)。在給定文檔中,將候選文檔切分成句子,將句子和問題分別用預(yù)訓(xùn)練好的詞向量進(jìn)行句子表示,并利用CNN提取句子表示,將問題與答案的句子表示進(jìn)行拼接,并添加詞共現(xiàn)特征形成一個(gè)新的特征,最終輸入到前饋神經(jīng)網(wǎng)中,得到候選答案與用戶問題的相關(guān)度打分,判斷候選答案與用戶問題的匹配程度,按匹配程度從大到小排列,最終抽取出答案。
Fu[9]提出了一種基于CNN及注意力模型的答案排序算法,將答案排序作為二分類問題來處理,利用模型得到用戶問題與候選答案之間的相關(guān)度打分。將給定的包含候選答案的文檔進(jìn)行句子切分,并用詞向量對(duì)候選答案及用戶問題進(jìn)行詞向量句子表示。
近幾年,注意力機(jī)制[10]逐漸走入學(xué)界視野,被廣泛應(yīng)用于圖像識(shí)別[11]以及機(jī)器翻譯[12]領(lǐng)域,在機(jī)器翻譯領(lǐng)域,注意力機(jī)制能夠有效發(fā)現(xiàn)2個(gè)句子間的詞與詞的聯(lián)系,從而翻譯得更加精準(zhǔn)。常見的注意力機(jī)制有靜態(tài)注意力機(jī)制[10]、動(dòng)態(tài)注意力機(jī)制[10]。Liu[13]提出了一種句內(nèi)注意力機(jī)制(inner-attention),該機(jī)制被用于文本蘊(yùn)含中,能夠有效發(fā)掘句子間的語義邏輯關(guān)系。endprint
本文將句內(nèi)注意力機(jī)制應(yīng)用于答案自動(dòng)抽取任務(wù)中,同時(shí)結(jié)合深度學(xué)習(xí)技術(shù),僅用少量人工特征即可實(shí)現(xiàn)答案自動(dòng)抽取,提高答案自動(dòng)抽取效果。
1基于句內(nèi)注意力機(jī)制的答案自動(dòng)抽取
1.1問題描述
答案自動(dòng)抽取算法是答案自動(dòng)抽取及融合任務(wù)中的核心問題,答案自動(dòng)抽取算法的準(zhǔn)確性直接影響任務(wù)結(jié)果的準(zhǔn)確性。句內(nèi)注意力機(jī)制能夠很好地挖掘句子間和詞間的關(guān)系,從而發(fā)現(xiàn)問題與答案的關(guān)系。本文將句內(nèi)注意力機(jī)制應(yīng)用于答案自動(dòng)抽取任務(wù)中,使用句內(nèi)注意力機(jī)制嘗試尋找問答對(duì)之間詞的關(guān)系,從而尋找問題與答案之間的聯(lián)系,減少人工特征,實(shí)現(xiàn)答案自動(dòng)抽取。同時(shí)針對(duì)基于句內(nèi)注意力的答案自動(dòng)抽取模型中存在的問題,引入了人工特征,提高答案自動(dòng)抽取效果。
1.2.2詞共現(xiàn)特征
由于語料庫的限制,只使用深度學(xué)習(xí)方法解并不能很好地對(duì)答案自動(dòng)進(jìn)行抽取。本文對(duì)語料進(jìn)行分析,如“雙重人格有什么基本特征?”,“多重人格的基本特征是,雖然同一個(gè)體具有2種或更多完全不同的人格,但在某一時(shí)間,只有其中之一明顯?!边@是語料庫中的一個(gè)問答對(duì),前句是問題,后句是答案。問句與答案句中有很明顯的相同點(diǎn),如人格、基本特征等。這些詞都在問句與答案句中共同出現(xiàn)。經(jīng)過分析發(fā)現(xiàn),語料庫中大部分語料都有與例句相同的特點(diǎn),因此本文引入詞共現(xiàn)特征。詞共現(xiàn)特征舉例如表1所示。
由表1得到問題特征向量:[0,1,1,1],答案特征向量:[1,1,1,0,0,0,1,0]。
在表1中列是問句“什么是低碳生活”的分詞結(jié)果,行是答案“低碳生活是一種健康的生活方式” 的分詞結(jié)果。表中的1代表著問句與答案之間存在著詞共現(xiàn)現(xiàn)象。比如“低碳”、“生活”、“是”。因此本文將問句與答案句中出現(xiàn)詞共現(xiàn)的位置上的值設(shè)置為1,其他位置設(shè)置為0。如問題句有4個(gè)詞,因此特征向量長(zhǎng)度為4,問題與答案之間共現(xiàn)了3個(gè)詞,分別是“低碳”、“生活”、“是”,其中“是”出現(xiàn)在句子第2個(gè)位置上,所以將問題特征第2個(gè)位置置為1,“低碳”出現(xiàn)在問題第3個(gè)位置上,問題特征第3個(gè)位置置為1,“生活”出現(xiàn)在問題第4個(gè)位置上,問題特征第4個(gè)位置置為1,其他位置置為0。答案特征也做相同的操作。
1.2.3文檔倒數(shù)特征
為了區(qū)分共現(xiàn)詞的重要程度,引入文檔倒數(shù)特征。
如表2所示,由此得到問題文檔倒數(shù)[0,1,0.5,1]以及答案文檔倒數(shù)特征[0.5,1,1,0,0,0,1,0]。
由表2提取的是文檔倒數(shù)特征,在表1中提取了詞共現(xiàn)特征,但詞共現(xiàn)特征中,不能區(qū)分出每個(gè)詞之間的重要程度,例如在表2所舉的例子中,“低碳”在2個(gè)候選答案中都出現(xiàn)了,“生活”只在第1個(gè)答案中出現(xiàn),而第1個(gè)答案是正確答案,第2個(gè)并不能很好解釋低碳生活。由此可見“低碳”和“生活”的重要程度是不一樣的?!吧睢痹趯ふ掖鸢笗r(shí)是更重要的成分,因此本文加入文檔倒數(shù)特征,區(qū)分共現(xiàn)詞的答案,使模型能夠更好地依據(jù)重要詞對(duì)候選答案進(jìn)行打分。
2實(shí)驗(yàn)
2.1數(shù)據(jù)及數(shù)據(jù)預(yù)處理
2.1.1數(shù)據(jù)集介紹
答案自動(dòng)抽取及融合任務(wù)中使用的NLPCC于2016年4月發(fā)布的開放域中基于文檔的問答語料。DBQA語料庫中包含181 882條問答對(duì),數(shù)據(jù)正負(fù)例比例接近1∶20。語料格式如表4所示。
首句為問題句,第2句為答案句,最后的數(shù)字表示是否是候選答案,0表示不是答案,1為是答案。
NLPCC的DBQA語料庫主要用于問答系統(tǒng),用來回答用戶問題,其答案是從文檔中的檢索,并將答案排序,最終返回給用戶。
2.1.2數(shù)據(jù)預(yù)處理
本文將答案自動(dòng)抽取轉(zhuǎn)換為從包含答案的多個(gè)候選文檔中根據(jù)用戶給定的問句由其中抽取出最能回答問題的相關(guān)檔案。因此答案自動(dòng)抽取選用NLPCC的DBQA語料庫。
對(duì)于訓(xùn)練數(shù)據(jù),首先在讀取語料時(shí)對(duì)來自于同一文檔的問答對(duì)進(jìn)行歸類,方便后期進(jìn)行特征提取。對(duì)問答對(duì)進(jìn)行分詞處理,同時(shí)對(duì)未登錄詞進(jìn)行初步過濾,將分詞后的問答對(duì)轉(zhuǎn)化為index形式的句子。訓(xùn)練模型使用gensim工具在百度百科語料上訓(xùn)練的詞向量,詞向量維度保存200維。
2.4平衡語料庫
因?yàn)檎Z料過于不平衡,本文采用隨機(jī)采樣的方法對(duì)語料進(jìn)行平衡。隨機(jī)采樣方法是通過某種策略改變數(shù)據(jù)集的樣本分布,使數(shù)據(jù)從分布不平衡達(dá)到分布平衡。隨機(jī)采樣算法是最簡(jiǎn)單且容易實(shí)現(xiàn)的采樣方法。主要分為2種:一種是隨機(jī)欠采樣,另一種是隨機(jī)過采樣。其中,隨機(jī)過采樣是指對(duì)于少數(shù)據(jù)量的樣本集進(jìn)行多次有放回的采樣,通過隨機(jī)的方法將少數(shù)據(jù)量的樣本進(jìn)行擴(kuò)大,最終達(dá)到一個(gè)平衡,從而解決樣本不平衡的問題。而隨機(jī)欠采樣是訓(xùn)練時(shí)隨機(jī)從多數(shù)樣本中按照采樣率進(jìn)行采樣。隨機(jī)欠采樣包括:有放回的隨機(jī)欠采樣以及無放回的隨機(jī)欠采樣。
文本嘗試隨機(jī)過采樣以及隨機(jī)欠采樣結(jié)合的方式解決數(shù)據(jù)不平衡問題。對(duì)正例進(jìn)行有放回的隨機(jī)過采樣,對(duì)負(fù)例進(jìn)行有放回的隨機(jī)負(fù)采樣。
平衡數(shù)據(jù)實(shí)驗(yàn)結(jié)果如表5所示。
經(jīng)過實(shí)驗(yàn),發(fā)現(xiàn)正例采用16倍過采樣、負(fù)例采用隨機(jī)采樣時(shí)模型效果最好,因此本文所有實(shí)驗(yàn)都采用正例16倍過采樣,負(fù)例隨機(jī)采樣。
2.5基線
本文除了基于句內(nèi)注意力機(jī)制的答案自動(dòng)抽取模型,還使用了基于詞對(duì)齊注意力機(jī)制的答案自動(dòng)抽取模型、基于相似度矩陣的答案自動(dòng)抽取、基于句子匹配的答案自動(dòng)抽取等。[JP+2]
其中,基于相似度矩陣的答案自動(dòng)抽取模型是在句內(nèi)注意力機(jī)制的基礎(chǔ)上引入相似度矩陣打分。在基于相似度矩陣的答案自動(dòng)抽取模型實(shí)現(xiàn)中,對(duì)于輸入的句子Si,Sj先利用句內(nèi)注意力機(jī)制計(jì)算出句內(nèi)注意力特征Fi,F(xiàn)j,利用Fi,F(xiàn)j做句子匹配特征計(jì)算,得到特征T1,提取詞共現(xiàn)特征T2以及文檔倒數(shù)特征T3,然后通過相似度矩陣計(jì)算得到特征T4。將4個(gè)特征拼接得到最終特征[T1;T2;T3;T4]。基于相似度矩陣的答案自動(dòng)抽取模型如圖上述所有實(shí)驗(yàn)結(jié)果都是基于正例16倍過采樣,負(fù)例隨機(jī)采樣。endprint
由實(shí)驗(yàn)結(jié)果可以看出句子匹配模型、詞對(duì)齊注意力模型和句內(nèi)注意力模型沒有額外特征,句內(nèi)注意力模型的表現(xiàn)效果最好,MAP達(dá)到0.567 4,MRR達(dá)到0.568,高于句子匹配模型的0.388 6和0.392 7,同時(shí)高于詞對(duì)齊注意力模型的0.477 4和0.478。說明在只使用模型提取的特征中句內(nèi)注意力機(jī)制能夠更好地找到問句與答案間的關(guān)系。
由于語料庫大小的關(guān)系,很多答案不能被很好地判斷,因此在基于句內(nèi)注意力機(jī)制的答案自動(dòng)抽取模型中加入人工特征,加入詞共現(xiàn)特征、文檔倒數(shù)特征、相似度打分特征以及詞相似度特征。
實(shí)驗(yàn)表明,加入詞共現(xiàn)以及文檔倒數(shù)的模型比只使用句內(nèi)注意力機(jī)制的模型能夠更好地抽取答案。加入相似度矩陣的模型比詞共現(xiàn)-文檔倒數(shù)模型效果差,說明相似度矩陣并不能很好地發(fā)現(xiàn)問句與答案句之間的特點(diǎn)。
而引入詞相似度的模型比上述所有模型效果都要好,模型更多地考慮了詞之間的相關(guān)度,解決了沒有共現(xiàn)詞情況的答案判斷,進(jìn)一步提高了模型抽取答案的準(zhǔn)確率。
3結(jié)束語
基于句內(nèi)注意力機(jī)制的答案自動(dòng)抽取模型能夠有效地從候選文檔中提取候選答案,相對(duì)于其它深度學(xué)習(xí)模型,能更好地從文檔中抽取候選單。而引入人工特征后,進(jìn)一步提升了模型的效果。同時(shí)由于模型只使用了句內(nèi)注意力機(jī)制、詞共現(xiàn)特征、文檔倒數(shù)特征和詞相似度特征,使得模型能夠在多種語言上使用,而不僅限于某種特定的語言。
基于句內(nèi)注意力機(jī)制的答案自動(dòng)抽取模型能夠有效地發(fā)現(xiàn)問句與答案之間詞與詞的聯(lián)系,發(fā)掘問句與候選答案之間的關(guān)系,得到了良好的答案自動(dòng)抽取效果。
參考文獻(xiàn):
劉秉權(quán), 徐振, 劉峰, 等. 面向問答社區(qū)的答案摘要方法研究綜述[J]. 中文信息學(xué)報(bào), 2016, 30(1): 1-7,15.
[2] 鄭實(shí)福, 劉挺, 秦兵, 等. 自動(dòng)問答綜述[J]. 中文信息學(xué)報(bào), 2002, 16(6): 46-52.
[3] NAKAI K, KANEHISA M. A knowledge base for predicting protein localization sites in eukaryotic cells[J]. Genomics, 1992, 14(4): 897-911.
[4] 唐朝霞. 多特征融合的中文問答系統(tǒng)答案抽取算法[J]. 貴州大學(xué)學(xué)報(bào)(自然科學(xué)版), 2011, 28(5): 80-83.
[5] 余正濤, 毛存禮, 鄧錦輝, 等. 基于模式學(xué)習(xí)的中文問答系統(tǒng)答案抽取方法[J]. 吉林大學(xué)學(xué)報(bào) (工學(xué)版), 2008, 38(1): 142-147.
[6] SIMARD P Y, STEINKRAUS D, PLATT J C. Best practices for convolutional neural networks applied to visual document analysis[C]// International Conference on Document Analysis and Recognition, 2003. Proceedings. Edinburgh, UK:IEEE, 2003:958.
[7] HOCHREITER S, SCHMIDHUBER J. Long short term memory[J]. Neural Computation,1997,9(8):1735-1780.
[8] YU L, HERMANN K M, BLUNSOM P, et al. Deep learning for answer sentence selection[J]. arXiv preprint arXiv: 1412.1632v1, 2014.
[9] FU Jian, QIU Xipeng, HUANG Xuanjing. Convolutional deep neural networks for document-based question answering[C]// LIN C Y, XUE N, ZHAO D, et al. Natural Language Understanding and Intelligent Applications. ICCPOL 2016, NLPCC 2016. Lecture Notes in Computer Science. Cham:Springer, 2016:790-797.
[10]ROCKTSCHEL T, GREFENSTETTE E, HERMANN K M, et al. Reasoning about entailment with neural attention[J]. arXiv preprint arXiv:1509.06664, 2015.
[11]楊健, 楊靜宇, 金忠. 最優(yōu)鑒別特征的抽取及圖像識(shí)別[J]. 計(jì)算機(jī)研究與發(fā)展, 2001, 38(11): 1331-1336.
[12]劉群. 統(tǒng)計(jì)機(jī)器翻譯綜述[J]. 中文信息學(xué)報(bào), 2003, 17(4):1-12.
[13]LIU Yang, SUN Chengjie, LIN Lei, et al. Learning natural language inference using bidirectional LSTM model and inner-attention[J]. arXiv preprint arXiv:1605.09090, 2016.
[14]MOU Lili, RUI Men, LI Ge, et al. Recognizing entailment and contradiction by treebased convolution[J]. arXiv preprint arXiv:1512.08422, 2015.
[15]IOFFE S, SZEGEDY C. Batch normalization: Accelerating deep network training by reducing internal covariate shift[J]. arXiv preprint arXiv:1502.03167, 2015.endprint