【學術】針對閱讀理解的基於互動式層疊注意力模型
編者按:機器閱讀理解的背後是對知識的理解、推理與表示,是人工智慧在認知方面接近人類的重要突破口。本期本公眾號通過翻譯科大訊飛與哈工大聯合實驗室(HFL)在SQuAD(Stanford Question Answering Dataset)挑戰賽奪冠的系統模型,它在Cloze-style閱讀理解任務中取得了更好的結果。
論文中提出的基於互動式層疊注意力模型的最大的特點在於它可以通過「自發學習」的方式找到問題對應原文的片段。這一模型可以根據給定的問題對篇章進行多次過濾,同時根據已經被過濾的文章進一步篩選出問題中的關鍵提問點。也就是說,不只從問題到篇章,也從篇章到問題,互動式地逐步精確答案的範圍。作者:Yimin Cui等
摘要 完形填空式的查詢(Cloze-style queries)是閱覽理解中的代表性問題。在這篇論文中,為了更好的解決完形填空理解問題,我們提出了一種簡單但是新穎的模型,我們稱之為 attention-over-attention模型。我們提出的模型是在文檔級的注意力之上放置另一種注意力機制(attention mechanism),並誘導出(attended attention)以用於最終答案的預測。這個模型的一大優點是:較相關工作更少的超參數但能達到更好的表現。 除了基本的模型,我們同樣最佳重排序策略,仔細檢查候選者的有效性並進一步提高性能。試驗效果表明我們提出的 attention-over-attention 模型在許多公共數據會集都顯著優於當前最好的方法,例如 CNN 和CBT(Children』s Book Test) 數據集。
導語 閱讀和理解人類語言對機器來說是一項極具應戰性的使命,這需要對自然語言的理解以及基於線索的推理能力。閱讀理解是現實世界中的一個普遍問題,其意圖是閱讀和理解給定的文章或語境,並依此作答。現在,在完形填空閱讀理解問題已成為了非常受歡迎的任務。與一般的閱讀理解相似,完形填空式的查詢是依據文檔的實質提出的,儘管其答案是文檔中的某個詞。
為了教會機器完成完形填空式的閱讀理解,需要學習給定文檔和問題之間的關係,因此必須要大規模的訓練數據集。通過採用基於注意(attention)的神經網路方法(Bahdanau et al.,2014),機器可以學習大規模訓練數據中的這些模式。為了創造大規模訓練數據,Hermann et al. (2015)發布了用於完形填空式的閱讀理解的 CNN/Daily Mail 新聞語料庫,其中的內容由新聞文章及其摘要構成。之後 Hill et al.(2015)發布了 Children』s Book Test (CBT:兒童圖書測試)數據集,其中的訓練樣本是通過自動化的方式生成的。此外,Cui et al.(2016)也發布了用於未來研究的漢語閱讀理解數據集。正如我們所見,自動生成用於神經網路的大規模訓練數據對閱讀理解來說是至關重要的。此外,語境的推理和總結等更複雜的問題需要遠遠更多的數據才能學會更高水平的交互。
在本論文中,我們提出了一種全新且簡練的神經網路架構 attention-over-attention(注意之上的注意)模型。正如我們可以從字面上理解的一樣,這一模型的旨在在已有的文檔級的注意力之上放置另一種注意力機制。和之前運用的啟發式融合函數(heuristic merging functions)(Cui et al., 2016)或設置多個超參數(Trischler et al., 2016)的效果不一樣的是,我們的模型可以在多個文檔級注意力機制之上主動生成一個「attended attention(集中注意)」,並進行雙向的查找--不僅從「問題到文檔」也「從文檔到問題」--這可以從交互信息中獲益。
總的來說,我們的工作的主要貢獻如下:
- 就我們所知,這是初次引入attention-over-attention機制。
- 和之前的向模型中引進複雜架構或許多非可訓練的超參數不一樣,我們的模型很簡單,在超參數調整上沒有任何負擔,並且在許多公共數據集中的表現都顯著優於當前最好的系統。
- 由於我們的模型具有遍及性,我們相信該 attention-over-attention 機制也可用於其它任務。
本論文的剩餘部分的安排如下。在第 2 節中,我們給出了對完形填空式閱讀理解任務的介紹,並討論了相關的數據集。然後我們在第 3 節中詳細闡述了我們提出的 attention-over-attention 閱讀器。第 4 節給出了實驗結果。第 5 節則探討了相關的成果;在論文最後,我們做出了一個我們成果的簡要總結。
模型 這篇文章的模型被稱作 Attention over Attention (AoA)。根據Cui et al.(2016)以前的工作來看,更多query表示的調查是必須的,同時我們應該更多地注意利用query信息。和之前的工作不同,不僅僅考慮 問題到文檔的注意力query-to-document attention,而且考慮了 文檔到問題的注意力document-to-query attention。模型架構示意圖如下:
Contextual Embedding
我們首先獲得document D和query Q 的嵌入式表達,由此,document和query可參與嵌入式表達的學習並從此機制中獲益。我們用兩個雙向RNNs去獲取document和query的個別上下文表徵,將兩個方向的 hidden state 拼接起來作為該詞的狀態,此刻 document 和 query 可以分別用一個 Dx2d 和 Qx2d 的矩陣來表明,這兒 D 是 document 的詞數,Q 是 query 的詞數,d 是 embedding 的維度。
Pair-wise Matching Score
這一步是實質上便是對兩個矩陣做矩陣乘法,得到所謂的Matching Score矩陣M,這裡的M矩陣的維度是DxQ,矩陣中的每個元素表明對應 document 和 query 中的詞之間的 matching score。
Individual Attentions 對 M矩陣的每一列進行softmax化,從而得到每一列的概率分布,即query-to-document attention,其意義是給定一個query詞,對於 document 中每個詞的 attention,這篇文章用下式進行計算:
Attention-over-Attention 前三個步驟都是許多模型選用的通用做法,這一步是這篇文章的亮點。我們引入了另一種attention機制去自動判定任一attention的重要性。首要,第三步是對 M 矩陣的每一列做了 softmax 歸一化,這兒對 M 矩陣的每一行做 softmax 歸一化,即得到所謂的document-to-query attention,用下式來表明:
然後,將 document-to-query attention 作平均得到最終的 query-level attention。需要注意的是,由於平均attention不會破壞正常化狀態,我們不會對β進行另一個softmax化。如下:
最後,用每個 query-to-document attention 和剛剛得到的 query-level attention 做點乘,得到 document 中每個詞的 score。
Final Predictions 我們使用sum attention 機制以獲取匯總結果。最終輸出結果會在辭彙空間V中體現,而不是與性能大相徑庭的document級別 attention |D|。將一樣詞的 score 兼并,得到每個詞的score,如下式:
然後得到最終的答案。
試驗有些用了英文語料 CNN 和 CBT,在沒用 pre-trained embedding 狀況下,單模型得到了state-of-the-art效果。
這篇文章提到的模型最大的特徵便是不只僅考慮了 query 到 document 的 attention,並且考慮了document 到 query 的 attention,即所謂的 attention over attention,在 Cloze-style 閱讀理解任務中取得了十分理想的效果。作者在接下來的研究中,會 嘗試將該模型拓寬到別的任務中。
結論 我們提出了一個新穎的神經網路結構,叫做attention-over-attention模型,用於處理完形填空閱讀理解任務。AoA模型兼顧query到document的attention和document到query的attention。由很多公共數據集來看,我們的模型會在很多state-of-the-arta系統有大幅度地連貫且巨大的進步。
未來的工作將在以下幾個方面進行。 我們相信我們的模型是通用的,也可能適用於其他任務,所以首先我們將全面研究這種結構在其他任務中的用量。此外,我們有興趣看到如果這機器通過利用神經網路方法真正「理解」我們的語言,但不僅僅是「文檔級」語言模型。在這方面,我們正在計劃研究需要對幾句話進行全面推理的問題。
推薦閱讀: