問答算法系統專場|AIS預講會全程乾貨分享

AIS (ACL、IJCAI、SIGIR) 2018

Session 6: Question Answering

問答算法系統專場|AIS預講會全程乾貨分享

問答算法系統專場|AIS預講會全程乾貨分享

1. 林衍凱 清華大學

DenoisingDistantly Supervised Open—Domain Question Answering

問答算法系統專場|AIS預講會全程乾貨分享

閱讀理解(Reading Comprehension)是我們現在非常熱門的一個話題,它可以反映出目前機器對自然語言進行處理和理解的能力。首先我們來看一下機器閱讀理解任務的具體定義是什麼?機器閱讀理解是你給定一個問題和相關的段落,從給定的段落中提取出問題的答案。

目前,我們已經在機器閱讀理解任務中中取得了非常好的效果。目前研究者們提出了許多機器閱讀理解模型並在其公開評測任務中取得了很好的效果。然而,機器閱讀理解存在一個問題:它需要我們事先給定一個和問題相關的文本,然後在給定的文本中提取問題的答案。機器閱讀理解的這個問題導致其無法很好地在實際中應用。一般在我們日常生活中的問答場景是無法預先得到和這個問題相關的文檔的。

因此,研究者們提出了一個更加實用的任務:開放域問題(Open Domain Question Answering),並嘗試結合信息檢索和閱讀理解技術來解決這個任務。比如說,我們有一個問題“北京的人口是多少”,首先我們用搜索引擎(或者其他的信息檢索系統)從文本庫中檢索出和這個問題相關的段落,然後對這些檢索到段落進行閱讀理解,抽取出最終的答案即北京的人口。

現有的開放域問答系統只是簡單地利用了信息檢索和閱讀理解技術,沒有綜合利用檢索到的段落,另外也無法鑑別出檢索到的段落哪些是真正和問題相關的。

針對這個問題,我們借鑑人類回答問題的過程提出了一個高效實用的開放域問答系統。在人類回答問題時,我們首先會利用搜索引擎中會檢索出若干和問題相關的段落,然後快速把這些文檔看一遍,判斷哪些段落是和問題相關的,然後對其中和問題相關的段落進行詳細閱讀,最後總結所有段落中的信息得出問題答案。

給定一個問題及檢索出與其相關段落,我們的系統首先用一個Paragraph Selector做快速閱讀給出每一個段落可能包含答案的概率,然後在有可能包含答案的段落中做閱讀理解,抽取出每一個段落中的答案片段,最終總結所有段落的信息得到答案。

我們的實驗採用了目前三個常用的開放域問答數據集Quasar-T,SearchQA和TrivialQA。我們的系統在三個數據集上都取得了比較大的提升,同時我們也看到我們的系統可以在只使用少量最相關段落的情況下達到和原來基本相當的效果。另外,我們的系統top5效果相比top1的效果仍然有十幾個點的提升空間,之後可以進一步採用答案重排序的方式提升其效果。

最後分享一個Case Study。它的問題是是哪一個藝術家可以同時使用他的左手和右手進行工作,答案是達芬奇。這個問題的線索包含在三個不同的段落中,第一個段落提到了達芬奇是藝術家,第二個段落提到達芬奇會使用左手工作,第三個段落提到達芬奇會用右手工作。我們需要綜合利用所有段落的信息來確定問題的答案為達芬奇。

最後總結一下我們的工作。我們的工作對人類進行閱讀理解的方式進行建模,可以在只使用較少的段落的情況下取得不錯的效果。謝謝大家!

問答算法系統專場|AIS預講會全程乾貨分享

Joint Trainingof Candidate Extraction and Answer Selection for Reading Comprehension

問答算法系統專場|AIS預講會全程乾貨分享

首先說一下任務。我們這裡邊考慮的也是開放領域的閱讀理解,在這個場景下面,一個問題往往會被通過檢索的形式產生多個相關的文檔的片段,根據這些文檔的片段,給出最後的答案。但目前主流的兩種方式都不能很好地考慮到,我有多處答案。

