當前位置:
首頁 > 知識 > 用於機器閱讀理解的遷移學習:微軟提出通用型SynNet網路

用於機器閱讀理解的遷移學習:微軟提出通用型SynNet網路

選自Microsoft Research Blog

作者:Xiaodong He

參與:Smith、路雪

不是每個人都會下圍棋,但大多數人都會閱讀,然而 AI 並不是如此。AI 在圍棋等領域中取得了非凡成就,但在執行閱讀理解等簡單任務時,卻遭遇挑戰,比如,如何將某特定領域的訓練模型用於其他新領域,如何快速獲取新領域的相關標註數據等。微軟剛剛發布一條博客,介紹了一種新型遷移學習方法,可實現新領域中機器閱讀理解系統(MRC)的快速構建。

對於人類而言,閱讀理解是一項每天都在做的基本任務。我們在上小學的時候就可以閱讀文章,回答有關文章中心思想和細節的相關問題。

然而對於 AI 來說,閱讀理解仍然是一個難以達到的目標,但是如果我們想要評估並且完成通用人工智慧,那麼這將是我們必須解決的問題。事實上,閱讀理解在很多真實場景中都是必需品,比如客戶支持、推薦、問答、對話,以及客戶關係管理。閱讀理解也在很多場景中具備驚人的潛力,比如幫助醫生從數千份文件中迅速找出重要信息,從而讓他們有更充足的時間去做更有價值的工作,拯救更多病人。

因此,構建能夠執行機器閱讀理解(MRC)任務的機器是具有很大價值的。在搜索應用中,機器閱讀將可以給出準確的答案,而不是僅提供一個包含答案的長篇網頁的 URL 地址。此外,機器閱讀模型也可以理解特定的不同細分領域文章中的某些知識,此種演算法所依賴的搜索數據通常比較稀疏。

微軟正聚焦於機器閱讀,而且目前在業內佔據著主導地位。微軟的多個項目,包括用於機器理解力的深度學習(Deep Learning for Machine Comprehension),都瞄準了MRC 領域。儘管已經有了顯著的進步,但如何在新領域中構建 MRC 系統這一關鍵問題卻被一直忽略,直到最近才受到重視。

近期,來自微軟研究院人工智慧組的多名研究員 Po-Sen Huang、Xiaodong He 以及來自斯坦福大學的實習生 David Golub 開發出了一種遷移學習演算法以解決該問題。他們的工作成果將在自然語言處理頂級會議 EMNLP 2017上進行呈現。此種可擴展演算法是將 MRC 延伸到更寬廣領域的關鍵。

這是微軟向更遠大目標前進的一個範例:創造更先進且更精密的技術。「我們不僅是開發一系列演算法來解決理論問題,我們要用它們解決實際問題,並在實際數據上進行測試。」 Rangan Majumder 在機器閱讀博客中如此寫道。

目前,多數頂尖機器閱讀系統是在監督訓練數據上(supervised training data)構建的,即在數據樣本上進行端到端的訓練,這些數據不僅包括文章,還包括手動標註的文章相關問題和對應答案。在這些樣本的支持下,基於深度學習的 MRC 模型學著去理解問題,並且從文章中推斷答案,該過程包括推理和推斷的多個步驟。

但是,在很多領域或垂直方向中並不存在此類監督訓練數據。例如,如果我們需要構建一個全新的機器閱讀系統幫助醫生查找某種新疾病的重要信息,我們可能得到大量的相關文件,但是我們缺少手動標註的相關問題和相應答案。為每種不同疾病分別構建 MRC 系統的需求和快速增長的文獻體量大大增加了其挑戰性。因此,解決如何將一個 MRC 系統遷移到新領域(缺乏手動標註問題及其答案)這一問題是非常重要的。

