欧美,精品,综合,亚洲,好吊妞视频免新费观看,免费观看三级吃奶,一级a片女人自慰免费看

 首頁 > 新聞 > 專家觀點 >

基于深度學習的智能問答

2016-08-15 10:06:26   作者:   來源:CTI論壇   評論:0  點擊:


  1、引言
  縱觀自動問答系統(tǒng)的技術(shù)發(fā)展歷史,從1950年代因圖靈測試而誕生至今,已經(jīng)有幾十年的歷史。但真正在產(chǎn)業(yè)界得到大家的廣泛關注,則得益于2011年Siri和Watson成功所帶來的示范效應。自此,自動問答系統(tǒng)較以往任何時候都顯得離實際應用更近。這一方面歸功于機器學習與自然語言處理技術(shù)的長足進步,另一方面得益于維基百科等大規(guī)模知識庫以及海量網(wǎng)絡信息的出現(xiàn)。然而,現(xiàn)有的自動問答系統(tǒng)所面臨的問題遠沒有完全解決。事實上,無論是業(yè)界應用還是學術(shù)研究,問句的真實意圖分析、問句與答案之間的匹配關系判別仍然是制約自動問答系統(tǒng)性能的兩個關鍵難題。
  2、問答系統(tǒng)概述
  問答系統(tǒng)能夠更為準確地理解以自然語言形式描述的用戶提問,并通過檢索異構(gòu)語料庫或問答知識庫返回簡潔、精確的匹配答案。相對于搜索引擎,問答系統(tǒng)能更好地理解用戶提問的真實意圖,同時更有效地滿足用戶的信息需求。
  2.1問答系統(tǒng)的發(fā)展歷程
  問答系統(tǒng)最早的實現(xiàn)構(gòu)想可以追溯到圖靈測試。為了測試機器是否具備人類智能,圖靈測試要求電腦能在5分鐘內(nèi)回答由人類測試者提出的一系列問題,且其達到超過30%的回答讓測試者誤認為是人類所答。隨著人工智能、自然語言處理等相關技術(shù)的發(fā)展,針對不同的數(shù)據(jù)形態(tài)的變化也衍生出不同種類的問答系統(tǒng)。早期由于智能技術(shù)和領域數(shù)據(jù)規(guī)模的局限性,問答系統(tǒng)主要是面向限定領域的AI系統(tǒng)或?qū)<蚁到y(tǒng),例如STUDENT[1]、LUNAR[2]系統(tǒng)。該時期的問答系統(tǒng)處理的數(shù)據(jù)類型主要是結(jié)構(gòu)化數(shù)據(jù),系統(tǒng)一般是將輸入問題轉(zhuǎn)化為數(shù)據(jù)庫查詢語句,然后進行數(shù)據(jù)庫檢索反饋答案。隨著互聯(lián)網(wǎng)的飛速發(fā)展以及自然語言處理技術(shù)的興起,問答系統(tǒng)進入了面向開放領域、基于自由文本數(shù)據(jù)的發(fā)展時期,例如英文問答式檢索系統(tǒng)AskJeeves(http://www.ask.com)、START(http://start.csail.mit.edu)。這種問答系統(tǒng)的處理流程主要包括:問題分析、文檔及段落檢索、候選答案抽取、答案驗證。特別自1999年文本檢索會議(TextRetrievalConference,簡稱TREC)引入問答系統(tǒng)評測專項(Question Answering Track,簡稱QATrack)以來,極大推動了基于自然語言處理技術(shù)在問答領域中的研究發(fā)展。隨后網(wǎng)絡上出現(xiàn)的社區(qū)問答(community question answering,CQA)提供了大規(guī)模的用戶交互衍生的問題答案對(question-answerpair,QApair)數(shù)據(jù),這為基于問答對的問答系統(tǒng)提供了穩(wěn)定可靠的問答數(shù)據(jù)來源。隨著蘋果公司Siri系統(tǒng)的問世,問答系統(tǒng)進入了智能交互式問答的發(fā)展階段,這種形式的問答系統(tǒng)能夠讓用戶體驗更為自然的人機交互過程,并且也使信息服務的相關應用更為方便可行。
  問答系統(tǒng)處理的數(shù)據(jù)對象主要包括用戶問題和答案。依據(jù)用戶問題的所屬數(shù)據(jù)領域,問答系統(tǒng)可分為面向限定域的問答系統(tǒng)、面向開放域的問答系統(tǒng)、以及面向常用問題集(frequentaskedquestions,F(xiàn)AQ)的問答系統(tǒng)。依據(jù)答案的不同數(shù)據(jù)來源,問答系統(tǒng)可劃分為基于結(jié)構(gòu)化數(shù)據(jù)的問答系統(tǒng)、基于自由文本的問答系統(tǒng)、以及基于問答對的問答系統(tǒng)。此外,按照答案的生成反饋機制劃分,問答系統(tǒng)可以分為基于檢索式的問答系統(tǒng)和基于生成式的問答系統(tǒng)。本文主要闡述基于檢索式的問答系統(tǒng)的處理框架和相關研究。
  2.2問答系統(tǒng)的處理框架
  不同類型的問答系統(tǒng)對于數(shù)據(jù)處理的方法存在不同。例如,相對于面向FAQ的問答系統(tǒng)的問句檢索直接得到候選答案,面向開放領域的問答系統(tǒng)首先需要根據(jù)問題分析的結(jié)果進行相關文檔、文本片段信息的檢索,然后進行候選答案的抽取。雖然不同類型的問答系統(tǒng)對于系統(tǒng)模塊的功能分工和具體實現(xiàn)存在差異,但依據(jù)數(shù)據(jù)流在問答系統(tǒng)中的處理流程,一般問答系統(tǒng)的處理框架中都包括問句理解、信息檢索、答案生成三個功能組成部分,如圖2.1所示。
\
  2.2.1問句理解
  問句理解是問答系統(tǒng)理解用戶意圖的關鍵一環(huán),問句理解模塊的性能直接制約著后續(xù)處理模塊的效果。用戶意圖是一個抽象的概念,要想作為答案檢索的依據(jù),需要把它轉(zhuǎn)換成機器可以理解的形式。用戶的檢索意圖導致信息需求的產(chǎn)生,因此,研究中往往將信息需求作為用戶意圖的代表,根據(jù)問句的語義結(jié)構(gòu),可以從問題類別和問題內(nèi)容兩方面來表示。通常采用自然語言技術(shù)對問題進行深層次的理解,包括命名實體識別、依存句法分析、詞義消歧等。
  問句理解主要包括問句分類、主題焦點提取、問題擴展處理。問句分類是將用戶提問歸入不同的類別,使系統(tǒng)能夠針對不同問題類型采用不同的答案反饋機制得到候選答案集合。問答系統(tǒng)通常使用機器學習算法訓練問題分類器[3,4]來實現(xiàn)用戶提問的分類。主題焦點提取主要完成用戶問題的信息需求的精確定位,其中主題表示問句的主要背景或者用戶的感興趣的對象,焦點則是用戶詢問的有關主題的內(nèi)容,通常是問句話題的相關信息或?qū)υ掝}起到描述性的作用,比如屬性、動作、實例等等。問題擴展是將用戶在提問中沒有充分表達的意思補充出來,對問題中潛在的信息顯化出來,從而提高答案檢索的召回率。
  2.2.2信息檢索
  根據(jù)問句理解得到的查詢表示,信息檢索模塊負責從異構(gòu)語料庫、問答知識庫中檢索相關信息,傳遞給后續(xù)的答案生成處理模塊。對于基于不同的問答系統(tǒng),系統(tǒng)的檢索模型以及檢索數(shù)據(jù)形式也不同。對于基于自由文本數(shù)據(jù)的問答系統(tǒng),信息檢索過程是一個逐漸縮小答案范圍的過濾過程,主要包括文檔檢索和段落句群檢索。對于基于問句答案對的問答系統(tǒng),信息檢索處理是通過問句檢索得到與用戶提問相似的候選問句,返回對應的候選答案列表。
  首先,文檔檢索是根據(jù)問題理解的結(jié)果檢索用戶提問的相關文檔集合。最簡單的方法是直接用已有的檢索系統(tǒng)(如Smart,Lucene等)對問題的非停用詞進行全文索引,直接檢索得到用戶提問的相關文檔集合,但是這種方法很難獲得好的效果。通常問答系統(tǒng)中的文檔檢索模型包括布爾模型、向量空間模型、語言模型、概率模型等。布爾模型是最簡單的一種檢索模型,它把關鍵詞組織成一個布爾表達式,使得文檔中出現(xiàn)的關鍵詞需要滿足這個布爾表達式。向量空間模型把文檔和查詢都表示成向量,根據(jù)查詢和文檔對應向量的相似度(通常是兩個向量夾角的余弦值)對文檔進行排序。概率模型估計計算文檔和查詢相關的概率,并按照相關性概率對文檔進行排序。語言模型是把查詢和文檔分別表示成語言模型,通過兩個語言模型之間的KL距離來估計兩者的相似度。其次,段落句群檢索就是從候選文檔集合中檢索出最有可能含有答案的段落(自然段落或者文檔片段),進一步過濾噪聲信息,得到更為精確的答案相關信息。廣泛使用的段落檢索算法有三個:MultiText算法[6]、IBM的算法[7,8]和SiteQ算法[9]。Tellex[10]等人的實驗結(jié)果表明基于密度的算法可以獲得相對較好的效果。所謂基于密度的算法,就是通過考慮查詢關鍵詞在段落中的出現(xiàn)次數(shù)和接近程度來決定這個段落的相關性。相比之下,Cui[5]提出的檢索算法通過把問句和答案都解析成語法樹,從兩者語法樹的結(jié)構(gòu)中找出一些相關性的信息。
  問句檢索的主要問題在于如何縮小用戶提問與知識庫中問句之間的語義鴻溝。近幾年,研究人員采用基于翻模模型的方法計算從用戶提問“翻譯”到檢索問句的翻譯概率,從而實現(xiàn)相似性問句檢索。例如,算法[11-14]都是把兩個問句看作是不同表達方式的語句,計算兩個問句之間的翻譯概率。為了計算這種翻譯的概率,就必須估計詞與詞之間進行翻譯的概率。這種方法首先需要通過答案相似度計算得到同義或近義的問答對集合,該集合中的相似問題集合就構(gòu)成了一個估計翻譯概率的訓練集,類似于機器翻譯中多語言平行語料庫。實驗證明,這樣做的效果會比語言模型,OkapiBM25和空間向量模型都好。
  2.2.3答案生成
  基于信息檢索得到的檢索信息,答案生成模塊主要實現(xiàn)候選答案的抽取和答案的置信度計算,最終返回簡潔性、正確性的答案。按照答案信息粒度,候選答案抽取可以分為段落答案抽取、句子答案抽取、詞匯短語答案抽取。段落答案抽取是將一個問題的多個相關答案信息進行匯總、壓縮,整理出一個完整簡潔的答案。句子答案抽取是將候選答案信息進行提純,通過匹配計算過濾表面相關,實際語義不匹配的錯誤答案。詞匯短語抽取是采用語言的深層結(jié)構(gòu)分析技術(shù)從候選答案中準確地提取答案詞或短語。
  答案置信度計算是將問題與候選答案進行句法和語義層面上的驗證處理,從而保證返回答案是與用戶提問最為匹配的結(jié)果。應用最廣泛是基于統(tǒng)計機器學習的置信度計算方法。這種方法通常定義一系列詞法、句法、語義以及其他相關特征(如編輯距離、BM25等)來表示問題與候選答案之間的匹配關系,并使用分類器的分類置信度作為答案的置信度。例如IBMWaston中使用的答案融合和特征排序方法[15],以及基于關系主題空間特征的多核SVM分類方法[16]。近幾年,基于自然語言處理的問答匹配驗證通常是使用句子的淺層分析獲得句子的淺層句法語法信息,然后將問句與答案的句法樹(短語句法樹或依存句法樹)進行相似性計算[17-20]。然而,問答系統(tǒng)的答案正確性更需滿足問題和答案之間的語義匹配,比如問“蘋果6splus最新活動價多少”,如果回答“紅富士蘋果降到了12元”,就屬于所答非所問。常用的方法是通過引入諸如語義詞典(WordNet),語義知識庫(Freebase)等外部語義資源進行問答語義匹配建模[21-23],以此提高問句答案間的語義匹配計算性能。
  傳統(tǒng)問答系統(tǒng)中構(gòu)建的機器學習模型基本屬于淺層模型。譬如,問句分類過程中常用的基于支持向量機(SVM)的分類模型[24],答案抽取使用的基于條件隨機場(CRF)的序列標注模型[25],以及候選答案驗證過程中使用的基于邏輯回歸(LR)的問答匹配模型[26]等。這種基于淺層模型研發(fā)的問答系統(tǒng)往往存在人工依賴性高,并且缺少對不同領域數(shù)據(jù)處理的泛化能力。人工依賴性主要表現(xiàn)在淺層模型的特征工程上,由于淺層模型缺乏對數(shù)據(jù)的表示學習的能力,于是在面對不同領域的問答數(shù)據(jù)以及不同的問答任務的情況下,研究人員不得不進行針對性的數(shù)據(jù)標注,并且需要依據(jù)研究人員的觀察和經(jīng)驗來提取模型所需的有效特征,這也就造成了此類問答系統(tǒng)可移植性低的結(jié)果。
  3、基于深度學習的相關問答技術(shù)
  近年來,深度神經(jīng)網(wǎng)絡在諸如圖像分類、語音識別等任務上被深入探索并取得了突出的效果,表現(xiàn)出了優(yōu)異的表示學習能力。與此同時,通過深度神經(jīng)網(wǎng)絡對語言學習表示已逐漸成為一個新的研究趨勢。然而,由于人類語言的靈活多變以及語義信息的復雜抽象,使得深度神經(jīng)網(wǎng)絡模型在語言表示學習上的應用面臨比在圖像、語音更大的挑戰(zhàn)。其一,相比于語音和圖像,語言是非自然信號,完全是人類文明進程中,由大腦產(chǎn)生和處理的符號系統(tǒng),是人類文明智慧的高度體現(xiàn)。語言的變化性和靈活度遠遠超過圖像和語音信號。其二,圖像和語音具有明確的數(shù)學表示,例如灰度圖像為數(shù)學上的數(shù)值矩陣,而且其表示的最小粒度元素都有確定的物理意義,圖像像素的每個點的值表示一定的灰度色彩值。相比而言,以往的詞袋表示方法會導致語言表示存在維數(shù)災難、高度稀疏以及語義信息損失的問題。
  當前,研究人員越來越對深度學習模型在NLP領域的應用感興趣,其主要集中在對詞語、句子和篇章的表示學習以及相關應用。例如,Bengio等使用神經(jīng)網(wǎng)絡模型得到一種名為詞嵌入(WordEmbedding)或詞向量的新型向量表示[27],這種向量是一種低維、稠密、連續(xù)的向量表示,同時包含了詞的語義以及語法信息。當前,基于神經(jīng)網(wǎng)絡的自然語言處理方法大都是基于詞向量的表示基礎上進行的。在此基礎上,相關研究人員設計深度神經(jīng)網(wǎng)絡模型學習句子的向量表示,相關工作包括遞歸神經(jīng)網(wǎng)絡(Recursive Neural Network)、循環(huán)神經(jīng)網(wǎng)絡(Recurrent Neural Network,RNN)、卷積神經(jīng)網(wǎng)絡(Convolutional Neural Network,CNN)的句子建模[28-30]。句子表示被應用于大量的自然語言處理任務上,并在一些任務上取得了較為突出的效果。例如機器翻譯[31,32]、情感分析等[33,34]。從句子的表示到篇章的表示學習仍然較為困難,相關工作也較少,比較有代表性是Li等人通過層次循環(huán)神經(jīng)網(wǎng)絡對篇章進行編碼,然后通過層次循環(huán)神經(jīng)網(wǎng)絡進行解碼,從而實現(xiàn)對篇章的表示[35]。然而,NLP領域涵蓋了不同性質(zhì),不同層次的具體問題,這就需要針對不同問題的特點,設計深度模型學習到任務特定的本質(zhì)特征。
  問答領域所需解決的兩個關鍵問題:一是如何實現(xiàn)問句及答案的語義表示。無論是對于用戶提問的理解,還是答案的抽取驗證,都需抽象出問題和答案的本質(zhì)信息的表示。這不僅需要表示問答語句的句法語法信息,更需表示問句及答案在語義層面上的用戶意圖信息和語義層匹配信息。二是如何實現(xiàn)問句答案間的語義匹配。為了保證反饋用戶提問的答案滿足嚴格語義匹配,系統(tǒng)必須合理利用語句高層抽象的語義表示去捕捉到兩個文本之間關鍵而細致的語義匹配模式。鑒于近幾年卷積神經(jīng)網(wǎng)絡(CNN)和循環(huán)神經(jīng)網(wǎng)絡(RNN)在NLP領域任務中表現(xiàn)出來的語言表示能力,越來越多的研究人員嘗試深度學習的方法完成問答領域的關鍵任務。例如問題分類(question classification),答案選擇(answerselection),答案自動生成(answer generation)。此外,互聯(lián)網(wǎng)用戶為了交流信息而產(chǎn)生的大規(guī)模諸如微博回復、社區(qū)問答對的自然標注數(shù)據(jù)[50],給訓練深度神經(jīng)網(wǎng)絡模型提供了可靠的數(shù)據(jù)資源,并很大程度上解決自動問答研究領域的數(shù)據(jù)匱乏問題。
  接下來內(nèi)容安排:首先,分別介紹基于CNN和RNN的問答語句的語義表示方法;然后,介紹基于DCNN的兩種語義匹配架構(gòu);最后,介紹基于RNN的答案自動生成方法。
  3.1基于深度神經(jīng)網(wǎng)絡的語義表示方法
  3.1.1基于卷積神經(jīng)網(wǎng)絡(CNN)的語義表示方法
  基于CNN的語義表示學習是通過CNN對句子進行掃描,抽取特征,選擇特征,最后組合成句子的表示向量。首先從左到右用一個滑動窗口對句子進行掃描,每個滑動窗口內(nèi)有多個單詞,每個單詞由一個向量表示。在滑動窗口內(nèi),通過卷積(convolution)操作,進行特征抽取。這樣,在各個位置上得到一系列特征。之后再通過最大池化(maxpooling)操作,對特征進行選擇。重復以上操作多次,得到多個向量表示,將這些向量連接起來得到整個句子的語義表示。如圖3.1所示,基于CNN的句子建模的輸入是詞向量矩陣,矩陣的每一行的多個點的值在一起才有明確的物理意義,其代表句子中對應的一個詞。詞向量矩陣是通過將句子中的詞轉(zhuǎn)換為對應的詞向量,然后按照詞的順序排列得到。該模型通過多層交疊的卷積和最大池化操作,最終將句子表示為一個固定長度的向量。該架構(gòu)可以通過在模型頂層增加一個分類器用于多種有監(jiān)督的自然語言處理任務上。
