楊強教授漫談《西部世界》、生成式對抗網路及遷移學習

第四正規化發表於2017-05-05

演講時間:5 月 28 日,9:40-10:10 AM

演講主題:遷移學習研究

本篇文章轉自第四正規化公眾號,內容根據楊強教授的演講編寫。楊強教授為第四正規化首席科學家,華人界首個國際人工智慧協會AAAI Fellow、唯一的AAAI 華人執委。在今年 5 月份機器之心 GMIS 2017 大會上,楊強教授將就遷移學習這一主題分享更多精彩的內容

以下內容根據楊強教授演講編寫,略微有所刪減。

有些人看過電視劇《西部世界》—在《西部世界》裡,你可能問的一個關鍵問題是什麼?就是當劇中的人們,其中任何一個人走到你面前,你能否區分出他/她是個真人? 你會問:咦,這不是圖靈測試要解決的問題嗎? 是的。 問題是,如果《西部世界》裡的這些機器人已經通過了圖靈測試,你又如何區分他/她們呢?

要解決這個問題,除了用“一槍把對方打死,然後看對方是否真的死了”這個極端的檢測方法以外,還有什麼更好的方法呢?這裡有些劇透,答案是:拍蒼蠅。當一個蒼蠅飛到一個“人”的臉上,如果這個人沒有感覺,不會去撥開或拍打蒼蠅,他/她很可能就是機器人。結果因此還引發了一件趣事,去年美國大選的時候,希拉蕊在講臺上面,一個蒼蠅飛到她臉上,她沒有搭理,後來有人就說:糟了,我們要選一個機器人當總統了!那時《西部世界》恰好正在熱播。

言歸正傳,從人工智慧的角度,“拍蒼蠅”這個例子,說明什麼呢?它告訴我們有一些關鍵特徵可供識別真人亦或機器人,但要找到這些關鍵特徵並不容易。對《西部世界》而言,你得把整個劇看完才能知道。也就是說,你不但要有大量資料的訓練,而且得知道劇裡的機器人的製造原理,這樣才能找到這個重要特徵。那麼問題來了:如果作為“遊客”,我們對這個機器人的構造知道甚少怎麼辦?

要回答這一點,我首先要給大家講一下概率模型的不同型別。概率模型是貫穿整個機器學習的主線。下面PPT上的這兩張圖是對一個女孩的素描,我們在素描裡面可以看到很多的特徵,比方說比較飄逸的筆畫、或者是適合女性顏色等。我們把上面的問題簡化一下:如何能夠通過辨別這些體徵、從而認出來畫上的是男是女?

楊強教授漫談《西部世界》、生成式對抗網路及遷移學習

這裡我要介紹一個“生成”模型的概念。 在某個關於“人”的樣本集裡面找到某一個高概率的樣本,我們認為這個樣本很可能對應我們對“人” 這個概念的認識。然後我們根據這個樣本來做完形填空或著彩。在小學中學我們經常做的一種題就是填空。其實,生成樣本的過程和填空很相似:當我們看到這張畫要給它著色時要選擇顏色和圖案,是因為這些選擇符合“人”的概率分佈。

再具體一些:如果資料是(X,Y),這裡我們用X這個變數來代表筆畫和顏色,Y這個變數來區分男女,那麼這個概率資料是遵循一定分佈規律的。但問題是,如何才能得到這個資料的分佈?在現實中,做到這一點是非常難的,因為這需要我們獲得概率的“聯合分佈”,就是所有顯式和隱式的特徵和它們所有可能取值的概率。知道了這個概率,生成某個樣本就很容易了。 在機器學習的歷史上, 關於要不要首先獲得“聯合分佈”這個問題,有著很多的爭論。比方說,有貝葉斯流派,就說:“是的,我們需要這樣一個聯合分佈”。而深度學習流派,或者是SVM等演算法對應的這些流派,就說:既然我們的目的是分類,那用簡單的演算法就可以了,所以”不需要”。 得到一個聯合概率分佈是非常非常難的事情,因為需要因果關係的知識,還需要很多先驗概率。

生成模型是很有用的。比如說,我們在一幅畫上如何確定這樣著色是有意義的,但那樣做是沒有意義的?除了在畫作上,在音樂作曲的問題上也是如此:如何做一首動聽的曲子?為什麼有的曲子就很好聽,有的就很難聽?這些任務,其實都是在做“生成”的工作。我們為什麼很尊敬某些作曲家、電影導演、作家?  作為觀眾,我們去看電影很容易,但是讓自己去做導演,做編劇往往就覺得很難。 這是為什麼呢? “聯合概率模型”的學習過程就幫助我們回答了這樣一個問題。問題是:學習如何產生一個聯合概率模型,需要大量的高質量資料來訓練。真正能瞭解真實概率生成機制的只有少數人,即那些機器人的設計者。這也和我們的常識是一致的: 只有少數人能夠成為好的作家,只有少數人能夠成為好的詩人,而要做到這一點需要遵循所謂的“一萬個小時定律”。 

楊強教授漫談《西部世界》、生成式對抗網路及遷移學習

因為生成式模型很難估計,所以,我們在機器學習中更多的是使用“判別式機器學習模型”的。這種模型和“生成式概率模型”是有一個本質的區別的。 我們過去熟悉的模型如邏輯迴歸,SVM和深度學習等,多是判別式模型。就是:給你一個樣本,模型不關注樣本是怎麼“真正”生成的,也不關心樣本構造的真實因果關係和概率值, 而是直接判別樣本屬於哪一類。 我們可以管這種判別的方式叫做“懶人主義”。 相反,生成式模型可以被認為是一個“完美主義。”  什麼是完美主義呢?我們要去判別一個事,從它最原始的那個點開始分析,產生先驗概率分佈,然後根據因果關係一直推到可觀察的樣本分佈,最後再得到樣本。這樣,一旦得到整個聯合概率分佈,就可以對缺失資料和未來的事件做出準確的預測。 所以,到了完成了這個聯合分佈的學習時,我們機器學習的工作就做的差不多了。

生成式模型和判別式模型的區別很像人和機器的區別:機器採取的是完美主義,因為它可以不斷優化,追求極致。而人不會如此,人是夠好了就滿足了。從這一點上來說,人完全沒有必要和阿爾法狗去比賽,因為這是不明智的。我們人類的構造不是幹這個的,我們的構造是能把一件事給做完了。比方說,人應該去比的是你有多快能學會下圍棋,並從中得到多少樂趣。而把圍棋下的極致這件事是機器擅長的。

有沒有辦法,利用有限的資料,通過不斷提高的方式,建立一個生成式模型呢?Ian Goodfellow提出了一種新的方法,很值得我們思考: 他的設想是用一個生成式模型(Generator)來生成模擬樣本,再用一個判別式模型來區分這個生成的樣本是否真實,這樣的一對系統,可以互相對弈,共同提高。 以作畫為例。 假設我們的目的是設計一臺機器人來模擬大師們的畫作。 最開始,機器人先通過生成式模型完成某個畫作。 這幅畫可能很差,離大師的水平差的很遠。如果這個時候有一個評論員(判別式模型)來告訴機器人這幅畫的缺點,那機器人就可以在下一幅畫中加以提高。如果評論員自己犯了錯誤,沒認對,那機器人就可以告訴評論員如何提高鑑賞能力。 評論員總是在問這樣一個問題:這幅畫是大師畫的還是機器人畫的?如果判別式模型可以準確地辨認出來是機器畫的,那說明這個生成式模型還不夠好,如果判別不出來,就說明畫作已經能夠以假亂真了,而判別式模型就有待提高。這裡,生成式模型和判別式模型,利用不斷反饋,實現相互提高。

楊強教授漫談《西部世界》、生成式對抗網路及遷移學習

這讓我們想起了圖靈測試——計算機和裁判聊天,他們互相看不到彼此,如果在溝通的時候,裁判無法辨別哪個是計算機,“人工智慧”在它身上就實現了。這個雙機結構和圖靈測試不同的地方就是,機器和判官都可以學習,不斷提高,最後兩者都可以達到最好

