悉尼大學陶大程:遺傳對抗生成網路有效解決GAN兩大痛點
來源:新智元
本文共7372字,建議閱讀10分鐘。
本文為你整理了9月20日的AI WORLD 2018 世界人工智慧峰會上陶大程教授的演講內容。
[ 導讀 ]悉尼大學教授、澳大利亞科學院院士、優必選首席科學家陶大程博士指出,人類具有感知、推理、學習和行為四個方面的智能,AI的終極目標就是讓機器具備和人類一樣的智能。在9月20日的AI WORLD 2018 世界人工智慧峰會上,陶大程博士介紹了他的團隊在這四個方向上取得的重大進展。
悉尼大學教授、澳大利亞科學院院士、優必選人工智慧首席科學家陶大程博士在9月20日的AI WORLD 2018世界人工智慧峰會上發表《AI破曉:機遇與挑戰》的主題演講。
陶大程表示,人工智慧的目標是在機器上實現類似人的智能。人有四個方面的智能:Perceiving、Learning、Reasoning和Behaving。他的演講圍繞這四個方面展開。
Perceiving包含了很多方面:物體檢測、目標跟蹤、場景分割、關鍵點檢測、人臉圖像分析等等。但是高性能perceiving還依賴於高質量的數據輸入。如果輸入圖像或者視頻受到雜訊、湍流、模糊、霧、低解析度等因素的影響,就需要提升數據質量。
在learning方面,陶大程博士介紹了多視角學習、多標籤學習、adversarial domain generalisation、tag disentangled GAN等等。尤其是遺傳對抗生成網路(Evolutionary GAN)有效的解決了傳統GAN網路學習的兩個痛點:
訓練不穩定性。
模型塌縮。這個工作也被麻省理工學院技術評論(MIT Technology Review)評選為熱點論文(The Best of the Physics arXiv)。
另外受到資訊理論中數據處理不等式的啟發,陶博士和他的學生們在理論上解釋了深度學習中兩個備受關注的問題:
為什麼模型複雜度非常高的深度神經網路,不會發生過擬合?
深度神經網路是越深越好嗎?
最後,陶大程博士介紹了優必選悉尼大學人工智慧研究院在reasoning和behaving方面的一些進展。他的團隊最近在visual question answering(VQA,看圖回答問題)和visual dialog(看圖對話)的國際比賽中都取得了非常不錯的成績。
目前陶大程博士的團隊努力在人形機器人上實現示教學習(imitation learning),希望不久的將來能夠實現:機器人通過攝像機來理解人的行為,模仿人的行為,並且最終有效的和人進行互動。
以下是我們整理的陶大程教授的演講內容:
非常感謝新智元邀請我來跟大家分享一下,過去這兩年我們在人工智慧領域裡做的一些工作。
首先請大家看這張照片。我這裡想問大家一個問題,這張照片中有多少人?回答這個問題不難,但是要花很多時間。我們如果一個個人的去數,那麼大約用一個小時的時間,我們可以知道這裡有差不多900多個人。
如果用我們的人臉檢測技術,在有GPU顯卡的台式機上,只用三秒鐘就可以得到差不多的結果。這看起來是個很簡單的任務,但對於計算機來說並不總是那麼一帆風順。2017年,我們的演算法大概能檢測七百多張人臉,然後到八百多個,到現在九百多,接近人的效果。另外我們發現,用計算機檢測到的人臉實際上還有助於人去發現一些人剛開始沒有看到的人臉。這也從一特別的角度說明了,人工智慧能夠擴展人的智能。
人工智慧的目標:在機器上實現類似人的智能
什麼是人工智慧?人工智慧就是機器所展示出來的智能,所以可以叫做「機器智能」,以區別人所展現出來的智能。人有四個方面的智能:Perceiving、Learning、Reasoning、以及Behaving。人工智慧的目標就是讓機器實現、模擬人的智能。我們期待有一天,機器也能夠像人一樣去感知世界,去學習、推理,去做出相應的一些反應。因此,我們需要讓人工智慧具有這四個方面的能力。
這個視頻展示了我們在人工智慧領域裡面的一些核心技術,包括目標檢測、(單、多)目標跟蹤、目標分割、特徵點檢測、人體姿態估計、表情分析、年齡估計、單攝像機深度估計等。
為什麼今天大家都在談人工智慧?因為我們有大數據,有超強的計算伺服器,因此相對於很久之前,我們現在有能力有效地去訓練超大規模的模型。雖然很久之前,多層神經網路已經出現,但是受制於數據和計算能力,一直沒有能夠得到很好的推廣。更重要的是,我們目前有大量的來自產業界、學術界、以及政府部門的實際需求。這些真正促成了今天的人工智慧的再一次爆發。產業界的迫切需求也極大地推動了學術界對人工智慧的投入。
今天,我講介紹一下我們在perceiving(感知)、learning(學習)、reasoning(推理)和 behaving(行為)四個方面的進展。
感知任務基礎:物體檢測與目標跟蹤
物體檢測是perceiving中的一項基本任務。現有的兩階段目標檢測器取得了非常好的效果。首先生成區域候選框,然後對這些候選框進行調整。調整過程會更新後續框的坐標並預測物體的類別。但是,不準確的候選框有可能會導致不正確的檢測結果。
為了解決這個問題,我們提出了基於上下文的調整演算法。具體的講,我們發現對於一個檢測框,它周圍的檢測框常常提供了對於要檢測物體的補充性信息。
因此,我們嘗試從周圍檢測框提取有用的上下文信息用來改進現有的調整演算法。在我們提出的方法里,我們會基於一個加權過程來融合提取出來的上下文信息。最後,利用融合後的上下文信息以及相應的視覺特徵,我們提出的基於上下文的候選框調整演算法能實質性地改進現有的調整演算法。
舉個例子,如圖所示,其中一個鶴的候選框都不是很理想:藍色、黃色、紅色三個框,每一個框都只包含了鶴的一部分信息。通過我們提出的基於上下文的候選框調整演算法能有效的把包含鶴的不同的部分的候選框的信息整合起來,形成一個完整的候選框。
有了完整的候選框,可以有效的提升檢測率。
目標跟蹤是perceiving中的另一個非常基本的任務。單目標跟蹤的困難來自於物體在運動過程中,形態由於geometry/photometry、camera viewpoint和illumination的變化、以及部分遮擋會發生強烈的變化。多目標跟蹤更為困難,除了單目標跟蹤遇到的困難,還需要區分物體的數量,以及不同的id。
因此在非受控的環境中做長序列的跟蹤非常困難。由於深度學習在目標跟蹤中的使用,目前tracker的性能已經得到了很大的提升。這主要是由於深度學習能夠有效的給出被跟蹤物體的本源表徵,因此對於各種變化、遮擋都有很好的對抗能力。這個籃球球場中的多球員跟蹤就是很好的例子。
感知任務進階:解決單目深度估計的病態問題
單目深度估計是一個病態問題,因此極具挑戰性。這個任務期望從單張場景圖中還原出像素級的深度值,且在3D場景幾何理解中扮演著關鍵角色。為什麼這是一個病態問題呢?舉個例子,假設三維空間中有一條線,然後我們可以把它投射到一個平面上。在投射的平面上,我們可以看到一條直線,但是我們無法確認,在原始的三維空間中,這條線是直線還是曲線?可是實際中,我們卻可以根據圖像的信息來估計深度信息。
比如這張圖中,人的身高在原始圖像中,大約是三厘米,但是你絕對不會認為這個人的身高在三維實際空間中就是三裡面。根據常識,我們都知道,成年男子身高大概在175到180厘米左右。
根據簡單的幾何變換,我們就能夠估計到這個人到攝像機的距離。圖像中還有很多的信息能夠幫助我們估計像素的深度信息,比如陰影、色彩的變化、layout、地面等等。關鍵的問題是,我們應該如何設計特徵,然後用合理的統計模型來估計每一個像素的深度。
很久之前,研究人員用handcrafted特徵結合MRF(馬爾科夫隨機場)來完成這個任務。雖然傳統的MRF模型的預測效果不令人滿意,但是已經存在的結果告訴大家這個問題不是完全不可解決的。
最近的方法通過探索深度神經網路(DCNN)的多層次情景語義信息在這個問題上取得了顯著的進步。然而,這些方法預測出的深度值任然是非常不準確的。
幾個可能的原因是:
由於深度分布的極端複雜性,在標準的回歸範例下學習深度分布是很困難的。
之前的工作在建模時都忽略了深度值之間的有序關係。
圖像級和多尺度信息目前還沒有被充分發掘。
受這些現象的啟發,我們首先將深度估計問題轉化到離散範例上來解決,其次通過提出一個順序回歸約束以此為深度預測引入排序機制,最後設計一個有效的多尺度深度網路來實現更好的情景語義信息學習。我們的模型(DORN)不僅在四個非常有挑戰的數據集(KITTI, ScanNet, Make3D 和 NYU Depth v2)上的效果遠超同行,並且贏得了 Robust Vision Challenge 2018深度估計項目的第一名。
目標姿勢估計與預測
預測一組語義關鍵點,例如人類身體關節或鳥類部位,是圖像理解領域中重要的一項技術 。物體的關鍵點助於對齊對象並揭示它們之間的細微差別,同時也是計算機領會人類姿態的一項關鍵技術。儘管這項技術近年來取得了重大進展,但由於物體外觀差異大,姿勢變化和遮擋等情況,關鍵點預測仍然是一項重大挑戰。
目前基於CNN的關鍵點定位方法使用置信度圖監督關鍵點檢測器, 但由於不同圖片中關鍵點的檢測難易程度不同,使用同等程度置信度圖可能會不利於關鍵點檢測器的學習。
為了解決關鍵點定位的魯棒性問題,我們提出了一個粗細監督網路(CFN)深層卷積網路的方法。該方法使用全卷積網路,利用幾個不同深度的分支來獲得分層特徵表示。並根據其感受野不同,使用粗細不同的監督信息。最後聯合所有分層特徵信息來實現目標關鍵點的精確定位。我們通過鳥類部位定位和人體姿態估計的不同任務實驗證明了該方法的有效性和通用性。
要想成功的完成剛才說的這些perceiving的任務,我們都需要假設我們所獲取到的圖像都是高質量的。但是在實際問題中,我們獲取到的圖象有可能會受到一些影響,導致數據質量比較差。因此我們要解決圖像質量評估,根據圖像質量評估的結果,我們還要有有效的模型對圖像的質量進行提升,比如denoise、deblur、去除介質湍流的影響、提升低解析度圖像的解析度、去霧,等等。
最近很多人都有一種感覺:深度學習一統天下。要解決實際問題,就是想辦法把不同的網路層堆積起來、把網路不斷加深,然後調參就好了。事實上,沒有這麼簡單。要有效的解決實際問題,不僅我們要理解深度學習、知道該如何有效的調參,還有熟悉傳統的統計機器學習、經典的計算機視覺,更要對問題有深刻的理解,知道如何構建有效的學習模型,當然是深度的學習模型。
在learning這個方向上,我們也做了很多工作:快速矩陣分解、多視角學習、多任務學習、多標籤學習、遷移學習、有標籤雜訊的學習、生成對抗網路、深度學習理論,等等。時間原因,我簡單的介紹一下,我們最近在多視角學習、生成對抗網路和深度學習理論上的一些工作。
多視角學習:面向決策策略的「盲人摸象」
大家都知道盲人摸象的故事,實際上我們做決策的時候,跟盲人是一樣的,因為我們所獲取到的信息也是不完整的。那麼我們在做覺得時候,也就是根據已有的信息作出的最優策略。因此,對於同樣的事情,每一個人所作出的決定可能也不相同。
多視角學習對於現今的智能系統非常重要,這是因為智能系統中都安裝了大量的感測器,比如,現在的無人車安裝了激光雷達、毫米波雷達、攝像機、IMU等等。每個感測器都只能夠感知環境中的部分信息,那麼我們就需要把不同的感測的信息融合起來,幫助我們做最後的決策。
假設存在一個oracle space,那麼每個感測器就可以被建模成對oracle space的一個線性或者非線形投影。如果我們有大量的感測器,那麼我們就能夠獲取大量的投影信息。我們可以證明,如果說我們有足夠多的不同的投影信息,我們就能夠以非常高的概率去重構這個oracle space。有了這個oracle space,我們就可以有效的做決策了。
請大家看一下最左邊的這張圖像。你第一眼看到了什麼?大多說人一定會說是船。然後你還會注意到船上有人。對不對?這個現象提示我們,這樣的順序信息對於我們進行多標籤學習會非常有幫助。通過增強學習,我們可以有效的學習這個順序,來提升增強學習的效率。
我們今天所面臨的學習問題可能是這樣的一個情況:訓練數據和測試數據來自不同的感測器或者信息域。這就是domain generalization要解決的問題。因為訓練數據和測試數據來自不同的域,我們就需要找尋一些特徵:這些特徵在訓練數據上和測試數據上,對於完成我們的規定任務來說都是有效的。
人可以很輕鬆的做到這一點:我兒子3歲的時候,我給他看過長頸鹿的卡通畫片。當我帶他去動物園的時候,他可能很輕鬆的認出真正的長頸鹿。可是在這之前,他從來沒有見過實際場景中的長頸鹿。我們當然希望計算機也具備類似的能力。這裡我們利用GAN網路(對抗生成網路)能夠有效地學習這樣的不變特徵。
我們提出了一個端到端的條件對抗域自適應深度學習模型來學習域不變的特徵,該模型同時衡量分布P(Y)和條件概率分布P(X|Y)的不變性。該網路框架包括了四個部分。第一部分AlexNet用來學習域不變的特徵。第二部分是圖像分類網路,用來保證學習的特徵具有良好的類別區分性。
特徵的域不變性質利用類別先驗歸一化域分類網路和類別條件域分類網路保證。其中類別先驗歸一化域分類網路用來匹配不同域的類別先驗歸一化分布,該網路的主要目的是消除不同域之間的變化。其次,類別條件域分類網路用來保證對於每一類的分布匹配。這樣就能夠保證不同域的聯合概率分布是匹配的。在不同標準數據集上得到的實驗結果證明了我們方法的有效性,並且要比現有方法有顯著的提高。
TD-GAN新框架,解決深度學習的可解釋性問題
最近大家開始關注學習的可解釋性。我們用GAN網路可以學到特徵來生成我們需要的數據。可是這些特徵的含義是什麼?我們並不清楚。
通過模仿人類理解世界的方式,我們希望計算機能夠從這個複雜的世界中學習到抽象的概念,並根據這些概念創造新的東西。因此,我們需要計算機能夠從真實世界圖像中提取到可分解的特徵,例如照片中人物的身份,拍攝角度,光照條件等等。這個就是tag disentanglement。有了可分解的特徵,我們也能很好的解釋我們學習到的特徵到底是什麼物理含義。
我們提出了一個新的框架(TD-GAN),用於從單個輸入圖像中提取可分解的特徵,並通過調整所學特徵來重新渲染圖像。從某種程度上說,TD-GAN提供了一個可以理解現實世界中圖像的深度學習框架。
網路所學習到的可分解的特徵,實際上對應於圖像中所描述主體的不同屬性。與人類理解世界的方式相似,學習可分解的特徵有助於機器解釋並重構現實世界的圖像。因此,TD-GAN能夠根據用戶指定的信息合成高質量的輸出圖像。
TD-GAN可應用於:
數據增強,即通過合成新的圖像以用於其他深度學習演算法的訓練與測試
生成給定對象連續姿態的圖像,以用於三維模型重建
通過解析,概括來增強現有創作,並創造充滿想像力的新繪畫
學習和操控現實世界數據(如圖像)的概率分布是統計和機器學習的主要目標之一。而近些年提出的深度生成對抗網路(GAN)就是學習複雜數據概率概率分布的常用方法。
生成對抗網路在許多生成相關的任務上取得了令人信服的表現,例如圖像生成,圖像「翻譯」和風格變換。但是,現有演算法仍面臨許多訓練困難。例如,大多數GAN需要仔細平衡生成器和判別器之間的能力。不適合的參數設置會降低GAN的性能,甚至難以產生任何合理的輸出。
在過去相當長的一段時間內,很多研究人員都在研究不同的損失函數對於GAN的影響,(並且大家認為不同的損失函數具有不同的優勢和劣勢,並可能導致不同的訓練問題)。因此很多不同的損失函數被引入到了GAN的訓練學習中,比如minimax、least squares等等,來提升GAN的性能。
對於不同的任務、不同的數據,不同的損失函數都取得了一定的效果。後來Google的研究人員通過大量實驗發現,雖然不同的損失函數在不同的任務上或數據上或許會有不同的表現,但是總體平均的效果卻相差不多。
這就告訴我們:現有生成對抗網路的損失函數具有不同的優點和缺點,其預定義的對抗優化策略可能導致生成對抗網路訓練時的不穩定。受自然演化啟發,我們設計了一個用於訓練生成對抗網路的演化框架。在每次迭代期間,生成器經歷不同的突變以產生多種後代。然後,給定當前學習到的判別器,我們評估由更新的後代產生樣本的質量和多樣性。最後,根據「適者生存」的原則,去除表現不佳的後代,保留剩餘的表現良好的發生器並用於進一步對抗訓練。
基於的進化模型的生成對抗網路克服了個體對抗訓練方法所存在的固有局限性,極大的穩定了生成對抗網路的訓練過程病提升了生成效果。實驗證明,所提出的E-GAN實現了令人信服的圖像生成性能,並減少了現有GAN固有的訓練問題。
這個工作,被MIT Technology Review評為熱點論文(one of 「The Best of the PhysicsarXiv」)。
我們都知道,深度神經網路有一個特點,就是參數空間大,模型複雜度高。傳統的統計學習理論認為,參數空間越大,模型複雜度越高,那麼它對訓練數據的擬合能力就越強,但是泛化能力會變得越差。
Universal approximation theorem已經證明了傳統的、有一個隱層的,多層感知機能夠擬合任何數據。舉個例子,這樣的模型完全可以擬合ImageNet這樣的數據。如果這樣,為什麼我們還要不斷的增加網路的深度,從最初的六層的AlexNet,到後來的152層的ResNet,甚至還有人用幾百層的網路?因為我們都知道,這個單隱層的模型只有機會取得很小的訓練誤差,但是泛化能力卻非常差。也就是說,測試效果並不好。
對於一個機器學習模型,如果它的訓練誤差遠小於測試誤差,那麼它就發生了過擬合。在現有的統計學習理論框架下,對於神經網路,有兩個尚未解決的問題:首先,為什麼模型複雜度非常高的深度神經網路,不會發生過擬合?其次,深度神經網路是越深越好嗎?
利用資訊理論中的信息處理不等式,我們最近的工作得到了這樣一個有趣的結論:深度神經網路的泛化誤差會隨著層數的增加而指數衰減。這樣的結論告訴我們,在保證訓練誤差足夠小的前提下,原則上網路是越深越好。
推理與行為任務:看圖對話與看圖問答
關於reasoning和behaving,我們也做了一些工作。這裡我提一下模仿學習、視覺問題回答和視覺對話。
目前任何機器人主要的交互方式是通過設定的程序和參數。但是目前的機器人已經安裝了攝像機,那麼我們希望不願的將來,機器人可以通過觀察人的動作、模仿人的動作,來達到學習的效果。
看圖問答旨在以問答的交互方式解決視覺內容細粒度內容理解。給定任意圖片,用戶針對圖像內容使用自然語言進行提問,演算法提供準確的自然語言的答案。一個典型的視覺問答框架主要包含視覺特徵細粒度表達、視覺注意力學習、多模態特徵細粒度融合三個模塊。
針對三個關鍵模塊,我們都提出了更為有效的方式。這樣的模型對於機器人和人的交互,也是非常重要的。在視覺問答的標準數據集VQA v2的實時排行榜,我們的方法取得了目前業界最好水平。
比看圖問答更為複雜的一個相關任務是visual dialog(看圖對話)。與看圖問答任務相比,看圖對話有兩個挑戰:第一是對話歷史問題,也就是上下文指代關係。第二是如何區分相似的答案。我們在最近的比賽中有效的考慮了這兩個問題,並且取得了很好的效果。
最後,我請大家看一下這張照片。現在,我不問你這裡有多少人了,而是問你這些人在幹什麼。我想,你瞬間就可以告訴我,這些人在看比賽。這張照片和演講一開始的那張照片的內容是完全不一樣的。那張照片就是大家在照集體照。可是對於計算機來說,要回答出這兩張照片有什麼不同還很困難,至少需要堆積大量的數據進行訓練,才能夠去回答這樣非常簡單的問題。
這樣的智能是我們需要的人工智慧嗎?顯然不是,我們希望未來我們的計算機能夠在很多方面跟人具有共同的特性。因此,我們要讓計算機有更好的推理和行為能力。
謝謝大家!


※清華大數據系列講座——大數據發展與區塊鏈應用成功舉辦
※28個R語言繪圖的實用程序包!
TAG:數據派THU |