\
  圖3.1基于CNN的句子建模
  基于CNN的句子建模可以表現(xiàn)為具有局部選擇功能的“組合算子”,隨著模型層次的不斷加深,模型得到的表示輸出能夠覆蓋的句內(nèi)詞的范圍越廣,最后通過多層的運算得到固定維度的句子表示向量。該過程的功能與“遞歸自動編碼”的循環(huán)操作機制[33]具有一定的功能類似。對于只使用了一層卷積操作和一層全局最大池化操作的句子建模,稱之為淺層卷積神經(jīng)網(wǎng)絡模型,這種模型被廣泛應用于自然語言處理中句子級分類任務上,如句子分類[36],關系分類[37]。但是,淺層的卷積神經(jīng)網(wǎng)絡模型不能對句子中復雜的局部語義關系進行建模,也不能對句子中深層次的語義組合進行很好的表示,并且全局最大池化操作丟失了句子中的詞序特征,所以淺層的卷積網(wǎng)絡模型只能對語句間的局部特征匹配進行建模。面對問答中復雜多樣化的自然語言表示形式(如多語同現(xiàn),異構(gòu)信息,表情符號等),問答匹配模型[38-40]往往使用深層卷積神經(jīng)網(wǎng)絡(DCNN)來完成問句和答案的句子建模,并將高層輸出的問答語義表示傳遞給多層感知器(MLP)進行問答匹配。
  面對開放領域中的關系性推理問題,例如“微軟公司的創(chuàng)始人是誰?”,往往通過引入外部語義知識推理得到問題的答案,此時單一的句子建模很難實現(xiàn)邏輯關系的語義表示。通常先需要對問題進行語義解析(SemanticParse),然后針對問句實體、實體關系等不同類型的語義信息進行表示學習。Yih將關系性問題拆分成實體集合和關系模板[41],其中實體集合為問題中連續(xù)詞語的子序列,關系模板為問句實體被特殊符號替換后的句子,針對實體集合和關系模板分別使用CNN進行句子建模,從而實現(xiàn)問句在實體及關系兩個層面上的語義表示。Dong提出多欄(Multi-Column)卷積神經(jīng)網(wǎng)絡模型[42]對關系推理性問題進行不同層面(詞語表達層、實體關系層、語境信息層)的語義表示學習,并實現(xiàn)從關系知識庫中抽取候選答案的多層面語義信息,最后與候選答案進行多層次匹配打分。
  3.1.2基于循環(huán)神經(jīng)網(wǎng)絡(RNN)的語義表示方法
  基于RNN的句子建模是把一句話看成單詞的序列,每個單詞由一個向量表示,每一個位置上有一個中間表示,由向量組成,表示從句首到這個位置的語義。這里假設,每一個位置的中間表示由當前位置的單詞向量以及前一個位置的中間表示決定,通過一個循環(huán)神經(jīng)網(wǎng)絡模型化。RNN把句末的中間表示當作整個句子的語義表示,如圖3.2所示。
