神经机器阅读理解最新综述:方法和趋势
作者丨劉姍姍
學校丨國防科技大學
研究方向丨自然語言處理
近年來,基于深度學習方法的機器閱讀理解受到了廣泛的關注。近日,來自國防科技大學的團隊在arXiv上發布了預印版綜述文章?Neural Machine Reading Comprehension: Methods and Trends。
該文總結了神經機器閱讀理解領域的經典方法與新興趨勢,并對一些有待解決的開放性問題進行了討論。想要快速了解這一領域的讀者,不妨可以從這篇論文看起。
引言
機器閱讀理解(MachineReading Comprehension, MRC)任務主要是指讓機器根據給定的文本回答與文本相關的問題,以此來衡量機器對自然語言的理解能力。這一任務的緣起可以追溯到 20 世紀 70 年代,但是受限于小規模數據集和基于規則的傳統方法,機器閱讀理解系統在當時并不能滿足實際應用的需求。
這種局面在 2015 年發生了轉變,主要歸功于以下兩點:1)基于深度學習的機器閱讀理解模型(神經機器閱讀理解)的提出,這類模型更擅長于挖掘文本的上下文語義信息,與傳統模型相比效果提升顯著;2)一系列大規模機器閱讀理解數據集的公布,如 CNN & Daily Mail [1]、SQuAD [2]、MS MARCO [3] 等,這些數據集使得訓練深度神經模型成為可能,也可以很好的測試模型效果。神經機器閱讀理解在近幾年逐漸受到越來越多的關注,成為了學術界和工業界的研究熱點。
本文對神經機器閱讀理解的方法和新趨勢進行了詳盡的總結,主要分為以下幾點:
介紹了典型的機器閱讀理解任務,給出公式化定義與代表性數據集,并對不同任務進行了比較;
給出了機器閱讀理解系統的基本框架,其中包括:嵌入編碼、特征提取、文章-問題交互和答案預測四個模塊;
介紹了機器閱讀理解領域近兩年出現的新興研究趨勢,并對一些有待解決的開放性問題進行了討論。
任務
常見任務介紹
參考陳丹琦 [4] 在她的博士畢業論文中的觀點,常見的機器閱讀理解任務按照其答案形式可以分為以下四類:完形填空、多項選擇、片段抽取和自由作答。
完形填空
任務定義:給定文章 C,將其中的一個詞或者實體 a (a∈C)?隱去作為待填空的問題,完形填空任務要求通過最大化條件概率 P(a|C-{a})?來利用正確的詞或實體 a?進行填空。
完形填空任務在英語考試中非常常見。如 CLOTH [8] 中的例子所示,原文中的某個詞被隱去,我們需要找到正確的詞進行填空,使原文變得完整(雖然 CLOTH 數據集中提供了備選答案,但是這在完形填空任務中并不是必需的)。
代表數據集:CNN & Daily Mail [1]、CBT [5]、LAMBADA [6]、Who-did-What [7]、CLOTH [8]、CliCR [9]
多項選擇
任務定義:給定文章 C、問題 Q?和一系列候選答案集合,多項選擇任務通過最大化條件概率來從候選答案集合 A?中挑選出正確答案回答問題 Q。
多項選擇也是英語考試中的常見題型。如 RACE [11] 中的例子所示,根據文章內容提出一個相關問題,同時給出若干個候選答案,我們需要從候選答案中選擇出能正確回答問題的答案。
代表數據集:MCTest [10]、RACE [11]
片段抽取
任務定義:給定文章 C(其中包含 n?個詞,即)和問題 Q,片段抽取任務通過最大化條件概率?P(a|C,Q)?來從文章中抽取連續的子序列作為問題的正確答案。
片段抽取任務要求從原文中抽取一個連續的句子(或詞組)作為問題的答案。如 SQuAD [2] 中的例子所示,原文中的?inherentdifficulty?被抽取出來作為問題的答案。
代表數據集:SQuAD [2]、NewsQA [12]、TriviaQA [13]、DuoRC [14]
自由作答
任務定義:給定文章 C?和問題 Q,自由作答的正確答案 a?有時可能不是文章 C?的子序列,即 a?C?或?a?C。自由作答任務通過最大化條件概率 P(a|C,Q) 來預測回答問題 Q 的正確答案 a。
自由作答任務的答案形式最為靈活。如 MS MARCO [3] 中,提供了 10 篇相關的文章,回答問題時需要對文章中的線索進行歸納總結,與片段抽取任務相比,自由作答任務的答案不再限制于原文中的句子,更符合人們平時的作答習慣。
代表數據集:bAbI [15]、MS MARCO [3]、SearchQA [16]、NarrativeQA [17]、DuReader [18]
不同任務比較
我們從構建難易程度(Construction)、對自然語言理解的測試水平(Understanding)、答案靈活程度(Flexibility)、評價難易程度(Evaluation)和實際應用貼合程度(Application)等五個維度出發,對上述四類常見的機器閱讀理解任務進行比較,依據每個任務在不同維度上的表現,得分最低 1 分、最高 4 分,結果如下圖所示:
完形填空任務的數據集易于構建,可以用準確率指標進行評價。但是由于這一任務的答案限定為原文中的一個詞或實體,所以并不能很好的測試機器對自然語言的理解能力且與實際應用相距較遠。
多項選擇任務由于提供了候選答案,答案的形式相較于完形填空而言更為靈活,構建數據集可以直接利用現有的語言測試中的多項選擇題目,所以較為容易。由于該任務要求從備選答案中選出正確答案,模型的搜索空間相對較小,對自然語言理解的測試較為局限,提供備選答案與實際應用場景不太相符。
片段抽取任務是一個適中的選擇,數據集相對容易構建,模型效果也可以使用精確匹配和 F1 分數進行衡量,答案限定為原文中的子片段,相較于多項選擇有了更大的搜索空間,也在一定程度上能測試機器對自然語言的理解能力,但是和實際應用仍有一定差距。
自由作答任務答案形式非常靈活,能很好的測試對自然語言的理解,與現實應用最為貼近,但是這類任務的數據集構造相對困難,如何有效的評價模型效果有待進行更為深入的研究。
基本框架
典型的機器閱讀理解系統一般包括嵌入編碼、特征抽取、文章-問題交互和答案預測四個模塊。
嵌入編碼:這一模塊將輸入的自然語言形式的文章和問題轉化成固定維度的向量,以便機器進行后續處理。早期常用的方法為傳統的詞表示方法,如獨熱表示和分布式詞向量,近兩年由大規模語料庫預訓練的基于上下文詞表示方法也得到了廣泛的應用,如 ELMo [19]、GPT [20]、Bert [21] 等。同時,為了能更好的表示語義句法等信息,上述詞向量有時也可以和詞性標簽、命名實體、問題類型等語言特征結合后進行更細粒度的表示。
特征提取:經由嵌入編碼層編碼得到的文章和問題的詞向量表示接著傳遞給特征提取模塊,來抽取更多的上下文信息。這一模塊中常用的神經網絡模型有循環神經網絡(RNN)、卷積神經網絡(CNN)和基于多頭自注意力機制的 Transformer 結構 [22]。
文章-問題交互:機器可以利用文章和問題之間的交互信息來推測出文章中哪些部分對于回答問題更為重要,為了實現這一目標,文章-問題交互模塊常用單向或雙向的注意力機制來強調原文中與問題更為相關的部分。與此同時,為了更深層次的挖掘文章和問題之間的關系,兩者之間的交互過程有時可能會執行多次,以此來模擬人類在進行閱讀理解時重復閱讀的行為。
答案預測:這一模塊基于前述三個模塊累積得到的信息進行最終的答案預測。由于常見的機器閱讀理解任務可以按照答案類型進行分類,所以這一模塊的實現是高度任務相關的。
對于完形填空任務,答案輸出是原文中的一個詞或實體,一種做法是將文中相同詞的注意力權重得分進行累加,最終選擇得分最高的詞作為答案 [23];對于多項選擇任務,是從多個候選答案中挑選出正確答案,一般是對備選答案進行打分,選擇得分最高的候選者作為答案;對于片段抽取任務,從原文中抽取一個連續的子片段作為答案,常用方法是 Wang & Jiang [24] 提出的預測答案開始和結束位置的概率的邊界模型;對于自由作答任務,答案靈活度最高,不再限制于原文中,可能需要進行推理歸納,現有的方法常用抽取和生成相結合的模式。
新的研究趨勢
基于知識的機器閱讀理解
在人類閱讀理解過程中,當有些問題不能根據給定文本進行回答時,人們會利用常識或積累的背景知識進行作答,而在機器閱讀理解任務中卻沒有很好的利用外部知識,這是機器閱讀理解和人類閱讀理解存在的差距之一。
為了引入額外的外部知識,一些學者提出了基于知識的機器閱讀理解任務,與之前所介紹的任務不同,這一任務的輸入除了文章和問題,還有從外部知識庫中抽取的知識,以此來提高機器進行答案預測的準確率。
代表性的基于知識的機器閱讀理解數據集有 MCScript [25],其中的文本關于人類的一些日常活動,有些問題僅根據給定文本不能作答,需要一定的常識。例如回答“用什么來挖洞”(What was used to dig the hole?)這一問題,依據常識我們知道一般是用“鏟子”(a shovel)而不是用“手”(bare hands)。
基于知識的機器閱讀理解任務的挑戰主要有:
1. 相關外部知識的檢索(如何從知識庫中找到“用鏟子挖洞”這一常識);
2. 外部知識的融合(知識庫中結構化的知識如何與非結構化的文本進行融合)。
帶有不能回答問題的機器閱讀理解
機器閱讀理解任務有一個潛在的假設,即在給定文章中一定存在正確答案,但這與實際應用不符,由于給定文章中所含的知識有限,一些問題僅根據原文可能并不能做出回答,這就出現了帶有不能回答問題的機器閱讀理解任務。在這一任務中,首先機器要判斷問題僅根據給定文章能否進行作答,如若不能,將其標記為不能回答,并停止作答;反之,則給出答案。
SQuAD2.0 [26] 是帶有不能回答問題的機器閱讀理解任務的代表數據集。在下面的例子中,問題是“1937 年條約的名字”(What was the name of the 1937 treaty?),但是原文中雖然提到了 1937 年的條約,但是沒有給出它的名字,僅根據原文內容不能對問題進行作答,1940 年條約的名字還會對回答問題造成誤導。
帶有不能回答問題的機器閱讀理解任務的挑戰有:
1. 不能回答問題的判別(判斷“1937 年條約的名字是什么”這個問題能否根據文章內容進行作答);
2. 干擾答案的識別(避免被 1940 年條約名字這一干擾答案誤導)。
多文檔機器閱讀理解
在機器閱讀理解任務中,文章是預先定義的,再根據文章提出問題,這與實際應用不符。人們在進行問答時,通常先提出一個問題,再利用相關的可用資源獲取回答問題所需的線索。
為了讓機器閱讀理解任務與實際應用更為貼合,一些研究者提出了多文檔機器閱讀理解任務,不再僅僅給定一篇文章,而是要求機器根據多篇文章對問題進行作答。這一任務可以應用到基于大規模非結構化文本的開放域問答場景中。多文檔機器閱讀理解的代表數據集有 MS MARCO [3]、TriviaQA [13]、SearchQA [16]、DuReader [18] 和 QUASAR [27]。
多文檔機器閱讀理解的挑戰有:
1. 相關文檔的檢索(如何從多篇文檔中檢索到與回答問題相關的文檔)
2. 噪聲文檔的干擾(一些文檔中可能存在標記答案,但是這些答案與問題可能存在答非所問的情況)
3. 檢索得到的文檔中沒有答案
4. 可能存在多個答案(例如問“美國總統是誰”,特朗普和奧巴馬都是可能的答案,但是哪一個是正確答案還需要結合語境進行推斷)
5. 需要對多條線索進行聚合(回答問題的線索可能出現在多篇文檔中,需要對其進行總結歸納才能得出正確答案)。
對話式閱讀理解
機器閱讀理解任務中所提出的問題一般是相互獨立的,而人們往往通過一系列相關的問題來獲取知識。當給定一篇文章時,提問者先提出一個問題,回答者給出答案,之后提問者再在回答的基礎上提出另一個相關的問題,多輪問答對話可以看作是上述過程迭代進行多次。為了模擬上述過程,出現了對話式閱讀理解,將對話引入了機器閱讀理解中。
對話式閱讀理解的代表性數據集有 CoQA [28]、QuAC [29] 等。下圖展示了 CQA 中的一個對話問答的例子。對于給定的文章,進行了五段相互關聯的對話,不僅問題之間存在聯系,后續的問題可能與之前的答案也有聯系,如問題 4 和問題 5 都是針對問題 3 的答案?visitors 進行的提問。
對話式閱讀理解存在的挑戰有:
1. 對話歷史信息的利用(后續的問答過程與之前的問題、答案緊密相關,如何有效利用之前的對話信息);
2. 指代消解(理解問題 2,必須知道其中的?she?指的是?Jessica)。
開放性問題討論
外部知識的引入
常識和背景知識作為人類智慧的一部分常常用于人類閱讀理解過程中,雖然基于知識的機器閱讀理解任務在引入外部知識方面有一定的嘗試,但是仍存在不足。
一方面,存儲在知識庫中的結構化知識的形式和非結構化的文章、問題存在差異,如何將兩者有效的進行融合仍值得研究;另一方面,基于知識的機器閱讀理解任務表現高度依賴于知識庫的構建,但是知識庫的構建往往是費時費力的,而且存儲在其中的知識是稀疏的,如果不能在知識庫中直接找到相關的外部知識,可能還需要對其進行進一步的推理。
機器閱讀理解系統的魯棒性
正如 Jia & Liang [30] 指出的,現有的基于抽取的機器閱讀理解模型對于存在誤導的對抗性樣本表現非常脆弱。如果原文中存在干擾句,機器閱讀理解模型的效果將大打折扣,這也在一定程度上表明現有的模型并不是真正的理解自然語言,機器閱讀理解模型的魯棒性仍待進一步的提升。
限定文章帶來的局限性
機器閱讀理解任務要求機器根據給定的原文回答相關問題,但是在實際應用中,人們往往是先提出問題,之后再利用可用的資源對問題進行回答。多文檔機器閱讀理解任務的提出在一定程度上打破了預先定義文章的局限,但是相關文檔的檢索精度制約了多文檔機器閱讀理解模型在答案預測時的表現。信息檢索和機器閱讀理解需要在未來進行更為深度的融合。
推理能力的缺乏
現有的機器閱讀理解模型大多基于問題和文章的語義匹配來給出答案,這就導致模型缺乏推理能力。例如,給定原文“機上五人地面兩人喪命”,要求回答問題“幾人喪命”時,機器很難給出正確答案“7 人”。如何賦予機器推理能力將是推動機器閱讀理解領域發展的關鍵問題。
?
本文對?Neural Machine Reading Comprehension: Methods and Trends?一文的主要內容進行了介紹,由于篇幅限制,介紹較為粗略,感興趣的讀者可以參看原論文的詳細介紹。
參考文獻
[1]?Hermann K M, KociskyT, Grefenstette E, et al. Teaching machines to read and comprehend[C]//Advancesin neural information processing systems. 2015: 1693-1701.
[2] Rajpurkar P, Zhang J, Lopyrev K, et al. Squad: 100,000+ questions for machinecomprehension of text[J]. arXiv preprint arXiv:1606.05250, 2016.
[3] Nguyen T, Rosenberg M, Song X, et al. MS MARCO: A Human Generated MAchineReading COmprehension Dataset[J]. choice, 2016, 2640: 660.
[4] Danqi Chen. Neural Reading Comprehension and Beyond. PhD thesis, StanfordUniversity, 2018.
[5] Hill F, Bordes A, Chopra S, et al. The goldilocks principle: Reading children'sbooks with explicit memory representations[J]. arXiv preprint arXiv:1511.02301,2015.
[6] Paperno D, Kruszewski G, Lazaridou A, et al. The LAMBADA dataset: Wordprediction requiring a broad discourse context[J]. arXiv preprintarXiv:1606.06031, 2016.
[7] Onishi T, Wang H, Bansal M, et al. Who did what: A large-scale person-centeredcloze dataset[J]. arXiv preprint arXiv:1608.05457, 2016.
[8] Xie Q, Lai G, Dai Z, et al. LARGE-SCALE CLOZE TEST DATASET DESIGNED BYTEACHERS[J]. arXiv preprint arXiv:1711.03225, 2017.
[9] ?uster S, Daelemans W. Clicr: A dataset of clinical case reports for machinereading comprehension[J]. arXiv preprint arXiv:1803.09720, 2018.
[10] Richardson M, Burges C J C, Renshaw E. Mctest: A challenge dataset for theopen-domain machine comprehension of text[C]//Proceedings of the 2013Conference on Empirical Methods in Natural Language Processing. 2013: 193-203.
[11] Lai G, Xie Q, Liu H, et al. Race: Large-scale reading comprehension datasetfrom examinations[J]. arXiv preprint arXiv:1704.04683, 2017.
[12] Trischler A, Wang T, Yuan X, et al. Newsqa: A machine comprehension dataset[J].arXiv preprint arXiv:1611.09830, 2016.
[13] Joshi M, Choi E, Weld D S, et al. Triviaqa: A large scale distantly supervisedchallenge dataset for reading comprehension[J]. arXiv preprintarXiv:1705.03551, 2017.
[14] Saha A, Aralikatte R, Khapra M M, et al. Duorc: Towards complex languageunderstanding with paraphrased reading comprehension[J]. arXiv preprintarXiv:1804.07927, 2018.
[15] Weston J, Bordes A, Chopra S, et al. Towards ai-complete question answering: Aset of prerequisite toy tasks[J]. arXiv preprint arXiv:1502.05698, 2015.
[16] Dunn M, Sagun L, Higgins M, et al. Searchqa: A new q&a dataset augmentedwith context from a search engine[J]. arXiv preprint arXiv:1704.05179, 2017.
[17] Ko?isky T, Schwarz J, Blunsom P, et al. The narrativeqa reading comprehensionchallenge[J]. Transactions of the Association for Computational Linguistics,2018, 6: 317-328.
[18] He W, Liu K, Liu J, et al. Dureader: a chinese machine reading comprehensiondataset from real-world applications[J]. arXiv preprint arXiv:1711.05073, 2017.
[19] Peters M E, Neumann M, Iyyer M, et al. Deep contextualized wordrepresentations[J]. arXiv preprint arXiv:1802.05365, 2018.
[20] Radford A, Narasimhan K, Salimans T, et al. Improving language understanding bygenerative pre-training[J]. URL https://s3-us-west-2. amazonaws.com/openai-assets/ researchcovers/languageunsupervised/language understandingpaper. pdf, 2018.
[21] Devlin J, Chang M W, Lee K, et al. Bert: Pre-training of deep bidirectionaltransformers for language understanding[J]. arXiv preprint arXiv:1810.04805,2018.
[22] Vaswani A, Shazeer N, Parmar N, et al. Attention is all you need[C]//Advancesin neural information processing systems. 2017: 5998-6008.
[23] Kadlec R, Schmid M, Bajgar O, et al. Text understanding with the attention sumreader network[J]. arXiv preprint arXiv:1603.01547, 2016.
[24] Wang S, Jiang J. Machine comprehension using match-lstm and answer pointer[J].arXiv preprint arXiv:1608.07905, 2016.
[25] Ostermann S, Modi A, Roth M, et al. Mcscript: A novel dataset for assessingmachine comprehension using script knowledge[J]. arXiv preprintarXiv:1803.05223, 2018.
[26] Rajpurkar P, Jia R, Liang P. Know What You Don't Know: Unanswerable Questionsfor SQuAD[J]. arXiv preprint arXiv:1806.03822, 2018.
[27] Dhingra B, Mazaitis K, Cohen W W. Quasar: Datasets for question answering bysearch and reading[J]. arXiv preprint arXiv:1707.03904, 2017.
[28] Reddy S, Chen D, Manning C D. Coqa: A conversational question answeringchallenge[J]. Transactions of the Association for Computational Linguistics,2019, 7: 249-266.
[29] Choi E, He H, Iyyer M, et al. Quac: Question answering in context[J]. arXivpreprint arXiv:1808.07036, 2018.
[30] Jia R, Liang P. Adversarial examples for evaluating reading comprehensionsystems[J]. arXiv preprint arXiv:1707.07328, 2017.
點擊以下標題查看更多往期內容:?
圖神經網絡綜述:模型與應用
ACL 2019 | 基于知識增強的語言表示模型
ACL 2019 | 基于上下文感知的向量優化
基于小樣本學習的意圖識別冷啟動
復旦大學邱錫鵬:詞法、句法分析研究進展綜述
ACL 2019?| 句對匹配的樣本選擇偏差與去偏方法
深度長文:NLP的巨人肩膀(上)
NLP 的巨人肩膀(下):從 CoVe 到 BERT
#投 稿 通 道#
?讓你的論文被更多人看到?
如何才能讓更多的優質內容以更短路徑到達讀者群體,縮短讀者尋找優質內容的成本呢?答案就是:你不認識的人。
總有一些你不認識的人,知道你想知道的東西。PaperWeekly 或許可以成為一座橋梁,促使不同背景、不同方向的學者和學術靈感相互碰撞,迸發出更多的可能性。
PaperWeekly 鼓勵高校實驗室或個人,在我們的平臺上分享各類優質內容,可以是最新論文解讀,也可以是學習心得或技術干貨。我們的目的只有一個,讓知識真正流動起來。
??來稿標準:
? 稿件確系個人原創作品,來稿需注明作者個人信息(姓名+學校/工作單位+學歷/職位+研究方向)?
? 如果文章并非首發,請在投稿時提醒并附上所有已發布鏈接?
? PaperWeekly 默認每篇文章都是首發,均會添加“原創”標志
? 投稿郵箱:
? 投稿郵箱:hr@paperweekly.site?
? 所有文章配圖,請單獨在附件中發送?
? 請留下即時聯系方式(微信或手機),以便我們在編輯發布時和作者溝通
?
現在,在「知乎」也能找到我們了
進入知乎首頁搜索「PaperWeekly」
點擊「關注」訂閱我們的專欄吧
關于PaperWeekly
PaperWeekly 是一個推薦、解讀、討論、報道人工智能前沿論文成果的學術平臺。如果你研究或從事 AI 領域,歡迎在公眾號后臺點擊「交流群」,小助手將把你帶入 PaperWeekly 的交流群里。
▽ 點擊 |?閱讀原文?| 下載論文
總結
以上是生活随笔為你收集整理的神经机器阅读理解最新综述:方法和趋势的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 直播报名 | CUDA优化:高性能库cu
- 下一篇: ICCV Neural Architec