發表日期 5/3/2022, 12:30:20 PM
選自arXiv
作者:Adam Zewe
機器之心編譯
編輯:趙陽、張倩
本文提齣瞭訓練視覺 Transformer(ViT)的三種數據增強方法:灰度、過度曝光、高斯模糊,以及一種簡單的隨機修剪方法 (SRC)。實驗結果錶明,這些新方法在效果上大大優於 ViT 此前的全監督訓練方法。
Transformer 模型 [55] 及其衍生模型在 NLP 任務中取得巨大成功後,在計算機視覺任務中也越來越受歡迎。這一係列的模型越來越多地用於圖像分類 [13]、檢測與分割 [3]、視頻分析等領域。尤其是 Dosovistky 等人 [13] 提齣的視覺 Transformer(ViT)成為瞭捲積結構的閤理替代模型。這些現象說明 Transformers 模型已經可以作為一種通用架構,來通過注意力機製學習捲積以及更大區間的操作 [5,8]。相比之下,捲積網絡 [20,27,29,41] 本就具備瞭平移不變性,不用再通過訓練來獲取。因此,包含捲積的混閤體係結構比普通 Transformers 收斂得更快也就不足為奇瞭 [18]。
因為 Transformer 僅將多個 patch 中相同位置的像素閤並,所以 Transformer 必須瞭解圖像的結構,同時優化模型,以便它處理用來解決給定任務目標的輸入。這些任務可以是在監督情況下産生標簽,或者在自監督方法下的其他代理任務。然而, 盡管 Transformer 取得瞭巨大的成功,但在計算機視覺方麵研究如何有效訓練視覺 Transformer 的工作卻很少,特彆是在像 ImageNet1k 這樣的中型數據集上 。從 Dosovistky 等人的工作 [13] 開始,訓練步驟大多是使用 Touvron 等人 [48] 和施泰納等人 [42] 提齣的方法的變體。相比之下,有許多工作通過引入池化、更有效的注意力機製或者重新結閤捲積和金字塔結構的混閤架構提齣瞭替代架構。這些新設計雖然對某些任務特彆有效,但不太通用。所以研究者們會睏惑,性能的提高到底是由於特定的架構設計,還是因為它按照 ViT 捲積所提齣的方式改進瞭優化過程。
最近,受時下流行的基於 BerT 預訓練啓發的自監督方法為計算機視覺中的 BerT 時代帶來瞭希望。從 Transformer 架構本身齣發,NLP 和 CV 領域之間存在一些相似之處。然而,並非在所有方麵都是相同的:處理的模態具有不同的性質(連續與離散)。CV 提供像 ImageNet [40] 這樣的大型帶有注釋的數據庫,並且在 ImageNet 上進行全監督的預訓練對於處理不同的下遊任務(例如遷移學習 [37] 或語義分割)是有效的。
如果沒有對 ImageNet 上全監督方法的進一步研究,很難斷定像 BeiT [2] 這樣的自監督方法的性能是否該歸因於網絡的訓練過程,例如數據增強、正則化、優化,或能夠學習更一般的隱式錶示的底層機製。在本文中,研究者們沒有強行迴答這個難題,而是通過更新常規 ViT 架構的訓練程序來探討這個問題 。
論文地址:https://arxiv.org/pdf/2204.07118.pdf
研究者們希望這個工作能有助於更好地理解如何充分利用 Transformer 的潛力以及說明類似 BerT 的預訓練的重要性。他們的工作建立在最新的全監督和自監督方法的基礎上,並對數據增強提齣瞭新的見解。作者為 ImageNet-1k 和 ImageNet-21k 上的 ViT 提齣瞭新的訓練方法。主要構成如下:
作者以 Wightman 等人的工作 [57] 為基礎,同樣使用 ResNet50 。特彆之處在於,僅對 Imagenet1k 的訓練過程采用二元交叉熵損失,這一步可以通過引入一些顯著改善大型 ViT [51] 訓練的方法,即 stochastic depth [24] 和 LayerScale [51],來實現。
3-Augment:這是一種簡單的數據增強方式,靈感來自於自監督學習。令人驚訝的是,在使用 ViT 時,作者觀察到這種方法比用於訓練 ViT 的常用自動 / 學習數據增強(如 RandAugment [6])效果更好。
在像 ImageNet-21k 這樣的更大數據集上進行預訓練時,簡單隨機裁剪的方式比調整大小後再隨機裁剪的方式更有效。
訓練時降低分辨率。這種選擇減少瞭訓練和測試過程的差異 [53],而且還沒有被 ViT 使用。作者觀察到這樣做還能通過防止過擬閤,來使得對最大的模型産生正則化效果。例如,目標分辨率是 224 × 224 ,在分辨率 126 × 126(81 個 token)下預訓練的 ViT-H 在 ImageNet-1k 上的性能比在分辨率 224 × 224(256 個 token)下預訓練時更好。並且在預訓練時的要求也較低,因為 token 數量減少瞭 70%。從這個角度來看,這樣做提供瞭與掩碼自編碼器 [19] 類似的縮放屬性。
這種 “新” 訓練策略不會因最大模型而飽和,這比 Touvron 等人的 Data-Efficient Image Transformer (DeiT) [48] 又多邁齣瞭一步。至此,研究者們在圖像分類和分割方麵都獲得瞭具有競爭力的性能,即使是與最近流行的架構(如 SwinTransformers [31] 或現代捲積網絡架構(如 ConvNext [32])相比也是如此。下麵闡述一些作者認為有趣的結果。
即使在中等規模的數據集上,研究者也會利用具有更多能力的模型。例如,僅在 ImageNet1k 上訓練 ViT-H 時, top-1 準確率達到 85.2%,這比文獻中報道的分辨率為 224×224 的監督訓練過程的最佳 ViT-H 提高瞭 +5.1%。
ImageNet-1k 訓練程序允許訓練十億參數的 ViT-H(52 層),無需任何超參數適應,隻需使用與 ViT-H 相同的隨機深度下降率。在 224×224 時達到 84.9%,即比在相同設置下訓練的相應 ViT-H 高 +0.2%。
在不犧牲性能的情況下,將所需的 GPU 數量和 ViT-H 的訓練時間都能減少一半 以上,從而可以在不減少資源的情況下有效地訓練此類模型。這要歸功於研究者以較低分辨率進行的預訓練,從而減少瞭峰值記憶。
對於 ViT-B 和 Vit-L 模型,作者提齣的監督訓練方法與具有默認設置的類似 BerT 的自監督方法 [2, 19] 相當,並且在使用相同級彆的注釋和更少的 epoch 時,兩者都適用於圖像分類和語義分割任務。
通過這種改進的訓練過程,vanilla ViT 縮小瞭與最近最先進架構的差距,同時通常能提供更好的計算 / 性能權衡。作者提齣的模型在附加測試集 ImageNet-V2 [39] 上也相對更好,這錶明他們訓練的模型比先前的大多數工作能更好地泛化到另一個驗證集上。
對遷移學習分類任務中使用的裁剪比率的影響進行消融實驗。研究者觀察到裁剪結果對性能有顯著影響,但最佳值很大程度上取決於目標數據集 / 任務。
Vision Transformers 重溫訓練和預訓練
在本節中,研究者介紹瞭視覺 Transformers 的訓練過程,並將其與現有方法進行比較。他們在錶 1 中詳細說明瞭不同的成分。基於 Wightman 等人 [57] 和 Touvron 等人 [48] 的工作,作者介紹瞭幾個對最終模型精度有重大影響的改動。
數據增強
自從 AlexNet 齣現以來,用於訓練神經網絡的數據增強流程有幾次重大的修改。有趣的是,相同的數據增強,如 RandAugment [6],被廣泛用於 ViT,而他們的策略最初是為瞭捲積網絡學習而産生的。鑒於這些架構中的架構先驗和偏差是完全不同的,增強策略可能無法適應,並且考慮到選擇中涉及的大量選擇,可能會過擬閤。因此,研究者重新審視瞭這個先驗步驟。
3-Augment:作者提齣瞭一個簡單的數據增強,靈感來自監督學習 (SSL) 中使用的內容。作者提齣應該考慮以下三種變形:
灰度:有利於顔色不變性並更加關注形狀。
過度曝光:會在顔色上添加強烈的噪點,以更加適應顔色強度的變化,從而更加關注形狀。
高斯模糊:為瞭稍微改變圖像中的細節。
對於每張圖像,他們以均值概率來選擇其中一個數據增強。除瞭這 3 個增強選項之外,還包括常見的顔色抖動和水平翻轉。圖 2 說明瞭 3-Augment 方法中使用的不同增強。
在錶 2 中,他們提供瞭對不同數據增強組件的消融實驗結果。
裁剪
GoogleNet [43] 中介紹瞭 Random Resized Crop (RRC)。它是一種限製模型過度擬閤的正則化,同時有利於模型所做的決策對於某一類轉換是不變的。這種數據增強在 Imagenet1k 上被認為很重要,能防止過度擬閤,這種情況恰好在現代大型模型中較為常見。
然而,這種裁剪策略在訓練圖像和測試圖像之間引入瞭一些長寬比和物體的明顯尺寸方麵的差異 [53]。由於 ImageNet-21k 包含更多的圖像,不太容易過度擬閤。因此,研究者質疑強 RRC 正則化的優勢是否能夠彌補在更大數據集上訓練時的缺點。
簡單隨機裁剪 (SRC) 是一種更簡單的裁剪提取方法。它類似於 AlexNet [27] 中提齣的原始裁剪選擇:調整圖像的大小,使最小的邊與訓練分辨率相匹配。然後在所有邊應用一個 4 像素的反射填充,最後應用一個沿圖像 x 軸隨機選擇訓練圖形大小的正方形裁剪機製
圖 3 顯示 RRC 和 SRC 采樣的裁剪框。RRC 提供瞭很多不同大小和形狀的裁剪框。相比之下,SRC 覆蓋瞭整個圖像的更多部分並保留瞭縱橫比,但提供的形狀多樣性較少:裁剪框顯著重疊。因此,在 ImageNet1k 上進行訓練時,使用常用的 RRC 性能更好。舉個例子來說,如果不使用 RRC,ViT-S 上的 top-1 準確率會降低 0.9%。
然而,在 ImageNet-21k(比 ImageNet-1k 大 10 倍)中,過擬閤的風險較小,並且增加 RRC 提供的正則化和多樣性並不重要。在這種情況下,SRC 具有瞭減少外觀尺寸和縱橫比差異的優勢。更重要的是,它使圖像的實際標簽與裁剪後的標簽相匹配的可能性更高:RRC 在裁剪方麵相對激進,在許多情況下,標記的對象甚至不存在於作物中,如圖 4 所示,其中一些裁剪不包含標記的對象。例如,對於 RRC,左側示例中的裁剪圖片沒有斑馬,或者中間示例中的三個裁剪圖片中沒有火車。SRC 不太可能發生這種情況,因為 SRC 覆蓋瞭圖像像素的大部分。
在錶 5 中,研究者提供瞭 ImageNet-21k 上隨機調整裁剪大小的消融實驗結果,可以看到這些裁剪方式能轉化為性能方麵的顯著提升。
實驗結果
研究者對圖像分類(在 ImageNet-21k 上進行和不進行預訓練的 ImageNet-1k)、遷移學習和語義分割的評估錶明,他們的程序大大優於以前針對 ViT 的全監督訓練方案。該研究還錶明,經過監督訓練的 ViT 的性能與最近的架構性能相當。這些結果可以作為最近在 ViT 上使用的自監督方法的更好基準模型。
更多細節請參考原論文。