\
  圖3.2基于RNN的語句建模
  RNN與隱馬爾可夫模型有相似的結(jié)構(gòu),但是具有更強的表達能力,中間表示沒有馬爾可夫假設,而且模型是非線性的。然而,隨著序列長度的增加,RNN在訓練的過程中存在梯度消失(Vanishinggradientproblem)的問題[43]。為了解決這個問題,研究人員對循環(huán)神經(jīng)網(wǎng)絡中的循環(huán)計算單元進行改善設計,提出了不同的變形,如常用的長短記憶(LongShortTermMemory,LSTM)[44,45]和門控循環(huán)單元(GatedRecurrentUnit,GRU)[56]。這兩種RNN可以處理遠距離依存關系,能夠更好地表示整句的語義。Wang和Nyberg[47]通過雙向LSTM學習問題答案對的語義表示,并將得到的表示輸入到分類器計算分類置信度。
  此外,對于近幾年的看圖回答的任務(ImageQA),研究人員通過整合CNN和RNN完成問題的圖像場景下的語義表示學習;鞠敕ǎ耗P驮赗NN對問句進行詞語序列掃描的過程中,使用基于深度學習的聯(lián)合學習機制完成“圖文并茂”的聯(lián)合學習,從而實現(xiàn)圖像場景下的問句建模,用于最終的問答匹配。例如,Malinowski等人[48]提出的學習模型在RNN遍歷問句詞語的過程中,直接將CNN得到的圖像表示與當前詞語位置的詞向量作為RNN學習當前中間表示的輸入信息,從而實現(xiàn)圖像與問句的聯(lián)合學習。相比之下,Gao等人[49]則是先用RNN完成問題的句子建模,然后在答案生成的過程中,將問句的語義表示向量和CNN得到的圖像表示向量都作為生成答案的場景信息。
  3.2基于DCNN的語義匹配架構(gòu)
  問答系統(tǒng)中的語義匹配涉及到主要功能模塊包括:問句檢索,即問句的復述檢測(paraphrase);答案抽取,即問句與候選文本語句的匹配計算;答案置信度排序,即問題與候選答案間的語義匹配打分。
  3.2.1并列匹配架構(gòu)
  第一種基于DCNN的語義匹配架構(gòu)為并列匹配[38-40]架構(gòu)。這種架構(gòu)的匹配模型分別將兩句話輸入到兩個CNN句子模型,可以得到它們的語義表示(實數(shù)值向量)。之后,再將這兩個語義表示輸入到一個多層神經(jīng)網(wǎng)絡,判斷兩句話語義的匹配程度,從而判斷給定的兩句話和是否可以成為一對句子匹配對(問答對)。這就是基于DCNN的并列語義匹配模型的基本想法。如果有大量的信息和回復對的數(shù)據(jù),就可以訓練這個模型。
