Self-Supervised Learning with Swin Transformers


Self-Supervised Learning with Swin Transformers

2021-05-11 20:32:02

Paperhttps://arxiv.org/pdf/2105.04553.pdf 

Codehttps://github.com/SwinTransformer/Transformer-SSL 

 

1. Background and Motivation

作者提到最近 cv 領域的兩個技術潮流,一個是以 MoCo 為首的自監督視覺表達;另一個是以 Transformer 為首的骨干網絡的設計。但是目前這兩種技術尚未有效地進行結合,還是獨立發展的階段。MoCo v3 和 DINO 都嘗試將自監督學習和 Transformer 的架構結合起來,並在物體分類任務上,如 ImageNet 上進行了實驗。但是尚未有工作將其拓展到下游任務,如物體檢測、分割等任務。作者將他們之前設計的 Swin-Transformer 和 自監督學習的技術相結合,嘗試拓展到這兩個領域。之所以能這么做,是因為 Swin-Transformer 的架構具有這方面的優勢。

 

除了骨干網絡方面的改進,作者也提出了一種自監督學習的技術,通過將 MoCo v2 和 BYOL 相結合,得到了  MoBY。作者提到,當將該自監督學習的權重遷移到物體檢測和分割任務上時,得到了和監督學習類似的效果。更狠的是,作者直接說,本文無新技術的創新,只是提供了一種組合之前好的技術的方法,但是使用了較少的 tricks,以及超參數的調整,在 ImageNet 上取得了高精度。

 

 

2 A Baseline SSL Method with Swin Transformers

MoBY: a self-supervised learning approach: 

本文提出的 MoBY 方法的流程圖如圖 1 所示,有兩個 encoder,一個是 online encoder,另外一個是 target encoder。這兩個 encoder 都有一個  backbone 以及 一個 projector head(兩層的 MLP),online encoder 還有另外一組 prediction head,這樣就使得兩個 encoder 並不是對稱的。online encoder 是利用梯度進行更新,target encoder 在每一次訓練迭代中,是 online encoder 的一個 moving average?

 

隨后,用了一個對比損失函數,來學習特征表達。具體來說,對於 online  view q,其對比損失可以通過如下的損失進行計算:

 

 

其中,k+ 是 target feature,ki 是 key queue 的 target feature,K 是 key queue 的大小,默認是 4096。在訓練過程中,和大部分基於 Transformer 的方法一樣,本文也采用  AdamW optimizer。

 

Swin Transformer as the backbone

作者這里采用的是 Swin-T 作為骨干網絡,其模型的復雜度和 ResNet-50,DeiT-S 差不多。

 

 

 

 

3. Experimental Results 

 

 

 

 

==


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM