深度特征融合理解add和concat之多層特征融合_第1頁(yè)
深度特征融合理解add和concat之多層特征融合_第2頁(yè)
深度特征融合理解add和concat之多層特征融合_第3頁(yè)
深度特征融合理解add和concat之多層特征融合_第4頁(yè)
深度特征融合理解add和concat之多層特征融合_第5頁(yè)
已閱讀5頁(yè),還剩1頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

深度特征融合---理解add和concat之多層特征融合一、如何理解concat和add的方式融合特征在各個(gè)網(wǎng)絡(luò)模型中,ResNet,F(xiàn)PN等采用的element-wiseadd來(lái)融合特征,而DenseNet等則采用concat來(lái)融合特征。那add與concat形式有什么不同呢?事實(shí)上兩者都可以理解為整合特征圖信息。只不過(guò)concat比擬直觀,而add理解起來(lái)比擬生澀。從圖中可以發(fā)現(xiàn),concat是通道數(shù)的增加;add是特征圖相加,通道數(shù)不變你可以這么理解,add是描述圖像的特征下的信息量增多了,但是描述圖像的維度本身并沒(méi)有增加,只是每一維下的信息量在增加,這顯然是對(duì)最終的圖像的分類(lèi)是有益的。而concatenate是通道數(shù)的合并,也就是說(shuō)描述圖像本身的特征數(shù)〔通道數(shù)〕增加了,而每一特征下的信息是沒(méi)有增加。concat每個(gè)通道對(duì)應(yīng)著對(duì)應(yīng)的卷積核。而add形式則將對(duì)應(yīng)的特征圖相加,再進(jìn)行下一步卷積操作,相當(dāng)于加了一個(gè)先驗(yàn):對(duì)應(yīng)通道的特征圖語(yǔ)義類(lèi)似,從而對(duì)應(yīng)的特征圖共享一個(gè)卷積核〔對(duì)于兩路輸入來(lái)說(shuō),如果是通道數(shù)相同且后面帶卷積的話,add等價(jià)于concat之后對(duì)應(yīng)通道共享同一個(gè)卷積核〕。因此add可以認(rèn)為是特殊的concat形式。但是add的計(jì)算量要比concat的計(jì)算量小得多。另解釋:對(duì)于兩路輸入來(lái)說(shuō),如果是通道數(shù)相同且后面帶卷積的話,add等價(jià)于concat之后對(duì)應(yīng)通道共享同一個(gè)卷積核。下面具體用式子解釋一下。由于每個(gè)輸出通道的卷積核是獨(dú)立的,我們可以只看單個(gè)通道的輸出。假設(shè)兩路輸入的通道分別為X1,X2,…,Xc和Y1,Y2,…,Yc。那么concat的單個(gè)輸出通道為〔*表示卷積〕:而add的單個(gè)輸出通道為:因此add相當(dāng)于加了一種prior,當(dāng)兩路輸入可以具有“對(duì)應(yīng)通道的特征圖語(yǔ)義類(lèi)似〞〔可能不太嚴(yán)謹(jǐn)〕的性質(zhì)的時(shí)候,可以用add來(lái)替代concat,這樣更節(jié)省參數(shù)和計(jì)算量〔concat是add的2倍〕。FPN[1]里的金字塔,是希望把分辨率最小但語(yǔ)義最強(qiáng)的特征圖增加分辨率,從性質(zhì)上是可以用add的。如果用concat,因?yàn)榉直媛市〉奶卣魍ǖ罃?shù)更多,計(jì)算量是一筆不少的開(kāi)銷(xiāo)Resnet是做值的疊加,通道數(shù)是不變的,DenseNet是做通道的合并。你可以這么理解,add是描述圖像的特征下的信息量增多了,但是描述圖像的維度本身并沒(méi)有增加,只是每一維下的信息量在增加,這顯然是對(duì)最終的圖像的分類(lèi)是有益的。而concatenate是通道數(shù)的合并,也就是說(shuō)描述圖像本身的特征增加了,而每一特征下的信息是沒(méi)有增加。通過(guò)keras代碼,觀察了add對(duì)參數(shù)的影響,以及concat操作數(shù)組的結(jié)果。二、concat實(shí)操Concat層解析在channel維度上進(jìn)行拼接,在channel維度上的拼接分成無(wú)BN層和有BN層。〔1〕無(wú)BN層:直接將deconvolutionlayer和convolutionlayerconcat。實(shí)驗(yàn)結(jié)果說(shuō)明,該方式取得的結(jié)果精度較低,低于原有的VGG模型,分析主要的原因是漏檢非常嚴(yán)重,原因應(yīng)該是concat連接的兩層參數(shù)不在同一個(gè)層級(jí),類(lèi)似BN層用在eltwise層上。〔2〕有BN層:在deconvolutionlayer和convolutionlayer后面加batchnorm和scale層〔BN〕后再concat。實(shí)驗(yàn)結(jié)果說(shuō)明,該方式取得了比原有VGG模型更好的檢測(cè)效果〔表中的迭代次數(shù)還沒(méi)有完哦〕,增加了2%的精度,但是速度上慢了一些。總結(jié):concat層多用于利用不同尺度特征圖的語(yǔ)義信息,將其以增加channel的方式實(shí)現(xiàn)較好的性能,但往往應(yīng)該在BN之后再concat才會(huì)發(fā)揮它的作用,而在num維度的拼接較多使用在多任務(wù)問(wèn)題上,將在后續(xù)的博客中介紹,總之concat層被廣泛運(yùn)用在工程研究中。三、concat與add實(shí)例3.1Densenet與inception的加寬網(wǎng)絡(luò)結(jié)構(gòu)以及ResNet的加深網(wǎng)絡(luò)結(jié)構(gòu)不同,DenseNet著重于對(duì)每一層featuremaps的重復(fù)利用。在一個(gè)Denseblock中,每一個(gè)卷積層的輸入都是前幾個(gè)卷積層輸出的concatenation(拼接),這樣即每一次都結(jié)合了前面所得到的特征,來(lái)得到后續(xù)的特征。但是,其顯存占用率高的缺點(diǎn)也比擬明顯〔因?yàn)閏oncatenation,不過(guò)好在后續(xù)有了解決方法:〔論文〕Memory-EfficientImplementationofDenseNets〕。DenseNet優(yōu)勢(shì):〔1〕解決了深層網(wǎng)絡(luò)的梯度消失問(wèn)題〔2〕加強(qiáng)了特征的傳播〔3〕鼓勵(lì)特征重用〔4〕減少了模型參數(shù)〔5〕能夠減少小樣本的過(guò)擬合問(wèn)題DensNet缺點(diǎn):〔1〕非常消耗顯存Densnet根本結(jié)構(gòu)DenseNet的網(wǎng)絡(luò)根本結(jié)構(gòu)如上圖所示,主要包含DenseBlock和transitionlayer兩個(gè)組成模塊。其中DenseBlock為稠密連接的highway的模塊,transitionlayer為相鄰2個(gè)DenseBlock中的那局部。DenseBlock結(jié)構(gòu)上圖是一個(gè)詳細(xì)的DenseBlock模塊,其中層數(shù)為5,即具有5個(gè)BN+Relu+Conv(3*3)這樣的layer,網(wǎng)絡(luò)增長(zhǎng)率為4,簡(jiǎn)單的說(shuō)就是每一個(gè)layer輸出的featuremap的維度為4。由于DenseNet的每一個(gè)DenseBlock模塊都利用到了該模塊中前面所有層的信息,即每一個(gè)layer都和前面的layer有highway的稠密連接。假設(shè)一個(gè)具有L層的網(wǎng)絡(luò),那么highway稠密連接數(shù)目為L(zhǎng)*(L+1)/2。和Resnet不同的是,這里的連接方式得到的featuremap做的是concat操作,而resnet中做的是elementwise操作。DenseNet降維highway的稠密連接方式具有諸多的優(yōu)勢(shì),增加了梯度的傳遞,特征得到了重用,甚至減少了在小樣本數(shù)據(jù)上的過(guò)擬合。但是隨之產(chǎn)生2個(gè)缺點(diǎn):〔1〕DenseBlock靠后面的層的輸入channel過(guò)大—每層開(kāi)始的時(shí)候引入Bottleneck:這里假設(shè)第L層輸出K個(gè)featuremap,即網(wǎng)絡(luò)增長(zhǎng)率為K,那么第L層的輸入為K0+K*(L-1),其中K0為輸入層的維度。也就是說(shuō),對(duì)于DenseBlock模塊中每一層layer的輸入featuremap時(shí)隨著層數(shù)遞增的,每次遞增為K,即網(wǎng)絡(luò)增長(zhǎng)率。那么這樣隨著DenseBlock模塊深度的加深,后面的層的輸入featuremap的維度是很大的。為了解決這個(gè)問(wèn)題,在DenseNet-B網(wǎng)絡(luò)中,在DenseBlock每一層開(kāi)始的時(shí)候參加了Bottleneck單元,即1x1卷積進(jìn)行降維,被降到4K維(K為增長(zhǎng)率)?!?〕DenseBlock模塊的輸出維度很大—transitionlayer模塊中參加1*1卷積降維每一個(gè)DenseBlock模塊的輸出維度是很大的,假設(shè)一個(gè)L層的DenseBlock模塊,假設(shè)其中已經(jīng)參加了Bottleneck單元,那么輸出的維度為,第1層的維度+第2層的維度+第3層的維度+****第L層的維度,加了Bottleneck單元后每層的輸出維度為4K,那么最終DenseBlock模塊的輸出維度為4KL。隨著層數(shù)L的增加,最終輸出的featuremap的維度也是一個(gè)很大的數(shù)。為了解決這個(gè)問(wèn)題,在transitionlayer模塊中參加了11卷積做降維。其中,DenseNet-B在原始DenseNet的根底上,在DenseBlock模塊的每一層都參加了1*1卷積,使得將每一個(gè)layer輸入的featuremap都降為到4k的維度,大大的減少了計(jì)算量。DenseNet-BC在DenseNet-B的根底上,在transitionlayer模塊中參加了壓縮率θ參數(shù),論文中將θ設(shè)置為0.5,這樣通過(guò)1*1卷積,將上一個(gè)DenseBlock模塊的輸出featuremap維度減少一半。附:tensorflow下實(shí)現(xiàn)DenseNet對(duì)數(shù)據(jù)集cifar-10的圖像分類(lèi)3.2Feature-FusedSSD:FastDetectionforSmallObjects這里我們嘗試了兩種融合策略:conca

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論