當前位置:
首頁 > 知識 > ACL2019最佳論文馮洋:Teacher Forcing亟待解決,通用預訓練模型並非萬能

ACL2019最佳論文馮洋:Teacher Forcing亟待解決,通用預訓練模型並非萬能

機器之心原創

作者:一鳴

ACL 2019 大會近日落幕。來自中國科學院計算所、騰訊微信 AI 實驗室、華為諾亞方舟、伍斯特理工學院等研究人員完成的機器翻譯論文《Bridging the Gap between Training and Inference for Neural Machine Translation》獲得了最佳長論文獎。在本文中,機器之心對此論文通訊作者、中國科學院計算所的馮洋老師進行了專訪。

神經機器翻譯是自然語言處理中的重要任務。目前的通用做法是,訓練時輸入源句子(source sentence)和目標句子(target sentence)組成的句子對,訓練神經網路模型後,在測試集上生成翻譯文本。

儘管近年來神經機器翻譯相關的研究已經取得了長足的進步,神經機器翻譯模型依然無法達到人類翻譯的水平,更無法在專業領域取代人工翻譯。其中有兩個重要的原因阻礙了神經機器翻譯的發展。

首先,神經機器翻譯任務中模型訓練的輸入和模型推斷的輸入有很大的不同。在訓練過程中,解碼器生成字元的時候需要受到 Ground Truth,即參考句(Reference Sentence)的約束。而在推斷過程中,生成的目標句中的每個字元完全根據模型給出的前一個字元進行推斷,沒有 Ground Truth 作為約束語境。

神經機器翻譯中的第二個問題來自 Teacher Forcing 方法。這一方法要求模型的生成結果必須和參考句一一對應。儘管這一方法可以強制約束模型的翻譯結果,加快收斂,但是缺點顯而易見。首先,不可能保證某種語言中的每一個詞在另一種語言中都有對應的詞語。其次,強制詞語對應消除了語義相似的其他翻譯結果,扼殺了翻譯的多樣性。

而今年的 ACL 2019 最佳長論文——Bridging the Gap between Training and Inference for Neural Machine Translation 則對這兩個問題提出了解決方案,並在多個機器翻譯數據集上取得了一定的性能提升。在這一獎項出爐後,機器之心採訪了論文通訊作者,中國科學院計算所的馮洋老師,請馮老師談談這篇論文和自然語言處理研究相關的事。

馮洋老師是中國科學院計算技術研究所副研究員,博士生導師,自然語言處理課題組負責人。2011 年在中科院計算所獲得了博士學位之後,先後在英國謝菲爾德大學、美國南加州大學 Information Sciences Institute (USC/ISI) 開展研究工作。回國後先後在百度和清華大學工作,於 2017 年 6 月加入中科院計算所,入選計算所「新百星」人才引進計劃。研究方向主要是自然語言處理、機器翻譯和機器學習,先後在自然語言處理領域的頂級會議 ACL、EMNLP、COLING 等上發表了一系列論文,並擔任 COLING 2018 的領域主席。發明了多項中國和美國專利,承擔了國家重點研發計劃、國家自然科學面上基金項目等項目,並作為主要參與人參與了美國國防部 DARPA 重大項目、歐盟重大項目和英國 EPSRC 基金項目。

以下為採訪內容,機器之心進行了整理。

機器翻譯目前最急需解決的問題是 Teacher Forcing

機器之心:神經機器翻譯(NMT)在自然語言處理領域已經算是一個比較成熟的方向,那麼當您選擇這個問題時,目標和基本想法都是什麼樣的?

馮洋:我選擇研究神經機器翻譯的原因是,它是一個相對定義比較規範的問題,問題本身的場景是固定的。因此,對於這個問題來說,做得好與不好,更多地取決於研究者對問題理解的深度,或者說演算法的好壞。而對於團隊來說,研究這一問題也是很有必要的,因為研究這一問題需要團隊很「solid」(紮實)的積累。

