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

          何凱明團隊又出新論文!北大、上交校友教你用ViT做遷移學習

          共 4364字,需瀏覽 9分鐘

           ·

          2021-11-30 17:01




          視學算法報道??

          編輯:LRS 好困 小咸魚

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


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

          研究方法


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

          實驗部分


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

          ?

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

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


          結(jié)論


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


          參考資料:

          https://arxiv.org/abs/2111.11429


          點個在看 paper不斷!

          瀏覽 32
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <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高清无码 |