對偶學習

最近了解了NLP的對偶學習,幾篇論文分享一下龟梦。

Dual Learning for Machine Translation
  • NIPS 2016

This mechanism is inspired by the following observation: any machine translation task has a dual task, e.g., English-to-French translation (primal) versus French-to-English translation (dual); the primal and dual tasks can form a closed loop, and generate informative feedback signals to train the translation models, even if without the involvement of a human labeler.

現(xiàn)在的機器翻譯NMT系統(tǒng)多采用seq2seq模型着帽,這種方法的一大缺點在于需要構(gòu)建大量的平行語料庫揣钦,非常耗時耗成本。本文提出了一種低資源的機器翻譯模型訓(xùn)練方法:對偶學習(dual learning)烟勋,這中方法可以更有效地應(yīng)用單語料(包括源語言和目標語言)规求,大大減少平行語料庫。這種思路很直觀卵惦,就是當語言A被翻譯成語言B后阻肿,再將語言B翻譯成語言A,這個過程是有噪聲的沮尿,因此經(jīng)過兩次翻譯后的語言A和原始語言A肯定會出現(xiàn)差異最小化丛塌,將差異最小化即可同時改進兩個翻譯模型的性能。同理畜疾,從語言B翻譯到語言A再翻譯到語言B也可以進行相同的過程赴邻。因此如果我們有了兩個已經(jīng)訓(xùn)練好了但不完美的翻譯模型,我們只需要將兩種語言的自由文本通過對偶學習的方式進行訓(xùn)練啡捶,就能改善兩個翻譯模型的性能姥敛。

算法的主要思想也借助了強化學習的思想,通過最大化reward來更新參數(shù)瞎暑。假如我們現(xiàn)在已經(jīng)有了兩個翻譯模型P(.|s;\theta_{AB})P(.|s;\theta_{BA})彤敛,分別是將A翻譯成B和將B翻譯成A。同時我們還訓(xùn)練了兩種語言的語言模型LM_A(.)LM_B(.)了赌。首先我們從語言A的語料庫中選取語句s墨榄,然后通過P(.|s;\theta_{AB})翻譯成B語言s_{mid},此時我們得到一個立即reward r_1=LM_B(s_{mid})勿她,這個reward其實是衡量s_{mid}的流暢度袄秩。然后我們將s_{mid}重新翻譯會語言A,論文中稱之為重建逢并,這部分的reward為r_2={\rm log}P(s|s_{mid};\theta_{BA})之剧。總reward r = \alpha r_1 + (1 - \alpha) r_2砍聊,\alpha是一個超參數(shù)背稼。

這個算法的思路還是比較直觀的,現(xiàn)在講講它的訓(xùn)練過程辩恼。最開始我們是沒有訓(xùn)練好的翻譯模型的雇庙,我們需要先用平行語聊訓(xùn)練翻譯模型,然后逐漸轉(zhuǎn)換到用單語料進行對偶學習灶伊。文中提到了一種soft-landing策略:剛開始的時候每個batch的一半是平行語料疆前,一半是單語語料,此時的目標函數(shù)是翻譯模型的目標函數(shù)和r的加權(quán)和聘萨。隨著訓(xùn)練進行逐漸增大單語料的比例竹椒,直到全是單語料。

實驗結(jié)果和基于attention的NMT和pseudo-NMT進行了比較米辐。發(fā)現(xiàn)在僅用10%語料的情況下胸完,dual-NMT和前兩種方法使用全語料訓(xùn)練的結(jié)果不相上下,單獨看重建的指標翘贮,遠高于前兩種方法赊窥,同時在長句子翻譯的表現(xiàn)非常優(yōu)秀。對偶學習對于機器翻譯任務(wù)是非常有效的狸页。

文中也提到了還有很多對偶的任務(wù)值得探索锨能,如:語音識別和語音合成、圖片描述和圖片生成芍耘、問答和問題生成址遇、檢索和關(guān)鍵字抽取。同時提到了對偶學習的本質(zhì)是構(gòu)成一個閉環(huán)斋竞,讓我們能夠捕捉到反饋信號倔约,所以作者也稱對偶學習為close-loop learning,該框架不拘泥與兩種語言的對偶任務(wù)坝初,還可以擴展到很多agent之間相互反饋浸剩。

Dual Supervised Learning
  • ICML 2017

In this work, we propose training the models of two dual tasks simultaneously, and explicitly exploiting the probabilistic correlation between them to regularize the training process.

上一篇文章只在NMT方面提出了對偶學習,這篇文章是愛監(jiān)督學習下提出了對偶學習的范式:Dual Supervised learning(DSL)脖卖。

