<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          當(dāng)UNet遇見(jiàn)ResNet會(huì)發(fā)生什么?

          共 4040字,需瀏覽 9分鐘

           ·

          2022-08-08 19:56

          點(diǎn)擊上方小白學(xué)視覺(jué)”,選擇加"星標(biāo)"或“置頂

          重磅干貨,第一時(shí)間送達(dá)

           

          1.前言

          這篇文章主要以幾篇經(jīng)典的分割論文為切入點(diǎn),淺談一下當(dāng)Unet遇見(jiàn)ResNet會(huì)發(fā)生什么?

           

          2. UNet

          首先回顧一下UNet,UNet的結(jié)構(gòu)如下圖所示:

          UNet 網(wǎng)絡(luò)結(jié)構(gòu)

          「從UNet的網(wǎng)絡(luò)結(jié)構(gòu)我們會(huì)發(fā)現(xiàn)兩個(gè)最主要的特點(diǎn),一個(gè)是它的U型結(jié)構(gòu),一個(gè)是它的跳層連接。」 其中UNet的編碼器一共有4次下采樣來(lái)獲取高級(jí)語(yǔ)義信息,解碼器自然對(duì)應(yīng)了4次上采樣來(lái)進(jìn)行分辨率恢復(fù),為了減少下采樣過(guò)程帶來(lái)的空間信息損失跳層連接被引入了,通過(guò)Concat的方式使得上采樣恢復(fù)的特征圖中包含更多l(xiāng)ow-level的語(yǔ)義信息,使得結(jié)果的精細(xì)程度更好。

          使用轉(zhuǎn)置卷積的UNet參數(shù)量是31M左右,如果對(duì)其channel進(jìn)行縮小例如縮小兩倍,參數(shù)量可以變?yōu)?.75M左右,縮小4倍變成2M左右,可以說(shuō)是非常的輕量級(jí)了。UNet不僅僅在醫(yī)學(xué)分割中被大量應(yīng)用,也在工業(yè)界發(fā)揮了很大的作用


          3. ResNet
           

          再來(lái)簡(jiǎn)單回顧一下ResNet。

          在ResNet之前普遍認(rèn)為網(wǎng)絡(luò)的深度越深,模型的表現(xiàn)就更好,因?yàn)镃NN越深越能提取到更高級(jí)的語(yǔ)義信息。但論文的實(shí)驗(yàn)發(fā)現(xiàn),通過(guò)和淺層網(wǎng)絡(luò)一樣的方式來(lái)構(gòu)建深層網(wǎng)絡(luò),結(jié)果性能反而下降了,這是因?yàn)榫W(wǎng)絡(luò)越深越難訓(xùn)練。實(shí)驗(yàn)如Figure1所示:

          Figure1

          因此網(wǎng)絡(luò)的深度不能隨意的加深,前面介紹的GoogLeNet和VGG16/19均在加深深度這件事情上動(dòng)用了大量的技巧。那么到底什么是殘差呢?

          首先,淺層網(wǎng)絡(luò)都是希望學(xué)習(xí)到一個(gè)恒等映射函數(shù),其中指的是用這個(gè)特征/函數(shù)來(lái)代表原始的的信息,但隨著網(wǎng)絡(luò)的加深這個(gè)恒等映射變得越來(lái)越難以擬合。即是用BN這種技巧存在,在深度足夠大的時(shí)候網(wǎng)絡(luò)也會(huì)難以學(xué)習(xí)這個(gè)恒等映射關(guān)系。因此ResNet提出將網(wǎng)絡(luò)設(shè)計(jì)為,然后就可以轉(zhuǎn)換為學(xué)習(xí)一個(gè)殘差函數(shù),只要?dú)埐顬?span style="cursor: pointer;">,就構(gòu)成了一個(gè)恒等映射,并且相對(duì)于擬合恒等映射關(guān)系,擬合殘差更容易。殘差結(jié)構(gòu)具體如Figure2所示,identity mapping表示的就是恒等映射,即是將淺層網(wǎng)絡(luò)的特征復(fù)制來(lái)和殘差構(gòu)成新的特征。其中恒等映射后面也被叫作跳躍連接(skip connrection)或者短路連接(shortcut connection),這一說(shuō)法一直保持到今天。同時(shí)我們可以看到一種極端的情況是殘差映射為,殘差模塊就只剩下,相當(dāng)于什么也不做,這至少不會(huì)帶來(lái)精度損失,這個(gè)結(jié)構(gòu)還是比較精巧的。

          殘差模塊

          為什么殘差結(jié)構(gòu)是有效的呢?這是因?yàn)橐霘埐钪蟮奶卣饔成鋵?duì)輸出的變化更加敏感,也即是說(shuō)梯度更加,更容易訓(xùn)練。從圖2可以推導(dǎo)一下殘差結(jié)構(gòu)的梯度計(jì)算公式,假設(shè)從淺層到深層的學(xué)習(xí)特征,其中就是帶權(quán)重的卷積之后的結(jié)果,我們可以反向求出損失函數(shù)對(duì)的提取,其中代表?yè)p失函數(shù)在最高層的梯度,小括號(hào)中的表示殘差連接可以無(wú)損的傳播梯度,而另外一項(xiàng)殘差的梯度則需要經(jīng)過(guò)帶有可學(xué)習(xí)參數(shù)的卷積層。另外殘差梯度不會(huì)巧合到全部為,而且就算它非常小也還有這一項(xiàng)存在,因此梯度會(huì)穩(wěn)定的回傳,不用擔(dān)心梯度消失。同時(shí)因?yàn)闅埐钜话銜?huì)比較小,殘差學(xué)習(xí)需要學(xué)習(xí)的內(nèi)容少,學(xué)習(xí)難度也變小,學(xué)習(xí)就更容易。

          4. 當(dāng)UNet初見(jiàn)ResNet

          我們知道UNet做下采樣的BackNone是普通的CBR模塊(Conv+BN+ReLU)堆疊的,一個(gè)自然的想法就是如果將學(xué)習(xí)更強(qiáng)的ResNet當(dāng)作UNet的BackBone效果是否會(huì)更好呢?

          CVPR 2017的LinkNet給出了答案。LinkNet的網(wǎng)絡(luò)結(jié)構(gòu)如下所示:

          其中,conv 代表卷積,full-conv 代表全卷積,/2代表下采樣的步長(zhǎng)是2*2代表上采樣的因子是2。在卷積層之后添加 BN,后加 ReLU。左半部分表示編碼,右半部分表示解碼。編碼塊基于ResNet18。編解碼模塊如下所示。

          編碼模塊
          解碼模塊

          這項(xiàng)工作的主要貢獻(xiàn)是在原始的UNet中引入了殘差連接,并直接將編碼器與解碼器連接來(lái)提高準(zhǔn)確率,一定程度上減少了處理時(shí)間。通過(guò)這種方式,保留編碼部分中不同層丟失的信息,同時(shí),在進(jìn)行重新學(xué)習(xí)丟失的信息時(shí)并未增加額外的參數(shù)與操作。在Cittycapes和CamVID數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果證明殘差連接的引入(LinkNet without bypass)使得mIOU獲得了提升。

          在Cityscapes上的實(shí)驗(yàn)結(jié)果
          在CamVid上的實(shí)驗(yàn)結(jié)果

          這篇論文的主要提升技巧在于它的bypass技巧,但我們也可以看到ResNet也進(jìn)一步對(duì)網(wǎng)絡(luò)的效果帶來(lái)了改善,所以至少說(shuō)明ResNet是可以當(dāng)成BackBone應(yīng)用在UNet的,這樣結(jié)果至少不會(huì)差。


          5. 當(dāng)UNet再見(jiàn)ResNet
           

          CVPR 2018北郵在DeepGlobe Road Extraction Challenge全球衛(wèi)星圖像道路提取)比賽中勇奪冠軍,他們提出了一個(gè)新網(wǎng)絡(luò)名為D-LinkNet,論文鏈接以及代碼/PPT見(jiàn)附錄。

          D-LinkNet 網(wǎng)絡(luò)結(jié)構(gòu)

          D-LinkNet使用LinkNet作為基本骨架,使用在ImageNet數(shù)據(jù)集上與訓(xùn)練好的ResNet作為網(wǎng)絡(luò)的encoder,并在中心部分添加帶有shortcut的dilated-convolution層,使得整個(gè)網(wǎng)絡(luò)識(shí)別能力更強(qiáng)、接收域更大、融合多尺度信息。網(wǎng)絡(luò)中心部分展開(kāi)示意圖如下:

          網(wǎng)絡(luò)中心部分展開(kāi)示意圖

          這篇論文和ResNet的關(guān)系實(shí)際上和LinkNet表達(dá)出的意思一致,也即是將其應(yīng)用在BackBone部分增強(qiáng)特征表達(dá)能力。

           

          6. 最后,ResNet+UNet被玩出了花


          這篇文章其實(shí)是比上兩篇文章早的,但我想放到最后這個(gè)位置來(lái)談一下,這篇文章是DLMIA 2016的文章,名為:「The Importance of Skip Connections in Biomedical Image Segmentation」 。這一網(wǎng)絡(luò)結(jié)構(gòu)如下圖所示,對(duì)圖的解釋來(lái)自akkaze-鄭安坤的文章(https://zhuanlan.zhihu.com/p/100440276):

          長(zhǎng)短跳過(guò)網(wǎng)絡(luò),對(duì)各個(gè)塊(Block)的解釋如下

          (a) 整個(gè)網(wǎng)絡(luò)結(jié)構(gòu)

          使用下采樣(藍(lán)色):這是一條收縮路徑。

          上采樣(黃色):這是一條不斷擴(kuò)大的路徑。

          這是一個(gè)類(lèi)似于U-Net的FCN架構(gòu)。

          并且從收縮路徑到擴(kuò)展路徑之間存在很長(zhǎng)的跳過(guò)連接。

          (b)瓶頸區(qū)

          使用,因此稱(chēng)為瓶頸。它已在ResNet中使用。

          在每次轉(zhuǎn)化前都使用,這是激活前ResNet的想法。

          (c)基本塊

          兩個(gè)卷積,它也用在ResNet中。

          (d)簡(jiǎn)單塊

          個(gè)卷積

          (b)-(d)

          所有塊均包含短跳轉(zhuǎn)連接。

          下面的Table1表示整個(gè)網(wǎng)絡(luò)的維度變化:

          整個(gè)網(wǎng)絡(luò)的維度變化

          接下來(lái)是這節(jié)要分析的重點(diǎn)了,也就是長(zhǎng)短跳過(guò)網(wǎng)絡(luò)中兩種不同類(lèi)型的跳躍連接究竟對(duì)UNet的結(jié)果參生了什么影響?

          這里訓(xùn)練集以張電子顯微鏡(EM)圖像為數(shù)據(jù)集,尺寸為張圖像用于訓(xùn)練,其余張圖像用于驗(yàn)證。而測(cè)試集是另外張圖像。

          下面的Figure3為我們展示了長(zhǎng)短跳過(guò)連接,以及只有長(zhǎng)跳過(guò)連接,只有短跳過(guò)連接對(duì)準(zhǔn)確率和損失帶來(lái)的影響:

          損失/準(zhǔn)確性:(a)長(zhǎng)短跳過(guò)連接,(b)只有長(zhǎng)跳過(guò)連接,(c)只有短跳過(guò)連接
          同時(shí)使用長(zhǎng)跳和短跳連接可以獲得最小的損失和最高的精度。

          下面來(lái)看一可視化權(quán)重分析:

          (a)長(zhǎng)跳和短跳連接,(b)僅長(zhǎng)跳連接具有9個(gè)重復(fù)的簡(jiǎn)單塊,(c)僅長(zhǎng)跳連接具有3個(gè)重復(fù)的簡(jiǎn)單塊,(d)僅長(zhǎng)跳連接具有7個(gè)重復(fù)的簡(jiǎn)單塊沒(méi)有BN。藍(lán)色:權(quán)值小。紅色:權(quán)值較大。

          (a)長(zhǎng)跳和短跳連接

          當(dāng)長(zhǎng)跳轉(zhuǎn)和短跳轉(zhuǎn)連接都存在時(shí),參數(shù)更新看起來(lái)分布良好。

          (b)僅長(zhǎng)跳連接具有9個(gè)重復(fù)的簡(jiǎn)單塊

          刪除短跳過(guò)連接后,網(wǎng)絡(luò)的較深部分幾乎沒(méi)有更新。

          當(dāng)保留長(zhǎng)跳連接時(shí),至少可以更新模型的淺層部分。

          (c)僅長(zhǎng)跳連接具有3個(gè)重復(fù)的簡(jiǎn)單塊

          當(dāng)模型足夠淺時(shí),所有層都可以很好地更新。

          (d)僅長(zhǎng)跳連接具有7個(gè)重復(fù)的簡(jiǎn)單塊,沒(méi)有BN。

          論文給出的結(jié)論如下:

          • 沒(méi)有批量歸一化的網(wǎng)絡(luò)向網(wǎng)絡(luò)中心部分參數(shù)更新會(huì)不斷減少。

          • 根據(jù)權(quán)值分析的結(jié)論,由于梯度消失的問(wèn)題(只有短跳連接可以緩解),無(wú)法更有效地更新靠近模型中心的層。

          所以這一節(jié)介紹的是將ResNet和UNet結(jié)合之后對(duì)跳躍連接的位置做文章,通過(guò)這種長(zhǎng)跳短跳連接可以使得網(wǎng)絡(luò)獲得更好的性能。

          7. 總結(jié)

          這篇文章只是對(duì)我個(gè)人閱讀ResNet相關(guān)的類(lèi)UNet分割結(jié)構(gòu)的一點(diǎn)小總結(jié),希望能起到一點(diǎn)作用科普和給你帶來(lái)一點(diǎn)點(diǎn)啟發(fā)。

          好消息!

          小白學(xué)視覺(jué)知識(shí)星球

          開(kāi)始面向外開(kāi)放啦??????




          下載1:OpenCV-Contrib擴(kuò)展模塊中文版教程
          在「小白學(xué)視覺(jué)」公眾號(hào)后臺(tái)回復(fù):擴(kuò)展模塊中文教程即可下載全網(wǎng)第一份OpenCV擴(kuò)展模塊教程中文版,涵蓋擴(kuò)展模塊安裝、SFM算法、立體視覺(jué)、目標(biāo)跟蹤、生物視覺(jué)、超分辨率處理等二十多章內(nèi)容。

          下載2:Python視覺(jué)實(shí)戰(zhàn)項(xiàng)目52講
          小白學(xué)視覺(jué)公眾號(hào)后臺(tái)回復(fù):Python視覺(jué)實(shí)戰(zhàn)項(xiàng)目即可下載包括圖像分割、口罩檢測(cè)、車(chē)道線檢測(cè)、車(chē)輛計(jì)數(shù)、添加眼線、車(chē)牌識(shí)別、字符識(shí)別、情緒檢測(cè)、文本內(nèi)容提取、面部識(shí)別等31個(gè)視覺(jué)實(shí)戰(zhàn)項(xiàng)目,助力快速學(xué)校計(jì)算機(jī)視覺(jué)。

          下載3:OpenCV實(shí)戰(zhàn)項(xiàng)目20講
          小白學(xué)視覺(jué)公眾號(hào)后臺(tái)回復(fù):OpenCV實(shí)戰(zhàn)項(xiàng)目20講即可下載含有20個(gè)基于OpenCV實(shí)現(xiàn)20個(gè)實(shí)戰(zhàn)項(xiàng)目,實(shí)現(xiàn)OpenCV學(xué)習(xí)進(jìn)階。

          交流群


          歡迎加入公眾號(hào)讀者群一起和同行交流,目前有SLAM、三維視覺(jué)、傳感器自動(dòng)駕駛、計(jì)算攝影、檢測(cè)、分割、識(shí)別、醫(yī)學(xué)影像、GAN算法競(jìng)賽等微信群(以后會(huì)逐漸細(xì)分),請(qǐng)掃描下面微信號(hào)加群,備注:”昵稱(chēng)+學(xué)校/公司+研究方向“,例如:”張三 + 上海交大 + 視覺(jué)SLAM“。請(qǐng)按照格式備注,否則不予通過(guò)。添加成功后會(huì)根據(jù)研究方向邀請(qǐng)進(jìn)入相關(guān)微信群。請(qǐng)勿在群內(nèi)發(fā)送廣告,否則會(huì)請(qǐng)出群,謝謝理解~


          瀏覽 32
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  日日射av.| 中文字幕第59页 | 欧美特级性爱 | 啪啪福利视频 | 欧美77777色婷婷 |