想了解深度學(xué)習(xí)與計(jì)算機(jī)視覺(jué)?看這篇就夠了
本文關(guān)鍵詞:計(jì)算機(jī)視覺(jué),由筆耕文化傳播整理發(fā)布。
今年夏天,智能FUN將在深圳舉辦“全球人工智能與機(jī)器人創(chuàng)新大會(huì)”(GAIR),在本次大會(huì)上,我們將發(fā)布“人工智能與機(jī)器人Top25創(chuàng)新企業(yè)榜“,慧眼科技是我們重點(diǎn)關(guān)注的公司之一。今天,我們邀請(qǐng)到慧眼科技研發(fā)總監(jiān)李漢曦,為我們帶來(lái)深度學(xué)習(xí)與計(jì)算機(jī)視覺(jué)方面的內(nèi)容分享。
嘉賓介紹:李漢曦,慧眼科技研發(fā)總監(jiān),澳大利亞國(guó)立大學(xué)博士;曾任澳大利亞國(guó)家信息通信公司(NICTA)任高級(jí)研究員;人臉識(shí)別;物體檢測(cè),物體跟蹤、深度學(xué)習(xí)方面的專家,在TPAMI,TIP, TNNLS和Pattern Recognition等權(quán)威期刊,以及CVPR,ECCV,BMVC, ACCV等領(lǐng)域內(nèi)重要會(huì)議發(fā)表過(guò)有影響力的論文;現(xiàn)為澳大利亞格里菲斯大學(xué)客座研究員,江西師范大學(xué)特聘教授。
人工智能是人類一個(gè)非常美好的夢(mèng)想,跟星際漫游和長(zhǎng)生不老一樣。我們想制造出一種機(jī)器,使得它跟人一樣具有一定的對(duì)外界事物感知能力,比如看見(jiàn)世界。
在上世紀(jì)50年代,數(shù)學(xué)家圖靈提出判斷機(jī)器是否具有人工智能的標(biāo)準(zhǔn):圖靈測(cè)試。即把機(jī)器放在一個(gè)房間,人類測(cè)試員在另一個(gè)房間,人跟機(jī)器聊天,測(cè)試員事先不知道另一房間里是人還是機(jī)器 。經(jīng)過(guò)聊天,如果測(cè)試員不能確定跟他聊天的是人還是機(jī)器的話,那么圖靈測(cè)試就通過(guò)了,也就是說(shuō)這個(gè)機(jī)器具有與人一樣的感知能力。
但是從圖靈測(cè)試提出來(lái)開(kāi)始到本世紀(jì)初,50多年時(shí)間有無(wú)數(shù)科學(xué)家提出很多機(jī)器學(xué)習(xí)的算法,試圖讓計(jì)算機(jī)具有與人一樣的智力水平,但直到2006年深度學(xué)習(xí)算法的成功,才帶來(lái)了一絲解決的希望。
眾星捧月的深度學(xué)習(xí)深度學(xué)習(xí)在很多學(xué)術(shù)領(lǐng)域,比非深度學(xué)習(xí)算法往往有20-30%成績(jī)的提高。很多大公司也逐漸開(kāi)始出手投資這種算法,并成立自己的深度學(xué)習(xí)團(tuán)隊(duì),其中投入最大的就是谷歌,2008年6月披露了谷歌腦項(xiàng)目。2014年1月谷歌收購(gòu)DeepMind,然后2016年3月其開(kāi)發(fā)的Alphago算法在圍棋挑戰(zhàn)賽中,戰(zhàn)勝了韓國(guó)九段棋手李世石,證明深度學(xué)習(xí)設(shè)計(jì)出的算法可以戰(zhàn)勝這個(gè)世界上最強(qiáng)的選手。
在硬件方面,Nvidia 最開(kāi)始做顯示芯片,但從2006及2007年開(kāi)始主推用GPU芯片進(jìn)行通用計(jì)算,它特別適合深度學(xué)習(xí)中大量簡(jiǎn)單重復(fù)的計(jì)算量。目前很多人選擇Nvidia的CUDA工具包進(jìn)行深度學(xué)習(xí)軟件的開(kāi)發(fā)。
微軟從2012年開(kāi)始,利用深度學(xué)習(xí)進(jìn)行機(jī)器翻譯和中文語(yǔ)音合成工作,其人工智能小娜背后就是一套自然語(yǔ)言處理和語(yǔ)音識(shí)別的數(shù)據(jù)算法。
百度在2013年宣布成立百度研究院,其中最重要的就是百度深度學(xué)習(xí)研究所,當(dāng)時(shí)招募了著名科學(xué)家余凱博士。不過(guò)后來(lái)余凱離開(kāi)百度,創(chuàng)立了另一家從事深度學(xué)習(xí)算法開(kāi)發(fā)的公司地平線。
Facebook和Twitter也都各自進(jìn)行了深度學(xué)習(xí)研究,其中前者攜手紐約大學(xué)教授Yann Lecun,建立了自己的深度學(xué)習(xí)算法實(shí)驗(yàn)室;2015年10月,F(xiàn)acebook宣布開(kāi)源其深度學(xué)習(xí)算法框架,即Torch框架。Twitter在2014年7月收購(gòu)了Madbits,為用戶提供高精度的圖像檢索服務(wù)。
前深度學(xué)習(xí)時(shí)代的計(jì)算機(jī)視覺(jué)互聯(lián)網(wǎng)巨頭看重深度學(xué)習(xí)當(dāng)然不是為了學(xué)術(shù),主要是它能帶來(lái)巨大的市場(chǎng)。那為什么在深度學(xué)習(xí)出來(lái)之前,傳統(tǒng)算法為什么沒(méi)有達(dá)到深度學(xué)習(xí)的精度?
在深度學(xué)習(xí)算法出來(lái)之前,對(duì)于視覺(jué)算法來(lái)說(shuō),大致可以分為以下5個(gè)步驟:特征感知,圖像預(yù)處理,特征提取,特征篩選,推理預(yù)測(cè)與識(shí)別。早期的機(jī)器學(xué)習(xí)中,占優(yōu)勢(shì)的統(tǒng)計(jì)機(jī)器學(xué)習(xí)群體中,對(duì)特征是不大關(guān)心的。
我認(rèn)為,計(jì)算機(jī)視覺(jué)可以說(shuō)是機(jī)器學(xué)習(xí)在視覺(jué)領(lǐng)域的應(yīng)用,所以計(jì)算機(jī)視覺(jué)在采用這些機(jī)器學(xué)習(xí)方法的時(shí)候,不得不自己設(shè)計(jì)前面4個(gè)部分。
但對(duì)任何人來(lái)說(shuō)這都是一個(gè)比較難的任務(wù)。傳統(tǒng)的計(jì)算機(jī)識(shí)別方法把特征提取和分類器設(shè)計(jì)分開(kāi)來(lái)做,然后在應(yīng)用時(shí)再合在一起,比如如果輸入是一個(gè)摩托車圖像的話,首先要有一個(gè)特征表達(dá)或者特征提取的過(guò)程,然后把表達(dá)出來(lái)的特征放到學(xué)習(xí)算法中進(jìn)行分類的學(xué)習(xí)。
過(guò)去20年中出現(xiàn)了不少優(yōu)秀的特征算子,比如最著名的SIFT算子,即所謂的對(duì)尺度旋轉(zhuǎn)保持不變的算子。它被廣泛地應(yīng)用在圖像比對(duì),特別是所謂的structure from motion這些應(yīng)用中,有一些成功的應(yīng)用例子。另一個(gè)是HoG算子,它可以提取物體,比較魯棒的物體邊緣,在物體檢測(cè)中扮演著重要的角色。
這些算子還包括Textons,Spin image,RIFT和GLOH,都是在深度學(xué)習(xí)誕生之前或者深度學(xué)習(xí)真正的流行起來(lái)之前,占領(lǐng)視覺(jué)算法的主流。
幾個(gè)(半)成功例子這些特征和一些特定的分類器組合取得了一些成功或半成功的例子,基本達(dá)到了商業(yè)化的要求但還沒(méi)有完全商業(yè)化。
一是八九十年代的指紋識(shí)別算法,它已經(jīng)非常成熟,一般是在指紋的圖案上面去尋找一些關(guān)鍵點(diǎn),尋找具有特殊幾何特征的點(diǎn),然后把兩個(gè)指紋的關(guān)鍵點(diǎn)進(jìn)行比對(duì),判斷是否匹配。
然后是2001年基于Haar的人臉檢測(cè)算法,在當(dāng)時(shí)的硬件條件下已經(jīng)能夠達(dá)到實(shí)時(shí)人臉檢測(cè),我們現(xiàn)在所有手機(jī)相機(jī)里的人臉檢測(cè),都是基于它或者它的變種。
第三個(gè)是基于HoG特征的物體檢測(cè),它和所對(duì)應(yīng)的SVM分類器組合起來(lái)的就是著名的DPM算法。DPM算法在物體檢測(cè)上超過(guò)了所有的算法,取得了比較不錯(cuò)的成績(jī)。
但這種成功例子太少了,因?yàn)槭止ぴO(shè)計(jì)特征需要大量的經(jīng)驗(yàn),需要你對(duì)這個(gè)領(lǐng)域和數(shù)據(jù)特別了解,然后設(shè)計(jì)出來(lái)特征還需要大量的調(diào)試工作。說(shuō)白了就是需要一點(diǎn)運(yùn)氣。
另一個(gè)難點(diǎn)在于,你不只需要手工設(shè)計(jì)特征,還要在此基礎(chǔ)上有一個(gè)比較合適的分類器算法。同時(shí)設(shè)計(jì)特征然后選擇一個(gè)分類器,這兩者合并達(dá)到最優(yōu)的效果,幾乎是不可能完成的任務(wù)。
仿生學(xué)角度看深度學(xué)習(xí)如果不手動(dòng)設(shè)計(jì)特征,不挑選分類器,有沒(méi)有別的方案呢?能不能同時(shí)學(xué)習(xí)特征和分類器?即輸入某一個(gè)模型的時(shí)候,輸入只是圖片,輸出就是它自己的標(biāo)簽。比如輸入一個(gè)明星的頭像,出來(lái)的標(biāo)簽就是一個(gè)50維的向量(如果要在50個(gè)人里識(shí)別的話),其中對(duì)應(yīng)明星的向量是1,其他的位置是0。
這種設(shè)定符合人類腦科學(xué)的研究成果。
1981年諾貝爾醫(yī)學(xué)生理學(xué)獎(jiǎng)?lì)C發(fā)給了David Hubel,一位神經(jīng)生物學(xué)家。他的主要研究成果是發(fā)現(xiàn)了視覺(jué)系統(tǒng)信息處理機(jī)制,證明大腦的可視皮層是分級(jí)的。他的貢獻(xiàn)主要有兩個(gè),一是他認(rèn)為人的視覺(jué)功能一個(gè)是抽象,一個(gè)是迭代。抽象就是把非常具體的形象的元素,即原始的光線像素等信息,抽象出來(lái)形成有意義的概念。這些有意義的概念又會(huì)往上迭代,變成更加抽象,人可以感知到的抽象概念。
像素是沒(méi)有抽象意義的,但人腦可以把這些像素連接成邊緣,邊緣相對(duì)像素來(lái)說(shuō)就變成了比較抽象的概念;邊緣進(jìn)而形成球形,球形然后到氣球,又是一個(gè)抽象的過(guò)程,大腦最終就知道看到的是一個(gè)氣球。
模擬人腦識(shí)別人臉,也是抽象迭代的過(guò)程,從最開(kāi)始的像素到第二層的邊緣,再到人臉的部分,然后到整張人臉,是一個(gè)抽象迭代的過(guò)程。
再比如看到圖片中的摩托車,我們可能在腦子里就幾微秒的時(shí)間,但是經(jīng)過(guò)了大量的神經(jīng)元抽象迭代。對(duì)計(jì)算機(jī)來(lái)說(shuō)最開(kāi)始看到的根本也不是摩托車,而是RGB圖像三個(gè)通道上不同的數(shù)字。
所謂的特征或者視覺(jué)特征,就是把這些數(shù)值給綜合起來(lái)用統(tǒng)計(jì)或非統(tǒng)計(jì)的形式,把摩托車的部件或者整輛摩托車表現(xiàn)出來(lái)。深度學(xué)習(xí)的流行之前,大部分的設(shè)計(jì)圖像特征就是基于此,即把一個(gè)區(qū)域內(nèi)的像素級(jí)別的信息綜合表現(xiàn)出來(lái),利于后面的分類學(xué)習(xí)。
如果要完全模擬人腦,我們也要模擬抽象和遞歸迭代的過(guò)程,把信息從最細(xì)瑣的像素級(jí)別,抽象到“種類”的概念,讓人能夠接受。
卷積的概念計(jì)算機(jī)視覺(jué)里經(jīng)常使卷積神經(jīng)網(wǎng)絡(luò),即CNN,是一種對(duì)人腦比較精準(zhǔn)的模擬。
什么是卷積?卷積就是兩個(gè)函數(shù)之間的相互關(guān)系,然后得出一個(gè)新的值,他是在連續(xù)空間做積分計(jì)算,然后在離散空間內(nèi)求和的過(guò)程。實(shí)際上在計(jì)算機(jī)視覺(jué)里面,可以把卷積當(dāng)做一個(gè)抽象的過(guò)程,就是把小區(qū)域內(nèi)的信息統(tǒng)計(jì)抽象出來(lái)。
比如,對(duì)于一張愛(ài)因斯坦的照片,我可以學(xué)習(xí)n個(gè)不同的卷積和函數(shù),然后對(duì)這個(gè)區(qū)域進(jìn)行統(tǒng)計(jì)?梢杂貌煌姆椒ńy(tǒng)計(jì),比如著重統(tǒng)計(jì)中央,也可以著重統(tǒng)計(jì)周圍,這就導(dǎo)致統(tǒng)計(jì)的和函數(shù)的種類多種多樣,為了達(dá)到可以同時(shí)學(xué)習(xí)多個(gè)統(tǒng)計(jì)的累積和。
上圖中是,如何從輸入圖像怎么到最后的卷積,生成的響應(yīng)map。首先用學(xué)習(xí)好的卷積和對(duì)圖像進(jìn)行掃描,然后每一個(gè)卷積和會(huì)生成一個(gè)掃描的響應(yīng)圖,我們叫response map,或者叫feature map。如果有多個(gè)卷積和,就有多個(gè)feature map。也就說(shuō)從一個(gè)最開(kāi)始的輸入圖像(RGB三個(gè)通道)可以得到256個(gè)通道的feature map,因?yàn)橛?56個(gè)卷積和,每個(gè)卷積和代表一種統(tǒng)計(jì)抽象的方式。
在卷積神經(jīng)網(wǎng)絡(luò)中,除了卷積層,還有一種叫池化的操作。池化操作在統(tǒng)計(jì)上的概念更明確,就是一個(gè)對(duì)一個(gè)小區(qū)域內(nèi)求平均值或者求最大值的統(tǒng)計(jì)操作。
帶來(lái)的結(jié)果是,如果之前我輸入有兩個(gè)通道的,或者256通道的卷積的響應(yīng)feature map,每一個(gè)feature map都經(jīng)過(guò)一個(gè)求最大的一個(gè)池化層,會(huì)得到一個(gè)比原來(lái)feature map更小的256的feature map。
在上面這個(gè)例子里,池化層對(duì)每一個(gè)2X2的區(qū)域求最大值,然后把最大值賦給生成的feature map的對(duì)應(yīng)位置。如果輸入圖像是100×100的話,那輸出圖像就會(huì)變成50×50,feature map變成了一半。同時(shí)保留的信息是原來(lái)2X2區(qū)域里面最大的信息。
操作的實(shí)例:LeNet網(wǎng)絡(luò)Le顧名思義就是指人工智能領(lǐng)域的大牛Lecun。這個(gè)網(wǎng)絡(luò)是深度學(xué)習(xí)網(wǎng)絡(luò)的最初原型,因?yàn)橹暗木W(wǎng)絡(luò)都比較淺,它較深的。LeNet在98年就發(fā)明出來(lái)了,當(dāng)時(shí)Lecun在AT T的實(shí)驗(yàn)室,他用這一網(wǎng)絡(luò)進(jìn)行字母識(shí)別,達(dá)到了非常好的效果。
怎么構(gòu)成呢?輸入圖像是32×32的灰度圖,第一層經(jīng)過(guò)了一組卷積和,生成了6個(gè)28X28的feature map,然后經(jīng)過(guò)一個(gè)池化層,得到得到6個(gè)14X14的feature map,然后再經(jīng)過(guò)一個(gè)卷積層,生成了16個(gè)10X10的卷積層,再經(jīng)過(guò)池化層生成16個(gè)5×5的feature map。
從最后16個(gè)5X5的feature map開(kāi)始,經(jīng)過(guò)了3個(gè)全連接層,達(dá)到最后的輸出,輸出就是標(biāo)簽空間的輸出。由于設(shè)計(jì)的是只要對(duì)0到9進(jìn)行識(shí)別,所以輸出空間是10,如果要對(duì)10個(gè)數(shù)字再加上26個(gè)大小字母進(jìn)行識(shí)別的話,輸出空間就是62。62維向量里,如果某一個(gè)維度上的值最大,它對(duì)應(yīng)的那個(gè)字母和數(shù)字就是就是預(yù)測(cè)結(jié)果。
壓在駱駝身上的最后一根稻草從98年到本世紀(jì)初,深度學(xué)習(xí)興盛起來(lái)用了15年,但當(dāng)時(shí)成果泛善可陳,一度被邊緣化。到2012年,深度學(xué)習(xí)算法在部分領(lǐng)域取得不錯(cuò)的成績(jī),而壓在駱駝身上最后一根稻草就是AlexNet。
AlexNet由多倫多大學(xué)幾個(gè)科學(xué)家開(kāi)發(fā),在ImageNet比賽上做到了非常好的效果。當(dāng)時(shí)AlexNet識(shí)別效果超過(guò)了所有淺層的方法。此后,大家認(rèn)識(shí)到深度學(xué)習(xí)的時(shí)代終于來(lái)了,并有人用它做其它的應(yīng)用,同時(shí)也有些人開(kāi)始開(kāi)發(fā)新的網(wǎng)絡(luò)結(jié)構(gòu)。
其實(shí)AlexNet的結(jié)構(gòu)也很簡(jiǎn)單,只是LeNet的放大版。輸入是一個(gè)224X224的圖片,是經(jīng)過(guò)了若干個(gè)卷積層,若干個(gè)池化層,最后連接了兩個(gè)全連接層,達(dá)到了最后的標(biāo)簽空間。
去年,有些人研究出來(lái)怎么樣可視化深度學(xué)習(xí)出來(lái)的特征。那么,AlexNet學(xué)習(xí)出的特征是什么樣子?在第一層,都是一些填充的塊狀物和邊界等特征;中間的層開(kāi)始學(xué)習(xí)一些紋理特征;更高接近分類器的層級(jí),則可以明顯看到的物體形狀的特征。
最后的一層,即分類層,完全是物體的不同的姿態(tài),根據(jù)不同的物體展現(xiàn)出不同姿態(tài)的特征了。
可以說(shuō),不論是對(duì)人臉,車輛,大象或椅子進(jìn)行識(shí)別,最開(kāi)始學(xué)到的東西都是邊緣,繼而就是物體的部分,然后在更高層層級(jí)才能抽象到物體的整體。整個(gè)卷積神經(jīng)網(wǎng)絡(luò)在模擬人的抽象和迭代的過(guò)程。
為什么時(shí)隔20年卷土重來(lái)?我們不禁要問(wèn):似乎卷積神經(jīng)網(wǎng)絡(luò)設(shè)計(jì)也不是很復(fù)雜,,98年就已經(jīng)有一個(gè)比較像樣的雛形了。自由換算法和理論證明也沒(méi)有太多進(jìn)展。那為什么時(shí)隔20年,卷積神經(jīng)網(wǎng)絡(luò)才能卷土重來(lái),占領(lǐng)主流?
這一問(wèn)題與卷積神經(jīng)網(wǎng)絡(luò)本身的技術(shù)關(guān)系不太大,我個(gè)人認(rèn)為與其他一些客觀因素有關(guān)。
首先,卷積神經(jīng)網(wǎng)絡(luò)的深度太淺的話,識(shí)別能力往往不如一般的淺層模型,比如SVM或者boosting。但如果做得很深,就需要大量數(shù)據(jù)進(jìn)行訓(xùn)練,否則機(jī)器學(xué)習(xí)中的過(guò)擬合將不可避免。而2006及2007年開(kāi)始,正好是互聯(lián)網(wǎng)開(kāi)始大量產(chǎn)生各種各樣的圖片數(shù)據(jù)的時(shí)候。
另外一個(gè)條件是運(yùn)算能力。卷積神經(jīng)網(wǎng)絡(luò)對(duì)計(jì)算機(jī)的運(yùn)算要求比較高,需要大量重復(fù)可并行化的計(jì)算,在當(dāng)時(shí)CPU只有單核且運(yùn)算能力比較低的情況下,不可能進(jìn)行個(gè)很深的卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練。隨著GPU計(jì)算能力的增長(zhǎng),卷積神經(jīng)網(wǎng)絡(luò)結(jié)合大數(shù)據(jù)的訓(xùn)練才成為可能。
最后一點(diǎn)就是人和。卷積神經(jīng)網(wǎng)絡(luò)有一批一直在堅(jiān)持的科學(xué)家(如Lecun)才沒(méi)有被沉默,才沒(méi)有被海量的淺層方法淹沒(méi)。然后最后終于看到卷積神經(jīng)網(wǎng)絡(luò)占領(lǐng)主流的曙光。
深度學(xué)習(xí)在視覺(jué)上的應(yīng)用計(jì)算機(jī)視覺(jué)中比較成功的深度學(xué)習(xí)的應(yīng)用,包括人臉識(shí)別,圖像問(wèn)答,物體檢測(cè),物體跟蹤。
這里說(shuō)人臉識(shí)別中的人臉比對(duì),即得到一張人臉,與數(shù)據(jù)庫(kù)里的人臉進(jìn)行比對(duì);或同時(shí)給兩張人臉,判斷是不是同一個(gè)人。
這方面比較超前的是湯曉鷗教授,他們提出的DeepID算法在LWF上做得比較好。他們也是用卷積神經(jīng)網(wǎng)絡(luò),但在做比對(duì)時(shí),兩張人臉?lè)謩e提取了不同位置特征,然后再進(jìn)行互相比對(duì),得到最后的比對(duì)結(jié)果。最新的DeepID-3算法,在LWF達(dá)到了99.53%準(zhǔn)確度,與肉眼識(shí)別結(jié)果相差無(wú)幾。
圖片問(wèn)答問(wèn)題這是2014年左右興起的課題,即給張圖片同時(shí)問(wèn)個(gè)問(wèn)題,然后讓計(jì)算機(jī)回答。比如有一個(gè)辦公室靠海的圖片,然后問(wèn)“桌子后面有什么”,神經(jīng)網(wǎng)絡(luò)輸出應(yīng)該是“椅子和窗戶”
這一應(yīng)用引入了LSTM網(wǎng)絡(luò),這是一個(gè)專門設(shè)計(jì)出來(lái)具有一定記憶能力的神經(jīng)單元。特點(diǎn)是,會(huì)把某一個(gè)時(shí)刻的輸出當(dāng)作下一個(gè)時(shí)刻的輸入?梢哉J(rèn)為它比較適合語(yǔ)言等,有時(shí)間序列關(guān)系的場(chǎng)景。因?yàn)槲覀冊(cè)谧x一篇文章和句子的時(shí)候,對(duì)句子后面的理解是基于前面對(duì)詞語(yǔ)的記憶。
圖像問(wèn)答問(wèn)題是基于卷積神經(jīng)網(wǎng)絡(luò)和LSTM單元的結(jié)合,來(lái)實(shí)現(xiàn)圖像問(wèn)答。LSTM輸出就應(yīng)該是想要的答案,而輸入的就是上一個(gè)時(shí)刻的輸入,以及圖像的特征,及問(wèn)句的每個(gè)詞語(yǔ)。
物體檢測(cè)問(wèn)題Region CNN深度學(xué)習(xí)在物體檢測(cè)方面也取得了非常好的成果。2014年的Region CNN算法,基本思想是首先用一個(gè)非深度的方法,在圖像中提取可能是物體的圖形塊,然后深度學(xué)習(xí)算法根據(jù)這些圖像塊,判斷屬性和一個(gè)具體物體的位置。
為什么要用非深度的方法先提取可能的圖像塊?因?yàn)樵谧鑫矬w檢測(cè)的時(shí)候,如果你用掃描窗的方法進(jìn)行物體監(jiān)測(cè),要考慮到掃描窗大小的不一樣,長(zhǎng)寬比和位置不一樣,如果每一個(gè)圖像塊都要過(guò)一遍深度網(wǎng)絡(luò)的話,這種時(shí)間是你無(wú)法接受的。
所以用了一個(gè)折中的方法,叫Selective Search。先把完全不可能是物體的圖像塊去除,只剩2000左右的圖像塊放到深度網(wǎng)絡(luò)里面判斷。那么取得的成績(jī)是AP是58.5,比以往幾乎翻了一倍。有一點(diǎn)不盡如人意的是,region CNN的速度非常慢,需要10到45秒處理一張圖片。
Faster R-CNN方法而且我在去年NIPS上,我們看到的有Faster R-CNN方法,一個(gè)超級(jí)加速版R-CNN方法。它的速度達(dá)到了每秒七幀,即一秒鐘可以處理七張圖片。技巧在于,不是用圖像塊來(lái)判斷是物體還是背景,而把整張圖像一起扔進(jìn)深度網(wǎng)絡(luò)里,讓深度網(wǎng)絡(luò)自行判斷哪里有物體,物體的方塊在哪里,種類是什么?
經(jīng)過(guò)深度網(wǎng)絡(luò)運(yùn)算的次數(shù)從原來(lái)的2000次降到一次,速度大大提高了。
Faster R-CNN提出了讓深度學(xué)習(xí)自己生成可能的物體塊,再用同樣深度網(wǎng)絡(luò)來(lái)判斷物體塊是否是背景?同時(shí)進(jìn)行分類,還要把邊界和給估計(jì)出來(lái)。
Faster R-CNN可以做到又快又好,在VOC2007上檢測(cè)AP達(dá)到73.2,速度也提高了兩三百倍。
YOLO
去年FACEBOOK提出來(lái)的YOLO網(wǎng)絡(luò),也是進(jìn)行物體檢測(cè),最快達(dá)到每秒鐘155幀,達(dá)到了完全實(shí)時(shí)。它讓一整張圖像進(jìn)入到神經(jīng)網(wǎng)絡(luò),讓神經(jīng)網(wǎng)絡(luò)自己判斷這物體可能在哪里,可能是什么。但它縮減了可能圖像塊的個(gè)數(shù),從原來(lái)Faster R-CNN的2000多個(gè)縮減縮減到了98個(gè)。
同時(shí)取消了Faster R-CNN里面的RPN結(jié)構(gòu),代替Selective Search結(jié)構(gòu)。YOLO里面沒(méi)有RPN這一步,而是直接預(yù)測(cè)物體的種類和位置。
YOLO的代價(jià)就是精度下降,在155幀的速度下精度只有52.7,45幀每秒時(shí)的精度是63.4。
在arXiv上出現(xiàn)的最新算法叫Single Shot MultiBox Detector,即SSD。
它是YOLO的超級(jí)改進(jìn)版,吸取了YOLO的精度下降的教訓(xùn),同時(shí)保留速度快的特點(diǎn)。它能達(dá)到58幀每秒,精度有72.1。速度超過(guò)Faster R-CNN 有8倍,但達(dá)到類似的精度。
所謂跟蹤,就是在視頻里面第一幀時(shí)鎖定感興趣的物體,讓計(jì)算機(jī)跟著走,不管怎么旋轉(zhuǎn)晃動(dòng),甚至躲在樹(shù)叢后面也要跟蹤。
深度學(xué)習(xí)對(duì)跟蹤問(wèn)題有很顯著的效果。DeepTrack算法是我在澳大利亞信息科技研究院時(shí)和同事提出的,是第一在線用深度學(xué)習(xí)進(jìn)行跟蹤的文章,當(dāng)時(shí)超過(guò)了其它所有的淺層算法。
今年有越來(lái)越多深度學(xué)習(xí)跟蹤算法提出。去年十二月ICCV 2015上面,馬超提出的Hierarchical Convolutional Feature算法,在數(shù)據(jù)上達(dá)到最新的記錄。它不是在線更新一個(gè)深度學(xué)習(xí)網(wǎng)絡(luò),而是用一個(gè)大網(wǎng)絡(luò)進(jìn)行預(yù)訓(xùn)練,然后讓大網(wǎng)絡(luò)知道什么是物體什么不是物體。
將大網(wǎng)絡(luò)放在跟蹤視頻上面,然后再分析網(wǎng)絡(luò)在視頻上產(chǎn)生的不同特征,用比較成熟的淺層跟蹤算法來(lái)進(jìn)行跟蹤,這樣利用了深度學(xué)習(xí)特征學(xué)習(xí)比較好的好處,同時(shí)又利用了淺層方法速度較快的優(yōu)點(diǎn)。效果是每秒鐘10幀,同時(shí)精度破了記錄。
最新的跟蹤成果是基于Hierarchical Convolutional Feature,由一個(gè)韓國(guó)的科研組提出的MDnet。它集合了前面兩種深度算法的集大成,首先離線的時(shí)候有學(xué)習(xí),學(xué)習(xí)的不是一般的物體檢測(cè),也不是ImageNet,學(xué)習(xí)的是跟蹤視頻,然后在學(xué)習(xí)視頻結(jié)束后,在真正在使用網(wǎng)絡(luò)的時(shí)候更新網(wǎng)絡(luò)的一部分。這樣既在離線的時(shí)候得到了大量的訓(xùn)練,在線的時(shí)候又能夠很靈活改變自己的網(wǎng)絡(luò)。
基于嵌入式系統(tǒng)的深度學(xué)習(xí)回到ADAS問(wèn)題(慧眼科技的主業(yè)),它完全可以用深度學(xué)習(xí)算法,但對(duì)硬件平臺(tái)有比較高的要求。在汽車上不太可能把一臺(tái)電腦放上去,因?yàn)楣β适莻(gè)問(wèn)題,很難被市場(chǎng)所接受。
現(xiàn)在的深度學(xué)習(xí)計(jì)算主要是在云端進(jìn)行,前端拍攝照片,傳給后端的云平臺(tái)處理。但對(duì)于ADAS而言,無(wú)法接受長(zhǎng)時(shí)間的數(shù)據(jù)傳輸?shù),或許發(fā)生事故后,云端的數(shù)據(jù)還沒(méi)傳回來(lái)。
那是否可以考慮NVIDIA推出的嵌入式平臺(tái)?NVIDIA推出的嵌入式平臺(tái),其運(yùn)算能力遠(yuǎn)遠(yuǎn)強(qiáng)過(guò)了所有主流的嵌入式平臺(tái),運(yùn)算能力接近主流的頂級(jí)CPU,如臺(tái)式機(jī)的i7。那么慧眼科技在做工作就是要使得深度學(xué)習(xí)算法,在嵌入式平臺(tái)有限的資源情況下能夠達(dá)到實(shí)時(shí)效果,而且精度幾乎沒(méi)有減少。
具體做法是,首先對(duì)網(wǎng)絡(luò)進(jìn)行縮減,可能是對(duì)網(wǎng)絡(luò)的結(jié)構(gòu)縮減,由于識(shí)別場(chǎng)景不同,也要進(jìn)行相應(yīng)的功能性縮減;另外要用最快的深度檢測(cè)算法,結(jié)合最快的深度跟蹤算法,同時(shí)自己研發(fā)出一些場(chǎng)景分析算法。三者結(jié)合在一起,目的是減少運(yùn)算量,減少檢測(cè)空間的大小。在這種情況下,在有限資源上實(shí)現(xiàn)了使用深度學(xué)習(xí)算法,但精度減少的非常少。
今年8月,智能FUN(搜索“智能FUN”公眾號(hào)關(guān)注)將在深圳舉辦“全球人工智能與機(jī)器人創(chuàng)新大會(huì)”(簡(jiǎn)稱:GAIR)。想了解下,您對(duì)人工智能的未來(lái)趨勢(shì)怎么看?
漢曦:我覺(jué)得未來(lái)人工智能的方向應(yīng)該是機(jī)器服務(wù)人,機(jī)器輔助人。人始終是最后決策者。這在技術(shù)上和倫理上更合理。
本文關(guān)鍵詞:計(jì)算機(jī)視覺(jué),由筆耕文化傳播整理發(fā)布。
本文編號(hào):45014
本文鏈接:http://www.lk138.cn/kejilunwen/jisuanjikexuelunwen/45014.html