裴鳴軒 馮艷紅 王金玉
摘? 要:智能問答是自然語言處理領(lǐng)域一個(gè)非常熱門的研究方向,其綜合運(yùn)用了很多自然語言處理技術(shù)。為提高智能問答系統(tǒng)的正確性和準(zhǔn)確性,文章提出了融合注意力機(jī)制的Unified-Transformer模型。在數(shù)據(jù)集上對提出的算法進(jìn)行了測試,實(shí)驗(yàn)結(jié)果表明,相較于常用的模型,該模型可以更好地解決問答問題,提升問答系統(tǒng)的精度,可以為其他領(lǐng)域的問答系統(tǒng)提供全新的思路。
關(guān)鍵詞:記憶網(wǎng)絡(luò);智能問答;Transformer
中圖分類號:TP391.1;TP18? ? ? ? ? ? ? ? 文獻(xiàn)標(biāo)識碼:A文章編號:2096-4706(2021)23-0123-05
Research on Unified-Transformer Automatic Question Answering System Integrating Attention Mechanism
PEI Mingxuan1, FENG Yanhong2, WANG Jinyu1
(1.School of Information Engineering, Dalian Ocean University, Dalian? 116023, China; 2.Key Laboratory of Marine Information Technology of Liaoning Province, Dalian Ocean University, Dalian? 116023, China)
Abstract: Intelligent question answering is a very popular research direction in the field of natural language processing. It comprehensively uses many natural language processing technologies. In order to improve the correctness and accuracy of intelligent question answering system, this paper proposes the Unified-Transformer model integrating attention mechanism. The proposed algorithm is tested on the data set. The experimental results show that compared with the commonly used models, the model can better solve the question answering problem, improve the accuracy of the question answering system, and can provide a new idea for the question answering system in other fields.
Keywords: memory network; intelligent question answering; Transformer
0? 引? 言
近年來,智能問答[1-3]一直是自然語言處理領(lǐng)域的研究熱點(diǎn)之一,引起人們的廣泛重視。智能問答可以追溯到人工智能誕生的時(shí)候,圖靈于1950年提出觀察機(jī)器是否具備合理解決某一問題所需能力的設(shè)想,并以此檢驗(yàn)機(jī)器是否擁有人類智能,也就是人工智能。Weizenbaum于1966年設(shè)計(jì)了一款名叫ELIZA的聊天機(jī)器人[4],實(shí)現(xiàn)了機(jī)器與人之間簡單的溝通交流,然而,這并不代表機(jī)器真正意義上掌握了自然語言。此后也有大量的研究成果出現(xiàn),例如Colby設(shè)計(jì)的Jabberwwacky[5]、ALICE[6]、Parrry[7],IBM公司于2011年設(shè)計(jì)并開發(fā)了超級計(jì)算機(jī)“沃森”,微軟在2014年正式推出小冰機(jī)器人。其中,“沃森”在知識競賽電視節(jié)目中上演“人機(jī)大戰(zhàn)”,打敗了兩位世界頂尖的人類棋手,這也被認(rèn)為是人工智能領(lǐng)域的一次里程碑式發(fā)展。在傳統(tǒng)的智能問答中,基于信息檢索的問答是較為常用的經(jīng)典方法,還有基于知識圖譜的問答方法,基于閱讀理解的問答方法,等等。
記憶網(wǎng)絡(luò)[8,9]是近年來在智能問答中出現(xiàn)的一種更好的方法。而在這之前,RNN[10,11]、LSTM[11,12]及其變種gru采用了一定的記憶機(jī)制。2015年,F(xiàn)acebook AI提出MEMORY NETWORKS[13,14],這也是人類首次提出記憶網(wǎng)絡(luò),使用記憶組件保存場景信息,以實(shí)現(xiàn)長期記憶的功能。MEMORY NETWORKS相比之前的記憶機(jī)制,記憶能力進(jìn)一步增強(qiáng)。
傳統(tǒng)的記憶網(wǎng)絡(luò)包括I、G、O、R四個(gè)組件。在I中將所有輸入轉(zhuǎn)換為網(wǎng)絡(luò)里的向量,然后在G中更新記憶,傳輸?shù)絆中,將所有合適的記憶抽取出來,再返回去一個(gè)向量。每次獲得一個(gè)向量,代表了一次推理過程,最后在R中轉(zhuǎn)化為所需的格式,比如文字或者是answer。End-To-End Memory Networks[15]是在MEMORY NETWORKS的基礎(chǔ)上提出的一種端到端訓(xùn)練方法。它指出通過反復(fù)的實(shí)驗(yàn)來提取有用的信息,并進(jìn)行反復(fù)推理。還有一種是MEMORY NETWORKS的改進(jìn)版,提出DMN網(wǎng)絡(luò)模型包含輸入、問題、情景記憶、回答四個(gè)模塊。模型首先會(huì)計(jì)算輸入和所提問題的有關(guān)向量表示,然后根據(jù)提出的問題觸發(fā)Attention機(jī)制,使用門控制器的方法選出與問題相關(guān)的輸入。最后,情景記憶模塊會(huì)結(jié)合相關(guān)的輸入和提出的問題通過迭代生成記憶,并且得到一個(gè)答案的向量表示。當(dāng)前,最火熱也是使用最頻繁的是長短時(shí)記憶網(wǎng)絡(luò)(Long Short Term Memory Network, LSTM),普通的循環(huán)神經(jīng)網(wǎng)絡(luò)RNN很難訓(xùn)練,這導(dǎo)致在實(shí)際應(yīng)用中很難處理長距離的依賴。長短時(shí)記憶網(wǎng)絡(luò)成功解決了原始循環(huán)神經(jīng)網(wǎng)絡(luò)的弊端。
經(jīng)典的Transformer結(jié)構(gòu)將Encoder和Decoder獨(dú)立開來。預(yù)訓(xùn)練的時(shí)候,Encoder將對話歷史進(jìn)行編碼,然后將編碼后的結(jié)果傳給Decoder以生成回復(fù)。需要注意的是,Encoder部分的mask是雙向語言模型建模,Decoder部分是單向語言模型建模。
這樣的結(jié)構(gòu)設(shè)計(jì)會(huì)帶來兩種問題:首先,解碼器堆疊在編碼器的輸出上,使得微調(diào)過程在更新編碼器參數(shù)時(shí)效率較低;其次,有部分工作UNILMv2指出Transformer-ED架構(gòu)中的顯式編碼器可能是冗余的,編碼步驟可以直接合并到解碼器中,從而允許更直接地更新參數(shù)。
1? 相關(guān)工作
在基于RNN編碼器——解碼器模型的神經(jīng)翻譯質(zhì)量方面,Kim等人提出了預(yù)測器——估計(jì)器方法,用以解決翻譯質(zhì)量估計(jì)這一問題。預(yù)測器RNN編碼器——解碼器模型完成訓(xùn)練建模后,將從中獲得針對翻譯中每個(gè)單詞特征生成的質(zhì)量特征,而估計(jì)器則將單詞級別特征轉(zhuǎn)換為語句級別特征。針對不能同時(shí)對預(yù)測器和估計(jì)器進(jìn)行訓(xùn)練的不足,Li等人提出了將預(yù)測器和估計(jì)器組成一個(gè)端到端的深度神經(jīng)網(wǎng)絡(luò),并通過譯文質(zhì)量估計(jì)語料訓(xùn)練的整個(gè)模型參數(shù)。
來自FAIR的學(xué)者們提出了一個(gè)(Unified Transformer, UniT)模型,它能夠同時(shí)學(xué)習(xí)不同領(lǐng)域的重要任務(wù),比如目標(biāo)檢測、語言理解和多模態(tài)推理?;赥ransformer編碼器-解碼器架構(gòu),UniT模型利用單個(gè)編碼器對所有輸入模態(tài)進(jìn)行編碼,并在各個(gè)目標(biāo)任務(wù)上利用一組共享解碼器對解碼后的所有輸入表示加以預(yù)測估計(jì),最后再對特定于任務(wù)的輸出表示加以預(yù)測估計(jì)。而整個(gè)模塊對各個(gè)目標(biāo)任務(wù)的損失實(shí)現(xiàn)了端到端訓(xùn)練。與以往采用transformer的多任務(wù)學(xué)習(xí)方式不同,科研人員可以在各個(gè)目標(biāo)任務(wù)上共享相同的模型參數(shù),而不是單獨(dú)微調(diào)特定于任務(wù)的模型,并處理各個(gè)不同領(lǐng)域更加多樣的任務(wù)。在實(shí)驗(yàn)中,科研人員在八個(gè)數(shù)據(jù)集上共同學(xué)習(xí)了七項(xiàng)任務(wù),并且可以在相同的監(jiān)督下僅僅使用一組緊湊的模型參數(shù),在各個(gè)應(yīng)用領(lǐng)域均實(shí)現(xiàn)了媲美以往模型的性能。
2? Transformer網(wǎng)絡(luò)模型
本文提出一種融合注意力機(jī)制[16]的Transformer模型,用戶只需使用一個(gè)統(tǒng)一的單一模型即可共同學(xué)習(xí)不同模式的多個(gè)任務(wù)。該模型單元建立在變壓器編碼器-解碼器結(jié)構(gòu)的基礎(chǔ)上,由各種輸入模態(tài)類型的獨(dú)立編碼器構(gòu)成,后跟具有簡單任務(wù)特定頭部的解碼器(每個(gè)任務(wù)或共享)。而對于語言輸入,則使用BERT(尤其是12層的無基礎(chǔ)版本),將所有輸入詞(例如問題)都編碼為來自BERT最后一層的隱藏狀態(tài)序列。在將輸入模態(tài)編碼到隱藏狀態(tài)序列以后,我們將變換器解碼器應(yīng)用到單個(gè)編碼模態(tài)或兩個(gè)編碼模態(tài)的級聯(lián)序列中,這取決于任務(wù)是單峰(即僅視覺或僅語言)還是多峰。
Transformer[17-19]可以將它看作一個(gè)黑盒,比如在機(jī)器翻譯中,接收某一種語言的詞句進(jìn)行輸入,之后再將其翻譯成另外的語言輸出。Transformer由編碼組件、解碼組件以及連接層構(gòu)成。如圖1所示,編碼組件由六層編碼器首尾相連堆砌而成,解碼組件也是由六層解碼器堆砌而成的。編碼器結(jié)構(gòu)是完全相同的,但是它并不會(huì)共享參數(shù),因?yàn)槊恳粋€(gè)編碼器都可以拆解成以下兩個(gè)字部分。編碼器的輸入功能是首先通過一個(gè)self-attention層,該層幫助編碼器能夠看到輸入序列中的任何其他單詞。
self-attention的輸出會(huì)流向一個(gè)前向網(wǎng)絡(luò),而每個(gè)輸入位置與相對應(yīng)的前向網(wǎng)絡(luò)是相互獨(dú)立且互不干擾的。如圖2所示,解碼器同樣也有這些子層,只不過是在兩個(gè)子層之間添加了attention層,該層有助于解碼器注意到輸入語句的相關(guān)部分,與seq2seq model[20]的Attention作用很相似。
Transformer在編碼器和解碼器中均采用自注意層堆棧。位置編碼和多頭結(jié)構(gòu)用于在更高維度上提供位置信息和建模關(guān)系。標(biāo)準(zhǔn)的多頭注意力將相同的輸入特征序列投影到不同的特征空間中:密鑰、查詢、值分別由aK∈Rn×dm、Q∈Rn×dm、V∈Rn×dm表示,其中n表示序列長度,dm表示特征維度?;诿荑€和查詢計(jì)算注意力權(quán)重,公式為:
其中,、∈Rdm×dk和Am∈Rn×n表示頭部m={1,2,…,m}的注意力權(quán)重。然后我們采用權(quán)重和值來計(jì)算注意力的值,Attnm=AmV。其中,∈Rdm×dv和Attnm∈Rn×dv是前面m的注意力值。最后,我們將每個(gè)頭部的結(jié)果連接起來以獲得多頭部注意力:MH Attn=[Attn1,…,AttnM] WO。其中,WO∈RMdv×dm表示線性投影,[·]表示串聯(lián)操作。在多頭自我注意力的幫助下,變換器通過讓輸入特征序列彼此關(guān)注來編碼輸入特征序列,其中輸出特征捕獲遠(yuǎn)程上下文,促使我們將其應(yīng)用于密集的每像素分類任務(wù)。
3? 試驗(yàn)結(jié)果與分析
對上文中所提出的融合了注意力機(jī)制的Unified-Transformer模型及改進(jìn)方案分別進(jìn)行實(shí)驗(yàn)評估和結(jié)果分析。首先,對實(shí)驗(yàn)中應(yīng)用的公開數(shù)據(jù)集DuConv中的問答數(shù)據(jù)集加以簡單說明;然后,對融合了注意力機(jī)制的Unified-Transformer模型中的評估指標(biāo)及實(shí)驗(yàn)參數(shù)設(shè)置做出簡單解釋;最后,根據(jù)試驗(yàn)結(jié)果進(jìn)行相應(yīng)的模型比較和實(shí)驗(yàn)分析。
4? 實(shí)驗(yàn)方法與比較
4.1? 實(shí)驗(yàn)數(shù)據(jù)集
在百度公司之前所發(fā)表的DuConv數(shù)據(jù)集中進(jìn)行實(shí)驗(yàn),如圖3所示該數(shù)據(jù)集中包含30 k對話Session,其中對話輪數(shù)約為120 k。我們將數(shù)據(jù)切分為訓(xùn)練集(100 k輪對話)、開發(fā)集(10 k輪對話)、測試集(10 k輪對話)。
另外,該數(shù)據(jù)還給出了影視、演員等相關(guān)領(lǐng)域的知識圖譜,進(jìn)行人工標(biāo)注,每個(gè)對話Session過程最后都需要引導(dǎo)到一個(gè)預(yù)先指定的實(shí)體,而且對話也必須圍繞知識圖譜中的相關(guān)知識進(jìn)行。
4.2? 實(shí)驗(yàn)指標(biāo)
在融合了注意力機(jī)制的Unified-Transformer模型的實(shí)驗(yàn)部分中,采用自動(dòng)評估(Automatic Evaluation)和人工評估(Human Evaluation)兩種評價(jià)指標(biāo)對算法的性能進(jìn)行判斷。
4.2.1? Automatic Evaluation
在某些文字生成場景(對話、廣告文案等)中,需要追求文本的多樣化。李紀(jì)為等人提出了Distinct指標(biāo),之后陸續(xù)被很多人采用。Distinct的定義為:
其中,Count(unique ngram)表示回復(fù)中不重復(fù)的ngram數(shù)量,Count(word)表示回復(fù)中ngram詞語的總數(shù)量。Distinct-n值越大意味著所生成的多樣性越高。
4.2.2? Human Evaluation
在人工評價(jià)中,我們采用四個(gè)語料級別和對話級別的指標(biāo),其中包括連貫性(Coherence)、信息量(Informativeness)、參與度(Engagingness)和人性化(Humanness)。我們要求三名眾包工作者在[0,1,2]范圍內(nèi)對回應(yīng)/對話質(zhì)量進(jìn)行打分,最后的分?jǐn)?shù)由多數(shù)人的投票結(jié)果決定。分?jǐn)?shù)越高越好。下面將介紹評分標(biāo)準(zhǔn)(即評價(jià)指標(biāo)):
(1)連貫性(Coherence)是一個(gè)語篇級的指標(biāo),衡量反應(yīng)是否與上下文相關(guān)并一致。
(2)信息性(Informativeness)是一個(gè)語篇級的指標(biāo),評價(jià)反應(yīng)在上下文中是否具有信息性。
(3)參與性(Engagingness)是一個(gè)對話級的指標(biāo),評價(jià)注釋者是否愿意與說話者進(jìn)行長時(shí)間的交談。
(4)人性化(Humanness)是一個(gè)對話級的指標(biāo),判斷說話者是否是人。
4.3? 實(shí)驗(yàn)設(shè)置
4.3.1? 實(shí)驗(yàn)環(huán)境
本研究中融合了注意力機(jī)制的Unified-Transformer模型通過pytorch深度學(xué)習(xí)框架實(shí)現(xiàn),所運(yùn)行的實(shí)驗(yàn)環(huán)境支持Nvidiacuda深度學(xué)習(xí)平臺。其中,Python版本為3.7,PyTorch版本為1.7.0,CUDA版本為11.0。
4.3.2? 模型參數(shù)
本研究所選用的模型參數(shù)具體為:epochs=3、batch_size=8、lr=5e-5、weight_decay=0.01、warmup_steps=2 500、max_grad_norm=0.1、max_seq_len=512、max_response_len=128、max_knowledge_len=256。
其中,epochs表示訓(xùn)練輪數(shù);batch_size表示每次迭代每張卡上的樣本數(shù)目;lr表示基礎(chǔ)學(xué)習(xí)率大小,將其與learning rate scheduler產(chǎn)生的值相乘作為當(dāng)前學(xué)習(xí)率;weight_decay表示AdamW優(yōu)化器中使用的weight_decay的系數(shù);warmup_steps 表示學(xué)習(xí)率逐漸升高到基礎(chǔ)學(xué)習(xí)率(即上面配置的lr)所需要的迭代數(shù);max_grad_norm 表示梯度裁剪允許的最大梯度值;max_seq_len表示輸入序列的最大長度;max_response_len表示輸入response的最大長度;max_knowledge_len表示輸入knowledge序列的最大長度。
4.4? 實(shí)驗(yàn)結(jié)果及分析
4.4.1? 外部模型間性能對比
將融合注意力機(jī)制的Unified Transformer模型與近幾年先進(jìn)的問答系統(tǒng)算法進(jìn)行比較,具體如表1所示。由表1中的數(shù)據(jù)可以看出,本文所提出的方法(無論是HumanEvaluation還是AutomaticEvaluation)在DuConv數(shù)據(jù)集上的測試效果均優(yōu)于其他問答系統(tǒng)算法。同時(shí),與當(dāng)前最先進(jìn)的問答系統(tǒng)算法相比,Conherence提升了0.020,Informativeness提升了0.115,Engagingness提升了0.049,Humanness提升了0.059。
4.4.2? 內(nèi)部模塊間性能探究
為了驗(yàn)證本文提出的框架中不同模塊的有效性,以控制變量的形式設(shè)計(jì)了幾組內(nèi)部模型之間的對照實(shí)驗(yàn)。為了能夠更加直觀地探明各個(gè)模塊對模型性能的貢獻(xiàn)度及其相應(yīng)的最優(yōu)配置,所有后續(xù)對照實(shí)驗(yàn)均使用DuConv數(shù)據(jù)集。
為檢驗(yàn)注意力機(jī)制在模型中的有效性,將本文算法與不加注意力機(jī)制的Unified-Transformer算法進(jìn)行比較。如表2所示,在模型不采用注意力機(jī)制的情況下,模型在DuConv數(shù)據(jù)集上的各指標(biāo)均有較大程度的下降。實(shí)驗(yàn)結(jié)果表明,使用注意力機(jī)制的效果優(yōu)于不使用注意力機(jī)制的效果。
4.5? 實(shí)際應(yīng)用
圖4為融合注意力機(jī)制的Unified-Transformer模型的實(shí)際效果圖,我們進(jìn)行了五輪對話,網(wǎng)絡(luò)模型能夠很好地回答對它提出的問題。
5? 結(jié)? 論
為了解決問答系統(tǒng)的精度問題,本文提出了融合注意力機(jī)制的Unified-Transformer框架模型。首先基于UniLM思想,提出了融合檢索與生成為一體的simBERT模型,用隨機(jī)替換豐富增廣DuConv數(shù)據(jù)集,提升模型的泛化能力。然后在融合了注意力機(jī)制的Encoder-Decoder框架里的變壓器編碼器中對問句進(jìn)行編碼,由解碼器進(jìn)行解碼,用以提升精度。而在取得性能提升的同時(shí),所增加的計(jì)算成本幾乎可以忽略不計(jì)。最后通過五組模型進(jìn)行對比,實(shí)驗(yàn)結(jié)果表明融合了注意力機(jī)制的Unified-Transformer框架模型優(yōu)于Transformer模型。綜上所述,本文提出的融合了注意力機(jī)制的Unified-Transformer框架模型能夠有效地回答問題,并且可以有效降低人力成本和時(shí)間成本。
參考文獻(xiàn):
[1] 鄭實(shí)福,劉挺,秦兵,等.自動(dòng)問答綜述 [J].中文信息學(xué)報(bào),2002(6):46-52.
[2] 毛先領(lǐng),李曉明.問答系統(tǒng)研究綜述 [J].計(jì)算機(jī)科學(xué)與探索,2012,6(3):193-207.
[3] SHI M. Knowledge Graph Question and Answer System for Mechanical Intelligent Manufacturing Based on Deep Learning [J].Mathematical Problems in Engineering,2021:1-8.
[4] WEIZENBAUM J. ELIZA—a computer program for the study of natural language communication between man and machine [J].Communications of the ACM,9(1):6–45.
[5] CARPENTER R. Jabberwacky [EB/OL].[2021-08-16].http://www.jabberwacky.com.
[6] WALLACE R S.The Anatomy of A.L.I.C.E. [M]//EPSTEIN R,ROBERTS G,BEBER G.Parsing the Turing Test,Dordrecht:Springer,2009.
[7] COLBY K M,WEBER S,HILF F D. Artificial paranoia [J].Artificial Intelligence,1971,2(1):1-25.
[8] CHEN Y,WY L F,ZAKI M J. Bidirectional Attentive Memory Networks for Question Answering over Knowledge Bases [J/OL].arXiv:1903.02188 [cs.CL].(2019-03-06).https://arxiv.org/abs/1903.02188.
[9] MILLER A,F(xiàn)ISCH A,DODEG J,et al. Key-Value Memory Networks for Directly Reading Documents [J/OL].arXiv:1606.03126 [cs.CL].(2016-06-09).https://arxiv.org/abs/1606.03126.
[10] ZAREMBA W,SUTSKEVER I,VINYALS O. Recurrent Neural Network Regularization? [J/OL].arXiv:1409.2329 [cs.NE].(2014-09-08).https://arxiv.org/abs/1409.2329.
[11] 胡新辰.基于LSTM的語義關(guān)系分類研究 [D].哈爾濱:哈爾濱工業(yè)大學(xué),2015.
[12] 楊鶴,于紅,孫哲濤,等.基于雙重注意力機(jī)制的漁業(yè)標(biāo)準(zhǔn)實(shí)體關(guān)系抽取 [J].農(nóng)業(yè)工程學(xué)報(bào),2021,37(14):204-212.
[13] TAI K S,SOCHR R,MANNING C D. Improved Semantic Representations From Tree-Structured Long Short-Term Memory Networks [C]//Proceedings of the 53rd Annual Meeting of the Association for Computational Linguistics and the 7th International Joint Conference on Natural Language Processing.Beijing:Association for Computational Linguistics,2015:1556-1566.
[14] 李洋,董紅斌.基于CNN和BiLSTM網(wǎng)絡(luò)特征融合的文本情感分析 [J].計(jì)算機(jī)應(yīng)用,2018,38(11):3075-3080.
[15] Facebook Inc. END-TO-END MEMORY NETWORKS:US20170200077A1? [P].2017-07-13.
[16] 黃立威,江碧濤,呂守業(yè),等.基于深度學(xué)習(xí)的推薦系統(tǒng)研究綜述 [J].計(jì)算機(jī)學(xué)報(bào),2018,41(7):1619-1647.
[17] HU R H,SINGH A. UniT:Multimodal Multitask Learning with a Unified Transformer [J/OL].arXiv:2102.10772 [cs.CV].(2021-02-22).https://arxiv.org/abs/2102.10772.
[18] VASWANI A,SHAZEER N,PARMAR N,et al. Attention Is All You Need [J/OL].arXiv:1706.03762 [cs.CL].(2017-06-12).https://arxiv.org/abs/1706.03762.
[19] ZHU F R,ZHU Y,ZHANG L,et al. A Unified Efficient Pyramid Transformer for Semantic Segmentation [J/OL].arXiv:2107.14209 [cs.CV].(2021-07-29).https://arxiv.org/abs/2107.14209.
[20] XIAO Y Q,LI Y ,YUAN A,et al. History-based attention in Seq2Seq model for multi-label text classification [J/OL]. Knowledge-Based Systems,2021,224(19):107094. [2021-08-27].https://doi.org/10.1016/j.knosys.2021.107094.
作者簡介:裴鳴軒(1997—),男,漢族,河北衡水人,碩士研究生在讀,研究方向:自然語言處理;馮艷紅(1980—),女,漢族,黑龍江綏化人,副教授,碩士研究生,研究方向:自然語言處理、機(jī)器學(xué)習(xí)。王金玉(1995—),女,蒙古族,河南南陽人,碩士研究生在讀,研究方向:自然語言處理、機(jī)器學(xué)習(xí)。