\
  圖3.3基于DCNN的并列匹配架構(gòu)
  從圖3.3所示的并列匹配架構(gòu)可以看出,這種匹配模型的特點是兩個句子的表示分別通過兩個獨立的卷積神經(jīng)網(wǎng)絡(CNN)得到,在得到它們各自的表示之前,兩個句子間的信息互不影響。這種模型是對兩個需要匹配的句子從全局語義上進行匹配,但是忽略了兩個句子間更為精細的局部匹配特征。然而,在語句匹配的相關問題中,兩個待匹配的句子中往往存在相互間的局部匹配,例如問題答案對:
  Sx:好餓啊,今天去哪里吃飯呢。
  Sy:聽說肯德基最近出了新品,要不要去嘗嘗。
  在這一問答對中,“吃飯”和“肯德基”之間具有較強的相關性匹配關系,而并列匹配則是對句子兩個句子全局的表示上進行匹配,在得到整個句子的表示之前,“吃飯”和“肯德基”之間并不會互相影響,然而,隨著深度卷積句子模型對句子的表示層次不斷深入,而句子中的細節(jié)信息會部分丟失,而更關注整個句子的整體語義信息。
  3.2.2交互匹配架構(gòu)
  第二種基于DCNN的語義匹配架構(gòu)為交互匹配[39]架構(gòu)。與并列匹配不同,交互匹配的基本想法是直接對兩個句子的匹配模式進行學習,在模型的不同深度對兩個句子間不同粒度的局部之間進行交互,學習得到句子匹配在不同層次上的表示,最終得到句子對固定維度的匹配表示,并對匹配表示進行打分。
