何愷明組新論文:只用ViT做主幹也可以做好目標檢測

機器之心報道

編輯:張倩、小舟

做目標檢測就一定需要 FPN 嗎?昨天,來自 Facebook AI Research 的 Yanghao Li、何愷明等研究者在 arXiv 上上傳了一篇新論文,證明了將普通的、非分層的視覺 Transformer 作為主幹網路進行目標檢測的可行性。他們希望這項研究能夠引起大家對普通主幹檢測器的關注。

何愷明組新論文:只用ViT做主幹也可以做好目標檢測

研究概覽

何愷明組新論文:只用ViT做主幹也可以做好目標檢測

論文連結:https://arxiv。org/pdf/2203。16527。pdf

當前的目標檢測器通常由一個與檢測任務無關的主幹特徵提取器和一組包含檢測專用先驗知識的頸部和頭部組成。頸部 / 頭部中的常見元件可能包括感興趣區域(RoI)操作、區域候選網路(RPN)或錨、特徵金字塔網路(FPN)等。如果用於特定任務的頸部 / 頭部的設計與主幹的設計解耦,它們可以並行發展。從經驗上看,目標檢測研究受益於對通用主幹和檢測專用模組的大量獨立探索。長期以來,由於卷積網路的實際設計,這些主幹一直是多尺度、分層的架構,這嚴重影響了用於多尺度(如 FPN)目標檢測的頸 / 頭的設計。

在過去的一年裡,視覺 Transformer(ViT)已經成為視覺識別的強大支柱。與典型的 ConvNets 不同,最初的 ViT 是一種簡單的、非層次化的架構,始終保持單一尺度的特徵圖。它的「極簡」追求在應用於目標檢測時遇到了挑戰,例如,我們如何透過上游預訓練的簡單主幹來處理下游任務中的多尺度物件?簡單 ViT 用於高解析度影象檢測是否效率太低?放棄這種追求的一個解決方案是在主幹中重新引入分層設計。這種解決方案,例如 Swin Transformer 和其他網路,可以繼承基於 ConvNet 的檢測器設計,並已取得成功。

在這項工作中,何愷明等研究者追求的是一個不同的方向:

探索僅使用普通、非分層主幹的目標檢測器

。如果這一方向取得成功,僅使用原始 ViT 主幹進行目標檢測將成為可能。在這一方向上,預訓練設計將與微調需求解耦,上游與下游任務的獨立性將保持,就像基於 ConvNet 的研究一樣。這一方向也在一定程度上遵循了 ViT 的理念,即在追求通用特徵的過程中減少歸納偏置。由於非區域性自注意力計算可以學習平移等變特徵,它們也可以從某種形式的監督或自我監督預訓練中學習尺度等變特徵。

研究者表示,

在這項研究中,他們的目標不是開發新的元件,而是透過最小的調整克服上述挑戰。具體來說,他們的檢測器僅從一個普通 ViT 主幹的最後一個特徵圖構建一個簡單的特徵金字塔(如圖 1 所示)。這一方案放棄了 FPN 設計和分層主幹的要求。為了有效地從高解析度影象中提取特徵,他們的檢測器使用簡單的非重疊視窗注意力(沒有 shifting)。他們使用少量的跨視窗塊來傳播資訊,這些塊可以是全域性注意力或卷積。這些調整隻在微調過程中進行,不會改變預訓練。

何愷明組新論文:只用ViT做主幹也可以做好目標檢測

這種簡單的設計收穫了令人驚訝的結果。研究者發現,在使用普通 ViT 主幹的情況下,FPN 的設計並不是必要的,它的好處可以透過由大步幅 (16)、單一尺度圖構建的簡單金字塔來有效地獲得。他們還發現,只要資訊能在少量的層中很好地跨視窗傳播,視窗注意力就夠用了。

更令人驚訝的是,在某些情況下,研究者開發的名為「ViTDet」的普通主幹檢測器可以媲美領先的分層主幹檢測器(如 Swin、MViT)。透過掩蔽自編碼器(MAE)預訓練,他們的普通主幹檢測器可以優於在 ImageNet-1K/21K 上進行有監督預訓練的分層檢測器(如下圖 3 所示)。

何愷明組新論文:只用ViT做主幹也可以做好目標檢測

在較大尺寸的模型上,這種增益要更加顯著。該檢測器的優秀效能是在不同的目標檢測器框架下觀察到的,包括 Mask R-CNN、Cascade Mask R-CNN 以及它們的增強版本。

在 COCO 資料集上的實驗結果表明,一個使用無標籤 ImageNet-1K 預訓練、帶有普通 ViT-Huge 主幹的 ViTDet 檢測器的 AP^box 可以達到 61。3。他們還在長尾 LVIS 檢測資料集上展示了 ViTDet 頗具競爭力的結果。雖然這些強有力的結果可能部分來自 MAE 預訓練的有效性,但這項研究表明,

普通主幹檢測器可能是有前途的,這挑戰了分層主幹在目標檢測中的根深蒂固的地位

方法細節

該研究的目標是消除對主幹網路的分層約束,並使用普通主幹網路進行目標檢測。因此,該研究的目標是用最少的改動,讓簡單的主幹網路在微調期間適應目標檢測任務。經過改動之後,原則上我們可以應用任何檢測器頭(detector head),研究者選擇使用 Mask R-CNN 及其擴充套件。

簡單的特徵金字塔

