<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>

          何凱明團(tuán)隊(duì)又出新論文!北大、上交校友教你用ViT做遷移學(xué)習(xí)

          共 4352字,需瀏覽 9分鐘

           ·

          2021-11-26 16:34



          ??新智元報(bào)道??

          編輯:LRS 好困 小咸魚(yú)

          【新智元導(dǎo)讀】何凱明團(tuán)隊(duì)又發(fā)新論文了!這次他們研究的是如何將預(yù)訓(xùn)練好的ViT遷移到檢測(cè)模型上,使標(biāo)準(zhǔn)ViT模型能夠作為Mask R-CNN的骨干使用。結(jié)果表明,與有監(jiān)督和先前的自我監(jiān)督的預(yù)訓(xùn)練方法相比,AP box絕對(duì)值增加了4%。


          模型參數(shù)的初始化一直是一個(gè)重要的研究問(wèn)題,一個(gè)合適的初始化能夠提升模型性能,加速收斂找到最優(yōu)解。
          ?
          由于不需要訓(xùn)練數(shù)據(jù),所以無(wú)監(jiān)督或自監(jiān)督訓(xùn)練后的模型,能夠很自然地作為下游任務(wù)(如圖像分類、目標(biāo)檢測(cè))模型微調(diào)前的初始化參數(shù)。
          ?
          無(wú)監(jiān)督算法的性能由微調(diào)后模型在下游任務(wù)的性能,如準(zhǔn)確率、收斂速度等等相比基線模型是否有提高來(lái)進(jìn)行判斷。
          ?
          在計(jì)算機(jī)視覺(jué)領(lǐng)域,由于CNN在過(guò)去的統(tǒng)治力,所以無(wú)監(jiān)督深度學(xué)習(xí)通常都是基于標(biāo)準(zhǔn)卷積網(wǎng)絡(luò)模型。例如將ResNet預(yù)訓(xùn)練后的模型遷移到其他基于CNN模型也是相當(dāng)容易且直接的。
          ?
          但現(xiàn)在時(shí)代變了,Vision Transformer(ViT)成為了新的主流模型。
          ?
          ?
          雖然遷移其他無(wú)監(jiān)督ViT 模型的參數(shù)在大的方法上和CNN 沒(méi)有什么區(qū)別,但在遷移細(xì)節(jié)上還沒(méi)有相關(guān)研究。
          ?
          過(guò)去十多年,目標(biāo)檢測(cè)一直是視覺(jué)領(lǐng)域的核心任務(wù),但在ViT時(shí)代還沒(méi)有太多的研究成果。
          ?
          結(jié)合這兩個(gè)出發(fā)點(diǎn),何凱明在FAIR最新研究以目標(biāo)檢測(cè)任務(wù)為基礎(chǔ),研究了標(biāo)準(zhǔn)ViT模型的遷移方法。
          ?
          https://arxiv.org/abs/2111.11429
          ?
          文章的第一作者是Yanghao Li,目前是Facebook AI Research(FAIR)的研究工程師,分別于2015年和2018年在北京大學(xué)獲得學(xué)士和碩士學(xué)位,主要研究領(lǐng)域是計(jì)算機(jī)視覺(jué)和深度學(xué)習(xí)。
          ?
          ?
          第二作者是Saining Xie,目前是FAIR的研究科學(xué)家。博士畢業(yè)于加州大學(xué)圣地亞哥分校,2013年畢業(yè)于上海交通大學(xué)ACM榮譽(yù)班,獲學(xué)士學(xué)位。研究興趣包括機(jī)器學(xué)習(xí)(主要是深度學(xué)習(xí))及其在計(jì)算機(jī)視覺(jué)中的應(yīng)用。
          ?
          ?

          研究方法


          文中采用何凱明發(fā)布于2017年的目標(biāo)檢測(cè)模型Mask R-CNN作為基礎(chǔ)模型,它也是Cascade R-CNN 和HTC/HTC++的底層模型,對(duì)于研究目標(biāo)檢測(cè)遷移學(xué)習(xí)來(lái)說(shuō)是一個(gè)非常合適的模型。
          ?
          ?
          但把ViT作為Mask R-CNN的骨干網(wǎng)絡(luò)還存在兩個(gè)問(wèn)題:
          ?
          一、將ViT與特征金字塔網(wǎng)絡(luò)(feature pyramid network, FPN)相匹配
          ?
          Mask R-CNN的骨干網(wǎng)絡(luò)既可以是單尺度(single-scale)也可以是多尺度特征輸入到FPN中,并且FPN能提供更好的目標(biāo)檢測(cè)結(jié)果,更少的運(yùn)行時(shí)間和內(nèi)存開(kāi)銷。
          ?
          但使用FPN存在一個(gè)問(wèn)題,因?yàn)閂iT僅能輸出單尺度特征,而非CNN的多尺度特征 。為解決這個(gè)問(wèn)題,研究人員使用了XCiT中的技術(shù)對(duì)ViT中間特征進(jìn)行上采樣和下采樣,以提供四種不同分辨率的特征。
          ?
          ?
          第一個(gè)模塊采用兩個(gè)步長(zhǎng)為2的轉(zhuǎn)置卷積(transposed convolution)進(jìn)行4倍上采樣;然后采用一個(gè)步長(zhǎng)為2*2的轉(zhuǎn)置卷積進(jìn)行兩倍上采樣;最后一個(gè)模塊采用步長(zhǎng)為2的2*2 max pooling進(jìn)行下采樣。
          ?
          每個(gè)模塊都不會(huì)改變ViT的通道維度數(shù)。
          ?
          假設(shè)patch size為16,那這些模塊能夠?qū)⑤敵霾介L(zhǎng)為4、8、16、32的圖像特征,然后送入到FPN中。
          ?
          雖然相關(guān)研究 Swin與MViT通過(guò)修改VIT架構(gòu)解決了ViT無(wú)法輸出多尺度特征的問(wèn)題。這種處理方式也是一個(gè)重要的研究方向,但它與ViT的簡(jiǎn)單設(shè)計(jì)相悖,會(huì)阻礙新的無(wú)監(jiān)督學(xué)習(xí)方法的探索研究。
          ?
          二、降低內(nèi)存消耗和時(shí)間復(fù)雜度
          ?
          Transformer 的眾所周知的問(wèn)題就是自注意機(jī)制的時(shí)間復(fù)雜度太高,把ViT放到Mask R-CNN 中也會(huì)導(dǎo)致這個(gè)問(wèn)題。
          ?
          假設(shè)每個(gè)patch的尺寸為h×w,且無(wú)重合。?
          ?
          在預(yù)訓(xùn)練過(guò)程中,該復(fù)雜度是可控的,在224×224圖像中, h=w=14是一個(gè)常用的設(shè)置。但在目標(biāo)檢測(cè)中,標(biāo)準(zhǔn)圖像尺寸為1024 × 1024,將近21倍多的像素和圖像patch。由于自注意力的二次復(fù)雜度,哪怕基線ViT-B也需要占用20-30G GPU顯存。
          ?
          研究采用受限的(Windowed)self-attention,通過(guò)將全局計(jì)算都替換為局部計(jì)算來(lái)降低空間與時(shí)間復(fù)雜度。
          ?
          將h×w的patch圖像分割成r×r非重疊patch窗口,并在每個(gè)窗口內(nèi)獨(dú)立計(jì)算自注意力,這種處理方式可以大幅降低空間復(fù)雜度與時(shí)間復(fù)雜度。
          ?
          但windowed self-attention的一個(gè)缺陷在于:骨干網(wǎng)絡(luò)不能跨窗口聚合信息,所以需要每隔d/4個(gè)塊添加一個(gè)全局自注意力模塊 。
          ?
          相比于原始Mask R-CNN,研究人員對(duì)其中幾個(gè)模塊進(jìn)行了修改。
          ?
          1. FPN中的卷積后加入Batch Normalization;
          ?
          1. 在RPN(region proposal network)中使用兩個(gè)卷積;
          ?
          1. 采用四個(gè)帶BN的卷積后接一個(gè)全連接用來(lái)RoI (reigon-of-interest) 分類與box回歸頭,而非原始的兩層無(wú)normalization的MLP;
          ?
          1. 標(biāo)準(zhǔn)mask頭中的卷積后加入BN
          ?
          相比原始訓(xùn)練機(jī)制,研究人員采用了從頭開(kāi)始訓(xùn)練+更長(zhǎng)訓(xùn)練周期的訓(xùn)練機(jī)制。
          ?
          盡管研究人員在實(shí)驗(yàn)過(guò)程中讓超參數(shù)盡可能少,并且不使用額外的數(shù)據(jù)增強(qiáng)和正則化技術(shù),但drop path regularization對(duì)于ViT骨干網(wǎng)絡(luò)是非常有效的,所以,真香。
          ?
          ?
          總之在訓(xùn)練過(guò)程中的使用LSJ數(shù)據(jù)增廣(分辨率,尺度范圍[0.1, 2.0]),AdamW+Cosine學(xué)習(xí)率衰減+linear warmup,drop path正則;
          ?
          訓(xùn)練過(guò)程使用了64個(gè)Nvidia V100-32GB的GPU,batch size為64。當(dāng)采用預(yù)訓(xùn)練初始模型參數(shù)時(shí),微調(diào)100 個(gè)epoch;當(dāng)從頭開(kāi)始訓(xùn)練時(shí),訓(xùn)練400個(gè)epoch。
          ?
          為使上述訓(xùn)練機(jī)制適用于同模型,研究人員對(duì)學(xué)習(xí)率lr、權(quán)重衰減(weight decay, wd)以及drop path rate(dp)三個(gè)超參進(jìn)行微調(diào),同時(shí)保持其他不變。采用ViT-B+MoCoV3進(jìn)行了大量實(shí)驗(yàn)以估計(jì)合理的超參范圍:
          ?
          1. 對(duì)每個(gè)初始化,固定dp=0.0,對(duì)lr與wd采用grid搜索,固定搜索中心為,以此為中心搜索;
          ?
          1. 對(duì)于ViT-B,從中選擇dp(預(yù)訓(xùn)練參數(shù)時(shí),訓(xùn)練50epoch;從頭開(kāi)始時(shí),則訓(xùn)練100epoch,dp=0.1為最優(yōu)選擇;
          ?
          1. 對(duì)于ViT-L,采用了ViT-B的最優(yōu)lr與wd,發(fā)現(xiàn)dp=0.3是最佳選擇。
          ?

          實(shí)驗(yàn)部分


          研究人員對(duì)比了五種網(wǎng)絡(luò)初始化的方法:
          ?
          1. Random:即所有參數(shù)均隨機(jī)初始化,無(wú)預(yù)訓(xùn)練;
          ?
          1. Supervised:即ViT骨干在ImageNet上通過(guò)監(jiān)督方式預(yù)訓(xùn)練,分別為300和200epoch;
          ?
          1. MoCoV3:即在ImageNet上采用無(wú)監(jiān)督方式預(yù)訓(xùn)練ViT-B與ViT-L,300epoch;
          ?
          1. BEiT:即采用BEiT方式對(duì)ViT-B與ViT-L預(yù)訓(xùn)練,800epoch;
          ?
          1. MAE:使用MAE 無(wú)監(jiān)督方法在ImageNet-1K上訓(xùn)練后得到ViT-B和ViT-L的權(quán)重。
          ?
          ?
          雖然實(shí)驗(yàn)盡可能對(duì)所有方法都公平,但還是有一些因素導(dǎo)致了不公平:
          ?
          1. 不同的預(yù)訓(xùn)練方法采用了不同的epoch;
          ?
          1. BEiT采用可學(xué)習(xí)相對(duì)位置bias,而非其他方法中的絕對(duì)位置embedding;
          ?
          1. BEiT在預(yù)訓(xùn)練過(guò)程中采用了layer scale,而其他方法沒(méi)采用;
          ?
          1. 研究人員嘗試對(duì)預(yù)訓(xùn)練數(shù)據(jù)標(biāo)準(zhǔn)化,而B(niǎo)EiT額外采用了DALL-E中的discrete VAE,在約2.5億專有和未公開(kāi)圖像上訓(xùn)練作為圖像tokenizer。
          ?
          ?
          在COCO目標(biāo)檢測(cè)和實(shí)例分割上進(jìn)行實(shí)驗(yàn)的結(jié)果可以看到:
          ?
          1. 無(wú)論初始化過(guò)程如何,文中提出的Mask R-CNN訓(xùn)練過(guò)程都更加平滑,甚至它都不需要stabilizing的技術(shù)手段,如gradient clipping。
          ?
          1. 相比有監(jiān)督訓(xùn)練,從頭開(kāi)始訓(xùn)練具有1.4倍的性能提升。實(shí)驗(yàn)結(jié)果也證明了有監(jiān)督預(yù)訓(xùn)練并不一定比隨機(jī)初始化更強(qiáng);
          ?
          1. 基于對(duì)比學(xué)習(xí)的MoCoV3具有與監(jiān)督預(yù)訓(xùn)練相當(dāng)?shù)男阅埽?/span>
          ?
          1. 對(duì)于ViT-B來(lái)說(shuō),BEiT與MAE均優(yōu)于隨機(jī)初始化與有監(jiān)督預(yù)訓(xùn)練;
          ?
          1. 對(duì)于ViT-L,BEiT與MAE帶來(lái)的性能提升進(jìn)一步擴(kuò)大。
          ?
          從收斂性上看,相比隨機(jī)初始化,預(yù)訓(xùn)練初始化可以顯著加速收斂過(guò)程,大約加速4倍 。
          ?
          ?
          還有兩個(gè)需要注意的地方是:
          ?
          1. 理想情況下,每個(gè)訓(xùn)練過(guò)程的drop path rate都應(yīng)進(jìn)行調(diào)整,因?yàn)榭梢杂^察到,當(dāng)模型接受更長(zhǎng)時(shí)間的訓(xùn)練時(shí),最佳dp值可能需要增加。

          ?

          1. 在所有情況下都可以通過(guò)訓(xùn)練來(lái)獲得更好的結(jié)果,例如加長(zhǎng)訓(xùn)練時(shí)間,使用更復(fù)雜的訓(xùn)練流程,使用更好的正則化和更大的數(shù)據(jù)增強(qiáng)。

          ?
          當(dāng)然,由于COCO數(shù)據(jù)集的訓(xùn)練集非常大,即便隨機(jī)初始化也能獲得比較好,甚至更好的結(jié)果,這就導(dǎo)致遷移學(xué)習(xí)比較尷尬了。
          ?
          研究人員還發(fā)現(xiàn),現(xiàn)有的方法如有監(jiān)督IN1k、MoCoV3無(wú)監(jiān)督預(yù)訓(xùn)練的性能反而會(huì)弱于隨機(jī)初始化基線方案。并且已有的無(wú)監(jiān)督遷移學(xué)習(xí)改進(jìn)對(duì)比的均為監(jiān)督預(yù)訓(xùn)練,并不包含隨機(jī)初始化方案。
          ?
          此外,其他研究人員都是采用了較弱的模型,因而具有更低的結(jié)果,這就導(dǎo)致不確定如何將已有方法遷移到sota 模型中。
          ?
          由于預(yù)訓(xùn)練,MAE與BEiT提供了首個(gè)令人信服的COCO數(shù)據(jù)集上的性能提升,并且這些基于masking的方案會(huì)隨模型大小提升進(jìn)一步改善檢測(cè)遷移學(xué)習(xí)能力的潛力 ,而有監(jiān)督預(yù)訓(xùn)練與MoCoV3等初始化方式上并沒(méi)有觀察到這種結(jié)論。


          結(jié)論


          論文提出的方法使標(biāo)準(zhǔn)的ViT模型能夠作為骨干在Mask R-CNN中得到實(shí)際的應(yīng)用。
          ?
          這些方法產(chǎn)生了可接受的訓(xùn)練內(nèi)存和時(shí)間,同時(shí)也在COCO上取得了優(yōu)異的結(jié)果,而且還不會(huì)涉及到復(fù)雜的擴(kuò)展。
          ?
          通過(guò)對(duì)五種不同的ViT初始化方法進(jìn)行比較可以發(fā)現(xiàn),雖然隨機(jī)初始化要比預(yù)訓(xùn)練的初始化長(zhǎng)大約4倍,但相比于比ImageNet-1k的監(jiān)督預(yù)訓(xùn)練,可以取得更高的AP。
          ?
          此外,MoCoV3作為對(duì)比性無(wú)監(jiān)督學(xué)習(xí)的代表,其表現(xiàn)幾乎與監(jiān)督性預(yù)訓(xùn)練相同,因此也比隨機(jī)初始化差。
          ?
          更重要的是,論文發(fā)現(xiàn)了一個(gè)令人興奮的新結(jié)果:基于masking的方法(BEiT和MAE)比有監(jiān)督和隨機(jī)初始化都有更大的收益,而且這些收益會(huì)隨著模型大小的增大而增加。


          參考資料:

          https://arxiv.org/abs/2111.11429



          瀏覽 120
          點(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>
                  大香蕉俺去也 | 91资源站| 欧美成人精品三级 | 插逼免费视频 | 亚洲国产成人在线播放 |