這樣,就把我們帶到“生成式對抗網路” (GenerativeAdverserial Network, 或者GAN)這個概念。如下圖所示, 我們有兩個系統,在互相對抗, 兩個系統都試圖優化自己的目標函式。第一個系統對應判別式模型D: 判別式模型D在試圖識別到來的樣本是否是自然真實的;它在儘量增大對真實樣本的識別率同時減少對模擬生成的樣本的誤判率。另一個系統則對應著生成式模型G:G希望它生成的模擬樣本可以在D那裡魚目混珠。 所以G試圖最大可能地模擬真實的樣本。 判別器D從判別角度來說,判別的越好,D的目標實現的就越優 。但對於生成器G來說,它要最小化(minimize)對方的優化函式,這就相當於最大化(maximize)它自己的優化函式。這個過程就像G和D在下棋一樣(如下圖的博弈樹)。在這個樹裡有兩個棋手,一個在不斷更新判別器,一個是在不斷更新生成器。把這兩個合併起來,叫做Minimax演算法,這是利用AI下棋的一個基本演算法。在這裡,就是G和D兩個系統在競爭中不斷成長,最後兩個都達到最優。

楊強教授漫談《西部世界》、生成式對抗網路及遷移學習

這個互動過程到底能不能同時優化兩個目標?GAN的發明人Goodfellow有以下的解釋。訓練過程如下圖所示,假設黑色的點是真實樣本的分佈,綠色的線是根據生成模型產生的生成的樣本的分佈,那麼GAN網路就是在把生成的樣本的概率空間對映到真實樣本空間裡,再去加以對比。這樣得到的結果與真實情況會存在偏差,而根據這樣的反饋,生成的樣本的資料分佈不斷得到調整,直到和真實分佈重合為止。這時,判別式模型G就分不出來真假資料,而學習任務就完成了。

楊強教授漫談《西部世界》、生成式對抗網路及遷移學習

那麼,有沒有理論來證明以上這個博弈學習互動過程會最終得到令人滿意的結果呢?我們看看下面這個定理:

楊強教授漫談《西部世界》、生成式對抗網路及遷移學習

這裡給大家翻譯一下這個公式:

如果G是丈夫,D是妻子,妻子訓練丈夫做家務。妻子不斷指出丈夫的不足之處,以此希望丈夫提高自己。丈夫呢,有時他提高的辦法是試圖猜出妻子滿意的家務到底是什麼,就不斷的試驗。但一開始結果可能和妻子的需求不一樣,然後得到一頓狠K。所以在提高如果夫妻兩人同樣好學,妻子能不斷指出丈夫的錯誤,而丈夫也不放棄,一直很努力,那麼這對夫妻就會一起進步,一直達到一個共同的最優值,這個家庭也就美滿了。

那麼這個定理到底是不是靠譜呢?因為它有很多的限制條件,這些條件在現實中都很難成立,所以我們只能通過實驗來驗證。比方說,我們可以使用手寫識別的資料集MNIST和影象識別的資料集TFD來驗證,最後發現GAN在集種不同的演算法裡面的得分是最高的!

楊強教授漫談《西部世界》、生成式對抗網路及遷移學習

 利用GAN也可以讓電腦學寫字。在訓練好的時候,這些GAN寫的文字幾乎可以以假亂真。但它也有做不好的地方,比如說在一些複雜的影象中做出來的就是相當模糊的。我們後面會討論,這是因為GAN在資料集之間的“距離”的概念還沒有學好。

楊強教授漫談《西部世界》、生成式對抗網路及遷移學習

我們接下來要問:樣本到底是怎麼產生的?一個簡單的辦法是“猜測”: 我們首先可以假設一個真實的概率分佈是按照某種形式來分佈的, 然後按照這種形式隨機地產生一個樣本。這樣的結果如果不好,那就回來修改這個分佈假設。但是,這種猜的辦法質量低,速度慢,結果不靠譜。