我們看一個閱讀理解的例子。問題是朗姆酒、酸橙以及可樂構成了什麼樣的雞尾酒,答案是自由古巴。我們可以通過這個例子看到開放領域閱讀理解的三個特點,首先是冗餘性,正確答案有可能出現在多個文本片段裡面。其次是混淆性,錯誤答案的片段,也有可能匹配到問題部分的信息。第三是互補性,有時候我們需要去借助多個文本的信息,才能夠正確回答這個問題。

我們考慮到這三個特點,提出來的解決方案,對候選答案進行建模。首先會產生候選答案的集合,考慮到候選答案之間的關聯,給出最後的答案。

首先構建了先去抽取候選,再去選擇答案的兩個階段的方式,在答案選擇的階段,我們去引入基於注意力機制的相關性的矩陣,建模候選與候選之間的關係。通過強化學習的方法,可以將這兩個階段的模型進行聯合的訓練。我們的方法確實也是比較有效的,在幾個閱讀理解的數據集裡面,也取得了不錯的結果。

首先來看我們模型的第一個階段,候選的抽取,在給定問題以及文本集合的情況下,我們建模候選集合的概率。

我們模型的第二個階段是答案選擇的階段,目的是給定問題,文本的集合以及候選集合情況下去建模每個候選,最終被選作最終答案的概率。因為這邊已經有了候選答案的信息,所以我們這個階段主要就是考慮從候選答案出發,去對問題進行建模。

首先我們會去產生候選答案的表示,根據每個候選答案的表示,基於Attention的機制構建相關性矩陣,通過相關性係數,對每一個候選產生一個參考項量,可以利用到其他所有的候選答案的信息。

通過這樣一個信息,我們又設計了一些其他的關於候選答案的特徵,融合這些特徵之後,重新再過一遍文本的片段,最後得到候選答案最終的得分。通過歸一化的形式,我們就可以產生最後每一個候選答案作為最終答案的概率。

我們是在三個數據集上面做了實驗,前兩個是兩個英文的數據集,它的問題類型是益智類的問題。

我們的實驗結果,聯合訓練的方法無論是比單獨的訓練,還是前人的工作,結果都是要好的。

在Du-Ranker上面,我們也進行了試驗,我們的模型有一個明顯提升。我們在答案選擇模塊裡面引入的特徵,對我們的模型都是有幫助的,尤其是我們提出來的候選答案與候選答案之間的關聯,對我們模型的幫助是最大的。

最後看一個案例。通過注意力矩陣,它確實可以捕捉到候選答案之間比較強的關聯性,通過這個關聯更好地對特徵進行融合,這對最後給出正確答案是很有幫助的。

問答算法系統專場|AIS預講會全程乾貨分享

3. 王義中 北京大學

Multi-PassageMachine Reading Comprehension with Cross-Passage Answer Verification

問答算法系統專場|AIS預講會全程乾貨分享

首先介紹一下什麼是多篇章的閱讀理解。跟剛剛兩位講者介紹的閱讀理解不太一樣。我們在做多篇章閱讀理解的時候,通常是給定多個paragraphs,這些paragraphs通常是由搜索引擎檢索回來的。我們要在多個paragraphs中找到最終的答案。

首先我們看一個例子,這是從MS-MARCO數據中出來的樣例,它的問題是混合文化和單純的文化之間的差別是什麼?正確的答案是從第6個passage裡面出來的,檢索回來的文章當中,3、4、5都有跟正確答案比較類似的答案。它可以通過我們的驗證,在3、4、5中找到第6個正確答案的證據。

基於這個特點,我們提出了我們的模型。首先,我們要預測答案的boundary,這跟傳統閱讀理解是一樣的,也就是找開始位置和結束位置。第二個是預測答案的內容,也就是說,除了剛剛我們說的找開始位置和結束位置之外,我們還要去預測答案的內容是不是很好,這樣可以訓練我們的模型更多的信號。第三個是跨文檔的答案驗證,也就是我們這篇文章的重點,這是通過attention機制實現的,我們要先根據剛才計算的content score,來計算答案的表示,也就是這個加權和,然後我們通過attention,對當前的某個答案,去其他passage收集信息。這樣,當前答案的表示,以及收集起來的驗證的evidence,都可以用一個向量來表示,我們把它們拼接起來過一個feed forward layer,就可以得到最後的驗證分數。

我們整個Model的架構是這樣的,對於給定的多篇passage先單獨的進行encoding,encoding做完了,我們做Q-P matching,這都是跟傳統的一樣的。底層的layer是共享的,在外層的layer會做三個預測,一個是boundary的預測,第二個是content的預測,第三個是跨文檔的答案驗證。

這三個Model可以進行聯合訓練。有三個目標,這三個目標分別對應三個loss函數,通過簡單的β1和β2控制它的權重。最後預測的時候,把三個Model結合起來,把它乘起來。這裡乘起來的方法有點簡單,其實是有點heuristic rule的感覺,這個可以在之後工作中進一步改進。在這裡僅僅是把它們乘起來,也是有效的。

這是我們模型在兩個數據集上的表現,包括MS-MARCO和DuReader。在這兩個數據集上我們都取得了當時最好的成績,而且有比較明顯的提升。我們在MS-MARCO數據集上做了Ablation study,可以看到Content Model和Verification Model都有很大的貢獻,而且聯合訓練也是很重要的。

我們把三個模塊預測的分數打出來看一下,我們可以看出來Boundary Model和ContentModel之間大小關係比較一致,加上Verification Model之後,整個順序發生了比較明顯變化。也就是我們Verification Model可以捕捉跟Boundary和Content 不同的信息,也就是擴文檔的信息。

另外還有一個問題,就是為什麼Content Model有效果?通過這張圖,我們把模型預測的Boundary Probabilities和Content Probabilities打出來看一下。首先,我們可以看到Boundary它確實學的不錯,它確實學到了開始位置和結束位置,但是對於這個答案內部的信息,它並沒有學到,就是答案內的哪些詞是好的,哪些詞是壞的,但是通過Content Model我們可以對答案內的一些詞的權重進行學習。所以,我們通過Content Model學習的權重,把這些詞的表示加起來,就可以得到更合適的答案的表示。

問答算法系統專場|AIS預講會全程乾貨分享

4. 吳煒 北京大學

Multi-PassageMachine Reading Comprehension with Cross-Passage Answer Verification

問答算法系統專場|AIS預講會全程乾貨分享

今天給大家分享的是我們在ACL,用於社區問答的答案現在子任務的問句壓縮網絡,標題比較長,給大家分別介紹一下這三個社區問答和答案選擇,和問句壓縮網絡都是什麼意思。

第一個,普通的問答是一個問句、一個答句,社區問答的問句可以分解成兩個不同的形式。第一個是問句的主體部分,這個主體部分主要是給出了問句中包含的關鍵內容的信息,可能就用幾個單詞表示。第二個是問句的Body部分,把標題部分提到的信息重新描述一遍,添加一些相關信息。比如說在知乎上提問題的時候,如何評價崔永元,這是問題的標題。它的主體部分可能會說崔永元以前是一個央視的主持人,他後面做過什麼反轉基因的一些工作,現在又做了另外一些工作。所以我們可以很清楚地看到,社區問答中的問題可以分解成這兩個部分。

第二個特點,由於社區問答是網絡文本的形式,所以跟普通的問答相比,它的噪音和重複性的問題要更嚴重一些。

答案選擇在社區問答中,它想要解決的方面是什麼?在社區問答中對一個問題可能有很多不同的答案,對於用戶來說,如果能開發一個自動化的工具,對所有的答案進行排序,把好的答案排在壞的答案的前面,可能對大家瀏覽這些問答的網站有所幫助。

介紹一下我們提出的模型,問句壓縮網絡。根據已有的兩個特點,根據問題主體部分來壓縮問句表示的信息。我們的網絡主要分為三個方面:一個是對問句進行壓縮,它可以把問句的主體部分,按照跟問句標題信息分解成兩個部分。第一個是和問句平行的部分,第二個是和問句垂直的部分。平行的部分包含了跟問句主標題的更相關的信息,垂直的部分包含了跟問句主體部分之外的一些信息,就是問句主體部分提問的一些補充的信息。

第二部分是問句和答案之間的Alignment,抽取出答案中跟問句的表示中,最相關的那些部分。

第三個部分,把這些Alignment的元素收集起來,最終得到兩個給答案排序的一些特徵的信息。

介紹一下在這兩個數據集,一個是SemEval2015和2017這兩個數據集上實踐結果的對比。我們的網絡要比傳統的一些基於手工特徵的方法,和下面一些比較複雜的現代的神經網絡的結果都要有所提高。

最後做一下總結。我們提出了一個對社區問答中的問句壓縮的網絡,基於純的Attention的機制,使它可以訓練地非常快。它利用到的信息,就是社區問答的問題中有subject和body的區分,利用區分的關係,使社區問答中的問句可以得到壓縮,以上就是我今天要介紹的內容,謝謝大家!

問答算法系統專場|AIS預講會全程乾貨分享

5. 劉操 中科院自動化所

CurriculumLearning for Natural Answer Generation

問答算法系統專場|AIS預講會全程乾貨分享

我們的工作主要針對目前訓練數據質量參差不齊的現象而設計的模型。

首先介紹課程學習,它是機器學習中的一個訓練策略,簡單說就是先學習簡單訓練數據,再學習複雜訓練數據。

第二個是任務介紹:Natural Answer Generation (NAG,自然答案生成),可以對比一下知識庫問答(KBQA)和聊天式機器人(Chatbot)。KBQA返回的是準確答案,Chatbot得到的是跟問句連貫一致,並且流利的答案。NAG得到準確、連貫、流利的答案,可以被認為是KBQA和Chatbot聯合起來的任務。

現在的訓練數據下,面臨兩個挑戰,第一個是選擇出高質量的訓練數據是特別難的。第二個,即使能選擇出高質量的訓練數據,訓練數據的規模也會下降特別明顯。

從現有數據中直接生成一個準確、一致、流利的答案比較困難,我們就把它分解了。首先從低質量的、包含簡短答案的訓練數據中學出一個基本模型,比如說先學會與知識庫的交互,接下來從高質量的、長的、複雜的訓練數據中,學習出一個更好的模型,希望這個模型可以返回準確、一致、流利的答案。

上述想法有兩個問題,一個是確定問答對(pair)的複雜度,它需要和訓練數據的質量聯繫在一起。另外是確定學習進度,什麼時候學習簡單訓練數據,什麼時候從複雜的訓練數據中進行學習。

為此我們設計模型如下:先通過一個答案選擇器選擇出普通的實例(問答對)和目標的實例,其中目標的實例是高質量的、複雜的學習數據。我們設計了兩種策略選擇,一個是根據詞語頻率選擇,第二個是根據語法選擇。有了訓練數據中的普通實例和目標實例之後,下面就是實例的調度(即課程學習)。根據實例調度輸入到自然答案生成模型裡面去,最後得出生成的答案。

我們的課程學習對普通的實例是遞減的,對目標實例是遞增的。

實驗結果是我們的模型不管採用詞彙選擇還是語法的選擇,都比之前的模型效果要好。對於需要多個三元組才能回答的問題,我們模型的性能提升更加明顯。另外我們也人工評價了準確性、流利性和一致性三個指標,相應的也是我們的模型比之前方法要好。

問答算法系統專場|AIS預講會全程乾貨分享

6. 魏驍馳 北京理工大學

Quality Matters:Assessing cQA Pair Quality via Transductive Multi-View Learning

問答算法系統專場|AIS預講會全程乾貨分享

我們研究工作的背景是社區問答。社區問答是隨著Wbe2.0的發展而誕生的一種問答方式,在這種問答平臺上,用戶可以提出問題,而其他的一些用戶可以回答上面的問題。隨著社區問答的發展,這些問答平臺上面的問答對數據也累計地越來越多,之後這些問答對可以被搜索引擎進一步檢索,用於回答其他用戶的一些新問題。由於上面的一些問題和答案,通常是由人工來編寫的,所以存在著很大的質量問題。

