<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>
"); //-->

博客專(zhuān)欄

EEPW首頁(yè) > 博客 > ConvNeXt:新一代卷積網(wǎng)絡(luò ),還不是ViT的時(shí)代(代碼開(kāi)源)

ConvNeXt:新一代卷積網(wǎng)絡(luò ),還不是ViT的時(shí)代(代碼開(kāi)源)

發(fā)布人:CV研究院 時(shí)間:2022-03-19 來(lái)源:工程師 發(fā)布文章

圖片

源代碼:https://github.com/facebookresearch/ConvNeXt

計算機視覺(jué)研究院專(zhuān)欄

作者:Edison_G

自從ViT提出之后,在過(guò)去的一年里(2021年),Transformer在深度學(xué)習領(lǐng)域大殺四方,很多純卷積的網(wǎng)絡(luò )也不斷的革新。基于transformer的模型在計算機視覺(jué)各個(gè)領(lǐng)域全面超越CNN模型。然而,這很大程度上都歸功于Local Vision Transformer模型,Swin Transformer是其中重要代表。原生的ViT模型其計算量與圖像大小的平方成正比,而Local Vision Transformer模型由于采用local attention(eg. window attention),其計算量大幅度降低。然后,不能忘記最經(jīng)典的CNN,今天就分析transformer的優(yōu)勢,也借鑒了一些新的卷積網(wǎng)絡(luò )的點(diǎn),基于ResNet50和ResNet200逐步提升精度。



01

圖片

前言

圖片

ConvNets在計算機視覺(jué)中的完全主導地位并非巧合:在許多應用場(chǎng)景中,“滑動(dòng)窗口”策略是視覺(jué)處理所固有的,尤其是在處理高分辨率圖像。ConvNets有幾個(gè)內置的歸納偏置,使它們非常適合各種計算機視覺(jué)應用。最重要的一個(gè)是平移等方差,這是目標檢測等任務(wù)的理想屬性。由于當以滑動(dòng)窗口方式使用時(shí),計算是共享的,因此ConvNets本質(zhì)上也是高效的。幾十年來(lái),這一直是ConvNets的默認使用,通常用于有限的目標類(lèi)別,例如digits、人臉和行人。

圖片

與在過(guò)去十年中逐漸改進(jìn)的ConvNet不同,Vision Transformers的采用是一個(gè)進(jìn)步。在最近的文獻中,在比較兩者時(shí)通常采用系統級比較(例如Swin Transformer與ResNet)。Transformer的優(yōu)勢在于其multi-head self-attention中優(yōu)異的scaling behavior。ConvNets和Transformer都有相似的inductive biases,但是不同的是,在訓練過(guò)程中和結構設計上,存在著(zhù)差異性。作者嘗試去找出這些影響因素,去測試一下pure ConvNets能達到一個(gè)怎么樣的性能。

今天分享中,研究了ConvNetsTransformer之間的架構區別,并在比較網(wǎng)絡(luò )性能時(shí)嘗試識別混雜變量。 研究旨在彌合ConvNet的前ViT和后ViT時(shí)代之間的差距,并測試純ConvNet所能達到的極限。


02

圖片

背景

圖片

在高層次上,研究者的探索旨在調查和遵循Swin Transformer的不同設計級別,同時(shí)保持網(wǎng)絡(luò )作為標準ConvNet的簡(jiǎn)單性。研究者探索路線(xiàn)圖如下。

圖片

起點(diǎn)是ResNet-50模型。首先使用用于訓練視覺(jué)Transformer的類(lèi)似訓練技術(shù)對其進(jìn)行訓練,并與原始ResNet-50相比獲得了很大改進(jìn)的結果。這將是我們的基線(xiàn)。然后研究了一系列設計決策,總結為:1) macro design,2) ResNeXt,3) inverted bottleneck,4)large kernel size,5) various layer-wise micro designs。在上圖中,展示了“network modernization”的每一步我們能夠實(shí)現的過(guò)程和結果。由于網(wǎng)絡(luò )復雜性與最終性能密切相關(guān),因此在探索過(guò)程中對FLOPs進(jìn)行了粗略的控制,盡管在中間步驟中,FLOPs可能高于或低于參考模型。所有模型都在ImageNet-1K上進(jìn)行訓練和評估。

03

圖片

新研究

圖片

  • Training Techniques

作者做了以下訓練調整:

  1. 從90 epoches到300 epoches

  2. 使用AdamW優(yōu)化器

  3. Mixup, Cutmix, RandAugment, Random Erasing數據增強

  4. 使用Stochastic Depth和Label Smoothing

  5. 使用EMA減少模型過(guò)擬合

結果分類(lèi)準確率由76.1%上升到78.8%,這一個(gè)步驟提升了2.7%的精度。具體訓練config如下:

圖片

  • Macro Design

Swin Transfomer和CNN一樣也采用金字塔結構:包含4個(gè)stage,每個(gè)stage輸出不同尺度的特征。這里考慮Swin Transformer和ResNet在宏觀(guān)設計上的區別,作者分析了Swin Transformer網(wǎng)絡(luò )設計,發(fā)現使用了multi-stage design,每一個(gè)stage有不同的特征圖分辨率。有兩個(gè)值得思考的設計: stage compute ratiostem cell structure。