那要怎麼辦呢?假設我們有一張很大的畫,我們要把它壓縮一張小畫,一般是怎麼做的呢?我們大家可能用過雙筒望遠鏡。這個望遠鏡可以反著看,就會看到小版的畫面,這個就相當於把一大塊數字壓縮成一個數字,這個過程叫做convolution(卷積),卷積神經網路就是在做這件事情。那如果我們正著看望遠鏡,會把一張畫放大,我們會看到畫作當中的某一個部分,這個過程就相當於從一個或幾個數字產生了整個矩陣,這也就是“生成”的過程,即生成式模型在做的事情。理解了這個原理後,基於深度學習和卷積,我們把整個網路反過來,相當於正著用望遠鏡,把壓縮的圖形一步一步放大,最後形成了一個復原的樣本,它叫“轉置卷積(Transposed-Convolution)”, 這個產生樣本的方法叫做DCGAN。比方說,可以通過幾個例子的訓練之後,用來產生新的中文字。還有一些漫畫的社群也開始用這個網路,來自動生成漫畫的影象。

楊強教授漫談《西部世界》、生成式對抗網路及遷移學習

當然,還可以用DCGAN網路來分類,用它的判別式模型部分來做分類這件事。這就好像用大炮打蚊子是沒有必要的,但用大炮裡某個部件(即判別式模型)打蚊子,確實要比用大炮拍打蚊子要打的好。所以,我們取出一塊深度網路中的一部分來分析,發現它確實可以幫助找到非常關鍵的一些資料特徵,而且用它來做分類的效果就比其他的辦法要好很多。再回到西部世界的那個例子,看“蒼蠅趴在臉上,人的反應”這個特徵,就可以被找出來了。

有了GAN這個方法,我們可以對任意樣本做向量化,從而加以比較。比方說,我們可以比較“蘋果”和“橘子”,看它們的距離到底是不是比“蘋果”和“香蕉”近一些? 我們知道在自然語言界有一個技術叫Word2vec,從文字到向量表示(Embedding),是一個連續實數向量。它可以做什麼呢?比方說它認為,v(“woman”)-v(“man”)+v(“king”) =v(“queen”),即女人減去男人,再加上一個國王,相當於把女人的特性賦予國王,這個國王對應的就應該是女王,這個過程做類比。類比是怎麼產生的呢?在高維空間,大資料會表明,這兩個字的用法差不多,它們的距離很近。而GAN網路也可以做這件事情,比方說這個男的戴墨鏡,減去一個男的再加一個女的,就變成了一個女的戴墨鏡,這個是可以用GAN可以做的,很神奇。

楊強教授漫談《西部世界》、生成式對抗網路及遷移學習

但是這樣設計的系統還是有一些缺點。 比如,如果我們稍微換一換模型的引數,模型效果就會急劇變差。這說明,直接用DCGAN建立的模型不大可靠

怎麼解決這個問題呢?我們在開始講過,GAN的思想就是不斷修改生成式模型使得模擬的概率模型儘量接近實際的概率模型。所以,可靠性問題的實質就在於:如何可靠準確地測量兩個概率分佈之間的距離。 這裡有一個新的技術叫Wasserstein GAN。 因為傳統的生成式模型的目標函式通常都是優化KLdivergence, GAN的目標函式在優化JS divergence.  但這兩個距離都有缺點:就是不能準確表達所有分佈之間的距離。所以有人提出一個更靠譜距離表達,叫做Wasserstein距離,外號叫“土地挖掘機” (Earth-mover),就是給你一個土山,那麼如果你用挖掘機在這一座山,去複製另一座山,問你需要花多大的力氣 — 這個移動土地的費用就是Wasserstein 距離,簡稱W距離。如果兩座山的形狀完全一樣,那麼就不需要任何費用。 如果兩者完全不同,那麼就需要很多的費用。

楊強教授漫談《西部世界》、生成式對抗網路及遷移學習

如果換成這個W距離來測量概率分佈就好得多。比如說,給定兩個資料集的分佈,其中一個是真實的新聞分佈,一個是假新聞的分佈。如果用KL或JS距離來表達,結果都不夠好,會得到一個是無窮大,一個是一個常數。用這樣的距離就沒有辦法識別真、假新聞了。 但如果我們用了W距離,得到的會是一個連續可導的距離。所以,用W距離來設計GAN (WGAN) 就靠譜多了。