我們通過一個User Study調查發現,超過45%的問答對質量並不是特別高。大量低質量的問答,一方面會影響搜索引擎用戶的用戶體驗,另一方面會浪費大量的計算和存儲資源,同時會造成社區問答平臺上用戶黏性的下降。因此很多研究者開始研究如何來評判社區問答對的質量。傳統的一些方法,通常是通過抽取一些特徵,放入迴歸或分類模型中進行實現的。

這些方法存在著以下兩個問題:

一是多視角特徵的融合。一個問答的質量通常是由很多方面來決定的。而每一個方面都決定了問答質量的互補的性質。通過單個方面,可能會得到不同的結果。比如說這個例子上,我們只看答案,可能覺得這是一個非常好的問答對,但是如果看了問題,就會發現這個問題的描述是比較模糊的,存在很多語法錯誤,整體來看,問答對質量並不是特別高。

二是標註數據的缺失。很多現有的學習方法都需要依靠大量的標註數據,而標註數據的獲取非常複雜,是需要耗費大量人力的過程。網上存在在著大量的未標註數據,同樣包含著很多有用的信息,但是在現有的很多方法中,它們並沒有得到充分的利用。

因此我們提出使用一個Transductive Multiple—View的方法同時解決多視角特徵融合,以及未標註數據利用的問題。在多視角學習方面,我們通過學習了一個公共空間,在這個公共空間裡,同時把各個視角的一致性信息考慮進來。在公共空間裡,還能夠保持各個視角特徵固有的特性。我們同時利用標註數據和未標註數據一起來學習公共空間,在公共空間裡實現了對答案質量的評估。

在視角空間建模的時候,使用拉普拉斯矩陣對各個視角空間進行表示。使用每個問答對和這個問答對之間的相互關係,對這個問答對進行表示。

在公共空間的學習中,我們通過最小化各個視角空間和公共空間的disagreement進行學習。學到公共空間表示之後,我們就使用一個迴歸模型,在公共空間裡進行答案質量的評價。這兩個loss進行聯合優化,就可以得到對問答對質量評估的結果。

我們的實驗是在StackExchange上爬取的數據,分別使用了English和Game的兩個set。我們使用用戶對問題和答案投票數量的Normalized 平均值作為該問答對的質量標籤,這種方法對於一些受歡迎的問題效果是比較好的,但對於不太受歡迎的問題得到的效果較差。因此我們在實驗裡面只使用受歡迎的問題來構建標註數據。

我們使用了兩種評價方式Auto-Evaluation和Manual Evaluation。在OverallPerformance comparison中我們的方法在人工評價和自動評價兩方面都能夠取得比較好的效果。在增加視角的數量後,觀察了各視角特徵對整個模型的影響。我們發現每增加一個視角特徵,模型表現都變好了。在對公共空間的相似度矩陣進行了可視化,在公共空間裡是能夠把低質量的問答對和高質量的問答對進行有效的區分。

問答算法系統專場|AIS預講會全程乾貨分享

7. 趙洲 浙江大學

Open-EndedLong-form Video Question Answering via Adaptive Hierarchical ReinforcedNetworks

問答算法系統專場|AIS預講會全程乾貨分享

視頻問答是我們2017年提出來的,基於自然語言和視頻進行交互的任務。對於開域的視頻問答,根據問題和視頻進行生成答案。視頻問答跟其他問答不一樣。視頻問答中,視頻的長度非常非常長,一到兩分鐘就有非常多的幀,普通的LSTM非常難處理這麼長的視頻。我們鎖定在兩個非常細小的領域,一個是Open-Ended,一個是Long-form Question Answering。

視頻通常是非常長的,而問題只是視頻中的一個小片段,而且大部分視頻內容跟問題無關。如何從一個長視頻中做視頻問答的工作。我們的工作有以下幾個貢獻,首先提出了一個編碼-解碼網絡學習方法。第二,用適應性的層級編碼器,學習基於問題的一個視頻的表示。我們從片段級別來進行學習,根據問題和一些視頻,自動把視頻切成片段,有些片段對應著問題,所以我們學習了片段級別的表示。最後,我們設計一個強化解碼器生成答案。除此之外,我們也構建了一個非常大的數據集.。

