RA-CNN
RA-CNN網(wǎng)絡(luò)
論文:Look Closer to See Better: Reccurrent Attention Convolutional Neural Network for Fine-grained Image Recognition
摘要:識別細(xì)粒度的物體類別(如鳥類)是很困難的,這是因?yàn)榕袆e區(qū)域定位和細(xì)粒度特征學(xué)習(xí)是很具有挑戰(zhàn)性的?,F(xiàn)有的方法主要是單獨(dú)地來解決這些問題,而忽略了區(qū)域檢測和細(xì)粒度特征學(xué)習(xí)之間的相互關(guān)聯(lián)性,而且它們可以相互強(qiáng)化。本文提出了一種新的遞歸注意力卷積神經(jīng)網(wǎng)絡(luò)(RA-CNN),它以一種相互強(qiáng)化的方式在多個(gè)尺度(scale)上遞歸地學(xué)習(xí)判別區(qū)域注意力和基于區(qū)域的特征表示。每個(gè)scale網(wǎng)絡(luò)的學(xué)習(xí)都由分類網(wǎng)絡(luò)和APN網(wǎng)絡(luò)(attention proposal network)組成。APN從完整的圖像開始,通過把先前預(yù)測作為參考,從粗到細(xì)迭代地生成區(qū)域注意力(region attention),而更精細(xì)的scale網(wǎng)絡(luò)則以遞歸的方式從先前的尺度獲取放大的注意區(qū)域作為輸入。RA-CNN通過尺度內(nèi)的分類損失和尺度間的ranking損失進(jìn)行優(yōu)化,以相互學(xué)習(xí)精確的區(qū)域注意和細(xì)粒度表示。RA-CNN不需要邊界框或部分標(biāo)注,可以端到端進(jìn)行訓(xùn)練。綜合實(shí)驗(yàn)表明,RA-CNN在幼鳥、斯坦福狗和斯坦福汽車三種細(xì)粒度任務(wù)中獲得了最好的性能,相對準(zhǔn)確率分別增長了3.3%、3.7%、3.8%。1.介紹利用計(jì)算機(jī)視覺技術(shù)識別細(xì)粒度的分類(如鳥類分類、花卉分類、汽車模型等)引起了廣泛的關(guān)注。這項(xiàng)任務(wù)非常具有挑戰(zhàn)性,因?yàn)橐恍┘?xì)粒度的類別只能由領(lǐng)域?qū)<易R別。與一般識別不同,細(xì)粒度圖像識別能夠進(jìn)行局部定位,并且能夠表示從屬類別中非常邊緣的視覺差異,因此受益于各種各樣的應(yīng)用。細(xì)粒度識別面臨的挑戰(zhàn)主要有兩個(gè)方面:區(qū)域定位和細(xì)粒度特征學(xué)習(xí)。區(qū)域檢測和細(xì)粒度特征學(xué)習(xí)是相互關(guān)聯(lián)的,可以相互促進(jìn)。圖1是兩類啄木鳥,可以從局部的區(qū)域(例如黃色框中的頭部)觀察到非常細(xì)微的差異,這些區(qū)域很難從原始scale中學(xué)習(xí)。然而,如果能夠?qū)W會在更精細(xì)的scale上放大注意的區(qū)域,這種差異就會更加明顯。準(zhǔn)確的頭部定位可以促進(jìn)學(xué)習(xí)辨別頭部特征,進(jìn)一步有助于確定存在于后腦中不同顏色。圖1針對上述問題,作者提出了遞歸注意卷積神經(jīng)網(wǎng)絡(luò)(RA-CNN),不需要對數(shù)據(jù)做類似bounding box的標(biāo)注就能取得和采用類似bounding box標(biāo)注的算法效果。RA-CNN是一個(gè)多層網(wǎng)絡(luò),它在多個(gè)尺度上輸入從全圖像到細(xì)粒度的局部區(qū)域。首先,多尺度網(wǎng)絡(luò)共享相同的網(wǎng)絡(luò)架構(gòu),但在每個(gè)尺度上具有不同的參數(shù),以適應(yīng)具有不同分辨率的輸入(例如,圖1中的粗尺度和細(xì)尺度)。每個(gè)尺度上的學(xué)習(xí)由一個(gè)分類子網(wǎng)和一個(gè)注意建議子網(wǎng)(APN)組成,APN可以保證每個(gè)尺度上有足夠的辨別能力,并為下一個(gè)更精細(xì)的尺度生成一個(gè)精確的注意區(qū)域。第二,用于高分辨率區(qū)域的更精細(xì)的網(wǎng)絡(luò)將放大的注意區(qū)域作為輸入,以提取更細(xì)粒度的特征。第三,RA-CNN網(wǎng)絡(luò)通過尺度內(nèi)分類網(wǎng)絡(luò)的softmax損失和尺度間APN網(wǎng)絡(luò)的ranking損失交替優(yōu)化。Ranking損失能夠優(yōu)化更精細(xì)的網(wǎng)絡(luò),使在正確的類別上產(chǎn)生比先前預(yù)測更高的置信分?jǐn)?shù)。由于更精細(xì)的網(wǎng)絡(luò)能夠以遞歸的方式堆疊,RA-CNN可以從粗到細(xì)逐漸關(guān)注最具辨別力的區(qū)域(例如,從身體到頭部,然后到鳥喙)。注意,精確的區(qū)域定位有助于基于區(qū)域的特征識別,反之亦然。因此,提出的網(wǎng)絡(luò)可以從區(qū)域定位和特征學(xué)習(xí)之間的相互強(qiáng)化中獲益。為了進(jìn)一步發(fā)揮集成學(xué)習(xí)的優(yōu)勢,通過學(xué)習(xí)一個(gè)完全連通的融合層,對多尺度特征進(jìn)行深度融合,對圖像進(jìn)行分類。據(jù)我們所知,這項(xiàng)工作首次嘗試提出一個(gè)用于細(xì)粒度識別的多尺度遞歸注意網(wǎng)絡(luò)。貢獻(xiàn)概括如下:1.通過提出一種新的遞歸注意卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)來解決細(xì)粒度識別的挑戰(zhàn),該結(jié)構(gòu)能夠以相互加強(qiáng)的方式準(zhǔn)確檢測鑒別區(qū)域和有效學(xué)習(xí)基于區(qū)域的表示。2.提出了pair ranking損失來優(yōu)化APN。與只進(jìn)行標(biāo)簽監(jiān)督的區(qū)域定位相比,這種設(shè)計(jì)有利于網(wǎng)絡(luò)在參考以往尺度的基礎(chǔ)上,逐漸關(guān)注更細(xì)粒度的區(qū)域。3.對三個(gè)具有挑戰(zhàn)性的數(shù)據(jù)集(幼鳥、斯坦福狗、斯坦福汽車)進(jìn)行了綜合的實(shí)驗(yàn),并在所有這些數(shù)據(jù)集上取得了優(yōu)于最先進(jìn)方法的性能。論文的其余部分安排如下。第2節(jié)回顧了相關(guān)工作。第3節(jié)介紹了本文提出的方法。第4節(jié)提供了評估和分析,第5節(jié)是結(jié)論。相關(guān)工作細(xì)粒度圖像識別的研究主要從兩個(gè)方面展開,即判別特征學(xué)習(xí)和精細(xì)部位定位。2.1 判別特征學(xué)習(xí)學(xué)習(xí)判別特征是細(xì)粒度圖像識別的關(guān)鍵。由于深度學(xué)習(xí)的成功,大多數(shù)方法都依賴于強(qiáng)大的卷積深度特征,這些特征在一般和細(xì)粒度類別上都比手工制作的特征顯示出顯著的改進(jìn)。為了學(xué)習(xí)更強(qiáng)的特征表示,深度殘差網(wǎng)絡(luò)[9]通過優(yōu)化殘差函數(shù)將CNN擴(kuò)展到152層,從而將ImageNet測試集上的錯(cuò)誤率降低到3.75%。為了更好地模擬細(xì)粒度分類中存在的細(xì)微差別,最近提出了雙線性結(jié)構(gòu)[19],用兩個(gè)獨(dú)立的CNN計(jì)算成對特征相互作用來捕獲圖像局部差異,這在鳥分類[30]中取得了最好的結(jié)果。此外,另一種方法[34]提出用Fisher向量[23]的空間加權(quán)表示統(tǒng)一CNN,這在bird[30]和dog數(shù)據(jù)集[13]上都顯示了優(yōu)越的結(jié)果。2.2 精細(xì)部位定位以前的工作主要聚焦在利用邊界框和部分標(biāo)注的額外注釋來定位細(xì)粒度識別中的重要區(qū)域。然而,手工標(biāo)注的大量參與使得這項(xiàng)任務(wù)對于大規(guī)模的實(shí)際問題來說并不實(shí)用。最近,出現(xiàn)了一些新的工作,旨在更一般的情況下,并建議使用無監(jiān)督的方法來關(guān)注礦區(qū)。一種基于視覺注意的方法提出了一種基于對象和部位的兩級域網(wǎng)絡(luò),其中部位模板通過聚類方案從CNN的內(nèi)部隱藏表示中學(xué)習(xí)[31]。選擇深度濾波響應(yīng)[34]和多粒度描述符[28]建議通過分析CNN的濾波響應(yīng)來學(xué)習(xí)一部分檢測器,這些響應(yīng)以無監(jiān)督的方式一致地響應(yīng)特定模式??臻g變換器[11]進(jìn)一步提出了一種動態(tài)機(jī)制,能夠主動地對圖像進(jìn)行空間變換以獲得更精確的分類。然而,現(xiàn)有的模型仍然很難精確地定位細(xì)微區(qū)域,因?yàn)樗鼈兊男〕叽?。與我們的網(wǎng)絡(luò)最相關(guān)的來自[20]和[35]。這兩種方法都提出了放大判別局部區(qū)域以提高細(xì)粒度識別的性能。然而,從[20]和[35]中學(xué)習(xí)區(qū)域定位器依賴于預(yù)處理的區(qū)域建議或類別標(biāo)簽,這對精確的區(qū)域定位提出了挑戰(zhàn)。3. 方法在這一部分中,我們將介紹所提出的用于細(xì)粒度圖像識別的遞歸注意卷積神經(jīng)網(wǎng)絡(luò)(RA-CNN)??紤]具有三個(gè)尺度的網(wǎng)絡(luò),如圖2所示,可以以類似的方式堆疊更精細(xì)的尺度。輸入是從a1的全尺寸圖像到a2和a3的細(xì)粒度判別區(qū)域的遞歸,其中a2和a3分別將輸入作為a1和a2的關(guān)注區(qū)域。首先,將不同尺度的圖像輸入到卷積層(b1到b3)中,提取基于區(qū)域的特征表示。其次,網(wǎng)絡(luò)通過全連接層和softmax層(c1到c3)去預(yù)測該圖片的類別概率,另一方面通過APN網(wǎng)絡(luò)(d1、d2)得到區(qū)域信息。通過交替學(xué)習(xí)每個(gè)尺度上的softmax分類損失和相鄰尺度上的pairwise ranking損失,優(yōu)化RA-CNN直至收斂。圖23.1 APN多任務(wù)規(guī)劃傳統(tǒng)的基于部位的細(xì)粒度識別框架沒有充分利用深度訓(xùn)練的網(wǎng)絡(luò)來相互促進(jìn)定位和識別的學(xué)習(xí)。受最近的區(qū)域建議網(wǎng)絡(luò)(RPN)成功的啟發(fā),本文提出了APN,關(guān)注區(qū)域的計(jì)算幾乎無代價(jià),且APN可以端到端訓(xùn)練。在給定輸入圖像X的情況下,首先通過將圖像送入預(yù)先訓(xùn)練好的卷積層來提取基于區(qū)域的深層特征。提取的深度表示被表示為WcX,其中,表示卷積、池和激活的一系列操作,Wc表示全部參數(shù)。進(jìn)一步將每個(gè)尺度上的網(wǎng)絡(luò)建模為具有兩個(gè)輸出的多任務(wù)公式。第一個(gè)任務(wù)旨在生成細(xì)粒度類別上的概率分布p,如下所示:其中f(·)表示全連接層和softmax層,用來將學(xué)習(xí)到的特征映射成類別概率,也就是P(X),第二個(gè)任務(wù)是為下一個(gè)更精細(xì)的尺度預(yù)測關(guān)注區(qū)域的盒坐標(biāo)。將關(guān)注區(qū)域近似為具有三個(gè)參數(shù)的正方形,通過以下方式給出:其中和表示方形的中心坐標(biāo),表示方形邊長的一半。g(x)函數(shù)也就是APN網(wǎng)絡(luò)可以用兩個(gè)全連接層實(shí)現(xiàn),其中最后一個(gè)全連接層的輸出channels是3,分別對應(yīng)、、。需要注意的是,與APN相比,在目標(biāo)檢測中,該網(wǎng)絡(luò)使用了groundtruth boxs的強(qiáng)監(jiān)督,由于part-level的標(biāo)注通常很難獲取,因此所提出的APN的學(xué)習(xí)是以弱監(jiān)督的方式訓(xùn)練的。具體的學(xué)習(xí)過程和損失函數(shù)將在3.2節(jié)中介紹。注意定位和放大一旦假設(shè)了一個(gè)關(guān)注區(qū)域的位置,就可以裁剪并放大關(guān)注區(qū)域,使其具有更高的分辨率,從而提取出更細(xì)粒度的特征。為了保證APN在訓(xùn)練中得到優(yōu)化,提出了一種二維Box Car函數(shù)作為attention mask的變體來近似裁剪操作。mask可以選擇正向傳播中最重要的區(qū)域,并且由于連續(xù)函數(shù)的特性,易于在反向傳播中進(jìn)行優(yōu)化。假設(shè)原始圖像中的左上角是像素坐標(biāo)系的原點(diǎn),其x軸和y軸分別從左到右和從上到下定義。可以把關(guān)注區(qū)域左上角(表示為“tl”)和右下角(表示為“br”)的點(diǎn)的參數(shù)化,如下所示:基于上述表示,剪裁操作可以通過在較粗尺度下的原始圖像和attention mask之間的逐點(diǎn)相乘來表示,計(jì)算公式如下:表示元素的逐點(diǎn)相乘,表示剪裁的關(guān)注區(qū)域,表示attention mask,具體形式為:其中.理論上當(dāng)k足夠大時(shí),可以看做是階梯函數(shù),在沿x和y維度的整條實(shí)線上值為0,在上值為1.使用boxcar函數(shù)的優(yōu)點(diǎn)有兩個(gè)方面。首先,boxcar函數(shù)可以很好地近似裁剪操作來從粗尺度網(wǎng)絡(luò)預(yù)測中選擇最重要的區(qū)域。其次,boxcar函數(shù)在關(guān)注區(qū)域和box坐標(biāo)之間建立解析表示,這在優(yōu)化反向傳播中的box參數(shù)時(shí)是必要的。盡管已經(jīng)定位了關(guān)注區(qū)域,但是從高度局部化的區(qū)域中提取有效的特征表示仍然很困難。因此,通過自適應(yīng)變焦進(jìn)一步放大區(qū)域到更大的尺寸。具體地說,利用中最近的四個(gè)輸入和雙線性插值來計(jì)算放大后的結(jié)果,計(jì)算公式如下:其中,是上采樣因子,等于放大尺寸的值除以,[·]和{·}分別是整數(shù)和小數(shù)部分。3.2 分類和RankingRA-CNN是通過兩類監(jiān)督進(jìn)行優(yōu)化的,即尺度內(nèi)分類損失和尺度間pairwise ranking損失,交替地產(chǎn)生精確的區(qū)域注意和學(xué)習(xí)更細(xì)粒度的特征。具體地說,最小化了多任務(wù)損失的目標(biāo)函數(shù)。一個(gè)圖像樣本的損失函數(shù)如下定義:其中,s表示每個(gè)尺度,表示每一個(gè)特定尺度上的預(yù)測標(biāo)簽向量,表示真實(shí)標(biāo)簽向量。表示分類損失,它能顯著地優(yōu)化卷積層(b1到b3)和分類層(c1到c3)的參數(shù),以確保在每個(gè)尺度上都有足夠的判別能力。訓(xùn)練就是利用softmax函數(shù)在訓(xùn)練集上擬合分類標(biāo)簽的過程。此外,表示真實(shí)標(biāo)簽為t的樣本的預(yù)測概率。特別地,ranking loss如下表示:在訓(xùn)練中促使,這樣設(shè)計(jì)可以使網(wǎng)絡(luò)以粗尺度的預(yù)測為參考,并通過訓(xùn)練更細(xì)尺度的網(wǎng)絡(luò)來生成更可靠的預(yù)測,逐步接近最具鑒別能力的區(qū)域。注意,和因不同的優(yōu)化目的交替生效,具體細(xì)節(jié)參見3.4節(jié)。3.3 多尺度聯(lián)合表示一旦RA-CNN在每個(gè)尺度上都得到訓(xùn)練,就可以獲得從全尺寸圖像到多個(gè)由粗到細(xì)區(qū)域的多尺度表示。特別地,圖像X可以由一組多尺度descriptors表示:其中Fi表示第i個(gè)scale網(wǎng)絡(luò)的全連接層輸出(圖2中的c1到c3),文中稱Fi為descriptor,N是scale的總數(shù)。為了充分利用特征集合的優(yōu)點(diǎn),首先對每個(gè)descriptor進(jìn)行獨(dú)立的規(guī)范化,然后將它們連接到一個(gè)具有softmax函數(shù)的全連接的融合層中進(jìn)行最終分類。softmax函數(shù)代替支持向量機(jī)(SVM)[3]的應(yīng)用主要是為了提高特征提取和分類的技術(shù)一致性,以便在測試中實(shí)現(xiàn)多尺度descriptor和分類的端到端。此外,作者還驗(yàn)證了softmax和線性支持向量機(jī)能夠產(chǎn)生可比較的分類結(jié)果。3.4網(wǎng)絡(luò)實(shí)現(xiàn)的細(xì)節(jié)訓(xùn)練策略為了更好地優(yōu)化注意力定位和細(xì)粒度分類,作者采取了下面的交替訓(xùn)練策略。Step1:作者通過來自ImageNet的相同的預(yù)訓(xùn)練VGG網(wǎng)絡(luò)來初始化卷積層和分類層。Step2:考慮一個(gè)邊長是原始圖像一半的正方形(用tx,ty,tl表示)。該正方形是通過搜索原始圖像中在最后一個(gè)卷積層(即VGG-19中的conv5 4)中具有最高響應(yīng)值的區(qū)域得到的。用類似的方法分析第二個(gè)尺度的卷積響應(yīng),進(jìn)一步得到一個(gè)更小的正方形。通過學(xué)習(xí)從卷積特征到{tx,ty,tl}的變換,這些選定的正方形可以用于預(yù)先訓(xùn)練APN以獲得圖2(d1),(d2)中的參數(shù)。Step3:作者用交替的方式優(yōu)化上述兩個(gè)步驟中的參數(shù)。具體地,保持APN參數(shù)不變,在三個(gè)scale上優(yōu)化softmax函數(shù)直至收斂,然后固定卷積層和分類層中的參數(shù),轉(zhuǎn)向ranking損失來優(yōu)化兩個(gè)APN。不斷迭代這兩部分的學(xué)習(xí)過程,直到這兩類損失不再改變。此外,為了避免目標(biāo)結(jié)構(gòu)在過小時(shí)不完整,每個(gè)scale的都被限制不小于先前粗尺度的。優(yōu)化注意力學(xué)習(xí)作者通過計(jì)算的導(dǎo)數(shù)來說明注意學(xué)習(xí)的機(jī)制,并說明其對區(qū)域剪裁的影響,由于ranking損失函數(shù)關(guān)于的導(dǎo)數(shù)具有相同的形式,作者以為例利用反向傳播中的鏈?zhǔn)椒▌t計(jì)算其導(dǎo)數(shù):表示元素的逐點(diǎn)相乘,表示在某個(gè)特定的scale上反向傳播到輸入層的導(dǎo)數(shù),它表示每個(gè)像素對于整個(gè)網(wǎng)絡(luò)激活的重要性。作者簡化了導(dǎo)數(shù)的形式為和。極小化問題中,如果,則遞增,否則遞減。為了獲得與人類感知一致的方向,作者進(jìn)一步按照[15]計(jì)算了導(dǎo)數(shù)范數(shù)的負(fù)平方。導(dǎo)數(shù)圖如圖3的下面一行所示。點(diǎn)越暗,絕對值越大。每一個(gè)導(dǎo)數(shù)圖對應(yīng)于上面一行中具有相同維度的輸入。此外,表示mask函數(shù)對的導(dǎo)數(shù),可用分段函數(shù)表示,定性評估為:其中符號“”表示接近x,關(guān)于的導(dǎo)數(shù)有相似的形式:因?yàn)樵谶吔缣幦≌?#xff0c;在內(nèi)部取負(fù)值,因此mask關(guān)于的導(dǎo)數(shù)由下式給出:基于上述分析,作者得出圖3(a)中的是正的,因?yàn)樵趯?dǎo)數(shù)圖中負(fù)值的點(diǎn)主要分布在左上角,在左側(cè)區(qū)域是負(fù)的。同理,是正的,因?yàn)樵谏蟼?cè)區(qū)域是負(fù)的。因?yàn)閷?dǎo)數(shù)映射在邊界是0,在內(nèi)部是負(fù)的,所以是正的。因此下次迭代中和都將變小,它和人們的預(yù)期是一樣的。圖3(b)中的優(yōu)化也可做類似的分析。圖34.實(shí)驗(yàn)4.1數(shù)據(jù)和基礎(chǔ)網(wǎng)絡(luò)數(shù)據(jù):作者在三個(gè)具有挑戰(zhàn)性的細(xì)粒度圖像識別數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),包括Caltech-UCSD Birds(CUB-200-2011)[30],Stanford Dogs[13]和Stanford Cars[16].具體的種類數(shù)目和數(shù)據(jù)分割總結(jié)在表1中?;A(chǔ)網(wǎng)絡(luò):作者將比較方法分為兩類,一根據(jù)是否利用人工定義的bounding box或部分標(biāo)注。下面的前五種方法利用人工監(jiān)督,后八種方法是利用無監(jiān)督區(qū)域?qū)W習(xí)。由于它們在兩類方法中都取得了很好的結(jié)果,因此作者對它們進(jìn)行了比較。下面列出了所有的基礎(chǔ)網(wǎng)絡(luò):訓(xùn)練時(shí)輸入圖像(scale1)和關(guān)注區(qū)域(scale2,3)的大小分別為448448和224224像素。對于鳥數(shù)據(jù)集,作者使用VGG-19[27](在ImageNet網(wǎng)絡(luò)上進(jìn)行過預(yù)訓(xùn)練),對于狗數(shù)據(jù)集,使用VGG-16。作者發(fā)現(xiàn)k取10,margin取0.05時(shí)優(yōu)化的魯棒性最好。模型共享網(wǎng)址:https://github.com/Jianlong-Fu/Recurrent-Attention-CNN.4.2 在CUB-2011數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn)區(qū)域定位細(xì)粒度圖像識別4.3 在Standford Dogs數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn)4.4 在Standford Cars數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn)5.結(jié)論本文提出了一種用于細(xì)粒度識別的遞歸注意卷積神經(jīng)網(wǎng)絡(luò),它在多個(gè)尺度上遞歸學(xué)習(xí)具有判別性的區(qū)域注意和基于區(qū)域的特征表示。所提出的網(wǎng)絡(luò)不需要邊界盒/零件標(biāo)注進(jìn)行訓(xùn)練,可以端到端進(jìn)行訓(xùn)練。大量的實(shí)驗(yàn)表明,該算法在鳥、狗和汽車的注意力定位和細(xì)粒度識別任務(wù)中具有優(yōu)異的性能。今后,作者將從兩個(gè)方向進(jìn)行研究。首先,如何在保持全局圖像結(jié)構(gòu)的同時(shí),對局部視覺線索進(jìn)行建模,從而在更精細(xì)的尺度上保持性能的提高。第二,如何整合多個(gè)區(qū)域的注意力,建立更復(fù)雜的細(xì)粒度分類模型。
總結(jié)
- 上一篇: prometheus监控软件的使用
- 下一篇: 八月节日营销活动方案