當前位置:
首頁 > 科技 > 一覽微軟在機器閱讀理解、推薦系統、人機對話等最新研究進展

一覽微軟在機器閱讀理解、推薦系統、人機對話等最新研究進展

編者按:ACL 2019將於7月28日至8月2日在義大利佛羅倫薩舉行。在本屆大會的錄取論文中,共有25篇來自微軟亞洲研究院和微軟(亞洲)互聯網工程院。內容涵蓋文本摘要、機器閱讀理解、推薦系統、視頻理解、語義解析、機器翻譯、人機對話等多個熱門領域。本文將為大家介紹來自不同領域中有代表性的8篇論文。

作者 | 微軟亞洲研究院

轉載自微軟研究院AI頭條(ID: MSRAsia)

抽取式文本摘要

近兩年,自然語言中的預訓練模型如ELMo、GPT和BERT給自然語言處理帶來了巨大的進步,成為研究熱點中的熱點。這些模型首先需要在大量未標註的文本上訓練一個從左到右(left-to-right language model)或從右到左(right-to-left languagemodel)或完形填空式(masked language model)的語言模型。以上過程稱為預訓練(pre-training)。預訓練完的模型便具有了表示一個句子或一個詞序列的能力,再針對不同的下游任務進行微調(finetuning),然後可以在下游任務上取得不錯的效果。

但是上述預訓練模型無論是對句子還是文章進行建模時都把它們看成一個詞的序列。而文章是有層級結構的,即文章是句子的序列,句子是詞的序列。微軟亞洲研究院針對文章的層級結構提出文章表示模型HIBERT(HIerachical Bidirectional Encoder Representations from Transformers),HIBERT模型在抽取式文本摘要任務中取得了很好的效果。

代表論文:HIBERT: Document Level Pre-training of Hierarchical Bidirectional Transformers for Document Summarization

論文鏈接:https://arxiv.org/abs/1905.06566

如圖1所示,HIBERT的編碼器是一個Hierachical Transformer(句子級別的Transformer和文章級別的Transformer)。句子級別的Transformer通過句內信息學習句子表示,而文章級別的Transformer通過句間信息學習帶上下句背景的句子表示。

與BERT類似,HIBERT需要先進行無監督的預訓練(pre-training),然後在下游任務上進行有監督的微調(finetuning)。HIBERT預訓練的任務是掩蓋(MASK)文章中的幾句話,然後再預測這幾句話。如圖1所示,文章的第三句話被MASK掉了,我們用一個Decoder Transformer去預測這句話。

在大量未標註數據上進行預訓練後,我們把HIBERT用在抽取式摘要中。抽取式摘要的任務定義如下:給定一篇文章,摘要模型判斷文章中的每個句子是否為這篇文章的摘要。得分最高的K個句子將被選為文章摘要(K一般在dev數據上調試得到)。基於HIBERT的摘要模型架構如圖2所示,編碼器仍然是一個Hierachical Transformer,一篇文章的句子被HIBERT讀入後,對通過HIBERT學習到的帶上下句背景的句子表示進行分類。

HIBERT在兩個著名的摘要數據集CNN/DailyMail和New York Times上結果都表現很好,超越了BERT及其它在2018年和2019年初提出的所有摘要模型。

機器閱讀理解

機器閱讀理解在近兩年取得了巨大的進步,當答案為文檔中的一個連續片段時,系統已經可以十分準確地從文檔中抽取答案。有許多工作從模型結構的角度來提高閱讀理解系統的表現,藉助大規模標註數據訓練複雜模型,並不斷刷新評測結果;同時也有工作通過增強訓練數據來幫助系統取得更好的結果,如藉助其它數據集聯合訓練、通過回譯(back translation)豐富原文等。

然而在現實生活中,往往無法保證給定的文檔一定包含某個問題的答案,這時閱讀理解系統應拒絕回答,而不是強行輸出文檔中的一個片段。針對這一問題,同樣有很多工作從模型角度切入,以提高系統判斷問題是否可以被回答的能力,做法可大致分為在抽取答案的同時預測問題可答性和先抽取答案再驗證兩類。而微軟亞洲研究院的研究員從數據增廣的角度來嘗試解決這一問題。

代表論文:Learning to Ask Unanswerable Questions for Machine Reading Comprehension

論文鏈接:https://arxiv.org/abs/1906.06045

該論文提出根據可答問題、原文和答案來自動生成相關的不可答問題,進而作為一種數據增強的方法來提升閱讀理解系統的表現。我們利用現有閱讀理解數據集SQuAD 2.0來構造不可答問題生成模型的訓練數據,引入Pair2Seq作為問題生成模型來更好地利用輸入的可答問題和原文。

SQuAD 2.0數據集包含5萬多個不可答問題,並且為不可答問題標註了一個看起來正確的答案(plausible answer)。圖3展示了SQuAD 2.0中一個文檔和相應的可答與不可答問題,可以看到這兩個問題的(plausible)答案對應到同一個片段,用詞十分相似且答案具有的類型(organization),通過對可答問題進行修改就能得到相應的不可答問題。根據這一觀察,我們以被標註的文本片段為支點來構造訓練問題生成模型所需的數據。

在閱讀理解系統中,問題與文檔的交互是最為關鍵的組成部分,受此啟發,該論文提出Pair2Seq模型,在編碼(encoding)階段通過注意力機制(attention mechanism)得到問題和文檔的加強表示,共同用於解碼(decoding)。如表3所示,Pair2Seq模型在多個評價指標上超過Seq2Seq模型。

表3:Pair2Seq模型與Seq2Seq模型在多個評價指標上的對比結果

如表4所示,生成的問題作為增強數據能夠提高機器閱讀理解模型的表現。

個性化推薦系統

個性化新聞推薦是解決新聞信息過載和實現個性化新聞信息獲取的重要技術,能夠有效提升用戶的新聞閱讀體驗,被廣泛應用於各種在線新聞網站和新聞APP中。學習準確的用戶興趣的表示是實現個性化新聞推薦的核心步驟。對於很多用戶來說,他們不僅存在長期的新聞閱讀偏好,也往往由於受社會和個人環境的影響,擁有一些短期和動態的興趣。然而已有的新聞推薦方法通常只構建單一的用戶表示,很難同時準確建模這兩種興趣。

代表論文:Neural News Recommendation with Long- and Short-term User Representations

論文鏈接:https://nvagus.github.io/paper/ACL19NewsRec.pdf

該論文提出了Long- and Short-term User Representations(LSTUR)模型,用於在新聞推薦任務中同時學慣用戶長期和短期的興趣表示。模型的整體結構可分為四個模塊,分別是新聞編碼器、用戶長期興趣和短期興趣模型、以及候選新聞的個性化分數預測模型。

新聞編碼器模塊從新聞標題、新聞的類別和子類別構建新聞表示向量。新聞標題的原始文本先映射為詞向量,然後通過CNN獲得局部表示,最後通過Attention網路選取重要的語義信息構成新聞標題表示。新聞的類別和子類別分別映射為稠密向量,與新聞標題表示拼接作為最終的新聞表示。

用戶短期興趣表示模塊用於從用戶近期點擊過的新聞歷史中學慣用戶的表示向量,然後將這些點擊的新聞的表示向量按時間順序依次通過GRU模型得到用戶短期興趣表示。用戶長期興趣表示模塊則是從用戶的ID中學慣用戶的表示向量。對於如何同時學慣用戶長期和短期的興趣表示,該論文提出了兩種結合方式:(1)將用戶長期興趣表示作為用戶短期用戶表示計算中GRU的初始狀態(LSTUR-ini);(2)將用戶長短期興趣表示拼接作為最終用戶表示(LSTUR-con)。候選新聞的個性化分數通過用戶表示向量和新聞表示向量的內積計算,作為眾多候選新聞針對特定用戶個性化排序的依據。

該論文提出的方法存在的一個問題是無法學習新到來用戶的長期興趣的表示向量。在預測的過程中簡單地將新用戶的長期興趣表示置為零向量可能無法取得最優的效果。為了解決這個問題,該論文提出在模型訓練的過程中模擬新用戶存在的情況,具體做法是隨機掩蓋(mask)部分用戶的長期興趣表示向量,即用戶的長期興趣表示向量會以概率p被置為全零向量。實驗表明,無論是LSTUR-ini還是LSTUR-con,在訓練過程中加入長期興趣隨機掩蓋(random mask)的做法均能明顯提升模型效果。

該論文在MSN新聞推薦數據集上進行了實驗,並和眾多基線方法進行了對比,結果如表5所示。

實驗結果表明,同時學習長期和短期用戶興趣表示能夠有效地提升新聞個性化推薦的效果,因此該論文提出的兩種方法均明顯優於基線方法。

視頻理解