\
  圖3.4基于DCNN的交互匹配架構(gòu)
  如圖3.4所示,交互匹配架構(gòu)在第一層通過兩個句子間的滑動窗口的卷積匹配操作直接得到了兩個句子間較為底層的局部匹配表示,并且在后續(xù)的高層學習中采用類似于圖像領域處理過程中的二維卷積操作和二維局部最大池化操作,從而學到問句與答案句子之間的高層匹配表示。通過這種形式,使得匹配模型既能對兩個句子的局部之間的匹配關系進行豐富建模,也使模型能夠?qū)γ總句子內(nèi)的信息進行建模。很顯然,交互匹配學習得到的結(jié)果向量不僅包含來自兩個句子的滑動窗口的位置信息,同時具有兩個滑動窗口的匹配表示。
  對于問答的語義匹配,交互匹配可以充分考慮到問句與答案間的內(nèi)部匹配關系,并通過二維的卷積操作與二維局部最大池化操作學習得到問句與答案間的匹配表示向量。在整個過程中,交互匹配更為關注句子間的匹配關系,對兩個句子進行更為細致的匹配。
  相比于并列匹配,交互匹配不僅考慮到單個句子中滑動窗口內(nèi)的詞的組合質(zhì)量,而且同時考慮到來自兩個句子組合間的匹配關系的質(zhì)量。并列匹配的優(yōu)勢在于匹配過程中可以很好的保持兩個句子各自的詞序信息,因為并列匹配是分別對兩個句子在順序的滑動窗口上進行建模。相對而言,交互匹配的問答匹配過程是學習語句間局部信息的交互模式。此外,由于交互匹配的局部卷積運算和局部最大池化操作都不改變兩個句子的局部匹配表示的整體順序,所以交互匹配模型同樣可以保持問句與答案的詞序信息?傊换テヅ渫ㄟ^對問句與答案的匹配模式進行建模,可以學習到兩個句子間的局部匹配模式,而這種匹配模式在正常順序的句子中具備很大的學習價值。
  3.3基于RNN的答案自動生成方法
  與基于檢索式的回復機制對比而言,基于生成式的答案反饋機制是根據(jù)當前用戶輸入信息自動生成由詞語序列組成的答案,而非通過檢索知識庫中用戶編輯產(chǎn)生答案語句。這種機制主要是利用大量交互數(shù)據(jù)對構(gòu)建自然語言生成模型,給定一個信息,系統(tǒng)能夠自動生成一個自然語言表示的回復。其中的關鍵問題是如何實現(xiàn)這個語言生成模型。
  答案自動生成需要解決兩個重要問題,其一是句子表示,其二是語言生成。近年來,循環(huán)神經(jīng)網(wǎng)絡在語言的表示以及生成方面都表現(xiàn)出了優(yōu)異的性能,尤其是基于循環(huán)神經(jīng)網(wǎng)絡的編碼-解碼架構(gòu)在機器翻譯[31,32]和自動文摘[51]任務上取得了突破。Shang[52]等人基于CRU(Gated Recurrent Unit,GRU)[46]循環(huán)神經(jīng)網(wǎng)絡的編碼-解碼框架,提出了完全基于神經(jīng)網(wǎng)絡的對話模型“神經(jīng)響應機”(Neura lResponding Machine,NRM),該模型用于實現(xiàn)人機之間的單輪對話(single-turndialog)。NRM是從大規(guī)模的信息對(問題-答案對,微博-回復對)學習人的回復模式,并將學到的模式存于系統(tǒng)的近四百萬的模型參數(shù)中,即學習得到一個自然語言生成模型。
  如圖3.5所示,NRM的基本想法是將輸入的一句話看作一個單詞表示的序列,通過編碼器(Encoder),即一個RNN模型,將轉(zhuǎn)換成一個中間表示的序列,再通過解碼器(Decoder),是另一個RNN模型,將轉(zhuǎn)換成一個單詞的系列,作為一句話輸出。由于NRM在編碼部分采用一種混合機制,從而使編碼得到中間表示的序列不僅能夠?qū)崿F(xiàn)用戶語句信息的整體把握,同時還能充分保留句子的細節(jié)信息。并且在解碼部分采用了注意力(attention)機制[31],從而使生成模型可以相對容易的掌握問答過程中的復雜交互模式。[52]中的實驗結(jié)果表明基于生成式的問答機制與基于檢索式的答案反饋機制各具特點:在表達形式個性化的微博數(shù)據(jù)上,生成式比檢索式的準確率會高一些,檢索系統(tǒng)的準確率是70%,生成系統(tǒng)的準確率是76%。但是,生成式得到的答案會出現(xiàn)語法不通,連貫性差的問題,而檢索式的答案來源于真實的微博用戶編輯,所以語句的表述更為合理可靠。