微軟的研究員為解決該問題開發了一種名為「二級合成網路」(SynNet——https://www.microsoft.com/en-us/research/publication/two-stage-synthesis-networks-transfer-learning-machine-comprehension/)的新模型。SynNet 以某一領域中可用的監督數據為基礎,首先在一篇文章中學習可識別潛在「有趣性認知」(potential 「interestingness」 )的一般模式,包括文章中可作為常見問題答案的關鍵知識點、命名實體或語義概念。一旦經過訓練,SynNet 就可以應用到新的領域中,閱讀新領域的相關文件,然後輸出與文件相關的偽問題和答案。這種方式可以形成新領域下的 MRC 系統的必要訓練數據,新領域可以是一種新的疾病、新公司的員工手冊,或者一本新的產品手冊。

生成綜合數據以彌補訓練數據不足的方法之前已經被探索過了。例如,關於翻譯的目標性任務,Rico Sennrich 和同事在他們的論文中提出了一種方法:在給定真實語句的基礎上生成合成型翻譯,從而使現有的機器翻譯系統得到改善。然而,與機器翻譯不同,對於像機器閱讀理解這一類的任務,我們需要將一篇文章中的問題和答案進行合成。此外,當問題是一個語法流利的自然語言語句的時候,答案也極有可能是文本中的重要語義概念,如命名實體、動作或者數字。由於答案有著與問題不同的語言結構,因此,把答案和問題看作兩種不同類型的數據可能更為恰當。

在該方法中,我們把生成問題—答案對(question-answer pair)的過程分解成了兩步:基於文本生成答案,以及基於文本和答案生成問題。我們之所以首先生成答案是因為答案通常是關鍵的語義概念,而問題則可以看作是用來對該概念進行詢問的完整句子。

SynNet 被訓練以用於合成給定文本的答案和問題。模型的第一階段是答案合成模塊,使用了一個雙向 LSTM(long short-term memory)以在輸入文本的基礎上預測 IOB(inside-outside beginning)標記,從而標註出有可能是答案的關鍵語義概念。第二階段是問題合成模塊,使用了一個單向 LSTM 來生成問題,基於文本和 IOB ID對單詞嵌入進行監督。儘管文本中的多種跨度可能會被識別為潛在的答案,然而在生成問題的時候,我們僅選取一個跨度。

下面是兩個從文章中生成的問題和答案的實例:

使用 SynNet,我們能夠在沒有任何額外訓練數據的新領域中得到更加精準的結果,其性能接近全監督 MRC 系統。

基於 SQuAD(維基百科上的文章)訓練的 SynNet,其在 NewsQA(新文章)上的性能和在 NewsQA 上進行完全訓練的系統幾乎一樣好。

SynNet 就像是一位教師,基於她先前的教學經驗,從新領域的相關文章中提出問題和答案,並且使用這些材料來教她的學生執行新領域的相關閱讀理解任務。因此,微軟的研究人員也研發出了一套神經機器閱讀模型,包括近期開發的ReasoNet(https://www.microsoft.com/en-us/research/publication/reasonet-learning-stop-reading-machine-comprehension/),該模型已經展現出了巨大潛力,它就像從教學材料中學習的學生,可以在基於文本的情況下回答問題。

據我們所知,這是第一次嘗試應用 MRC 領域遷移。我們期待開發出可擴展的解決方案,以快速擴展 MRC 的能力,從而激發出機器閱讀可改變行業格局的巨大潛力!


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

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


請您繼續閱讀更多來自 機器之心 的精彩文章:

如何使用深度強化學習幫助自動駕駛汽車通過交叉路口?
CVPR2017論文解讀:基於視頻的無監督深度和車輛運動估計
中國的AI:演算法王國
十餘家 AI 創業公司,深度解讀國務院新一代 AI 發展規劃
如何用深度學習做自然語言處理?這裡有份最佳實踐清單

TAG:機器之心 |

您可能感興趣

用Python進行機器學習
用機器學習搞藝術,谷歌 Megenta 項目集錦
用python學習網路數據信息採集
Datalore:用於機器學習可視化的新Web方案!
給黑客使用的機器學習引擎——Juice
Pick一下?Python機器學習實用技巧
Pick 一下?Python 機器學習實用技巧
Python與機器學習
開源機器學習伺服器——PredictionIO
Google提出新型學習範式Deep Memory,或將徹底改變機器學習領域
用Scratch+IBM Watson實現機器學習
谷歌發布機器學習規則 (Rules of Machine Learning):關於機器學習工程的最佳實踐(下)
用機器學習創造獨特聲音,谷歌開源NSynth Super
谷歌發布機器學習規則 (Rules of Machine Learning):關於機器學習工程的最佳實踐(上)
DeepMind提出新型SACX學習範式,從零開始訓練機器人解決複雜任務
瀏覽器端機器學習—brain.js
機器學習與Scikit Learn學習庫
用AI 打造遊戲,Unity 機器學習 Agent——ml-agents
使用TensorFlow,Kafka和MemSQL進行實時機器學習
專訪機器學習祖師爺 Tom Mitchell:帶著理性擁抱機器學習的熱潮