近年來,隨著運算能力的提升和數據集的湧現,有關視頻理解的研究逐漸成為熱點。視頻數據往往蘊含著豐富的信息。其中,既包含較底層的特徵信息,例如視頻幀的編碼表示;也包含一些高級的語義信息,例如視頻中出現的實體、實體所執行的動作和實體之間的交互等;甚至還包含很多時序結構性語義信息,例如動作序列、步驟和段落結構等。而從數據的角度來看,視頻往往同時包含了圖像序列、音頻(波形)和語音(文本)等模態。視頻理解的目的就是通過各種精心設計的任務,利用多種不同模態的數據,來讓計算機學會「瀏覽」視頻,併產生「理解」行為。

代表論文:Dense Procedure Captioning in Narrated Instructional Videos

論文鏈接:

https://www.msra.cn/wp-content/uploads/2019/06/DenseProcedureCaptioninginNarratedInstructionalVideos.pdf

視頻可以看作是在時間維度上展開的一系列圖像幀,但相較於「一目了然」的圖片,視頻需要人們花費更多的精力去觀看並進行理解。如果機器能自動地提取視頻內容的摘要,並對視頻中的每一個結構化的片段給出相應的文字描述,這將能夠大量地節省用戶的時間——用戶不再需要完整地瀏覽整個視頻,而只需要瀏覽文字化的摘要即可獲悉其中內容。(場景如圖6所示)

為了滿足這個需求,我們針對 「指導性視頻 (Instructional Video)」,設計了一個名為Procedure Extractor的視頻理解系統:通過輸入視頻和視頻內的敘述性旁白(Narrative Transcript),輸出視頻中每一個步驟(Procedure)的時間片段(起始時間與結束時間),並且為每一個視頻片段生成一段文本描述。

模型結構如圖7所示。我們首先對視頻旁白(Transcript)進行分句,再使用一個經過預訓練的BERT模型提取句子特徵表示,然後通過多層self attention獲得整個transcript的特徵表示,將其與利用ResNet抽取的視頻幀特徵拼接,並形成一個完整的特徵矩陣。

為了能處理不同長度Procedure的信息流動,我們仿照Fast-RCNN系列模型的方法,使用了多個不同大小的卷積核和多個不同尺度的Anchor來對整個視頻特徵矩陣進行卷積操作,並通過一個LSTM模型來挑選包含正確Procedure的Anchors。在描述生成階段,我們使用與片段時間對應的視頻、Transcript信息,通過一個Sequence to Sequence模型來生成最終的視頻片段描述。

這項工作通過Azure Speech to Text雲服務從視頻中抽取旁白中Transcript。在YouCook II數據集上的Procedure Extraction和Procedure Captioning任務上都取得了最好的成績。

語義解析

語義解析(semantic parsing)的目的是把自然語言自動轉化為一種機器可以理解並執行的表達形式。在基於知識庫的搜索場景中,語義解析模型可以將用戶查詢轉換為可以在結構化知識庫(如Microsoft Satori、Google Knowledge Graph)上可以執行的SPARQL語句;在企業數據交互場景中,語義解析模型可以將用戶的語言轉換為結構化查詢語句(Structured Query Language, SQL);在虛擬語音助手場景中,語義解析模型可以將用戶的語言轉換為調用不同應用程序的API語句。

代表論文:Coupling Retrieval and Meta-Learning for Context-Dependent Semantic Parsing

論文鏈接:https://arxiv.org/abs/1906.07108

在該論文中,我們以對話式問答和基於上下文的代碼生成為例介紹了我們在語義解析領域的研究進展。人們在對樣例x做決策的時候,往往不是從頭開始寫,而是先從已有的知識庫中找到相似的樣例(x』,y』),然後進行改寫。傳統的retrieve-and-edit的方法通常只考慮一個(x』,y』)樣例,而一個結構化規範語義表示可能來自於多個相關的樣例中。以此為出發點,本論文提出了一種結合檢索與元學習(meta-learning)的語義解析方法。

整體框架如圖8所示,其中包含了檢索和元學習兩部分。在檢索部分,首先採樣一批測試數據D』,然後利用基於上下文的檢索模型R找到相似的樣例S』作為訓練數據,從而構成一個任務。在訓練階段,首先使用訓練數據得到特定任務的模型M_(θ^")(step 1),然後再利用測試數據更新元學習器M_θ(step 2)。在預測階段,先使用相似樣本更新元學習器的參數,然後再進行預測。

圖9:基於上下文的檢索模型框架

圖9是基於上下文的檢索模型,該模型是一個建立在變分自編碼器(VAE)框架下的編碼-解碼(encoder-decoder)模型,將文本和上下文環境編碼成一個潛層變數z,然後利用該變數解碼出邏輯表達式。在檢索的過程中,使用KL散度作為距離度量得到相似的樣本。

該論文在CONCODE和CSQA兩個公開數據集上進行實驗,可以看出結合檢索和元學習取得了最好的成績。

同時,這種檢索模型不僅能夠考慮語義信息,如「spouse」 和 「married」,而且能夠考慮上下文信息,如HashMap和Map,因此能夠很好提升檢索的質量。

代表論文:Towards Complex Text-to-SQL in Cross-Domain Database with Intermediate Representation

論文鏈接:https://arxiv.org/abs/1905.08205

近年來,通過自然語言直接生成SQL查詢語句引起了越來越多的關注。目前比較先進的模型在已有的NL-to-SQL的數據集上(例如WikiSQL、ATIS、GEO等)都取得超過80%的準確率。然而,在最近發布的Spider數據集上,這些已有的模型並沒有取得令人滿意的效果。究其原因,Spider數據集有兩個特點:首先,Spider數據集里的SQL查詢語句比目前已有的Text-to-SQL數據集更加複雜,例如SQL語句中包含GROUPBY、HAVING、JOIN、NestedQuery等部分。通過自然語言生成複雜的SQL查詢語句尤其困難,本質原因是面向語義的自然語言和面向執行的SQL查詢語句之間不匹配,SQL越複雜,不匹配的越明顯;其次,Spider數據集是跨領域的(cross-domain),即訓練和測試是在完全不同的database上做的。在跨領域的設置下,自然語言中出現了大量的out-of-domain(OOD)的單詞,給預測列名造成了困難。

針對這兩個挑戰,我們提出了IRNet模型。IRNet使用了一個schema linking模塊,根據資料庫的schema信息,識別自然語言中的提到的表名和列名,建立自然語言和資料庫之間的連接。接下來,為了解決面向語義的自然語言和面向執行的SQL查詢語句之間不匹配的問題,與以往的Text-to-SQL方法直接生成SQL查詢語句不同的是,IRNet首先生成一種中間的語義表示形式SemQL,然後再將中間表示轉換成SQL查詢語句。

實驗結果如表10所示,在Spider數據集上,IRNet實現了46.7%的準確率,比已有的最好方法提升了19.5%的準確率。同時,IRNet Bert實現了54.7%的準確率。

到目前為止,微軟亞洲研究院的IRNet模型在Spider Challenge比賽上取得了第一名的成績。

無監督機器翻譯

無監督機器翻譯僅僅利用單語的數據而不是雙語並行數據進行訓練,對於低資源的語言翻譯非常重要。當前,無監督機器翻譯在相似語言對上(例如英語-德語、葡萄牙語-加利西亞語)取得了非常好的效果。然而在距離較遠的語言對上(例如丹麥語-加利西亞語),由於無監督的語義對齊比較困難,通常表現較差。在實驗中,我們發現在距離較近的葡萄牙語-加利西亞語上能取得23.43的BLEU分,而在距離較遠的丹麥語-加利西亞語上只有6.56分。微軟亞洲研究院的研究人員嘗試解決遠距離語言的無監督翻譯問題。

代表論文:Unsupervised Pivot Translation for Distant Languages

論文鏈接:https://arxiv.org/abs/1906.02461

我們考慮到兩個距離較遠的語言能通過多個中轉語言鏈接起來,其中兩個相鄰的中轉語言間的翻譯易於兩個原始語言的翻譯(距離更近或者可用單語數據更多)。如圖13所示,距離較遠的丹麥語-加利西亞語(Da-Gl,圖中紅色路徑)能拆分成丹麥語-英語(Da-En)、英語-西班牙語(En-Es)、西班牙語-加利西亞語(Es-Gl)三跳無監督翻譯路徑(圖中藍色路徑),拆分後的翻譯性能為12.14分,相比直接的丹麥語-加利西亞語翻譯(6.56分)有大幅提高。因此,我們在論文中針對遠距離語言對提出了無監督中轉翻譯(Unsupervised Pivot Translation)方法。

無監督中轉翻譯面臨的一個挑戰是兩個語言之間可選路徑很多(如圖13藍色、黑色路徑所示,實際場景中可選路徑更多),而不同路徑的翻譯精度不同,如何選擇精度最高的路徑對於保證無監督中轉翻譯的效果非常重要。由於可選路徑隨著跳數以及中轉語言數呈指數增長趨勢,遍歷計算每條路徑的精度代價巨大。對此,我們提出了Learning to Route(LTR)的路徑選擇演算法,該演算法以單跳的BLEU分及語言ID作為特徵,利用多層LSTM模型預測多跳翻譯的精度,並據此來選擇最好的中轉路徑。關於LTR演算法的詳細內容可參考論文。

我們在20個語言一共294個語言對上進行了實驗,來驗證我們的無監督中轉翻譯以及LTR路徑選擇演算法的性能。表11列出了部分語言對的實驗結果,其中DT代表直接從源語言到目標語言的無監督翻譯,LTR代表我們提出的中轉演算法,GT(Ground Truth)代表最好的中轉翻譯,也決定了我們方法的上限,GT(?)和LTR(?)分別代表GT和LTR相對於直接翻譯DT的提升,Pivot-1和Pivot-2代表中轉路徑的兩個中轉語言(我們最多考慮三跳路徑)。如果是一個兩跳路徑,那麼Pivot-1和Pivot-2相同;如果是直接翻譯,那麼Pivot-1和Pivot-2為空。

可以看到,無監督中轉翻譯相比無監督直接翻譯有較大的BLEU分提升,而且我們提出的LTR方法的精度非常接近於最好的中轉翻譯GT,表明了我們提出的無監督中轉翻譯以及LTR路徑選擇演算法的有效性。例如,我們的方法(LTR)在丹麥語-加利西亞語(Da-Gl)、保加利亞語-瑞典語(Bg-Sv)、葡萄牙-白俄羅斯語(Pt-Be)上分別有5.58、5.20、4.10分的提升。

人機對話

端到端開放域對話生成是人機對話領域近幾年的一個研究熱點。開放域對話生成中的一個基本問題是如何避免產生平凡回復(safe response)。一般來講,平凡回復的產生來源於開放域對話中存在的輸入和回復間的 「一對多」關係。相對於已有工作「隱式」地對這些關係進行建模,我們考慮「顯式」地表示輸入和回復間的對應關係,從而使得對話生成的結果變得可解釋。不僅如此,我們還希望生成模型可以允許開發者能夠像「拼樂高玩具」一樣通過控制一些屬性定製對話生成的結果。

代表論文:Neural Response Generation with Meta-Words

論文鏈接:https://arxiv.org/pdf/1906.06050.pdf

在這篇論文中,我們提出用meta-word來表示輸入和回復間的關係。Meta-word代表了一組回復屬性(如圖14中的回復意圖(Act),回復長度(Len)等)。利用meta-word進行對話生成的好處包括:(1)模型具有很好的可解釋性;(2)通過訂製meta-word,開發者可以控制回復生成;(3)情感,話題,人格等都可以定義為meta-word中的一個屬性,因此諸如情感對話生成,個性化對話生成等熱點問題都可通過該論文提出的框架解決;(4)工程師們可以通過增加或調整meta-word不斷提升生成模型的性能。

圖14:基於meta-word的回復生成

利用meta-word進行回復生成需要解決兩個問題:(1)如何確保回復和輸入相關;(2)如何確保回復能夠如實地表達預先定義的meta-word。為了解決這兩個問題,我們將meta-word的表達形式化成回復生成中的目標,提出了一個基於目標跟蹤記憶網路的生成模型(如圖15)。該網路由一個狀態記憶板和一個狀態控制器組成,前者記錄生成過程中meta-word的表達情況,後者則根據當前已經生成的部分動態地更新記憶板中的存儲並將目前的表達情況和最終表達目的的差距傳達給解碼器。

在模型學習過程中,我們在傳統的似然目標之外增加了一個狀態更新損失,以使得目標追蹤能夠更好地利用訓練數據中的監督信號。不僅如此,我們還提出了一個meta-word的預測方案,從而使得整個架構可以在實際中使用。

我們在Twitter和Reddit兩個數據集上考察了生成回復的相關性、多樣性、「一對多「關係建模的準確性、以及meta-word表達的準確性。不僅如此,我們還對生成結果進行了人工評測。實驗結果如下:

表12:相關性、多樣性、「一對多」關係建模準確性評測結果

更有意思的是,當我們逐漸地增加meta-word中的屬性變數,我們發現驗證集上的PPL會逐漸降低,這也印證了「通過調整meta-word可以不斷提升模型性能」的論斷。

(*本文為 AI科技大本營轉載文章,轉載請聯繫原作者)

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 AI科技大本營 的精彩文章:

上海交大張拳石:神經網路的可解釋性,從經驗主義到數學建模
商湯62篇論文入選CVPR 2019,一覽五大方向最新研究進展

TAG:AI科技大本營 |