生成式對抗模型(GAN)可以做哪些事呢?它可以做模型的解釋,做影象分析和自然語言分析。還可以再加上一些新的邊界條件,用來做遷移學習。

楊強教授漫談《西部世界》、生成式對抗網路及遷移學習

上面這個例子,是把一個模糊影像變到清晰影像的任務,模糊影像的模型是有很多的不確定的地方。把一幅畫變為清晰的過程,就是在一個矩陣裡面找到丟失的值,並且把它用真實值填滿;這個事和我們第四正規化做推薦系統的概念是一樣的。

再者,就是可以用GAN來很自然地實現遷移學習。比如說, 如果我們又一個很好的生成式模型,在某個資料集上已經訓練好了,如果有一些新的資料,和前一個資料集有明顯的區別, 那麼我們可以利用“GAN+邊界條件”,把生成式模型“遷移到” 新的資料分佈上。比方說,我們寫字的時候,每個人簽名都是不同的,我們不會用印刷體來簽名,因為我們每個人都有自己的寫字的特點。那麼,如果用大量的印刷體字作為第一部分的訓練樣本,來訓練一個不錯的通用模型,而用某個人手寫的斜體字做第二部分的訓練樣本,就可以利用WGAN把印刷體的模型遷移到個人的簽名。也就是說,這樣的簽名也就更具個性化特點

所以說,即使源資料和目標資料在寫法上、顏色上有一些區別,GAN的模型可以實現遷移學習的目標

這裡還有一個遷移學習的例子:在領域適應(Domain Adaptation)的問題中,在目標領域沒有任何的標註,所有的標註都在源領域。 GANIN等人設計了一個類似於GAN的模型,在源領域用標註資料來做標註資料的分類,同時連線到一個“領域判別器”來區分輸入的資料,看資料是來源還是目標領域。 這個過程進行到最後,當領域判別器可以很好地區分資料來自哪個領域,就說明神經網路的中間層學會兩個不同領域的相同特徵部分了。這個時候,遷移學習的目的就達到了。



楊強教授漫談《西部世界》、生成式對抗網路及遷移學習

 總結起來我們看到,生成式對抗網路是一個新的機器學習的思想。它是由兩個模型共同產生的——就像是兩個學生同時成長,一個學生專注於生成樣本,一個學生專注於判別真假,他們來互相促進。同時,生成式對抗網路也存在一定缺陷,首先它需要的資料量還是很大的;此外,理論的指導還是比較缺乏。

楊強教授漫談《西部世界》、生成式對抗網路及遷移學習

最後我們還回到《西部世界》的場景。這個電視劇的一條主線是對機器人(或人類)的智慧成長的路徑,電視劇的後面幾集提出了一個重要的思想:“二分心智”(Bicameral Mind)。這是個關於人類智慧的發展的假說:提出大腦中的智慧和意識的發展,是通過兩個獨立的智慧體的不斷對話和學習來實現的。也就是我們常說的 “腦袋裡的兩個小人在打架”。這個二份心智理論曾經在心理學界大行其道。

我們看到,生成式對抗網路GAN的模型,和這個“二分心智”的理論有些不謀而合:它們都是認為智慧應該是能夠不斷學習提高的,都提出:智慧成長的機制是由兩個互動的系統來相互刺激。在GAN這個模型中,這兩個機制分別是生成式模型和判別式模型。 在《西部世界》裡,這個刺激來自很多的苦難和創痛,讓機器人Dolores 和她的同伴們經歷了很多痛苦艱難的事情,最後刺激讓她/他們產生了“二分心智”,也就產生了意識。 就像這幅圖中的兩個Dolores在對話所表現的那樣, 最終導致機器人們產生了意識 。

楊強教授漫談《西部世界》、生成式對抗網路及遷移學習

當然,在生成式對抗網路GAN的學術方向上,並沒有涉及到“意識的生成”這個問題, 實際上,整個人工智慧的發展都還沒有涉及到“意識”的概念。 但是,通過GAN來理解的“二分心智”, 以及“我們可以借兩個對抗系統提高智慧”這件事,還是非常有趣的!

相關文章