1. 程式人生 > >遷移學習的挑戰和六大突破點

遷移學習的挑戰和六大突破點

本文轉載自機器之心 作者:蔣思源  原文連結:http://jiqizhixin.com/article/2956

 

 

5 月 28 日,機器之心主辦的為期兩天的全球機器智慧峰會(GMIS 2017)進入第二天,全天議程中最受關注的是多位重要嘉賓出席的領袖峰會,包括《人工智慧:一種現代方法》的作者 Stuart Russell、第四正規化聯合創始人兼首席科學家楊強、科大訊飛執行總裁兼消費者事業群總裁胡鬱、阿爾伯塔大學教授及計算機圍棋頂級專家Martin Müller、Element AI 聯合創始人 Jean-Sebastien Cournoyer 等。

上午,第四正規化首席科學家、香港科大電腦科學與工程系主任楊強發表了主題為《遷移學習最新進展》的演講,他探討分享了機器學習,人工智慧到底有哪些最新的進展,以下是該演講的主要內容:

 

首先,楊強教授回顧而今日的圍棋大戰,而給楊強教授比較深印象是柯潔所說的:「AlphaGo 看上去像神一樣的存在,好像是無懈可擊。」而我們如果從機器學習的角度來看,其還是有弱點的,而且這個弱點還很嚴重。這個弱點即,AlphaGo 沒有遷移學習的能力。

機器的一個能力是能使用大量資料進行學習,所以資料的質量是非常重要的。但是,AlphaGo 不能在學會圍棋後,遷移到擁有下象棋的能力。因此,機器如今是沒有這種推廣能力的,這就是我們今天要探討的問題——遷移學習。

但是在說這個題目之前,我們先看看能從 AlphaGo 2.0 裡學到的知識:

  • 今年的資料和去年的資料大有不同,資料的質量使得AlphaGo的效能得到大幅度提升,所以資料的質量是非常重要的。

  • 計算架構也很重要,去年 AlphaGo 用了上千塊 CPU和成百塊GPU,但今年只用了很少量的TPU。因此,今年的計算架構有了一種飛躍性的變化。

  • 演算法也是非常重要的,強化學習即讓計算機自我訓練、自我學習。如果我們賦予機器能夠自我學習的能力,它在某些方面將擁有超越人的能力,這種自我學習的演算法極其重要。

這三點對於商業活動其實也是非常重要的,我們可以瞭解到現有成功的人工智慧應用,都有高質量的資料、優良計算架構和自我學習的閉環的能力。

人類在學會自行車後,再學摩托車就非常容易了;看了一兩張圖片,就可以把它擴充套件到許多其他不同的景象。我們能把我們過去的經驗帶到不同的場景,這樣就有了一種能夠適應新環境的能力。

機器如何才能也具有這種能力呢?楊強教授表示人類有一個訣竅,而這個訣竅可以應用到機器學習中——即遷移學習的要素——就是發現共性,發現領域之間的共性。如果一旦發現了這種關鍵的共性(共同特徵)遷移學習就變得非常容易。

為什麼我們需要研究遷移學習?

  • 首先,生活上我們遇到更多的是小資料,而在小資料上學習的模型,才是真正的智慧。

  • 第二,我們希望構建的系統不僅在那個領域能夠發揮作用,在其周邊也可以發揮作用。即我們希望系統是可靠的,其可以舉一反三和融會貫通,這也是我們賦予智慧的一種定義。

  • 第三,我們希望更重要的是如何能夠把一個通用的系統加上個人的小資料,而遷移到個人的場景當中去,因此我們可以向個性化方向發展。遷移學習就是一個必不可少的工具。

但遷移學習為什麼如此難以實現?因為即使是人類也很難發現這些共同點。

遷移學習的進展

楊強教授下面接著給大家介紹了一下,遷移學習最近有哪些進展。

第一個進展,即如果我們面臨一個機器學習問題,那麼可以通過把問題的結構和內容分離開來而發現不同問題之間的共性。雖然這種方式並不容易,但一旦能夠完成地話,系統舉一反三的能力就非常強了。blob.png

以上是2005年《Science》的一篇文章,有三個研究者在手寫字型識別上將結構和手寫的方式、斜體字等各種寫法區分開。他們發現,在學習結構這一方面,用一個例子就可以實現,這也稱之為單個例學習。

第二個進展,是因為過去我們在學習方面太注重發現共性本身,但是卻沒有注意在不同的層次之間發現這些共性。因此,如果我們把問題分解為不同層次,那麼層次化的系統就更容易幫助我們構建機器學習的遷移。

在影象識別上,如果我們把分類改變,那麼傳統的機器學習就需要用大量資料重新訓練,花大量時間訓練一個新的模型。但是現在利用這種層次型的遷移學習,我們會發現,不同的層次具有不同的遷移能力,這樣遷移能力就有了一個定量的估計。所以,當出現新的問題時,我們就可以把某些層次給固定住,而將其他的區域用小資料訓練。這樣就能夠達到遷移學習的效果。

第三個進展,過去的遷移學習,往往是有一個領域已經做好了模型,而我們的目的是要把它遷移到一個新的領域,從舊領域遷移到新領域,從一個多資料的領域遷移到少資料的領域,這種叫單步的遷移。但是我們現在發現,很多場景是需要我們分階段來的。比如說我們分四年去上大學,因為我們需要把我們的知識進行分段學習,以一個課程為基礎轉到下一個課程。blob.png

用這個思想,我們也可以進行多步傳導式的遷移,比如說我們可以建立一個機器學習的深度網路,這個網路的中間層即能夠照顧目標問題領域,又能照顧原領域。

第四,學習如何遷移。這20年中,我們積累了甚至上百種遷移學習的演算法,但現在有一個問題,即當遇到一個新的機器學習問題時,我們不知道到底該用哪個演算法。其實,既然有了這麼多的演算法,有了這麼多的文章,我們可以把他們這些經驗總結起來,用來訓練一個新的演算法,這個演算法它的老師就是所有這些機器學習演算法和資料。所以,這種學習如何遷移,就像我們常說的學習如何學習,這個才是學習的最高境界,就是學習方法的獲取。

第五個進展,即把遷移學習本身作為一個元學習(Meta Learning),然後再賦予到不同學習的方式上。也就是在當前機器學習的問題或者是模型上面加一個遷移學習的模式,而變成一個遷移學習的模型。這種加一個模式的辦法就是元學習。假設我們有一個強化學習模型,我們在上面做一個“外套”,就能把它成功變成一個遷移學習模型。

最後一個的進展,就是用資料生成式的遷移學習-GAN

我們可以通過簡單的類比來理解生成對抗網路:即兩個人比賽,看是 A 的矛厲害,還是 B 的盾厲害。比如,我們有一些真實資料,同時也有一把亂七八糟的假資料。A 拼命地把隨手拿過來的假資料模仿成真實資料,並揉進真實資料裡。B 則拼命地想把真實資料和假資料區分開。
這裡,A 就是一個生成模型,類似於賣假貨的,一個勁兒地學習如何騙過 B。而 B 則是一個判別模型,類似於警察,一個勁兒地學習如何分辨出 A 的騙人技巧。如此這般,隨著 B 的鑑別技巧的越來高超,A 的騙人技巧也就越來越純熟。一個造假一流的 A,就是我們想要的生成模型。

最後楊強教授說,我們在深度學習上已經有了很大的成就, 而我們今天在努力進行各種嘗試,在強化學習,比如說AlphaGo,但是楊強教授認為機器學習的明天是在小資料、個性化、可靠性上面,就是遷移學習的發展。