做藝人資料卡的網(wǎng)站廣告策劃書
DPN
DPN(Dual Path Networks)是一種網(wǎng)絡(luò)結(jié)構(gòu),它結(jié)合了DensNet和ResNetXt兩種思想的優(yōu)點(diǎn)。這種結(jié)構(gòu)的目的是通過(guò)不同的路徑來(lái)利用神經(jīng)網(wǎng)絡(luò)的不同特性,從而提高模型的效率和性能。
- DenseNet 的特點(diǎn)是其稠密連接路徑,使得網(wǎng)絡(luò)能夠在不同層級(jí)之間持續(xù)地探索新的特征。這種連接方式允許網(wǎng)絡(luò)在不增加參數(shù)的情況下學(xué)習(xí)到更豐富的特征表示。
- ResNeXt(殘差分組卷積)則是通過(guò)殘差路徑實(shí)現(xiàn)特征的復(fù)用,這有助于減少模型的大小和復(fù)雜度。
DPN的設(shè)計(jì)思想在于融合這兩種思想,通過(guò)兩個(gè)并行的路徑來(lái)進(jìn)行信息傳遞:
- 一條路徑是通過(guò)DenseNet的方式,即通過(guò)稠密連接路徑,這樣可以持續(xù)地探索新的特征。
- 另一條路徑是通過(guò)ResNeXt的方式,即通過(guò)殘差路徑,可以實(shí)現(xiàn)特征的復(fù)用。
此外,DPN使用了分組卷積來(lái)降低計(jì)算量,并且可以在不改變?cè)芯W(wǎng)絡(luò)結(jié)構(gòu)的前提下,提升性能,使其適合用于檢測(cè)和分割任務(wù)作為新的Backbone網(wǎng)絡(luò)。
DPN就是在ResNeXt和DenseNet的基礎(chǔ)上,融合這兩個(gè)網(wǎng)絡(luò)的核心思想而成,論文原文見(jiàn)附錄。
主要?jiǎng)?chuàng)新點(diǎn)
- DPN的Dual Path(雙路)結(jié)構(gòu)結(jié)合了ResNeXt(殘差分組卷積)和DenseNet(稠密連接)兩種思想。即可以利用殘差網(wǎng)絡(luò)的跳躍連接對(duì)特征進(jìn)行復(fù)用,又可以利用密集連接路徑持續(xù)探索新特征。
- 使用了分組卷積,降低了計(jì)算量。
- 性能超越ResNeXt和DenseNet,可以做檢測(cè)分割任務(wù)新BackBone。
DPN網(wǎng)絡(luò)結(jié)構(gòu)
DPN的網(wǎng)絡(luò)結(jié)構(gòu)如Table1所示:
可以看到DPN的網(wǎng)絡(luò)結(jié)構(gòu)和ResNeXt的網(wǎng)絡(luò)結(jié)構(gòu)很類似。最開(kāi)始是一個(gè)7×7卷積層,接著就是一個(gè)最大池化層,再然后是四個(gè)stage
,再接一個(gè)全局平均池化以及全連接層,最后是softmax
層。整體結(jié)構(gòu)是這樣,重點(diǎn)就在每個(gè)stage
具體是怎么變化的了,接下來(lái)我們就一起來(lái)理解一下。
上面說(shuō)了DPN網(wǎng)絡(luò)就是把ResNeXt和DenseNet融合成1個(gè)網(wǎng)絡(luò),因此這里首先介紹一下這篇論文是如何表達(dá)ResNeXt和DenseNet的,具體如Figure2所示:
- 其中Figure2(a)就是ResNeXt的一部分,其中(a)的左邊這個(gè)矩形的小凸起部分就代表每個(gè)殘差模塊輸入輸出,對(duì)于一個(gè)輸入
x
,分兩條路走,一條是x
本身,即殘差模塊中的跳躍連接,而另一條就是經(jīng)過(guò)1x1
卷積+3x3
卷積+1x1
卷積(即瓶頸結(jié)構(gòu)),然后把這兩條路獲得結(jié)果做一個(gè)求和即可,也即是文中的+
符號(hào),得到下一個(gè)殘差模塊的輸入。 - 而Figure2(b)是DenseNet的一部分,其中(b)左邊的多邊形凸起代表每個(gè)密集連接模塊輸入輸出,對(duì)于輸入
x
只有一條路,即經(jīng)過(guò)幾層卷積之后和x
做一個(gè)通道合并(concat
),得到的輸出又是下一個(gè)密集連接模塊的輸入,這樣每一個(gè)密集連接模塊的輸入都在不斷累加,可以看到這個(gè)多邊形越來(lái)越寬。 - Figure2(c)通過(guò)在(b)中的模塊之間共享相同輸出的第一個(gè)
1x1
卷積,密集連接模塊退化成了殘差模塊,虛線圈起來(lái)的部分就是殘差模塊。 - Figure2(d)是雙路徑體系結(jié)構(gòu)(DPN),將同一層上ResNet的輸出和DenseNet的輸出按元素相加,再整體做卷積,然后將結(jié)果按原先通道分配的情況來(lái)分割又各分給殘差模塊和密集連接模塊來(lái)連接,既有按元素相加又有通道相加,這就是DPN的雙路徑。
- Figure2(e)實(shí)際上和Figure2(d)是工程等價(jià)的,其中
~
表示分割操作,+
表示元素級(jí)加法。一個(gè)模塊中先連接,然后整體做卷積,再分開(kāi),分開(kāi)之后殘差模塊的和殘差模塊相連,密集連接模塊和密集連接模塊相連,連完之后得到新的特征層。這一塊完成后再做些卷積、pooling等,然后繼續(xù)作為下一個(gè)模塊的輸入。
需要注意的一點(diǎn)是,上面的所有的3x3
卷積都是分組卷積,所以DPN是ResNeXt和DenseNet的結(jié)合,而不是ResNet。
https://arxiv.org/pdf/1707.01629.pdf