本文的出發(fā)點在于乒省,很多對偶任務(wù)之間存在內(nèi)在的概率分布聯(lián)系:P(x,y)=P(x)P(y|x;\theta_{xy})=P(y)P(x|y; \theta_{yx})在傳統(tǒng)的監(jiān)督學習下,以上對偶性是無法得到保證的畦木,本文給訓(xùn)練過程顯式地加入了上述約束:
\begin{align} {\rm objective\ 1}: {\rm min_{\theta_{xy}}}\ (1/n) \sum_{i=1}^n l_1(f(x_i;\theta_{xy}),y_i),\\ {\rm objective\ 2}: {\rm min_{\theta_{yx}}}\ (1/n) \sum_{i=1}^n l_2(g(y_i;\theta_{yx}),x_i),\\ s.t.\ P(x)P(y|x;\theta_{xy})=P(y)P(x|y; \theta_{yx}), \forall x,y \end{align}
l是兩個函數(shù)的差異函數(shù)袖扛,fg是兩個對偶學習的模型本身。為了求解這個問題十籍,使用拉格朗日乘數(shù)法蛆封,為兩個目標函數(shù)增加乘數(shù)項
l_{duality}=({\rm log}P(x)+{\rm log}P(y|x;\theta_{xy}) - {\rm log}P(y)-{\rm log}P(x|y; \theta_{yx}))^2
然后進行訓(xùn)練即可」蠢酰可以看出惨篱,這里中方法實際上只是在目標函數(shù)上加了一個正則項。只要能較好地估計P(x)P(y)围俘,算法就能同時提升兩個對偶任務(wù)的性能砸讳,思路也比較直觀琢融。

本文在機器翻譯老充、圖像處理(圖像分類和生成)淤齐、情感分析(情感分類和生成)方面做了實驗,驗證了方法有效性碑诉。其中后兩個任務(wù)雖然是對偶的但是從左到右的信息是有損的常遂,而模型在這兩個任務(wù)上也獲得了不錯的效果纳令。

Model-Level Dual Learning
  • ICML 2018

In this word, we propose a new learning framework, model-level dual learning, which takes duality of tasks into consideration while designing the architectures for the primal/dual models, and ties the model parameters that playing similar roles in the two tasks.

以上兩篇文章都僅關(guān)注了數(shù)據(jù)上的對偶性,這篇文章從模型的角度提出了對偶學習的范式克胳,在這種范式下平绩,對偶任務(wù)之間能夠做到參數(shù)共享。根據(jù)對偶任務(wù)的對稱性文章探索了兩種對偶范式:

  1. Symmetric Model-Level Dual Learning

這種情況下XY具有相同的形式漠另,如機器翻譯捏雌。簡單來說,第一篇文章中的機器翻譯從XY和從YX是用了兩個不同參數(shù)的模型完成的笆搓,每個組件是單向的腹忽,即:
X \to {\rm \bf ENCODER}_{XY} \to {\rm \bf DECODER}_{XY} \to Y \to {\rm \bf ENCODER}_{YX} \to {\rm \bf DECODER}_{YX} \to X
而從模型上對偶的機器翻譯如下:
X \leftrightarrow {\rm \bf COMPONENT}_X \leftrightarrow {\rm \bf COMPONENT}_Y \leftrightarrow Y
這里的整個模型只有兩個雙向組件,以{\rm \bf COMPONENT}_X為例砚作,如果數(shù)據(jù)從左側(cè)進入窘奏,則它為編碼器,若從右側(cè)進入葫录,則它為解碼器着裹,{\rm \bf COMPONENT}_Y同理。這樣就實現(xiàn)了之前{\rm \bf ENCODER}_{XY}{\rm \bf DECODER}_{YX}米同、以及{\rm \bf DECODER}_{XY}{\rm \bf ENCODER}_{YX}的參數(shù)共享骇扇。由于編碼器解碼器都采用一個模型,只需要形式上一致即可面粮。這里的組建可以采用RNN少孝、CNN或Transformer等。

  1. Asymmetric Model-Level Dual Learning

這中情況下XY不具有相同的形式或語義熬苍,如情感分析稍走。但是還是可以相同的組件上面相同的組件描述,這里{\rm \bf COMPONENT}_XX編碼成語義向量柴底,然后{\rm \bf COMPONENT}_Y是分類層婿脸。它的對偶任務(wù)首先將標簽的embedding(文中沒有詳細說明,猜測是隨機干擾柄驻,在訓(xùn)練時可能是前向傳播的結(jié)果)通過{\rm \bf COMPONENT}_Y映射到語義向量狐树,然后用{\rm \bf COMPONENT}_X生成。

可以看出鸿脓,只要組件的兩個方向計算的數(shù)學形式一致抑钟,就可以用于對偶學習涯曲。模型層面的對偶學習有幾點好處:第一,減少了參數(shù)總量在塔;其次掀抹,給定一個訓(xùn)練pair(x,y),實際上參數(shù)訓(xùn)練了兩次心俗,而且從兩個不同的方向訓(xùn)練的,實際上是資源利用了兩次蓉驹,xy都參與了訓(xùn)練城榛。

最后文章在機器翻譯和情感分析兩個任務(wù)上驗證了模型的有效性。實驗結(jié)果表明效果優(yōu)于之前的DSL框架以及其他模型态兴。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末狠持,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子瞻润,更是在濱河造成了極大的恐慌喘垂,老刑警劉巖,帶你破解...
    沈念sama閱讀 212,454評論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件绍撞,死亡現(xiàn)場離奇詭異正勒,居然都是意外死亡,警方通過查閱死者的電腦和手機傻铣,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,553評論 3 385
  • 文/潘曉璐 我一進店門章贞,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人非洲,你說我怎么就攤上這事鸭限。” “怎么了两踏?”我有些...
    開封第一講書人閱讀 157,921評論 0 348
  • 文/不壞的土叔 我叫張陵败京,是天一觀的道長。 經(jīng)常有香客問我梦染,道長赡麦,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,648評論 1 284
  • 正文 為了忘掉前任帕识,我火速辦了婚禮隧甚,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘渡冻。我一直安慰自己戚扳,他們只是感情好,可當我...
    茶點故事閱讀 65,770評論 6 386
  • 文/花漫 我一把揭開白布族吻。 她就那樣靜靜地躺著帽借,像睡著了一般珠增。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上砍艾,一...
    開封第一講書人閱讀 49,950評論 1 291
  • 那天蒂教,我揣著相機與錄音,去河邊找鬼脆荷。 笑死凝垛,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的蜓谋。 我是一名探鬼主播梦皮,決...
    沈念sama閱讀 39,090評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼桃焕!你這毒婦竟也來了剑肯?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,817評論 0 268
  • 序言:老撾萬榮一對情侶失蹤观堂,失蹤者是張志新(化名)和其女友劉穎让网,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體师痕,經(jīng)...
    沈念sama閱讀 44,275評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡溃睹,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,592評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了胰坟。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片丸凭。...
    茶點故事閱讀 38,724評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖腕铸,靈堂內(nèi)的尸體忽然破棺而出惜犀,到底是詐尸還是另有隱情,我是刑警寧澤狠裹,帶...
    沈念sama閱讀 34,409評論 4 333
  • 正文 年R本政府宣布虽界,位于F島的核電站,受9級特大地震影響涛菠,放射性物質(zhì)發(fā)生泄漏莉御。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 40,052評論 3 316
  • 文/蒙蒙 一俗冻、第九天 我趴在偏房一處隱蔽的房頂上張望礁叔。 院中可真熱鬧,春花似錦迄薄、人聲如沸琅关。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,815評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽涣易。三九已至画机,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間新症,已是汗流浹背步氏。 一陣腳步聲響...
    開封第一講書人閱讀 32,043評論 1 266
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留徒爹,地道東北人荚醒。 一個月前我還...
    沈念sama閱讀 46,503評論 2 361
  • 正文 我出身青樓,卻偏偏與公主長得像隆嗅,于是被迫代替她去往敵國和親界阁。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,627評論 2 350

推薦閱讀更多精彩內(nèi)容

  • 近日榛瓮,谷歌官方在 Github開放了一份神經(jīng)機器翻譯教程,該教程從基本概念實現(xiàn)開始巫击,首先搭建了一個簡單的NMT模型...
    MiracleJQ閱讀 6,353評論 1 11
  • 孩子長大了禀晓,會離開你,獨自去面對人生的風風雨雨坝锰。但他小時候的點點滴滴粹懒,已經(jīng)深深留在媽媽的心底,時不時就跑出來顷级,用有...
    命自我立閱讀 175評論 0 2
  • 無約無束凫乖,無形無態(tài) 寂寞的自由自在 微乎其微,不可分拆 不計其數(shù)的拼成一塊 茫茫 徘徊于人海 我伴著風 卷土而來 ...
    沐陽說閱讀 397評論 6 2
  • 序 本文主要講述一下nginx lua如何重置請求參數(shù)以及整理了幾類常量弓颈。 重置請求參數(shù) 獲取請求參數(shù) 當請求ur...
    go4it閱讀 1,280評論 0 1
  • 在這章我主要學習了一些柱形圖和條形圖的運用帽芽,其實我在做ppt的時候,關(guān)于這些圖形的運用還是非常不好的翔冀,平時都...
    秀麗有約閱讀 114評論 0 1