對偶學習 機器學習

2021-10-23 03:24:52 字數 3832 閱讀 1442

2016-12-07 |

近年來,以深度學習為代表的人工智慧技術取得了長足的進步,在很多應用取得了巨大的成功。在影象識別中,深度學習已經超過了人類的水平,最近微軟剛剛宣布在語音識別中也超過了人類的平均水平,在機器翻譯中基於深度學習的模型也超過了以前的統計機器翻譯,另外基於深度學習的阿法狗也打敗了圍棋世界冠軍李世石。

深度學習之所以能夠取得巨大的成功,乙個非常重要的因素就是大資料,特別是大規模的帶標籤的資料。例如在影象識別中,深度神經網路使用上百萬的帶標籤的影象進行訓練,在機器翻譯中我們會用上千萬的雙語句對進行訓練,在圍棋中我們會用上千萬的專業棋手的落子進行訓練……這種做法有兩個侷限性。首先,人工標註獲取標籤的代價很高。例如我們考慮機器翻譯這個任務:現在市場人工翻譯乙個單詞的**差不多是5到10美分,如果乙個句子的平均長度為三十個單詞,那麼1000萬個句子人工翻譯的代價差不多是7.5美分×30×1000萬,約等於2200萬美元。現在乙個商業公司的翻譯引擎通常支援上百種語言的相互翻譯,為了訓練這樣規模的翻譯模型,人工標註的代價就會達到上千億美元。其次,在很多任務中,我們沒辦法收集到大規模的標註資料,例如在醫療中或在小語種的相互翻譯。為了使深度學習能夠取得更廣泛的成功,我們需要降低其對大規模標註資料的依賴性。為了解決這個問題,我們提出了一種新的學習正規化,我們把它稱作對偶學習。 

對偶學習的最關鍵一點在於,給定乙個原始任務模型,其對偶任務的模型可以給其提供反饋;同樣的,給定乙個對偶任務的模型,其原始任務的模型也可以給該對偶任務的模型提供反饋;從而這兩個互為對偶的任務可以相互提供反饋,相互學習、相互提高。

下面我們還是以機器翻譯為例子來說明對偶學習的基本思想。

考慮乙個對偶翻譯遊戲,裡面有兩個玩家小明和愛麗絲,如下圖所示。小明只能講中文,愛麗絲只會講英文,他們兩個人一起希望能夠提高英文到中文的翻譯模型f和中文到英文的翻譯模型g。給定乙個英文的句子x,愛麗絲首先通過f把這個句子翻譯成中文句子y1,然後把這個中文的句子發給小明。因為沒有標註,所以小明不知道正確的翻譯是什麼,但是小明可以知道,這個中文的句子是不是語法正確、符不符合中文的語言模型,這些資訊都能幫助小明大概判斷翻譯模型f是不是做的好。然後小明再把這個中文的句子y1通過翻譯模型g翻譯成乙個新的英文句子x1,並發給愛麗絲。通過比較x和x1是不是相似,愛麗絲就能夠知道翻譯模型f和g是不是做得好,儘管x只是乙個沒有標註的句子。因此,通過這樣乙個對偶遊戲的過程,我們能夠從沒有標註的資料上獲得反饋,從而知道如何提高機器學習模型。

​實際上這個對偶遊戲和強化學習的過程比較類似。在強化學習中,我們希望提高我們的策略以最大化長遠的回報,但是沒有標註的樣本告訴我們在某個狀態x哪個動作y是正確的。我們只有通過使用這個策略在不同的狀態下執行不同的動作,觀測該動作帶來的回報,從而改善我們的策略。在以上這個翻譯對偶遊戲中,兩個翻譯模型就是我們的策略,因為沒有標註的雙語句對,所以我們不能直接改善它們。這個對偶遊戲把乙個沒有標註的句子x,先翻譯成另外一種語言的句子y1,再翻譯回來為x1,這裡x就是強化學習中的狀態,y1和x1就是我們的策略所執行的動作,x和x1的相似度就是我們獲得的回報。

我們可以用已有的強化學習的演算法來訓練我們這兩個翻譯模型,比如策略梯度方法。策略梯度方法的基本思想非常簡單:如果我們在執行某個動作之後,觀測到了乙個很大的回報,我們就通過調整策略(在當前策略函式的引數上加上它的梯度)來增加這個狀態下執行這個動作的概率;相反,如果我們在執行某個動作之後,觀測到了乙個很小的回報,甚至是負的回報,那麼我們就需要調整策略(在當前策略函式的引數上減去它的梯度),以降低在這個狀態下執行這個動作的概率。

我們在乙個英語-法語翻譯的公共資料集上測試了對偶學習的有效性,並和當前最好的演算法(nmt,基於深度神經網路演算法)進行了對比。這個資料集的訓練集有1200萬個英法的雙語句對,nmt用了所有的1200萬個雙語句對訓練模型。我們的對偶演算法只用了不到10%的雙語句對初始化兩個翻譯模型f和g,再用沒有標註的英法語句進行訓練。如下圖所示,我們的對偶學習演算法只用10%的標註資料就達到了和nmt用上所有標註資料而取得的相似的甚至更好的翻譯準確度,也就是說我們可以把資料標註的代價從2000萬美元降到200萬美元左右。這個結果說明了我們提出的對偶學習方法能夠非常有效地利用未標註的資料。

​對偶學習的基本思想是兩個對偶的任務能形成乙個閉環反饋系統,使我們得以從未標註的資料上獲得反饋資訊,進而利用該反饋資訊提高對偶任務中的兩個機器學習模型。該思想具有普適性,可以擴充套件到多個相關任務上面,前提是只要它們能形成乙個閉環反饋系統。例如,從中文翻譯到英文,然後從英文翻譯到日文,再從日文翻譯到中文。另外乙個例子是從轉化成文字,然後從文字轉成語音,再從語音轉化成。

對偶學習(dual learning)和已有的學習正規化有很大的不同。首先,監督學習(supervised learning)只能從標註的資料進行學習,只涉及乙個學習任務;而對偶學習涉及至少兩個學習任務,可以從未標註的資料進行學習。其次,半監督學習(semi-supervised learning)儘管可以對未標註的樣本生成偽標籤,但無法知道這些偽標籤的好壞,而對偶學習通過對偶遊戲生成的反饋(例如對偶翻譯中x和x1的相似性)能知道中間過程產生的偽標籤(y1)的好壞,因而可以更有效地利用未標註的資料。我們甚至可以說,對偶學習在某種程度上是把未標註的資料當作帶標籤的資料來使用。第三,對偶學習和多工學習(multi-task learning)也不相同。儘管多工學習也是同時學習多個任務共的模型,但這些任務必須共享相同的輸入空間,而對偶學習對輸入空間沒有要求,只要這些任務能形成乙個閉環系統即可。第四,對偶學習和遷移學習(transfer learning)也很不一樣。遷移學習用乙個或多個相關的任務來輔助主要任務的學習,而在對偶學習中,多個任務是相互幫助、相互提高,並沒有主次之分。因此,對偶學習是乙個全新的學習正規化,我們預計其會對機器學習領域產生很大的影響,特別是考慮到以下兩個點。

第一, 很多深度學習的研究人員認為人工智慧和深度學習的下乙個突破是從未標註的資料進行學習。由於未標註的資料沒有標籤資訊,無監督學習主要聚焦在聚類、降維等問題,因此,如何從未標註的資料進行端到端的學習(把資料對映到標籤,如分類、**等任務)一直沒有很好方法。我們提出的對偶學習提供了乙個利用未標註資料進行端到端學習的有效方式。

第二, 近年來強化學習取得了很大的成功,吸引了眾多的研究人員和工業界人員的關注。但是到目前為止,強化學習的成功主要是在各種遊戲上,因為在遊戲中規則定義得非常清楚,並且很容易通過玩大量的遊戲獲取回報資訊(例如atari遊戲中每一步的得分,圍棋中最後的輸贏),從而改善遊戲策略。然而在遊戲以外的實際應用中並沒有規範定義的規則,也很難獲得回報資訊(或者獲取的代價很高),因而強化學習在複雜的實際應用中的成功還是比較有限。而對偶學習提供了一種為強化學習獲取獎勵資訊的方式,並證實了強化學習在複雜應用(如翻譯)中成功的可能。

更多詳細資訊可參見我們nips 2016 **。di he, yingce xia, tao qin, liwei wang, nenghai yu, tie-yan liu, and wei-ying ma, dual learning for machine translation, nips 2016.

作者簡介

秦濤博士,現任微軟亞洲研究院主管研究員。他和他的小組的研究領域是機器學習和人工智慧,研究重點是深度學習和強化學習的演算法設計、理論分析及在實際問題中的應用。他在國際頂級會議和期刊上發表學術**80餘篇,曾任sigir、acml、aamas領域主席,擔任多個國際學術大會程式委員會成員,包括icml、nips、kdd、ijcai、aaai、wsdm、ec、sigir、aamas、wine,曾任多個國際學術研討會聯合主席。他是ieee、acm會員,中國科學技術大學兼職教授和博士生導師。

機器學習 機器學習目錄

注 後期有時間的話會對每乙個演算法進行講解。1 普通線性回歸 2 廣義線性模型 3 邏輯回歸 4 線性判定分析1 決策樹基本原理與構建 2 cart演算法 3 回歸決策樹 4 分類決策樹1 貝葉斯定理與樸素貝葉斯 2 高斯貝葉斯分類器 3 多項式貝葉斯分類器 4 伯努利貝葉斯分類器 5 遞增式學習1...

機器學習 機器學習概論

3 模型評估與模型選擇 4.具體應用 統計學習 是關於計算機基於 資料 構建概率統計模型並運用模型對資料進行 分析 統計學習的三要素 模型在監督學習中,模型就是所要學習的條件概率分布或決策函式。這在後面的章節中會重點介紹。策略 評價模型的標準 用損失函式和代價函式來度量 錯誤的程度。1 幾種損失函式...

機器學習 機器學習基礎

資料集劃分的api 返回值 訓練特徵,測試特徵,訓練目標,測試目標 方式1 獲取小規模的資料集 importsklearn.datasets as datasets iris datasets.load iris 提取樣本資料 feature iris data target iris target...