改變stage compute ratio。作者認為ResNet的 heavy “res4” stage主要是用于下游任務(wù),其detector head是基于14x14的特征圖。而Swin-T, 它的比例是1:1:3:1。因此,作者調整了一下ResNet原先的分布,從(3,4,6,3)到(3,3,9,3)。這一步精度從78.8%到79.4%。不過(guò)這里要注意的一點(diǎn)是,調整后其實(shí)blocks數量增加了,模型的FLOPs從原來(lái)的4G增加至4.5G,基本和Swin-T一致了,所以這個(gè)性能的提升很大程度上歸功于FLOPs的增加。關(guān)于各個(gè)stage的計算量分配,并沒(méi)有一個(gè)理論上的參考,不過(guò)RegNet和EfficientNetV2論文中都指出,后面的stages應該占用更多的計算量。 

ResNet的stem cell使用stride=2的7x7卷積,然后接一個(gè)max pool,會(huì )使得圖像下采樣4倍。而在Transformer當中,使用了aggressive “patchify”; Swin-T使用了4x4的patch size。因此,作者使用4x4, stride=4的卷積。兩種stem最后均是得到1/4大小的特征,所以這里可以直接用Swin的stem來(lái)替換ResNet的stem,這個(gè)變動(dòng)對模型效果影響較?。簭?9.4%提升至79.5%,這個(gè)步驟提升了0.1%的精度。

  • ResNeXt-ify

在這一部分中,研究者嘗試采用ResNeXt的思想,它比普通的ResNet具有更好的FLOPs/accuracy權衡。核心組件是分組卷積,其中卷積濾波器被分成不同的組。在較高的層面上,ResNeXt的指導原則是“使用更多的組,擴大寬度”。更準確地說(shuō),ResNeXt對bottleneck塊中的3×3卷積層采用分組卷積。由于這顯著(zhù)減少了FLOP,因此網(wǎng)絡(luò )寬度被擴大以補償容量損失。

在例子中,使用depthwise convolution,這是分組卷積的一種特殊情況,其中組數等于通道數。depthwise convolution已被MobileNet 和Xception推廣。我們注意到,depthwise convolution類(lèi)似于self-attention中的加權求和操作,它在每個(gè)通道的基礎上進(jìn)行操作,即僅在空間維度上混合信息。depthwise conv和1 × 1convs 的組合導致空間和通道混合的分離,這是視覺(jué)轉換器共享的屬性,其中每個(gè)操作要么混合空間維度或通道維度的信息,但不能同時(shí)混合兩者。depthwise convolution的使用有效地降低了網(wǎng)絡(luò )FLOPs,并且正如預期的那樣。按照ResNeXt中提出的策略,將網(wǎng)絡(luò )寬度增加到與Swin-T相同的通道數(從64到96)。這使網(wǎng)絡(luò )性能提高到80.5%,增加了FLOPs (5.3G)。

  • Inverted Bottleneck

Transformer block的一個(gè)重要設計是創(chuàng )建了inverted bottleneck。如下圖所示:

圖片

在depthwise conv的基礎上借鑒MobileNet的inverted bottleneck設計,將block由下圖(a)變?yōu)?b)。因為depthwise不會(huì )使channel之間的信息交互,因此一般depthwise conv之后都會(huì )接1x1的pointwise conv。這一頓操作下來(lái)準確率只漲了0.1%到80.6%。

圖片

  • Large Kernel Sizes

Transformer中,non-local self-attention能夠獲得全局的感受野。因此研究者使用了large kernel-sized convolutions。為了使用large kernel,就要改變一下depthwise conv layer。

研究者認為更大的感受野是ViT性能更好的可能原因之一,作者嘗試增大卷積的kernel,使模型獲得更大的感受野。首先在pointwise conv的使用上,作者為了獲得更大的感受野,將depthwise conv提前到1x1 conv之前,之后用384個(gè)1x1x96的conv將模型寬度提升4倍,在用96個(gè)1x1x96的conv恢復模型寬度。反映在上圖中就是由(b)變?yōu)?c)。由于3x3的conv數量減少,模型FLOPs由5.3G減少到4G,相應地性能暫時(shí)下降到79.9%。

然后作者嘗試增大depthwise conv的卷積核大小,證明7x7大小的卷積核效果達到最佳。

  • Micro Design

  1. 使用GELU替換ReLU,精度沒(méi)有變化

  2. 更少的activate functions,研究者發(fā)現Transformers很少激活函數。刪除了residual block中的所有GELU層,除了兩個(gè)1×1層之間的。精度提升了到了81.3%

  3. 使用更少的normalization layers。僅僅在1x1之間使用BN,精度提升到了81.4%。研究者還發(fā)現,在每個(gè)Block的開(kāi)始添加一個(gè)額外的BN層,精度不會(huì )提升

  4. 研究者使用LN替換BN,精度提升了0.1%

  5. 分離降采樣層。且在特征圖大小變化的時(shí)候,添加一個(gè)normalization layers,有助于穩定訓練。精度提升到了82.0%

04

圖片

實(shí)驗&總結

圖片

Classification accuracy on ImageNet-1K

圖片

Comparing isotropic ConvNeXt and ViT

圖片

圖片

研究者提出,迄今為止討論的設計方案都不是新穎的,但都能夠提升性能。所以,借鑒transformer的設計思想和一些ConvNet的tricks,一樣可以達到SOTA。這是一篇調參提升精度的實(shí)驗性論文,比較有實(shí)際的工程意義。

引用:

[1] https://blog.csdn.net/wuchaohuo724/article/details/122550816[2] https://zhuanlan.zhihu.com/p/455913104[3] https://zhuanlan.zhihu.com/p/458016349


*博客內容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀(guān)點(diǎn),如有侵權請聯(lián)系工作人員刪除。



關(guān)鍵詞: AI

相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>