深度學(xué)習(xí)三大牛之一的Yann Lecun教授給出了一個關(guān)于機器學(xué)習(xí)中的有監(jiān)督學(xué)習(xí)、無監(jiān)督學(xué)習(xí)和增強學(xué)習(xí)的一個有趣的比喻,他說:如果把智能(Intelligence)比作一個蛋糕,那么無監(jiān)督學(xué)習(xí)就是蛋糕本體,增強學(xué)習(xí)是蛋糕上的櫻桃,那么監(jiān)督學(xué)習(xí),僅僅能算作蛋糕上的糖霜(圖1)。
圖1 Yann LeCun對監(jiān)督學(xué)習(xí),增強學(xué)習(xí)和無監(jiān)督學(xué)習(xí)的價值的形象比喻
深度有監(jiān)督學(xué)習(xí)在計算機視覺領(lǐng)域的進展
圖像分類(Image Classification)
自從Alex和他的導(dǎo)師Hinton(深度學(xué)習(xí)鼻祖)在2012年的ImageNet大規(guī)模圖像識別競賽(ILSVRC2012)中以超過第二名10個百分點的成績(83.6%的Top5精度)碾壓第二名(74.2%,使用傳統(tǒng)的計算機視覺方法)后,深度學(xué)習(xí)真正開始火熱,卷積神經(jīng)網(wǎng)絡(luò)(CNN)開始成為家喻戶曉的名字,從12年的AlexNet(83.6%),到2013年ImageNet大規(guī)模圖像識別競賽冠軍的88.8%,再到2014年VGG的92.7%和同年的GoogLeNet的93.3%,終于,到了2015年,在1000類的圖像識別中,微軟提出的殘差網(wǎng)(ResNet)以96.43%的Top5正確率,達到了超過人類的水平(人類的正確率也只有94.9%)。
Top5精度是指在給出一張圖片,模型給出5個最有可能的標簽,只要在預(yù)測的5個結(jié)果中包含正確標簽,即為正確
圖2 2010-2015年ILSVRC競賽圖像識別錯誤率演進趨勢
伴隨著圖像分類任務(wù),還有另外一個更加有挑戰(zhàn)的任務(wù)–圖像檢測,圖像檢測是指在分類圖像的同時把物體用矩形框給圈起來。從14年到16年,先后涌現(xiàn)出R-CNN,Fast R-CNN, Faster R-CNN, YOLO, SSD等知名框架,其檢測平均精度(mAP),在計算機視覺一個知名數(shù)據(jù)集上PASCAL VOC上的檢測平均精度(mAP),也從R-CNN的53.3%,到Fast RCNN的68.4%,再到Faster R-CNN的75.9%,最新實驗顯示,F(xiàn)aster RCNN結(jié)合殘差網(wǎng)(Resnet-101),其檢測精度可以達到83.8%。深度學(xué)習(xí)檢測速度也越來越快,從最初的RCNN模型,處理一張圖片要用2秒多,到Faster RCNN的198毫秒/張,再到Y(jié)OLO的155幀/秒(其缺陷是精度較低,只有52.7%),最后出來了精度和速度都較高的SSD,精度75.1%,速度23幀/秒。
圖3圖像檢測示例
圖像分割(Semantic Segmentation)
圖像分割也是一項有意思的研究領(lǐng)域,它的目的是把圖像中各種不同物體給用不同顏色分割出來,如下圖所示,其平均精度(mIoU,即預(yù)測區(qū)域和實際區(qū)域交集除以預(yù)測區(qū)域和實際區(qū)域的并集),也從最開始的FCN模型(圖像語義分割全連接網(wǎng)絡(luò),該論文獲得計算機視覺頂會CVPR2015的最佳論文的)的62.2%,到DeepLab框架的72.7%,再到牛津大學(xué)的CRF as RNN的74.7%。該領(lǐng)域是一個仍在進展的領(lǐng)域,仍舊有很大的進步空間。
圖4圖像分割的例子
圖像標注–看圖說話(Image Captioning)
圖像標注是一項引人注目的研究領(lǐng)域,它的研究目的是給出一張圖片,你給我用一段文字描述它,如圖中所示,圖片中第一個圖,程序自動給出的描述是“一個人在塵土飛揚的土路上騎摩托車”,第二個圖片是“兩只狗在草地上玩耍”。由于該研究巨大的商業(yè)價值(例如圖片搜索),近幾年,工業(yè)界的百度,谷歌和微軟 以及學(xué)術(shù)界的加大伯克利,深度學(xué)習(xí)研究重地多倫多大學(xué)都在做相應(yīng)的研究。
圖5圖像標注,根據(jù)圖片生成描述文字
圖像生成–文字轉(zhuǎn)圖像(Image Generator)
圖片標注任務(wù)本來是一個半圓,既然我們可以從圖片產(chǎn)生描述文字,那么我們也能從文字來生成圖片。如圖6所示,第一列“一架大客機在藍天飛翔”,模型自動根據(jù)文字生成了16張圖片,第三列比較有意思,“一群大象在干燥草地行走”(這個有點違背常識,因為大象一般在雨林,不會在干燥草地上行走),模型也相應(yīng)的生成了對應(yīng)圖片,雖然生成的質(zhì)量還不算太好,但也已經(jīng)中規(guī)中矩。
圖6根據(jù)文字生成圖片
強化學(xué)習(xí)(Reinforcement Learning)
在監(jiān)督學(xué)習(xí)任務(wù)中,我們都是給定樣本一個固定標簽,然后去訓(xùn)練模型,可是,在真實環(huán)境中,我們很難給出所有樣本的標簽,這時候,強化學(xué)習(xí)就派上了用常簡單來說,我們給定一些獎勵或懲罰,強化學(xué)習(xí)就是讓模型自己去試錯,模型自己去優(yōu)化怎么才能得到更多的分數(shù)。2016年大火的AlphaGo就是利用了強化學(xué)習(xí)去訓(xùn)練,它在不斷的自我試錯和博弈中掌握了最優(yōu)的策略。利用強化學(xué)習(xí)去玩flyppy bird,已經(jīng)能夠玩到幾萬分了。
圖7強化學(xué)習(xí)玩flappy bird
谷歌DeepMind發(fā)表的使用增強學(xué)習(xí)來玩Atari游戲,其中一個經(jīng)典的游戲是打磚塊(breakout),DeepMind提出的模型僅僅使用像素作為輸入,沒有任何其他先驗知識,換句話說,模型并不認識球是什么,它玩的是什么,令人驚訝的是,在經(jīng)過240分鐘的訓(xùn)練后,它不光學(xué)會了正確的接球,擊打磚塊,它甚至學(xué)會了持續(xù)擊打同一個位置,游戲就勝利的越快(它的獎勵也越高)。
圖8 使用深度增強學(xué)習(xí)來玩Atari Breakout
強化學(xué)習(xí)在機器人領(lǐng)域和自動駕駛領(lǐng)域有極大的應(yīng)用價值,當(dāng)前arxiv上基本上每隔幾天就會有相應(yīng)的論文出現(xiàn)。機器人去學(xué)習(xí)試錯來學(xué)習(xí)最優(yōu)的表現(xiàn),這或許是人工智能進化的最優(yōu)途徑,估計也是通向強人工智能的必經(jīng)之路。
這里推薦一篇2017年初Ian GoodFellow結(jié)合他在NIPS2016的演講寫出的綜述性論文—— NIPS 2016 Tutorial: Generative Adversarial Networks
深度無監(jiān)督學(xué)習(xí)(Deep Unsupervised Learning)–預(yù)測學(xué)習(xí)
相比有限的監(jiān)督學(xué)習(xí)數(shù)據(jù),自然界有無窮無盡的未標注數(shù)據(jù)。試想,如果人工智能可以從龐大的自然界自動去學(xué)習(xí),那豈不是開啟了一個新紀元?當(dāng)前,最有前景的研究領(lǐng)域或許應(yīng)屬無監(jiān)督學(xué)習(xí),這也正是Yann Lecun教授把無監(jiān)督學(xué)習(xí)比喻成人工智能大蛋糕的原因吧。
深度學(xué)習(xí)牛人Ian Goodfellow在2014年提出生成對抗網(wǎng)絡(luò)后,該領(lǐng)域越來越火,成為16年研究最火熱的一個領(lǐng)域之一。大牛Yann LeCun曾說:“對抗網(wǎng)絡(luò)是切片面包發(fā)明以來最令人激動的事情。”大牛這句話足以說明生成對抗網(wǎng)絡(luò)有多重要。
生成對抗網(wǎng)絡(luò)的一個簡單解釋如下:假設(shè)有兩個模型,一個是生成模型(Generative Model,下文簡寫為G),一個是判別模型(Discriminative Model,下文簡寫為D),判別模型(D)的任務(wù)就是判斷一個實例是真實的還是由模型生成的,生成模型(G)的任務(wù)是生成一個實例來騙過判別模型(D),兩個模型互相對抗,發(fā)展下去就會達到一個平衡,生成模型生成的實例與真實的沒有區(qū)別,判別模型無法區(qū)分自然的還是模型生成的。以贗品商人為例,贗品商人(生成模型)制作出假的畢加索畫作來欺騙行家(判別模型D),贗品商人一直提升他的高仿水平來區(qū)分行家,行家也一直學(xué)習(xí)真的假的畢加索畫作來提升自己的辨識能力,兩個人一直博弈,最后贗品商人高仿的畢加索畫作達到了以假亂真的水平,行家最后也很難區(qū)分正品和贗品了。下圖是Goodfellow在發(fā)表生成對抗網(wǎng)絡(luò)論文中的一些生成圖片,可以看出,模型生成的模型與真實的還是有大差別,但這是14年的論文了,16年這個領(lǐng)域進展非常快,相繼出現(xiàn)了條件生成對抗網(wǎng)絡(luò)(Conditional Generative Adversarial Nets)和信息生成對抗網(wǎng)絡(luò)(InfoGAN),深度卷積生成對抗網(wǎng)絡(luò)(Deep Convolutional Generative Adversarial Network, DCGAN),更重要的是,當(dāng)前生成對抗網(wǎng)絡(luò)把觸角伸到了視頻預(yù)測領(lǐng)域,眾所周知,人類主要是靠視頻序列來理解自然界的,圖片只占非常小的一部分,當(dāng)人工智能學(xué)會理解視頻后,它也真正開始顯現(xiàn)出威力了。
圖9 生成對抗網(wǎng)絡(luò)生成的一些圖片,最后邊一列是與訓(xùn)練集中圖片最相近的生產(chǎn)圖片
條件生成對抗網(wǎng)絡(luò)(Conditional Generative Adversarial Nets,CGAN)
生成對抗網(wǎng)絡(luò)一般是根據(jù)隨機噪聲來生成特定類型的圖像等實例,條件生成對抗網(wǎng)絡(luò)則是根據(jù)一定的輸入來限定輸出,例如根據(jù)幾個描述名詞來生成特定的實例,這有點類似1.5節(jié)介紹的由文字生成圖像,下圖是Conditioanal Generative Adversarial Nets論文中的一張圖片,根據(jù)特定的名詞描述來生成圖片。(注意:左邊的一列圖片的描述文字是訓(xùn)練集中不存在的,也就是說是模型根據(jù)沒有見過的描述來生成的圖片,右邊的一列圖片的描述是訓(xùn)練集中存在的)
圖10 根據(jù)文字來生成圖片
條件生成對抗網(wǎng)絡(luò)的另一篇有意思的論文是圖像到圖像的翻譯,該論文提出的模型能夠根據(jù)一張輸入圖片,然后給出模型生成的圖片,下圖是論文中的一張圖,其中左上角第一對非常有意思,模型輸入圖像分割的結(jié)果,給出了生成的真實場景的結(jié)果,這類似于圖像分割的反向工程。
圖11 根據(jù)特定輸入來生成一些有意思的輸出圖片
生成對抗網(wǎng)絡(luò)也用在了圖像超分辨率上,2016年有人提出SRGAN模型,它把原高清圖下采樣后,試圖用生成對抗網(wǎng)絡(luò)模型來還原圖片來生成更為自然的,更逼近原圖像的圖像。下圖中最右邊是原圖,把他降采樣后采用三次差值(Bicubic Interpolation)得到的圖像比較模糊,采用殘差網(wǎng)絡(luò)的版本(SRResNet)已經(jīng)干凈了很多,我們可以看到SRGAN生成的圖片更為真實一些。
圖12 生成對抗網(wǎng)絡(luò)做超分辨率的例子,最右邊是原始圖像
生成對抗網(wǎng)絡(luò)的另一篇有影響力的論文是深度卷積生成對抗網(wǎng)絡(luò)DCGAN,作者把卷積神經(jīng)網(wǎng)絡(luò)和生成對抗網(wǎng)絡(luò)結(jié)合起來,作者指出該框架可以很好的學(xué)習(xí)事物的特征,論文在圖像生成和圖像操作上給出了很有意思的結(jié)果,例如圖13,帶眼睛的男人-不戴眼鏡的男人+不帶眼睛的女人=帶眼睛的女人,該模型給出了圖片的類似向量化操作。
圖13 DCGAN論文中的例圖
生成對抗網(wǎng)絡(luò)的發(fā)展是在是太火爆,一篇文章難以羅列完全,對此感興趣的朋友們可以自己在網(wǎng)絡(luò)搜素相關(guān)論文來研究
openAI的一篇描述生成對抗網(wǎng)絡(luò)的博客非常棒,因為Ian Goodfellow就在OpenAI工作,所以這篇博客的質(zhì)量還是相當(dāng)有保障的。
視頻預(yù)測
該方向是筆者自己最感興趣的方向,Yann LeCun也提出,“用預(yù)測學(xué)習(xí)來替代無監(jiān)督學(xué)習(xí)”,預(yù)測學(xué)習(xí)通過觀察和理解這個世界是如何運作的,然后對世界的變化做出預(yù)測,機器學(xué)會了感知世界的變化,然后對世界的狀態(tài)進行了推斷。
今年的NIPS上,MIT的學(xué)者Vondrick等人發(fā)表了一篇名為Generating Videos with Scene Dynamics的論文,該論文提出了基于一幅靜態(tài)的圖片,模型自動推測接下來的場景,例如給出一張人站在沙灘的圖片,模型自動給出一段接下來的海浪涌動的小視頻。該模型是以無監(jiān)督的方式,在大量的視頻上訓(xùn)練而來的。該模型表明它可以自動學(xué)習(xí)到視頻中有用的特征。下圖是作者的官方主頁上給出的圖,是動態(tài)圖,如果無法正常查看,請轉(zhuǎn)入官方網(wǎng)站視頻生成例子,下圖的視頻是模型自動生成的,我們可以看到圖片不太完美,但已經(jīng)能相當(dāng)好的表示一個場景了。
圖14 隨機生成的視頻,沙灘上波濤涌動,火車奔馳的場景
條件視頻生成,下圖是輸入一張靜態(tài)圖,模型自動推演出一段小視頻。
圖15.根據(jù)一張草地靜態(tài)圖,模型自動推測人的移動場景
圖16.給出一張鐵道圖,模型自動推測火車跑過的樣子
MIT的CSAIL實驗室也放出了一篇博客,題目是《教會機器去預(yù)測未來》,該模型在youtube視頻和電視劇上(例如The Office和《絕望主婦》)訓(xùn)練,訓(xùn)練好以后,如果你給該模型一個親吻之前的圖片,該模型能自動推測出加下來擁抱親吻的動作,具體的例子見下圖。
圖17 給出一張靜態(tài)圖,模型自動推測接下來的動作
哈佛大學(xué)的Lotter等人提出了PredNet,該模型也是在KITTI數(shù)據(jù)集上訓(xùn)練,然后該模型就可以根據(jù)前面的視頻,預(yù)測行車記錄儀接下來幾幀的圖像,模型是用長短期記憶神經(jīng)網(wǎng)絡(luò)(LSTM)訓(xùn)練得到的。具體例子見下圖,給出行車記錄儀前幾張的圖片,自動預(yù)測接下來的五幀場景,模型輸入幾幀圖像后,預(yù)測接下來的5幀,由圖可知,越往后,模型預(yù)測的越是模糊,但模型已經(jīng)可以給出有參加價值的預(yù)測結(jié)果了。
評論
查看更多