\
  圖3.5基于編碼-解碼結(jié)構(gòu)的答案生成模型
  目前,NRM以及Google的Neural Conversational Model(NCM)[53]主要還是在對復雜語言模式記憶和組合上層面上實現(xiàn)語言生成,尚無法在交互過程使用外界的知識。例如,在對“五一期間杭州西湖相比去年怎么樣嗎?”這樣的句子,無法給出真實的狀況(旅游人數(shù)的對比結(jié)果)相關的回復。雖然如此,但是NRM和NCM的真正意義在于初步實現(xiàn)了類人的語言自動反饋,因為此前的近幾十年,研究人員不懈努力而生成的問答或?qū)υ捪到y(tǒng)(dialogue model),大都是基于規(guī)則和模板,或者是在一個較大的數(shù)據(jù)庫中進行搜索,而這種兩種方式并非真正的產(chǎn)生反饋,并且缺乏有效的語言理解和表示。這往往是由于模板/例子的數(shù)量和表示的局限性,這些方式在準確性和靈活性上都存在一定不足,很難兼顧語言的自然通順和語義內(nèi)容上的匹配。
  4、結(jié)語
  本文簡單介紹了問答系統(tǒng)的發(fā)展歷程、基本體系結(jié)構(gòu)。并針對問答系統(tǒng)所需解決的關鍵問題,介紹了基于深度神經(jīng)網(wǎng)絡的語義表示方法,不同匹配架構(gòu)的語義匹配模型,以及答案生成模型。當前深度學習在解決問答領域中的關鍵問題取得了不錯的效果,但是問答系統(tǒng)的技術(shù)研究仍然存在有待解決問題,比如,如何理解連續(xù)交互問答場景下的用戶提問,例如與Siri系統(tǒng)交互中的語言理解。以及如何學習外部語義知識,使問答系統(tǒng)能夠進行簡單知識推理回復關系推理性問題,例如“胸悶總咳嗽,上醫(yī)院應該掛什么科”。再者,隨著最近注意(attention)機制、記憶網(wǎng)絡(Memory Network)[54,55]在自然語言理解,知識推理上的研究推廣,這也必將給自動問答的研究提供的新的發(fā)展方向和契機。
 
分享到: 收藏

專題