首先我們會處理幀級別的一些視頻,每個視頻有N幀,跟閱讀理解任務非常類似。然後生成答案,A1到AN,它是可變層的答案,1到N個詞都是可以的。它的視頻語義表達對每一個幀,我們用語義進行表達,我們用A1到AN來進行表達。

這裡我們要學習兩個網絡,第一個是編碼網絡用F來表示,F有兩個輸入,一個是V,就是Video,一個是Q,就是Question。第二我們要學習的是解碼網絡,我們假設有N個幀輸入到適應器解碼器中。因為LSTM非常難處理這麼長一個視頻,我們提出了一個基於問題的階段式的LSTM,它是怎麼樣進行工作?有一個問題輸入到LSTM中,如果認為當前狀態已經進行轉折了,我們就另用一個LSTM,重新更新它的初始化的狀態。

這跟閱讀理解不一樣。閱讀理解是句子和句子,而視頻的幀非常難進行切分,我們自動進行切分。如果它高於一個閾值並且它的兩個語義不一樣的,我們會重新初始化一個LSTM來進行訓練。

我們還是用了注意力機制,來進行階段的視頻工作。我們判斷,它的視頻中下一個幀和這個幀的語義是否相關。根據要問的一些問題,現在的一些視頻裡面的狀態,判斷它兩個視頻的語義是否是一個語義,還是不同語義。如果不同的語義,我們就另用一個LSTM。

另外介紹一下強化解碼網絡學習。我們用幀級別的適應訓練,生成一個片段級別的表示,最後用強化答案生成方法來進行生成答案。

我們做了一個人工標註的數據集。使用WUPS=0.0和WUPS=0.9進行測試,並對比了一些先進的方法。

問答算法系統專場|AIS預講會全程乾貨分享

8. 趙洲 浙江大學

Multi-Turn VideoQuestion Answering via Multi-Stream Hierarchical Attention Context Network

問答算法系統專場|AIS預講會全程乾貨分享

我們在研究與視頻的對話,對視頻不斷地問問題,獲得不斷地回答。我們認為視頻是一個上下文,我們對視頻不斷地進行問答,那麼就是一個對話。因此我們提出了一個多流層次注意力機制上下文網絡來解決多輪視頻問答。

我們有很多視頻,進行人工標註,可以得到非常多的對話。我們的輸入不僅有一些視頻和問題,還存在上下文,以及一些之前對話的情況。當前問題是在於它的問題可能信息不是很全,我們要參考對話上下文來進行回答,所以說,這個問題除了視頻和問題,還要考慮對話上下文,這也是這個問題中非常有挑戰的一個地方。

我們做了一些多流層次注意力機制上下文網絡,不僅僅考慮視頻流,還考慮對話上下文流,融合了兩個流,並做了更優化的提高。

視頻分兩個級別表示,幀級別的表示和片段級別的表示。對話上下文有兩個部分組成,第一個部分是問題,第二部分是之前的回答。給定三個信息,第一個是視頻的信息,第二個是對話上下文的信息,第三個是問題的信息。

之後考慮到多流的情況,每一次先對對話上下文的問題和回答進行融合,產生一個上下文的表示。之後對所有的對話上下文加上注意力機制。如何提取一些相關的而摒棄不相關的,我們借用了聚焦機制,有些把相關的最後融合,不相關的就不進行融合。

之後我們基於生成模型,我們把相關的上下文信息進行提取,並把視頻中重要的信息進行提取,最後進行融合。整個過程分兩步,第一步對問題進行理解。第二步,我們來對視頻進行聚焦回答,對於視頻考慮兩個特徵,第一個是為狀態特徵,第二個是運動特徵。有些問題是詢問狀態的,有些問題是詢問運動的,所以兩邊的特徵都進行提取,最後產生一個答案。

我們新造了數據集。有兩個視頻數據集,每個數據集大概有1000多個問題。對第一個數據集我們標註了3萬多個視頻問答對,第二個數據集標註了6萬多個視頻問答對。我們的模型使用基人工的標註進行學習。

關於實驗結果可以在論文中有詳細數據。


分享到:


相關文章: