爲什麼現在需要遷移學習?

前百度首席科學家、斯坦福的教授吳恩達(Andrew Ng)在廣受流傳的 2016 年 NIPS 會議的教程中曾經說過:「遷移學習將會是繼監督學習之後的下一個機器學習商業成功的驅動力」。

圖 3:吳恩達在 2016 年 NIPS 上談論遷移學習

特別地,他在白板上畫了一個圖表,我儘可能忠實地將它複製在如下所示的圖 4 中(抱歉座標軸沒有詳細的標註)。據吳恩達說,遷移學習將成爲機器學習在產業界取得成功的一個關鍵驅動力。

圖 4:吳恩達心中機器學習產業成功的驅動力

不容置疑,機器學習在產業界的應用和成功主要是受監督學習的驅動。受到深度學習中的進步、更強大的計算資源以及大量的標籤數據集的推動,監督學習是人們對人工智能的興趣復甦浪潮、多輪融資以及收購的主要原因,尤其是我們近年來看到的機器學習的應用,它們已經成爲了我們生活的一部分。如果我們忽視關於另一個人工智能寒冬的懷疑和傳言,並且相信吳恩達的預見,這種成功很可能會持續下去。

然而,不太清楚爲什麼已經存在了大約幾十年並且至今在產業界很少被使用的遷移學習會出現吳恩達所預言的那種爆炸式增長。更有甚者,與機器學習的其他領域(如無監督學習和強化學習等)相比,遷移學習目前受到的關注更少。而且那些領域也正越來越受歡迎:無監督學習是實現通用人工智能的關鍵成分(如圖 5 中 Yann LeCun 所說),人們對此興趣已經復甦,尤其是在生成對抗網絡(GAN)的推動下。反過來,強化學習在 Google DeepMind 的牽頭下已經實現遊戲 AI 的進步,AlphaGo 的成功堪稱典範,並且也早已在現實世界中實現了成功,例如將 Google 數據中心的冷卻費用降低了 40%。這兩個領域雖然很有希望,但是在可預見的未來可能只會有着相對較小的商業影響力,並且大部分還停留在前沿研究論文的範圍之內,因爲它們仍然面臨着許多挑戰。

圖 5:顯然遷移學習沒有出現在 Yann LeCun 的蛋糕成分問題中

什麼使得遷移學習與衆不同呢?下面我們會看一下在我看來驅使了吳恩達的預見的因素,並且總結一下現在正是重視遷移學習的時機的原因。

目前產業界對機器學習的應用分爲兩類:

一方面,在過去幾年中,我們已經獲得了訓練越來越準確的模型的能力。我們現在所處的階段,對很多任務而言,最先進的模型已經達到了這樣的水平:它們的表現是如此的好以至於對使用者來說不再有障礙了。有多麼好呢?最新的 ImageNet 上的殘差網絡 [1] 在進行物體識別時實現了超越人類的性能;Google 的 Smart Reply 系統 [2] 可以處理所有移動手機中的回覆的 10%;語音識別的錯誤率在持續降低,並且比鍵盤輸入更加準確 [3];我們已經實現了和皮膚科醫師一樣好的自動皮膚癌識別;Google 的神經機器翻譯系統(NMT)[4] 已被用在了超過 10 種以上的語言對的生產中;百度可以實時地生成逼真的語音;類似的還有很多很多。這種成熟度允許將這些模型大規模地部署到數百萬的用戶上,並且已經得到了廣泛的採用。

另一方面,這些成功的模型都是極其地重視數據的,依靠大量的標籤數據來實現它們的性能。對一些任務和域而言,經過了多年的精心收集,這種數據是可以得到的。在少數情況下,數據是公開的,例如 ImageNet[5],但是在很多語音或者 MT 的數據集中,大量的標籤數據都是有專利的,或者是很昂貴的,因爲它們在競爭中提供了前沿參考。

同時,把機器學習的模型應用在自然環境中時,模型會面臨大量之前未曾遇到的條件,它不知道如何去處理;每一個用戶都有他們自己的偏好,也需要處理和生成不同於之前用來訓練的數據;要求模型執行很多和訓練相關但是不相同的任務。在所有這些情況下,儘管我們最先進的模型在它們被訓練的任務和域上展示出了和人類一樣甚至超越人類的性能,然而還是遭遇了明顯的表現下降甚至完全失敗。

遷移學習可以幫助我們處理這些全新的場景,它是機器學習在沒有大量標籤數據的任務和域中規模化應用所必須的。到目前爲止,我們已經把我們的模型應用在了能夠容易獲取數據的任務和域中。爲了應對分佈的長尾,我們必須學會把已經學到的知識遷移到新的任務和域中。

爲了做到這個,我們需要理解遷移學習所涉及到的概念。基於這個原因,我會在下面的內容中給出更加技術性的定義。

遷移學習的定義

爲了這個定義,我會緊密地遵循 Pan 和 Yang(2010) 所做的傑出的綜述 [6],並以一個二元文檔分類爲例。

遷移學習涉及到域和任務的概念。一個域 D 由一個特徵空間 X 和特徵空間上的邊際概率分佈 P(X) 組成,其中 X=x1,…, xn∈X。對於有很多詞袋錶徵(bag-of-words representation)的文檔分類,X 是所有文檔表徵的空間,xi 是第 i 個單詞的二進制特徵,X 是一個特定的文檔。(注:這裏的 X 有兩種不同的形式,這裏不太好呈現,具體請參考原文。

給定一個域 D={X,P(X)},一個任務 T 由一個標籤空間 y 以及一個條件概率分佈 P(Y|X) 構成,這個條件概率分佈通常是從由特徵—標籤對 xi∈X,yi∈Y 組成的訓練數據中學習得到。在我們的文檔分類的例子中,Y 是所有標籤的集合(即真(True)或假(False)),yi 要麼爲真,要麼爲假。

給定一個源域 Ds,一個對應的源任務 Ts,還有目標域 Dt,以及目標任務 Tt,現在,遷移學習的目的就是:在 Ds≠Dt,Ts≠Tt 的情況下,讓我們在具備來源於 Ds 和 Ts 的信息時,學習得到目標域 Dt 中的條件概率分佈 P(Yt|Xt)。絕大多數情況下,假設可以獲得的有標籤的目標樣本是有限的,有標籤的目標樣本遠少於源樣本。

由於域 D 和任務 T 都被定義爲元組(tuple),所以這些不平衡就會帶來四個遷移學習的場景,我們將在下面討論。

遷移學習的場景

給定源域和目標域 Ds 和 Dt,其中,D={X,P(X)},並且給定源任務和目標任務 Ts 和 Tt,其中 T={Y,P(Y|X)}。源和目標的情況可以以四種方式變化,我們仍然以我們的文檔分類的例子在下面描述:

  1. XS≠XT。源域和目標域的特徵空間不同,例如,文檔是用兩種不同的語言寫的。在自然語言處理的背景下,這通常被稱爲跨語言適應(cross-lingual adaptation)。

  2. P(Xs)≠P(Xt)。源域和目標域的邊際概率分佈不同,例如,兩個文檔有着不同的主題。這個情景通常被稱爲域適應(domain adaptation)。

  3. YS≠YT。兩個任務的標籤空間不同,例如,在目標任務中,文檔需要被分配不同的標籤。實際上,這種場景通常發生在場景 4 中,因爲不同的任務擁有不同的標籤空間,但是擁有相同的條件概率分佈,這是極其罕見的,

  4. P(Ys|Xs)≠P(Yt|Xt)。源任務和目標任務的條件概率分佈不同,例如,源和目標文檔在類別上是不均衡的。這種場景在實際中是比較常見的,諸如過採樣、欠採樣以及 SMOTE[7] 這些方法被廣泛應用。

在明白了與遷移學習相關的概念和常被用到的一些場景之後,我們將要介紹一些能夠說明它的潛力的應用。

本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源https://mp.weixin.qq.com/s/nXKKkdQqmPCNAtWGz8qMpQ