機器之心:也就是說,這一問題對於團隊的基礎技術和能力是一種很好的鍛煉,一種很好的培養機會,可以這樣理解嗎?

馮洋:對的。

機器之心:在機器翻譯領域中,目前有哪些難點急需解決?又有哪些有潛力的研究方向?

馮洋:我認為目前最大的問題是 Teacher Forcing,它要求模型生成的翻譯和 Ground Truth 完全對應。首先,這樣可能扼殺了翻譯的多樣性。另外,模型不可能完全保證和 Ground Truth 的譯文完全一致。有時候,模型在某一句上,通過調參可以達到和 Ground Truth 完全一致的結果,但是在另一句話可能就無法達到了。對於沒有達到完全一致的句子,模型會被給予懲罰,而並沒有去評價翻譯的結果好不好,這是一個問題。所以,對於有潛力的點,我認為訓練的框架很值得研究。另外,基於語義的翻譯也很值得探究。但是,目前研究成果很少,不是說不值得研究,而是難度非常大。下一步如果能對譯文方面,對翻譯結果有一個正確的評估,這是很重要的。

機器之心:能否請您談談,目前自然語言處理領域比較值得關注和研究的熱點問題?

馮洋:目前人機對話應該是比較熱門的領域。這是因為它的應用場景很廣闊。研究界嘗試了很多方法,也取得了一定的效果,但是目前缺乏一種通用的、固定的場景,也缺乏一個得到驗證的、廣泛在工業界可以應用的模型。所以說我覺得人機對話接下來還有很長的路要走,應該是一個比較有潛力的研究方向。同時人機對話的需求也非常旺盛,現在有很多產品都在轉向智能化,智能化就需要人機對話應用,比如智能音箱和導航等,在未來人機對話的應用會非常廣泛。

至於機器翻譯方向,它是由應用決定最終研究的方向。雖然機器翻譯技術已經比較成熟了,但是仍有需求沒有得到解決。現在各大公司依然在努力研究同聲傳譯方面的技術,但是實際上太難做了。在實際應用中,演講者所處的環境非常嘈雜,在演講者即興講話的情況下,它的問題就會很明顯。還有很多研究方面的工作需要去做。

關於最佳論文

為了解決機器翻譯存在的問題,在論文 Bridging the Gap between Training and Inference for Neural Machine Translation 中,馮洋老師和團隊成員提出了使用 Oracle 詞語,用於替代 Ground Truth 中的詞語,作為訓練階段約束模型的數據。

選擇 Oracle Word 的方法有兩種,一種是選擇 word-level oracle,另一種則是 sentence-level oracle。

詞語級別的 Oracle Word 選擇方法。圖源:論文。

word-level oracle 的選擇方法如圖所示,在時間步為 j 時,獲取前一個時間步模型預測出的每個詞語的預測分數。為了提高模型的魯棒性,論文在預測分數基礎上加上了 Gumbel noise,最終取分數最高的詞語作為此時的 Oracle Word。

sentence-level oracle 的選擇方法則是在訓練時,在解碼句子的階段,使用集束搜索的方法,選擇集束寬為 k 的句子(即 top k 個備選句子),然後計算每個句子的 BLEU 分數,最終選擇分數最高的句子。

當然,這會帶來一個問題,即每個時間步都需要獲得該時間步長度上的備選句子,因此集束搜索獲得的句子長度必須和時間步保持一致。如果集束搜索生成的實際句子超出或短於這一長度該怎麼辦?這裡研究人員使用了「Force Decoding」的方法進行干預。而最終選擇的 Oracle Word 也會和 Ground Truth 中的詞語混合,然後使用衰減式採樣(Decay Sampling)的方法從中挑選出作為約束模型訓練的詞。

針對論文中的一些問題,機器之心也請教了馮洋老師。

機器之心:我們知道,這篇論文的基本思想是:不僅使用 Ground Truth 進行約束,在訓練過程中,也利用訓練模型預測出的上一個詞語作為其中的備選詞語,這樣的靈感是從哪裡得到的呢?

馮洋:我們很早就發現了這樣一個問題——訓練和測試的時候模型的輸入是不一樣的。我們希望模型在訓練過程中也能夠用到預測出的詞語。看到最近一些周邊的工作,我們慢慢想到,將 Ground Truth 和模型自己預測出的詞一起以 Sampling 的方式輸入進模型。

機器之心:剛才您提到有一些周邊的工作,能否請您談談有哪些相關的論文?

馮洋:這些周邊的論文在 Related Work 中有寫到,這些工作的基本思想都是一樣的,都是希望將預測出的詞語作為模型輸入。比如說,根據 DAD(Data as Demonstrator)的方法。這一方法將預測出的詞語和後一個詞語組成的詞語對(word-pair)以 bigram 的方式輸入作為訓練實例加入。另一種是 Scheduled Sampling 的方式,也是用 Sampling 的方式,把預測出的詞語作為輸入加入到模型訓練中。

機器之心:論文使用了兩種方法實現將預測詞語作為訓練的輸入,一種是在 Word-level 選擇 Oracle Word,另一種是在 Sentence-level 選擇 Oracle Sentence,能否請您詳細介紹下 Sentence-level 的方法?

馮洋:Sentence-level 的方法可以簡單理解為進行了一次解碼。我們從句子中取出前 k 個候選譯文。這裡的 k 我們選擇了 3,即 Top3 的句子。然後在這些句子中再計算他們的 BLEU 分數,並選擇分數最高的句子,作為 Oracle Sentence。

機器之心:我們知道,論文中,在選擇 Oracle Sentence 的過程中會進行「Force Decoding」。需要強制保證生成的句子和原有的句子保持一致的長度。您認為這樣的方法會帶來什麼樣的問題?

馮洋:這是強制模型生成和 Ground Truth 長度一樣的句子。這樣模型可能會生成一些原本並不是模型想生成的結果,這可能會帶來一些問題。但是對於 Teacher Forcing 來說這是必須的,因為 Teacher Forcing 本身要求每一個詞都要對應。所以說,雖然看起來我們干預了句子的生成,但是在 Teacher Forcing 的場景下,這種干預不一定是壞的。

機器之心:為什麼說這樣的干預不一定是壞的?

馮洋:我們需要留意的是,Force Decoding 的方法是在訓練階段進行的,如果訓練中這樣做了,模型就會逐漸地適應這個過程。另一方面,Force Decoding 可以平衡一些極端的生成結果。比如說,當句子長度為 10,但模型只生成了僅有 2 個詞的句子,或者是模型生成了有 20 個詞的句子,所以說 Force Decoding 也可以平衡這樣的極端情況。在 Teacher Forcing 的場景下,這是一種折中的方法,不能完全說這樣的方法是不好的。

機器之心:在研究的過程中您遇到了哪些困難的地方?

馮洋:研究過程也不是一直順利的。在有了演算法的時候,模型並沒有達到理想的效果。我們不清楚是細節方面的一些問題,還是模型本身是不 work 的。對此,我們進行了一些嘗試,最後發現是模型其實是 work 的。

機器之心:在哪些方面進行了嘗試?

馮洋:首先是 Decay 方面的問題,怎樣讓模型 Decay。第二個是關於選擇 Oracle Word 和 Oracle Sentence,這些方面我們進行了很多嘗試。

機器之心:實驗結果不理想的情況時,怎樣進行改進呢?

馮洋:有幾個方面可以進行改進。首先是神經網路上,由於神經網路它自身的特點,有些參數需要進行研究和調整。其次是關於模型本身,我們需要檢查模型的輸入的結果是不是想要的。一些中間結果也需要檢查一下,我們需要從邏輯層面檢查模型是否真正的按照預期去工作。

機器之心:能否請您介紹下參與論文的研究團隊?

馮洋:論文的一作張文是劉群老師的博士生,是該工作的主要完成者,近年來在自然語言處理頂會上發表了多篇文章。平時我會協助劉群老師指導張文的工作。還有一位作者是騰訊微信團隊的孟凡東,是論文的三作,是我們實驗室的優秀畢業生,會提出一些建議。還有一位作者是實驗室的實習生游狄。

機器之心:您參加了很多頂會。我們近年來看到有很多華人學者參與頂會,也獲得了很多獎項,您怎樣看待這個現象呢?

馮洋:這可以叫做「中國崛起」現象吧,其實很正常。我覺得現在神經網路研究對我們華人學者是一個很好的機會。大家都知道,華人學者能力很強。在過去,很多研究需要積累,很多單位因為過去的積累比較多,所以在此基礎上做出的成果也比較多。而現在神經網路時代,這個領域剛興起,大家的基礎積累是一樣的。另外,神經網路的很多研究是開源的,這樣就打破了很多壁壘。我們華人學者學習能力很強,在這樣的環境下,我們崛起是很正常的。

預訓練模型雖好,但專業場景需要專業解決方案

機器之心:我們知道最近有很多預訓練語言模型,如 BERT 和 XLNet,在多個自然語言處理任務中取得了 Bench Mark。這些預訓練語言模型也可以應用在神經機器翻譯任務上,也取得了一定的效果。您覺得現在已經有很多這樣的模型了,再去研究專門針對特定任務的架構,這樣的意義和優勢在哪裡?

馮洋:像預訓練語言模型這一通用架構,是可以幫助我們在特定的任務上提升效果,但是這些語言模型並沒有針對特定的問題提出解決方案。所以說針對特定的任務提出解決方案是很有必要的,因為每個問題的場景都不一樣。針對專業的場景應該有專業的模型,不可能有通用的模型可以解決所有的問題。

機器之心:前幾天 Facebook 剛開源了一個新的預訓練語言模型——roBERTa,在 BERT 的基礎上增加了很多算力和訓練的數據量。您覺得像這樣瘋狂地往模型上堆訓練數據量和算力的方法,一定能取得很好的效果嗎?

馮洋:就同樣的模型來說,堆算力、擴大訓練數據集肯定會有更好的效果。

但是,這樣的方法更適合工業界。因為工業界有實際的應用,也有相應的能力,可以這樣去做。在學術界來說,我們更要關注到演算法方面的突破。有了好的演算法,再加上好的算力,才能有更好的加成。

學術研究需要夯實理論基礎,解決核心問題

機器之心:在您選題、立題過程中,有沒有一些經驗可以給讀者朋友們分享一下?

馮洋:我建議我的學生去做以下幾點。首先是要多讀論文,這是肯定的。在讀論文的過程中,不能只看對方做了什麼,而是要善於去提煉論文要解決什麼問題,然後是論文使用了什麼樣的方法。

在選題立題的過程中,首先需要明確要解決的問題是什麼。第二個是你的解決方案是什麼。在這個過程中,可以選擇解決認為很重要的問題,或者是很感興趣的問題。也可以去發現別的研究者沒有考慮到的,有很大提升空間的問題,可以從這兩個角度來選擇。

機器之心:最後一個問題,您認為作為人工智慧領域的研究者,應該秉持怎樣的研究理念和治學的理念?

馮洋:我覺得,研究者需要能做一些解決一個或多個任務的關鍵問題的研究。從根本上解決問題,觸及問題的核心,而不是為了把神經網路做好而去做研究。

此外,在學生培養上,我希望大家不要急著發論文,要做好的研究。平時要注意多做一些基礎理論的積累,當基礎理論打紮實了,研究的路會越走越寬。如果僅靠拍腦袋或者一時的靈感去做研究,剛開始能摘到一些低枝的果實,可能比較容易出成果。慢慢的,當大家都研究得越來越難的時候,出成果就會比較困難了。

本文為機器之心原創,轉載請聯繫本公眾號獲得授權。

------------------------------------------------

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

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


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

自動駕駛圈第一個正式「謝幕」:Drive.ai確認將永久關閉
手機搖一搖測體積,2019菜鳥全球科技挑戰賽助力智能物流

TAG:機器之心 |