• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      N-Reader: 基于雙層Self-attention的機器閱讀理解模型

      2018-11-16 08:00:24梁小波任飛亮劉永康潘凌峰侯依寧
      中文信息學報 2018年10期
      關鍵詞:段落文檔機器

      梁小波,任飛亮,劉永康,潘凌峰,侯依寧,張 熠,李 妍

      (東北大學 計算機科學與工程學院,遼寧 沈陽 110169)

      0 引言

      機器閱讀理解是指讓機器閱讀文本,然后回答和閱讀內容相關的問題。目前機器閱讀理解任務依據(jù)答案的類型可以分為兩種: 完形填空型和片段抽取型。完型填空型的機器閱讀理解需要找到文檔中一個實體作為輸入問題的答案,而片段抽取型機器閱讀理解則要從輸入文檔中抽取出一段連續(xù)的文本片段作為輸入問題的答案。本文方法屬于片段抽取型的機器閱讀理解任務,在后續(xù)的內容介紹中,也主要以此類方法為主。

      在機器閱讀理解任務中,根據(jù)回答一個問題需要處理的文檔數(shù)量的不同,又進一步可分為單文檔型閱讀理解和多文檔型閱讀理解。單文檔型閱讀理解是指針對一個問題,需從單一的文檔中尋找答案;而多文檔型閱讀理解則是指針對一個問題,需從多個輸入文檔中尋找答案。顯然,與單文檔型閱讀理解相比,多文檔型閱讀理解需要處理的信息更復雜,模型的構建難度也更大。百度的DuReader[1]是一個面向中文的多文檔機器閱讀理解任務數(shù)據(jù)集,也是一個面向片段抽取型機器閱讀理解任務的數(shù)據(jù)集。表1給出了一個該數(shù)據(jù)集中的訓練樣例: 每一個訓練樣本,都包含一個問題和多個描述文檔,并且每一篇文檔都是由多個段落組成。相應地,基于此數(shù)據(jù)集,機器閱讀理解系統(tǒng)的任務,就是要從這些輸入文檔中找出可以回答對應輸入問題的文檔片段(即答案),并且輸出的答案要盡可能的準確。

      表1 DuReader數(shù)據(jù)集中樣本示例

      為了推動機器閱讀理解技術的發(fā)展,斯坦福發(fā)布了SQuAD[2]數(shù)據(jù)集,并基于此數(shù)據(jù)集舉辦了面向英語的機器閱讀理解比賽。該比賽吸引了國內外研究機構的廣泛關注。以SQuAD數(shù)據(jù)集為基礎,研究者們提出了大量基于神經網(wǎng)絡的機器閱讀理解模型。如Wang[3]等提出了Match-LSTM模型,Cui[4]等提出了AoA-Reader模型,微軟亞洲研究院[5]提出了R-Net模型,Hu[6]等提出了Mnemonic-Reader模型。這些模型在SQuAD[2]數(shù)據(jù)集上都取得了很大成功,不斷地刷新SQuAD競賽排行榜上的成績。最新的SQuAD競賽排行榜結果顯示,當前最好的機器閱讀理解模型在EM(Exact Match)和F1這兩個評價指標上已經超越了人類。

      然而,這些已有的機器閱讀理解模型仍存在以下兩個問題需要進一步解決。

      當前主流的機器閱讀理解模型大多是面向英文單文檔的模型,并不能直接用來處理面向中文的多文檔閱讀理解任務。首先,中英文在語言建模上有一定的差異性。例如,英文分詞比中文分詞容易。同時,英文數(shù)據(jù)可以使用單詞中字符來定義抽象特征[7],并進而捕獲未登錄詞和同義詞的潛在特征,而中文在字級別可以使用的特征較少。其次,多文檔數(shù)據(jù)中的每個輸入文檔都可能包含答案,使得整個建模過程要比單文檔任務更復雜。并且,這些輸入的多個文檔不僅在語言描述上具有相似性,還可能在語義上具有相似性。如表1所示,這五篇關于維生素B2的文檔中,不僅在語言描述上包含相同的詞語,如“幾乎不產生毒性”在文檔4和5中均有出現(xiàn)。而且這些文檔在語義上也往往具有相似性。如出現(xiàn)在文檔4和5中的“幾乎不產生毒性”和文檔3中“很難引起中毒”都表達了同一種語義。

      我們注意到: 在片段抽取型的閱讀理解任務中,預測的答案均來源于輸入文檔,但是原始文檔一般比較長,往往不適合全部作為模型輸入。這一問題在多文檔機器閱讀理解任務中更嚴重。因此,對輸入文檔進行合適的數(shù)據(jù)選擇,使最終輸入模型的文本既保留原始輸入的主要語義信息,又消除對最終結果沒有幫助的噪音信息,無疑會對整個機器閱讀理解任務有很大幫助。而在這一數(shù)據(jù)選擇過程中必須要考慮以下兩點。首先,必須考慮選擇輸入文本的長度: 輸入模型的文本長度不能太短,以確保有充足的信息去預測答案;同時,輸入模型的文本也不能太長,否則會增加神經網(wǎng)絡的訓練難度。其次,必須要考慮原始輸入各個段落的語義相關性: 相關性段落可以增加數(shù)據(jù)中的語義特征,而不相關段落對于模型來說則是一種數(shù)據(jù)噪音。數(shù)據(jù)選擇問題在當前機器閱讀理解研究中并沒有引起研究者們的足夠重視,很少有相關的學術論文對該問題進行討論。

      為解決上面兩個問題,本文提出了N-Reader,一個面向中文多文檔任務的片段抽取型機器閱讀理解模型。在該模型中,我們首先使用多段落補全算法把相關性高的段落抽取出來作為模型輸入。接著,采用基于單文檔的self-attention和基于多文檔的self-attention這一雙層attention機制抽取多個輸入文檔中的相關信息,并利用最終生成的多文檔表示來預測答案位置。實驗結果顯示,N-Reader模型中的補全算法以及雙層self-attention機制均可以有效地提高模型性能?;谠撃P停覀儏⒓恿擞芍袊形男畔W會、中國計算機學會和百度公司聯(lián)手舉辦的“2018機器閱讀理解技術競賽”。最終,我們的模型在該任務的數(shù)據(jù)集上取得了ROUGE-L[8]58.08%和BLEU-4[9]52.49%的成績。

      1 相關工作

      近年來,機器閱讀理解任務受到了學術界和工業(yè)界的廣泛關注。得益于各種大規(guī)模數(shù)據(jù)集的發(fā)布,研究者們可以訓練各種復雜的基于神經網(wǎng)絡的機器閱讀理解模型。此外,隨著attention[10]機制在機器翻譯、圖像分類等領域取得的巨大成功,該機制同樣也被廣泛應用在機器閱讀理解任務中。本文所提模型的主要貢獻點之一在于對attention機制的改進,因此這里我們將主要介紹attention機制在機器閱讀理解任務上的相關研究工作。

      2015年Hermann[11]等提出了Attentive Reader和Impatient Reader這兩種機器閱讀理解模型。其中,作者利用attention機制對輸入文檔和問題進行編碼,并得到固定長度的語義編碼表示,并以此語義表示進行答案預測。該文的實驗結果顯示,基于神經網(wǎng)絡的機器閱讀理解模型要明顯優(yōu)于其他傳統(tǒng)模型。AS-Reader[12]模型是另外一個有代表性的機器閱讀理解模型。該模型取代了之前將文檔編碼為向量的做法,將文檔中每個詞都編碼為一個向量,并通過計算每個詞作為開始和結束位置的概率來預測答案。

      這些早期的機器閱讀理解模型大多使用單向的attention機制,并不能很好地獲得文檔和問題之間的聯(lián)系。在文檔和問題的編碼過程中,難免會丟失有效信息。為解決這些缺陷,Xiong[13]等提出了Co-attention機制,對文檔和問題進行多次attention計算,然后將計算的多個結果聯(lián)接起來作為最終的文檔表示。采用雙向attention機制的另外一個代表工作是Seo[14]等提出的BiDAF模型。在該模型中,作者對文檔和問題之間的語義信息進行混合編碼,并分別從“問題到文檔”、“文檔到問題”兩個方向進行信息提取,同時保留原始輸入的編碼信息。這些雙向attention機制可以充分融合輸入文檔和問題的語義特征,在實驗中取得了很好的效果。

      機器閱讀理解不僅需要把問題中的信息融合到文檔中,還需要對文檔本身的語義信息進行有效編碼,目前通常采用LSTM[15]和GRU[16]模型完成這一過程。但這兩種神經網(wǎng)絡結構很難解決語義的長距離依賴問題。為此,微軟亞洲研究院[5]提出了R-Net模型,該模型主要特點是模擬了人類的思考過程??紤]到人在做閱讀理解時會反復地閱讀文章,并會結合全文的語境,相互推理并反復驗證以獲得最佳的答案。因此作者使用self-attention機制來增強文檔表示,使每個詞在進行信息編碼時都可以包含上下文的語義信息。實驗結果顯示,R-Net可以有效地解決語義的長距離依賴問題。

      但需要注意的是,在處理多文檔的數(shù)據(jù)集時,單文檔的self-attention機制只能編碼文檔自身的語義信息,并不能關注到多篇文檔之間的相似性。而多文檔的self-attention機制,則可以將多篇文檔進行比較、推理,進而提取出相似性的語義特征信息。在本文中,我們將這兩種self-attention機制進行結合并提出了雙層的self-attention機制。實驗結果證明,我們的方法可以有效地提升機器閱讀理解模型的性能。

      2 模型

      我們的模型主要包括兩個模塊: 基于多相關段落補全算法的數(shù)據(jù)處理模塊和基于神經網(wǎng)絡的機器閱讀理解模塊。數(shù)據(jù)處理模塊會針對原始文檔數(shù)據(jù)做段落選擇。神經網(wǎng)絡模塊則會對輸入的文檔和問題進行語義編碼,并得到最終的答案輸出。

      2.1 數(shù)據(jù)處理

      本模塊的主要目的是從輸入的每個文檔中選出一些與答案相關度比較大的段落,并將這些選出的段落作為后續(xù)模型輸入。

      (1)

      其中,answer代表標準答案,Pt代表文檔中的段落,common(x,y)為求序列x和y的公共詞,len(x)為求序列x的長度。該式的基本思想是:如果一個段落包含答案中的詞越多,越有可能從該段落中推理出答案,那么應賦與該段落較高的相關度。

      在訓練過程中,我們先根據(jù)式(1)對每篇輸入文檔中的段落進行打分,再按照分值從高到低對原始文檔的段落進行重新排序,并按照此順序拼接成新的文檔。但當前得到的新文檔長度不一,直接輸入不利于模型的統(tǒng)一處理。為此,我們通過一種段落補全方法將新生成的文檔進行統(tǒng)一長度處理,具體如下: 設定一個長度m,從該新文檔中選擇前m個詞(如果不足m個詞則進行padding操作)作為此文檔有用的信息,其他信息舍棄。緊接著,對選出的這m個詞按照其在原始輸入文檔中的出現(xiàn)順序再進行重新排序。新排序生成的文本序列將作為下一步神經網(wǎng)絡模型的輸入。

      進行段落補全后每個文檔的長度為m,那么多篇文檔的總段落長度為k*m,此長度即為輸入模型中的文檔長度。

      在這一過程中,第二次的排序非常必要。因為在數(shù)據(jù)集中,雖然每個段落的內容都是相對獨立的,但是段落之間可能存在語義上的關聯(lián),段 落 順 序 上

      也可能存在先后關系。為了保證輸入的語義連貫性,需對按公式(1)選出的文本信息按原文順序再進行排序[注]我們嘗試了多種方式,實驗證明,采用原文順序的方法效果最好。。

      在測試過程中,由于數(shù)據(jù)中不包含標準答案,無法利用相關度函數(shù)進行打分。所以不對段落進行打分,而是按文檔原始順序抽取前m個詞(如果不足m個詞則進行padding操作)作為模型輸入。

      此外,為建模方便,我們將樣本中的問題也取固定長度n作為輸入,其m,n∈I。

      2.2 神經網(wǎng)絡模型

      在N-Reader模型中,我們采用了雙層的self-attention機制來融合上下文語義信息,并利用Pointer-Network[17]對答案的起止位置進行預測,模型結構如圖1所示。

      圖1 N-Reader的神經網(wǎng)絡結構

      圖1中虛線框中的部分為對單文欄的編碼。首先,對單個文檔進行上下文語義編碼;然后,利用雙向的attention機制對問題和文檔信息進行融合;最后,利用self-attention機制得到單文檔的表示。

      圖1中除了虛線框部分,剩余的為針對多文檔的處理。首先,輸入的每個文檔都要先經過上述的單文檔處理流程;然后,將生成的多個單文檔表示進行聯(lián)接形成多文檔的表示,再經過self-attention機制得到最終的輸入語義表示;最后,根據(jù)此表示對答案范圍進行預測。

      2.2.1 單文檔編碼

      單文檔編碼分為三部分: 文檔和問題的上下文信息編碼(對應圖1中“上下文編碼層”部分)、文檔和問題的信息融合(對應圖1中“注意力融合層”部分)、文檔表示信息的自匹配(對應圖1中“自注意力層”部分)。

      (2)

      2)文檔和問題的信息融合。這一過程采用BiDAF的方式來融合文檔和問題中的語義信息。

      首先,采用式(3)所示的點積相似度方法計算uP和uQ的相似度矩陣S。

      S=(uQ)TuP

      (3)

      除計算得到的attention信息之外,原始輸入的編碼信息也會向下一層網(wǎng)絡傳遞。這種方式減少了由于編碼而導致的信息流失。

      (4)

      (5)

      (6)

      2.2.2 多文檔編碼

      (7)

      (8)

      2.2.3 答案預測

      (9)

      3 實驗

      3.1 實驗數(shù)據(jù)集

      2017年百度發(fā)布了面向中文多文檔片段抽取型閱讀理解任務的DuReader數(shù)據(jù)集。中國中文信息學會、中國計算機學會和百度公司聯(lián)手舉辦的“2018機器閱讀理解技術競賽”也是使用該數(shù)據(jù)集。

      該數(shù)據(jù)集是一個大規(guī)模的開放領域中文閱讀理解數(shù)據(jù)集,來源于百度搜索和百度知道的真實場景。數(shù)據(jù)集中包含近30萬的數(shù)據(jù)樣本,其中27萬為訓練樣本,1萬為開發(fā)樣本,2萬為測試樣本。在競賽過程中,測試集并沒有提供答案。因此,實驗中,我們對訓練集和開發(fā)集的數(shù)據(jù)進行隨機重組,并隨機選擇26萬作為訓練集,1萬作為開發(fā)集,1萬作為測試集。在整個實驗過程中,我們沒有使用任何外部數(shù)據(jù)。

      我們使用競賽組織者提供的ROUGE-L和BLEU-4作為評價指標,并以ROUGE-L為主評價指標。后續(xù)對比實驗中的baseline系統(tǒng)為此次競賽舉辦方提供的BiDAF系統(tǒng)。

      3.2 實驗設置

      在實驗中,輸入的文檔長度m設置為500,問題長度n設置為60,答案的最長長度設置為200,詞embedding的維度設置為300,GRU的隱藏層的維度d設置為150,batch的大小設置為24。訓練中采用了Adam算法進行優(yōu)化,學習率設置為0.001。整個模型在GeForce GTX TITAN X上訓練了24個小時。

      3.3 實驗結果及討論

      在實驗的第一部分,我們以BiDAF模型為基線系統(tǒng),增量式地對比了GloVe embedding、多相關段落補全算法、單文檔self-attention(S self-attention)、多文檔self-attention(M self-attention)對整個模型的性能影響。基線系統(tǒng)根據(jù)式(1)選取了文檔中和答案最相關的段落作為訓練數(shù)據(jù),沒有做數(shù)據(jù)補全操作。實驗結果如表2所示。

      從表2可以看出,我們提出的方法在兩個指標上均有提高。并且可以看到在使用了數(shù)據(jù)補全處理和多文檔的self-attention之后整體性能漲幅明顯。

      表2 26萬數(shù)據(jù)集,1萬測試集,線下測試結果

      使用競賽舉辦方提供的線上測試系統(tǒng)得到的結果如表3所示。與百度測評委員會給出的基線系統(tǒng)相比,我們的模型在ROUGE-L和BLEU-4這兩個評價指標上分別提升了13.51%和12.95%。

      表3 27萬數(shù)據(jù)集,2萬測試集,線上測試結果

      為了進一步分析實驗結果,我們對訓練數(shù)據(jù)進行了統(tǒng)計。表4為在測試集上,使用單個最相關段落作為一個輸入文檔時對應的長度統(tǒng)計信息。從中可以看出選出的單一段落長度大部分小于200。表5則統(tǒng)計了不同長度的標準答案在測試集上所占的樣本數(shù)。采用本文提出的多相關段落補全算法后,針對長度不足500的樣本進行數(shù)據(jù)補全。

      表4 測試集上使用單個段落作為對應文檔時得到的文檔長度統(tǒng)計

      表5 測試集上標準答案長度的樣本分布

      基于表4~5的統(tǒng)計結果,我們從標準答案長度和輸入文檔數(shù)據(jù)長度這兩個角度實驗,分析了本文所提出的數(shù)據(jù)補全算法、雙層self-attention機制的有效性,結果如圖2~3所示。

      從圖2~3實驗結果可以看出,對于標準答案長度較短的樣本,數(shù)據(jù)補全的影響比較小,但是對于標準答案長度越長的樣本,多段落數(shù)據(jù)補全的優(yōu)勢就越明顯。說明了針對于短的答案來說,由于文檔中包含的信息足夠推理出答案,其文檔的長度對于模型的性能影響不大。但隨著標準答案的長度增長,太短的文檔不足以尋找出關鍵的線索,文檔補全就顯得至關重要。由統(tǒng)計數(shù)據(jù)也可以看出,近三分之一的文檔標準答案長度大于100,這些文檔在通過多段落補全處理之后,兩個指標均有較大的提升。對于不同的輸入長度,可以看出輸入數(shù)據(jù)越長,越有利于模型找到答案。我們的補全算法會對輸入段落進行補全,這些段落在語義上具有相關性,可以幫助模型抽取到潛在的規(guī)律,有利于模型預測答案的范圍。

      圖2~3也對比了在數(shù)據(jù)處理基礎上加入雙層self-attention后的實驗效果。從中可以看出,在加入了單文檔的self-attention之后,性能提升不明顯。而在此基礎上加入了多文檔的self-attention后,兩個評價指標提升較為明顯。說明了單個文檔中的信息并不足以推理出答案,需要用到多篇文檔中的信息。如同人類做閱讀理解時,在單個文檔信息不足時,通過閱讀不同來源的多個文檔,往往可以找到更加符合問題的答案。這些文檔都是同一個問題的描述,并且在語言描述和語義上具有相似性,有利于模型找到關鍵線索,推理出更加合理的答案。

      圖2 不同的標準答案長度下的BLEU-4和ROUGE-L

      圖3 為不同輸入長度下的BLEU-4和ROUGE-L

      4 總結

      本文提出了一種面向中文多文檔片段抽取型機器閱讀理解任務的N-Reader模型,其主要貢獻點列舉如下。

      首先,我們針對多文檔片段抽取型機器閱讀理解任務提出了一種多相關段落補全算法。該算法既可以保留原始輸入文本中的主要語義信息,又可以消除對最終結果沒有幫助的噪音信息。實驗結果顯示,該算法可以較大幅度地提高機器閱讀理解任務的性能。

      其次,我們提出了雙層的self-attention機制來生成文檔和問題的向量表示。首先對單個文檔進行編碼并利用self-attention機制得到單文檔的表示;其次,將單文檔表示進行聯(lián)接形成多文檔的表示;最后,經過另外一個self-attention機制得到最終的輸入語義表示,并據(jù)此表示進行答案范圍的預測。實驗結果顯示,該雙層self-attention機制對提升機器閱讀理解任務的性能有較大幫助。

      最后,使用N-Reader模型,我們參加了由中國中文信息學會、中國計算機學會和百度公司聯(lián)手舉辦的“2018機器閱讀理解技術競賽”,獲得了第三名的成績,這一成績證明了本文模型的有效性。

      我們計劃在未來的研究中深入地挖掘多文檔數(shù)據(jù)之間的內在聯(lián)系,以及在模型中引入句法結構信息以增強模型的表示能力。此外,我們還計劃設計新的神經網(wǎng)絡結構來提高模型的表示和推理能力。

      猜你喜歡
      段落文檔機器
      機器狗
      機器狗
      有人一聲不吭向你扔了個文檔
      【短文篇】
      心理小測試
      未來機器城
      電影(2018年8期)2018-09-21 08:00:06
      夏天,愛情的第四段落
      散文詩(2017年17期)2018-01-31 02:34:11
      基于RI碼計算的Word復制文檔鑒別
      弄清段落關系 按圖索驥讀文
      讀寫算(下)(2016年11期)2016-05-04 03:44:07
      Persistence of the reproductive toxicity of chlorpiryphos-ethyl in male Wistar rat
      前郭尔| 屯门区| 重庆市| 岑溪市| 垫江县| 基隆市| 邯郸市| 碌曲县| 栾城县| 静乐县| 葫芦岛市| 霍山县| 清徐县| 诏安县| 大理市| 咸阳市| 城固县| 科技| 浦县| 历史| 钦州市| 兴城市| 昌乐县| 泗阳县| 黔西| 连州市| 临泽县| 湖北省| 沙洋县| 平舆县| 南阳市| 福安市| 白沙| 龙岩市| 九龙城区| 肇东市| 罗江县| 达拉特旗| 纳雍县| 双江| 黄山市|