感知算法论文(六):LEDNet(2019)
文章目錄
- 摘要
- 1. 引言
- 本文網(wǎng)絡(luò)結(jié)構(gòu)
- 2.1 帶有 Split and Shuffle Operations 的殘差模塊
- 2.2 LEDNet 網(wǎng)絡(luò)設(shè)計
- 3. 實(shí)驗(yàn)
- 3.1 實(shí)驗(yàn)落實(shí)細(xì)節(jié)
- 3.2 實(shí)驗(yàn)結(jié)果
- 4. 總結(jié)和展望
摘要
大量的計算限制了 CNNs 在移動設(shè)備上的部署,本文提升了一個輕量級網(wǎng)絡(luò) LEDNet 來解決該問題,該結(jié)構(gòu)使用不對稱的 “編碼-解碼” 機(jī)制來解決實(shí)時語義分割問題。
詳細(xì)來說,編碼器采用 RestNet 作為 backbone,每個殘差模塊都使用了 channel split 和 channel shuffle,來減小計算量并提高分割準(zhǔn)確率。
另外,解碼器中使用注意力金字塔網(wǎng)絡(luò) attention pyramid network(APN),降低網(wǎng)絡(luò)復(fù)雜度
本文模型參數(shù)低于1M,在單個 GTX 1080Ti GPU 上運(yùn)行速度超過71 FPS。
最終實(shí)驗(yàn)結(jié)果驗(yàn)證了本文的方法在 CityScapes 數(shù)據(jù)集上,同時達(dá)到了速度和準(zhǔn)確率的平衡。
1. 引言
目前,解決基于場景的問題基本上是靠搭建更深更大的卷積網(wǎng)絡(luò)來實(shí)現(xiàn)的。效果優(yōu)異的 CNNs 一般都有上百個卷積層和成千的特征通道。為了獲得更好的效果,通常要以犧牲時間和速度為代價。尤其在真實(shí)情景下,如 augmented reality、機(jī)器人、自動駕駛等,規(guī)模較小、計算成本較低的網(wǎng)絡(luò)能夠進(jìn)行在線估計,高精度的網(wǎng)絡(luò)需要龐大的算力,不適合部署于算力較低的移動平臺。
該限制在語義分割任務(wù)上的限制也很明顯,語義分割要對每個像素進(jìn)行類別劃分。
為了克服這些問題,出現(xiàn)了一些網(wǎng)絡(luò)來解決準(zhǔn)確率和效果直接的平衡,大概可以分為兩類:網(wǎng)絡(luò)壓縮 [9,10,11] 和卷積分解 [13,14,15] 。
網(wǎng)絡(luò)壓縮:
通過壓縮預(yù)訓(xùn)練網(wǎng)絡(luò),包括 hashing[9] ,pruning [10] 和 quantizaiton [11,12] 等推理階段的算法。為了更好的去除冗余,另一種方法是稀疏編碼 [16,17]。
卷積分解:
卷積分解機(jī)制 convolution factorization principle(CFP),是將標(biāo)準(zhǔn)的卷積過程分解為 group convolution 和深度可分離卷積 [3,15,18],之后直接訓(xùn)練小的網(wǎng)絡(luò)。
如 ENet[13]使用 RestNet作為backbone,來實(shí)現(xiàn)高效的推斷。[19] 中提出了級聯(lián)的網(wǎng)絡(luò),將 high-level 標(biāo)簽集成到網(wǎng)絡(luò),來提升性能。
[7,14,20] 中都使用一個對稱的編碼解碼機(jī)制,可以減小參數(shù)同時提升準(zhǔn)確率。
雖然已有部分工作對輕量級體系結(jié)構(gòu)網(wǎng)絡(luò)進(jìn)行了初步研究,但在非常有限的計算預(yù)算下追求最佳精度仍然是實(shí)時語義分割任務(wù)的一個有待研究的問題。
本文將該效率和準(zhǔn)確率的 trade-off 作為一個整體來解決,而非單個解決。本文引入一個 LEDNet,使用不對稱的 編碼-解碼 機(jī)制來實(shí)現(xiàn)實(shí)時語義分割。
如圖1所示, LEDNet 由兩部分構(gòu)成:編碼網(wǎng)絡(luò)和解碼網(wǎng)絡(luò)
編碼模塊:
CFP之后,編碼器的核心單元是一個新型殘差模型來實(shí)現(xiàn) skip connections 和 convolutions with channel split and shuffle 。skip connection 允許卷積學(xué)習(xí)殘差函數(shù)來幫助訓(xùn)練,split 和 shuffle 過程能夠加強(qiáng)通道間的信息轉(zhuǎn)換同時保持類似于一維分解卷積的計算開銷。
解碼模塊:
解碼模塊,我們設(shè)計了一個 attention pyramid network(APN)來抽取豐富特征,使用注意力機(jī)制來估計每個像素的語義標(biāo)簽,本文貢獻(xiàn)如下:
-
LEDNet 的非對稱機(jī)制使得可以減少參數(shù)量,加速推理過程
-
殘差模塊中的 channel split 和 shuffle 機(jī)制可以減小網(wǎng)絡(luò)規(guī)模,提升特征表達(dá)能力,且 channel shuffle 是可微的,意味著其可以嵌入網(wǎng)絡(luò)進(jìn)行端到端的訓(xùn)練。
-
解碼端,使用特征金字塔注意力機(jī)制來設(shè)計APN,可以減小整個網(wǎng)絡(luò)的復(fù)雜度。
本文網(wǎng)絡(luò)結(jié)構(gòu)
2.1 帶有 Split and Shuffle Operations 的殘差模塊
我們的重點(diǎn)是解決殘差模塊存在的效率限制,殘差塊是近年來用于圖像分類和語義分割的較好的神經(jīng)網(wǎng)絡(luò)。
目前,已有一些輕量級網(wǎng)絡(luò)獲得了較好的效果,如 bottleneck(圖2(a))、non-bottleneck-1D(圖2(b))、 ShuffleNet 模型(圖2(c)),其中逐點(diǎn)卷積使用的很多。然而,逐點(diǎn)的卷積很耗費(fèi)算力,對輕量級網(wǎng)絡(luò)不利。
為了更好的平衡性能和效率問題,我們在 residual layer 引入了兩個簡單的操作,channel split 和 channel shuffle。
該模型稱為 split-shuffle-non-bottleneck(SS-nbt),如圖2(d)所示,受[12,18]啟發(fā), SS-nbt 的設(shè)計中使用了 split-transform-merge 策略,可以實(shí)現(xiàn)接近復(fù)雜網(wǎng)絡(luò)的特征表達(dá)效果。
SS-nbt:
SS-nbt 開始時,輸入被分為兩個更低維的分支,每個分支的輸入都是原始輸入的一半,為了避免逐點(diǎn)卷積,卷積變換是使用一系列的特殊一維卷積核(13或31),之后將這兩個子分支的卷積的輸出級聯(lián)合并起來,最終的通道數(shù)不變。
為了便于訓(xùn)練,利用 identity mapping 分支將該輸出疊加到輸入上,最后再次使用 channel shuffle 操作來對兩個 split 分支進(jìn)行信息融合。
shuffle 之后,下一個 SS-nbt 單元開始工作。顯而易見,本文的 residual 模塊簡單且準(zhǔn)確。
首先,每個 SS-nbt 中的高效性使得我們能夠使用更多的特征 channels
其次,每個 SS-nbt 中,合并的特征 channel 隨機(jī)被 shuffle,之后輸入下一個單元,該過程可以看做一種特征重復(fù)使用,雖然在一定程度上增加了網(wǎng)絡(luò)容量,但是沒有顯著性增加復(fù)雜性。
2.2 LEDNet 網(wǎng)絡(luò)設(shè)計
如表1所示,LEDNet 是由編碼器和解碼器組成的,不同于[7],本方法使用非對稱機(jī)制,其中編碼器能夠?qū)μ卣鲌D下采樣,之后的解碼器采用APN對特征圖上采樣,來保持和輸入分辨率匹配。
除過 SS-nbt 單元外,編碼器也包括了下采樣單元,該單元通過將兩個并行輸出進(jìn)行步長為2,卷積核大小為 3*3 的最大池化來實(shí)現(xiàn)。
下采樣使得更深層的網(wǎng)絡(luò)能夠聚焦上下文語義,同時有助于降低計算量,注意,此處將編碼器放到下采樣之后。
此外,使用擴(kuò)張卷積使得卷積過程有更大的感受野,保證了精度的提升,這比直接使用大尺度的卷積核更好,該過程更有效。
受注意力機(jī)制啟發(fā),解碼器設(shè)計了一個APN,使用 spatial-wise 來實(shí)現(xiàn)稠密估計。
為了提高感受野,APN 使用金字塔注意力模型,綜合了三種不同層級的金字塔尺度,如圖1所示,首先使用 3x3,5x5 和 7x7 的卷積核,步長為2,來獲得不同層級的特征金字塔,之后金字塔結(jié)構(gòu)逐步的融合不同層級的信息,可以更加精確的合并相鄰層級上下文信息。
由于高層特征圖分辨率低,使用大的卷積核也不會帶來很大的計算開銷,所以給編碼器的輸出特征使用 1x1 的卷積核進(jìn)行卷積,之后卷積特征圖逐像素的和金字塔注意力特征相乘。
為了提高性能,使用全局平均池化方式來在注意力機(jī)制之前來整合全局上下文。最后,使用上采樣單元來使得特征圖和輸入分辨率一致。
受益于金字塔機(jī)制, APN 可以捕捉多尺度的上下文特征,并且得到像素級的注意力。
不同于 DeepLab[5] 和 PSPNet[8] 中將多尺度特征圖進(jìn)行堆疊的方法,本文的上下文信息和原始卷積特征是像素級相乘的,沒有引入過多的計算開銷。
3. 實(shí)驗(yàn)
3.1 實(shí)驗(yàn)落實(shí)細(xì)節(jié)
本文選擇廣泛使用的 CityScapes dataset [26] 來驗(yàn)證 LEDNet 的效果,該數(shù)據(jù)集包含19種不同類別的目標(biāo),和一個背景信息,有較好的像素級別的標(biāo)記,包含2975個訓(xùn)練樣本,500個驗(yàn)證樣本,1525個測試樣本,此處使用20k個粗糙標(biāo)記的圖像進(jìn)行訓(xùn)練,使用類間的 mean IoU(mIoU)來估計分割準(zhǔn)確率,使用FPS來作為速度衡量單位。
為了體現(xiàn) LEDNet 的優(yōu)勢,我們選擇了 6 種不同的輕量級網(wǎng)絡(luò)作為基準(zhǔn),包括SegNet [7], ENet [13], ERFNet [14], ICNet [19], CGNet [25] 和 ESPNet [20],公平起見,所有的算法都在單個 GTX 1080Ti GPU 上實(shí)現(xiàn),我們使用較大的minibatch(設(shè)置為5)來保證 GPU 內(nèi)存使用的最大化,初始學(xué)習(xí)率是 5x10^-4,“poly” 學(xué)習(xí)率動量采樣0.9,動量和權(quán)值衰減分別設(shè)置為0.9和 10^-4。
3.2 實(shí)驗(yàn)結(jié)果
表2和表3呈現(xiàn)了對比結(jié)果,結(jié)果表明 LEDNet 達(dá)到了準(zhǔn)確率和效率的最好平衡,
所有方法中, LEDNet 獲得了 70.6% 的 class mIoU(細(xì)類別),和81.7%的 category mIoU(粗類別),共19個 category,有13個都達(dá)到了最好的效果。
LEDNet 比 SegNet[7] 快5倍多,模型是其1/30 左右
LEDNet 比 ENet[7] 快1.5倍多,模型參數(shù)是其1/3左右,準(zhǔn)確率高10%左右
圖3展示了一些可視化輸出,從圖中可知,LEDNet 不僅僅能夠正確的分類不同尺度的目標(biāo),也可以對所有類別獲得更好的效果。
4. 總結(jié)和展望
本文提出了 LEDNet,使用非對稱的編碼-解碼機(jī)制進(jìn)行實(shí)時語義分割,編碼器在 residual layer 使用 channel split 和 channel shuffle 操作,以特征重復(fù)利用的方式來增強(qiáng)信心直接的融合交流。
另一方面,解碼器使用 APN,其空域金字塔結(jié)構(gòu)有益于在擴(kuò)大感受野的同時不引入過大的計算開銷。
網(wǎng)絡(luò)可以端到端的訓(xùn)練
實(shí)驗(yàn)結(jié)果表明,LEDNet 達(dá)到了 CityScapes dataset 的分割效果和實(shí)施效率的最好平衡。
未來的工作中,可以對標(biāo)準(zhǔn)卷積分解成1維卷積,可以在獲得更簡單網(wǎng)絡(luò)的同時保持分割效果。
總結(jié)
以上是生活随笔為你收集整理的感知算法论文(六):LEDNet(2019)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 平安普惠服务费合法吗?
- 下一篇: 感知算法论文(七):DFANet: De