FPN 是構建用於目標檢測的 in-network 金字塔的常見解決方案。如果主幹網路是分層的,FPN 的動機就是將早期高解析度的特徵和後期更強的特徵結合起來。這在 FPN 中是透過自上而下(top-down)和橫向連線來實現的,如圖 1 左所示。

何愷明組新論文:只用ViT做主幹也可以做好目標檢測

如果主幹網路不是分層網路,那麼 FPN 動機的基礎就會消失,因為主幹網路中的所有特徵圖都具有相同的解析度。該研究僅使用主幹網路中的最後一張特徵圖,因為它應該具有最強大的特徵。

研究者對最後一張特徵圖並行應用一組卷積或反捲積來生成多尺度特徵圖。具體來說,他們使用的是尺度為 1/16(stride = 16 )的預設 ViT 特徵圖,該研究可如圖 1 右所示,這個過程被稱為「簡單的特徵金字塔」。

何愷明組新論文:只用ViT做主幹也可以做好目標檢測

從單張特徵圖構建多尺度特徵圖的策略與 SSD 的策略有關,但該研究的場景涉及對深度、低解析度的特徵圖進行上取樣。在分層主幹網路中,上取樣通常用橫向連線進行輔助,但研究者透過實驗發現,在普通 ViT 主幹網路中橫向連線並不是必需的,簡單的反捲積就足夠了。研究者猜想這是因為 ViT 可以依賴位置嵌入來編碼位置,並且高維 ViT patch 嵌入不一定會丟棄資訊。

如下圖所示,該研究將這種簡單的特徵金字塔與同樣建立在普通主幹網路上的兩個 FPN 變體進行比較。在第一個變體中,主幹網路被人為地劃分為多個階段,以模仿分層主幹網路的各個階段,並應用橫向和自上而下的連線(圖 2(a))。第二個變體與第一個變體類似,但僅使用最後一張特徵圖(圖 2(b))。該研究表明這些 FPN 變體不是必需的。

何愷明組新論文:只用ViT做主幹也可以做好目標檢測

主幹網路調整

目標檢測器受益於高解析度輸入影象,但在整個主幹網路中,計算全域性自注意力對於記憶體的要求非常高,而且速度很慢。該研究重點關注預訓練主幹網路執行全域性自注意力的場景,然後在微調期間適應更高解析度的輸入。這與最近使用主幹網路預訓練直接修改注意力計算的方法形成對比。該研究的場景使得研究者能夠使用原始 ViT 主幹網路進行檢測,而無需重新設計預訓練架構。

該研究探索了使用跨視窗塊的視窗注意力。在微調期間,給定高解析度特徵圖,該研究將其劃分為常規的非重疊視窗。在每個視窗內計算自注意力,這在原始 Transformer 中被稱為「受限」自注意力。

與 Swin 不同,該方法不會跨層「移動(shift)」視窗。為了允許資訊傳播,該研究使用了極少數(預設為 4 個)可跨視窗的塊。研究者將預訓練的主幹網路平均分成 4 個塊的子集(例如對於 24 塊的 ViT-L,每個子集中包含 6 個),並在每個子集的最後一個塊中應用傳播策略。研究者分析瞭如下兩種策略:

全域性傳播。該策略在每個子集的最後一個塊中執行全域性自注意力。由於全域性塊的數量很少,記憶體和計算成本是可行的。這類似於(Li et al。, 2021 )中與 FPN 聯合使用的混合視窗注意力。

卷積傳播。該策略在每個子集之後新增一個額外的卷積塊來作為替代。卷積塊是一個殘差塊,由一個或多個卷積和一個 identity shortcut 組成。該塊中的最後一層被初始化為零,因此該塊的初始狀態是一個 identity。將塊初始化為 identity 使得該研究能夠將其插入到預訓練主幹網路中的任何位置,而不會破壞主幹網路的初始狀態。

這種主幹網路的調整非常簡單,並且使檢測微調與全域性自注意力預訓練相容,也就沒有必要重新設計預訓練架構。

實驗結果

消融研究

在消融研究中,研究者得到了以下結論:

1、一個簡單的特徵金字塔就足夠了。在表 1 中,他們比較了圖 2 所示的特徵金字塔構建策略。

何愷明組新論文:只用ViT做主幹也可以做好目標檢測

2、在幾個傳播塊的幫助下,視窗注意力就足夠了。表 2 總結了本文提出的主幹調整方法。簡而言之,與只有視窗注意力、無跨視窗傳播塊的基線(圖中的「none」)相比,各種傳播方式都可以帶來可觀的收益。

何愷明組新論文:只用ViT做主幹也可以做好目標檢測

何愷明組新論文:只用ViT做主幹也可以做好目標檢測

3、掩蔽自編碼器可以提供強大的預訓練主幹。表 4 比較了主幹預訓練的策略。

何愷明組新論文:只用ViT做主幹也可以做好目標檢測

與分層主幹的對比

下表 5 顯示了與分層主幹網路的比較結果。

何愷明組新論文:只用ViT做主幹也可以做好目標檢測

下圖 3 顯示了幾種模型的準確率與模型尺寸、FLOPs 和測試時間三者的關係。

何愷明組新論文:只用ViT做主幹也可以做好目標檢測

與之前系統的對比

下表 6 給出了幾種方法在 COCO 資料集上的系統級比較結果。

何愷明組新論文:只用ViT做主幹也可以做好目標檢測

TAG: 主幹網路檢測器ViT特徵