編者按:據(jù)傳宋徽宗趙佶曾以“深山藏古寺”為題命人作畫,奪魁的畫作,畫崇山峻嶺之中,一股清泉飛流直下,跳珠濺玉,泉邊有位老態(tài)龍鐘的和尚,正舀著泉水倒進(jìn)桶里。
這幅畫的妙處在于,從“打水的老和尚”這一已知語義信息提取出“古寺”這一隱含信息,從而使得該畫切題應(yīng)景。而在計(jì)算機(jī)視覺領(lǐng)域,這一典故正展示了結(jié)構(gòu)化分析中的隱含信息傳遞,對(duì)于畫面內(nèi)容理解的重要性。
近年來,深度學(xué)習(xí)取得了斐然的成績(jī),然而自其提出之日起,“黑盒智能”、“可解釋性差”等質(zhì)疑之聲即不絕于耳,“黑盒智能”,意味著無法對(duì)結(jié)果作出保證,并極易陷入“自信的錯(cuò)誤”這一致命問題。因此,世界上頂級(jí)實(shí)驗(yàn)室都在思考“why"這一問題,并嘗試增強(qiáng)算法的可解釋性,以打開深度學(xué)習(xí)這一黑盒子。
今天,來自悉尼大學(xué)的歐陽萬里教授,將從物體之間的相關(guān)性出發(fā),利用結(jié)構(gòu)化建模,嘗試在圖像理解領(lǐng)域,窺一窺深度學(xué)習(xí)這一黑盒子。
本次報(bào)告中,我介紹一下我在香港中文大學(xué)以及在悉尼大學(xué)和很多老師、學(xué)生一起合作的工作。
首先我們來了解一下檢測(cè)和人體姿態(tài)識(shí)別相關(guān)的工作。給定一張圖像,確定感興趣的物體在圖片中的位置,比如說這位女士的牙刷,這就是物體檢測(cè)工作。目標(biāo)檢測(cè)進(jìn)一步往上分析,就是關(guān)系檢測(cè)。得到關(guān)系之后,可以進(jìn)一步做更多語義的理解,比如用句子來描述圖片中某個(gè)區(qū)域它的語義,如說這位媽媽和可愛的小孩在刷牙。物體檢測(cè)后可以逐步把語義信息往上走,也可以對(duì)感興趣物體進(jìn)行深入分析,比如說可以對(duì)人體關(guān)鍵點(diǎn)進(jìn)行定位,也就是人體姿態(tài)識(shí)別。有了這些物體檢測(cè)、姿態(tài)檢測(cè)以后可以分析行人,分析人的動(dòng)作。
關(guān)鍵點(diǎn)定位識(shí)別任務(wù)具有許多難點(diǎn),例如說人可能穿不同顏色衣服,會(huì)被遮擋,人身體變動(dòng)靈活,會(huì)由于形變產(chǎn)生劇烈視覺信息變化。
為了處理好視覺信息,我們引入結(jié)構(gòu)化學(xué)習(xí),學(xué)習(xí)輸出結(jié)構(gòu)化的信息在我們打開深度學(xué)習(xí)黑盒子的過程中是很重要的一環(huán)。我們期望利用對(duì)問題的理解,幫助我們?cè)谏疃葘W(xué)習(xí)能達(dá)到的結(jié)果之上得到更多的改善。
對(duì)于結(jié)構(gòu)化輸出的建模,我們有一些工作。比如在人體姿態(tài)識(shí)別任務(wù)中,對(duì)人體關(guān)鍵點(diǎn)之間的空間結(jié)構(gòu)關(guān)系可以進(jìn)行建模。對(duì)于人與人之間的交互,可能會(huì)有很多交互因素,比如說有交互動(dòng)作,具體到擁抱、手拉手。其它交互因素,比如說人與人之間的距離,傾斜度、朝向等這些因素,他們之間也會(huì)有位置關(guān)系,所以可以將它們進(jìn)行結(jié)構(gòu)化建模?;趩文繑z像頭得到深度信息預(yù)測(cè)任務(wù),可以利用卷積網(wǎng)絡(luò)幫我們?cè)诓煌直媛侍卣髦械玫讲煌瑢?duì)于深度信息的預(yù)測(cè),它們之間也有很多相關(guān)性,可以對(duì)它們進(jìn)行結(jié)構(gòu)化建模。最新工作考慮不同的模態(tài),在跨攝像頭尋人信息中對(duì)比兩個(gè)圖片是不是同一個(gè)人,對(duì)于人分割多值信息可以有結(jié)構(gòu)化信息幫助我們進(jìn)行建模。
在進(jìn)一步打開深度學(xué)習(xí)黑盒子的情況下,我們可以引入標(biāo)簽或者輸出所不具備的因素,把對(duì)于因素中特性的建模和深度特征的學(xué)習(xí)繼續(xù)聯(lián)合學(xué)習(xí)。具體例子就是物體檢測(cè),我們會(huì)遇到遮擋以及人的形變產(chǎn)生的變化,這些因素都是隱含的,標(biāo)簽中只有一個(gè)矩形框,沒有這些信息。如果能夠設(shè)計(jì)需要非常少參數(shù)的方法能夠把隱含因素推理到,其實(shí)就能夠幫助到模型學(xué)到更好的特征,并實(shí)現(xiàn)更好的結(jié)果。
例如說有一幅圖像,我們可以利用深度學(xué)習(xí)模型或者已有手工設(shè)計(jì)的特征對(duì)它進(jìn)行處理。這個(gè)任務(wù)中,一個(gè)隱含的因素是形變,我們可以引入處理形變和學(xué)習(xí)形變的模型,一個(gè)著名模型是deformable part model。另一個(gè)隱含因素是遮擋,比如說在這幅圖中這個(gè)人腿就被椅子擋住了。如果能夠?qū)θ梭w的遮擋進(jìn)行推理,能夠把一些被遮擋的部分找出來,不要用被擋住的椅子學(xué)習(xí)人腿的視覺形狀。如果能夠得到這樣的隱含因素可以進(jìn)一步提高檢測(cè)效果。最后是進(jìn)行分類。這些模塊之間的學(xué)習(xí)都是固定住前面一部分的參數(shù),學(xué)習(xí)最后的參數(shù),每個(gè)模塊之間缺乏通信。我們可以設(shè)計(jì)聯(lián)合深度學(xué)習(xí)模型,將這些模塊聯(lián)合起來,在每次參數(shù)學(xué)習(xí)中,都能夠進(jìn)行非常好的通信,從而使各模塊通過互相溝通學(xué)習(xí)到更好的模型以提高準(zhǔn)確率。
這是我們?cè)O(shè)計(jì)基本模型,首先利用卷積網(wǎng)絡(luò)幫我們學(xué)習(xí)到特征,有了特征以后就可以利用形變層((deformation layer))學(xué)習(xí)身體各個(gè)部分的形變。
假設(shè)有一個(gè)檢測(cè)器可以檢測(cè)人的肩膀在圖片中的位置,其中一個(gè)檢測(cè)器的例子就是這樣一個(gè)肩膀,如果把這個(gè)肩膀檢測(cè)器在圖片中進(jìn)行滑動(dòng)的匹配將會(huì)得到這樣的響應(yīng)圖譜。在沒有肩膀的地方會(huì)有我們不想要的高的響應(yīng),如果使用這些區(qū)域?qū)W習(xí)人的肩膀長(zhǎng)什么樣,特征學(xué)不好,肩膀的檢測(cè)器也學(xué)不好。為了處理好這個(gè)問題,我們可以利用形變的特性。我們可以考慮到人的肩膀不會(huì)從對(duì)應(yīng)的位置跑到人的右下角,所以我們?cè)O(shè)計(jì)形變的圖譜,自動(dòng)學(xué)習(xí)人的形變特性。將這種概率化的描述轉(zhuǎn)化成圖譜,進(jìn)行疊加就會(huì)得到修正以后的圖譜。如果利用修正以后的圖譜進(jìn)行檢測(cè),可以準(zhǔn)確定位形變物體到底在哪里,相對(duì)于特征和檢測(cè)學(xué)習(xí)就會(huì)得到更好的結(jié)果。
另一方面,人的身體各個(gè)部位會(huì)被遮擋,會(huì)涉及不同大小身體部位的檢測(cè)器。比如說關(guān)于人的左腿和右腿的檢測(cè)器,如果兩個(gè)檢測(cè)器都被遮擋,兩條腿會(huì)一起被遮擋,所以不同檢測(cè)器它們之間關(guān)系可以用deep belief net來學(xué)習(xí)。
我們進(jìn)行了一些實(shí)驗(yàn),在2013年時(shí)最大的行人檢測(cè)數(shù)據(jù)庫(kù)上,使用手工設(shè)計(jì)的特征再加上已有的分類器錯(cuò)誤率為68%。如果處理好形變隱含的因素可以降到63%,如果將特征學(xué)習(xí)以及形變和遮擋進(jìn)行聯(lián)合學(xué)習(xí)可以將錯(cuò)誤率降到39%。如果進(jìn)一步使用更好深度學(xué)習(xí)的方式,最近的工作錯(cuò)誤率可以降低到9%。
論文相關(guān)代碼在如下地址:
http://www.ee.cuhk.edu.hk/~wlouyang/projects/ouyangWiccv13Joint/index.html.
上面所說的我們對(duì)于形變和遮擋這兩個(gè)隱含因素的學(xué)習(xí)主要用在單個(gè)行人檢測(cè)工作中,我們將它進(jìn)行拓展。第一個(gè)拓展是把形變的學(xué)習(xí)拓展到普適的物體檢測(cè)中,我們開發(fā)了一個(gè)新的形變學(xué)習(xí)模型,這個(gè)工作2017發(fā)表在PAMI,連續(xù)幾個(gè)月都是TPAMI最受歡迎的文章之一。
另外一個(gè)擴(kuò)展是將對(duì)于單個(gè)行人的可見性與不可見性的推理運(yùn)用到兩個(gè)行人之中,互相遮擋的情況下,他們之間可見性有相融和不相融的關(guān)系,從而提高互相遮擋情況下的效果。
上面介紹的是我們利用隱含因素具體研究形變以及遮擋兩個(gè)隱含因素,對(duì)這兩個(gè)隱含因素參數(shù)的學(xué)習(xí)和深度學(xué)習(xí)中特征學(xué)習(xí)進(jìn)行聯(lián)合學(xué)習(xí),從而提高最終我們具體任務(wù)的效果。
為了進(jìn)一步的打開深度學(xué)習(xí)的黑盒子,我們考慮特征之間的結(jié)構(gòu)化建模。它的動(dòng)機(jī)是來自于另外一個(gè)觀察。全連接網(wǎng)絡(luò)或者卷積網(wǎng)絡(luò)它們有一個(gè)共同特性,在同一層中神經(jīng)元是沒有連接的,但人腦并不是這樣,在人腦中同一層神經(jīng)元之間是有連接的。
關(guān)于深度學(xué)習(xí),研究者得到最多的信息就是要設(shè)計(jì)很好的學(xué)習(xí)方法以及很好模型設(shè)計(jì)方式,使得模型變得越來越深。是不是把模型變得更深就是我們唯一的出路呢?另外一個(gè)問題是做視覺研究者對(duì)于問題的觀察以及理解是不是也會(huì)有幫助?為了回答這個(gè)問題,我們?cè)O(shè)計(jì)了GBD-Net。GBD-NET利用上下文信息,幫助我們識(shí)別所感興趣的物體是什么。
計(jì)算機(jī)視覺研究者很早就知道上下文信息對(duì)于識(shí)別物體有幫助。有了深度學(xué)習(xí)模型以后怎樣考慮上下文信息呢?我們考慮的是可以學(xué)習(xí)不同上下文信息的特征之間的關(guān)系。比如說,現(xiàn)在有一個(gè)特征對(duì)應(yīng)的是兔子的耳朵,它是比較少的上下文的信息,可以推測(cè)到下面應(yīng)該有兔子的頭。因此兔子耳朵這樣比較少上下文的特征和兔子頭這個(gè)比較多的上下文特征,反之亦然。由此可見,不同上下文信息的特征之間可以互相驗(yàn)證。
而另外一方面如果看見一個(gè)兔子耳朵并不一定下面就有兔子的頭,如上圖中的反例。在這種情況下,如果我們看見下面不是兔子的頭,而是一個(gè)人的臉,我們希望的是讓這個(gè)兔子的耳朵不要傳遞信息給兔子的頭。因此信息是需要傳遞的,但是信息的傳遞是需要受到控制的。
基于已有的檢測(cè)網(wǎng)絡(luò)基礎(chǔ)上我們?cè)O(shè)計(jì)了GBD-Net。它利用已有網(wǎng)絡(luò)結(jié)構(gòu)得到不同上下文特征。有了不同上下文信息特征以后,開始進(jìn)行信息傳遞。
可以把信息從上往下傳,也就是讓上下文信息比較少的特征傳遞給上下文信息比較多的特征。也可以進(jìn)行反向的傳遞,就是把上下文信息比較多的特征傳遞給上下文信息比較少的特征。我們將兩組通過不同方向傳遞的特征會(huì)進(jìn)行結(jié)合,也引入一個(gè)函數(shù)來幫助我們控制信息的傳遞。
經(jīng)過信息傳遞以后,這些特征將會(huì)被得到修正,我們利用修正特征幫助我們做最終檢測(cè)的任務(wù)。
實(shí)驗(yàn)發(fā)現(xiàn)在不同的數(shù)據(jù)庫(kù)和不同網(wǎng)絡(luò)結(jié)構(gòu)中,使用我們這樣的特征之間傳遞信息的方法,效果都可以得到很好的改善。我們利用這個(gè)方法參加了2016年的競(jìng)賽,在靜態(tài)物體檢測(cè)和動(dòng)態(tài)視頻物體檢測(cè)跟蹤中我們都取得第一名。
對(duì)GBD-Net進(jìn)行總結(jié)。第一點(diǎn),特征仍然是重要的。第二點(diǎn),視覺工作者基于專業(yè)知識(shí)對(duì)于問題的觀察和分析同樣重要。第三點(diǎn),我們使用深度學(xué)習(xí),把它當(dāng)做一個(gè)工具來幫助將特征之間的關(guān)系進(jìn)行建模。具體而言,我們?cè)O(shè)計(jì)的GBD-Net是在不同上下文特征之間進(jìn)行信息傳遞。論文相關(guān)代碼可以掃描二維碼。
剛才所做的只是在物體檢測(cè)中,是不是這個(gè)特征之間的結(jié)構(gòu)建模只是適用于物體檢測(cè)呢?其實(shí)不是這樣的,它在其他很多工作中也是有效的。比如說在人體姿態(tài)識(shí)別中,我們考慮每一個(gè)人體的關(guān)鍵點(diǎn)都是一個(gè)特征,在這些特征中可以進(jìn)行信息傳遞。可以考慮每個(gè)關(guān)鍵點(diǎn)分別對(duì)應(yīng)的一組特征,有了對(duì)應(yīng)特征以后可以把對(duì)應(yīng)特征認(rèn)為是結(jié)點(diǎn),有了結(jié)點(diǎn)以后可以考慮人體關(guān)鍵點(diǎn)樹型結(jié)構(gòu),在樹形結(jié)構(gòu)上的各個(gè)結(jié)點(diǎn)之間進(jìn)行信息傳遞。論文相關(guān)代碼在:
https://github.com/chuxiaoselena/StructuredFeature.
剛才我們所介紹的仍然是具有類似語義信息的這樣一些特征,其實(shí)這樣的特征并不一定要具有相同語義。在具體工作中,可以考慮這些特征可以具有不同的語義信息。比如說物體檢測(cè)中可能有專門對(duì)應(yīng)每一個(gè)物體的特征,比如說這位女士自己的特征,對(duì)于牙刷也有它自己的特征,小孩和他的牙刷都有自己的特征,往上走不同物體之間關(guān)系也有一組專門識(shí)別物體關(guān)系的特征。繼續(xù)上走,每個(gè)語句也有自己的特征。如果考慮每一個(gè)特征都是一個(gè)結(jié)點(diǎn)的話,仍然可以利用它們之間的關(guān)系,通用邊進(jìn)行信息傳遞,最終提高這三個(gè)不同任務(wù)的效果。
上面介紹利用結(jié)構(gòu)化信息傳遞在不同任務(wù)進(jìn)行結(jié)構(gòu)化信息建模。它面臨的問題是信息傳遞沒有任何理論指導(dǎo),我們只是通過觀察來設(shè)計(jì)并通過實(shí)驗(yàn)發(fā)現(xiàn)這樣做有效。為了解決這個(gè)問題,我們引入統(tǒng)計(jì)模型。具體而言,我們引入條件隨機(jī)場(chǎng),幫助我們進(jìn)行網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì)。網(wǎng)絡(luò)結(jié)構(gòu)符合這樣的統(tǒng)計(jì)模型。在具體工作中,我們對(duì)特征之間的信息傳遞利用條件隨機(jī)場(chǎng)進(jìn)行建模,也對(duì)加入門限控制的特征信息傳遞利用條件隨機(jī)場(chǎng)進(jìn)行建模。
在統(tǒng)計(jì)模型指導(dǎo)下,另外一個(gè)優(yōu)勢(shì)可以利用統(tǒng)計(jì)模型中一個(gè)很好的信息傳遞方法,幫助指導(dǎo)我們?cè)鯓釉诟鱾€(gè)節(jié)點(diǎn)之間傳遞信息才是最有效的。
所以,對(duì)于結(jié)構(gòu)化信息傳遞,在已有基礎(chǔ)上考慮結(jié)構(gòu)化的輸出,可以引入結(jié)構(gòu)化特征,將結(jié)構(gòu)化特征和結(jié)構(gòu)化輸出進(jìn)行聯(lián)合學(xué)習(xí)。
除了結(jié)構(gòu)化學(xué)習(xí),我們實(shí)驗(yàn)室在基礎(chǔ)網(wǎng)絡(luò)設(shè)計(jì)上我們也做了很多工作。林達(dá)華老師設(shè)計(jì)非常好的網(wǎng)絡(luò)-PoLyNet,它是一種非常深的網(wǎng)絡(luò)結(jié)構(gòu)。這個(gè)網(wǎng)絡(luò)結(jié)構(gòu)的基本想法是同一個(gè)模塊中,引入多個(gè)inception module,可以并行或串行。利用這個(gè)方法達(dá)華老師所帶的學(xué)生參加2016年的競(jìng)賽,競(jìng)賽中單個(gè)模型結(jié)果是當(dāng)時(shí)最好的。
另外一個(gè)工作動(dòng)機(jī)是,如果有同樣大小的人臉,但是局部特征是不一樣的。比如說在這個(gè)例子中有三張同樣大小人臉,但是人的眼睛和嘴巴視覺信息大小是不一樣的。這就要求我們的神經(jīng)元具有多樣性能夠捕捉到這些不同大小的特征。
為了捕捉到不同大小的特征,有一種設(shè)計(jì),就是設(shè)計(jì)不同大小的濾波器或者將不同大小的濾波器進(jìn)行疊加,比如說有3×3再往上疊,可以得到5x5,這會(huì)增大參數(shù)量和計(jì)算復(fù)雜度。
我們考慮另外一種方式就是下采樣。第一個(gè)分支中不采用任何下采樣,這樣情況下3×3的卷積對(duì)應(yīng)的視覺信息就是3×3的大小,如果另外一個(gè)分支使用2的下采樣,特征會(huì)變得原來1/2,3×3卷積看到大小就是6×6。通過這種方法,只需要改變下采樣的參數(shù),就能幫助我們實(shí)現(xiàn)捕捉不同大小特征的目的。最終,我們利用上采操作,使下采樣造成的不同大小分辨率的特征變成同樣大小,便于把它們連接起來。下采樣和上采樣不需要參數(shù),運(yùn)算快。這種做法取得了良好的實(shí)驗(yàn)效果。
論文相關(guān)代碼在:
https://github.com/bearpaw/PyraNet.
另外一個(gè)問題,最近大家提出多種網(wǎng)絡(luò)結(jié)構(gòu)化,如ResNet,DenseNet,ResNext,甚至像GoogleNet和我們?cè)O(shè)計(jì)的PolyNet,這些網(wǎng)絡(luò)具有一個(gè)共性:它有多個(gè)分支。有一個(gè)問題是,對(duì)應(yīng)于有多個(gè)分支的網(wǎng)絡(luò)結(jié)構(gòu)情況下,常用的參數(shù)初始化方法的基本假設(shè)是不成立的。如果用這樣的參數(shù)初始化會(huì)帶來一些問題。為了解決這個(gè)問題,我們進(jìn)行嚴(yán)格的理論推導(dǎo),并給出最終答案。推導(dǎo)發(fā)現(xiàn)與輸入、輸出分支數(shù)和參數(shù)初始化是相關(guān)的。在圖像分類以及人體姿態(tài)識(shí)別上都發(fā)現(xiàn)使用我們的方法以后會(huì)得到更好的效果。
另外就是人的行為識(shí)別。行為識(shí)別和很多做視頻任務(wù)里很重要的信息是運(yùn)動(dòng)。
如果要得到關(guān)于運(yùn)動(dòng)的信息,我們發(fā)現(xiàn)有一種很簡(jiǎn)單的操作,就是先得到兩幀圖像特征,把兩個(gè)特征點(diǎn)對(duì)點(diǎn)(element-wise)相減。這個(gè)相減是時(shí)間上的梯度,空間上的梯度可以用很簡(jiǎn)單的操作得到。這樣簡(jiǎn)單的操作它背后來源于我們數(shù)學(xué)的推導(dǎo),數(shù)學(xué)的推導(dǎo)告訴我們這樣特征的表示和光流(optical flow)是正交的,正交意味著它們是互補(bǔ)的,這種特征會(huì)擁有原來optical flow沒有的信息。實(shí)驗(yàn)發(fā)現(xiàn)使用我們這種特征而不使用optical flow,能達(dá)到的相似的準(zhǔn)確率,但在速度上可以快很多。另外,由于特征是由它互補(bǔ)的,特征結(jié)合以后可以進(jìn)一步改善準(zhǔn)確率。論文相關(guān)代碼會(huì)在近期提供。
總結(jié)一下,結(jié)構(gòu)化深度學(xué)習(xí)在很多視覺任務(wù)中都是有效的。結(jié)構(gòu)化信息通常是來源于觀察,來源于對(duì)問題的理解。視覺領(lǐng)域的研究者對(duì)特定問題的觀察和理解可以聯(lián)合深度學(xué)習(xí)一起推進(jìn)整個(gè)視覺的進(jìn)步。另外,我們可以對(duì)輸出和特征進(jìn)行結(jié)構(gòu)化的建模。而深度學(xué)習(xí)這樣一個(gè)工具提供的能力是將結(jié)構(gòu)的建模和特征的學(xué)習(xí)進(jìn)行聯(lián)合學(xué)習(xí),增大最終解決任務(wù)的能力。
-
濾波器
+關(guān)注
關(guān)注
162文章
8101瀏覽量
181300 -
黑盒子
+關(guān)注
關(guān)注
0文章
5瀏覽量
8849 -
深度學(xué)習(xí)
+關(guān)注
關(guān)注
73文章
5557瀏覽量
122556
原文標(biāo)題:讓機(jī)器“解疑釋惑”:視覺世界中的結(jié)構(gòu)化理解|VALSE2018之八
文章出處:【微信號(hào):deeplearningclass,微信公眾號(hào):深度學(xué)習(xí)大講堂】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
馬航MH370失聯(lián) 深藏飛機(jī)黑盒子內(nèi)部電子電路秘密大曝光
一文讀懂內(nèi)窺鏡軟窺FPGA解決方案

玩轉(zhuǎn)延時(shí)攝影,compass黑盒子的秘密
突然黑盒子我的項(xiàng)目
如何在系統(tǒng)設(shè)計(jì)中添加“黑盒子”故障記錄儀?
防窺門鏡(貓眼)的解決方案

防窺門鏡的研制

在系統(tǒng)設(shè)計(jì)中添加“黑盒子”故障記錄議

基站射頻可當(dāng)黑盒子設(shè)計(jì),背寄存器的時(shí)代結(jié)束了!
基于ARM和CPLD的無線內(nèi)窺系統(tǒng)設(shè)計(jì)
LED照明的黑盒子及廣義與狹義的照明設(shè)計(jì)介紹
特斯拉黑盒子的出現(xiàn)給智能門鎖澆上了一盆冷水
讓機(jī)器學(xué)習(xí)模型不再是”黑盒子“
軟件測(cè)試的代碼劃分:黑盒白盒灰盒的區(qū)別
在系統(tǒng)設(shè)計(jì)中添加“黑盒子”故障記錄議

評(píng)論