讀文獻 Large Scale Learning of General Visual Representations for Transfer 閱讀心得

摘要

這篇文章擴大了預訓練的規模,並提出一種簡單易用的遷移學習算法叫做大遷移(BiT)。通過組合一系列仔細選擇的組件,遷移時應用簡單的啓發式算法,在20個數據集上實現了非常好的識別效果。重點是在小數據集上,86.4%在ILSVRC-2012,這個數據集每個類只有25張圖片;97.6%在CIFAR10(修改成每個類只有10張圖片的形式)。

Introduction

要執行遷移學習,首先要在大型通用數據集上預訓練網絡。從訓練前到新任務的知識轉移通常需要使用預訓練學習到的權重,初始化後續任務的網絡。這樣就可以用較少的後續任務標記示例獲得良好的性能。遷移學習也可以將計算需求轉移到預訓練任務。儘管預訓練階段很消耗算力,但後續任務通常需要較少的訓練迭代。
我們在JFT-300M數據集上預訓練BiT-Large(BiT-L),該數據集包含300 M帶噪聲標籤的圖像。BiT-L在許多視覺分類任務中獲得了最先進的性能,訓練集從10到1M不等(圖1)。這些任務包括ImageNet的ILSVRC-2012[8]、CIFAR-10/100[25]、Oxford IIIT Pet[35]、Oxford Flowers-102[34](包括低數據變量)和1000個樣本VTAB-1k基準[55],它本身由19個不同的數據集組成。我們也在公共ImageNet-21k數據集上訓練BiT-M,並展示了與傳統的ILSVRC-2012預訓練相比的巨大改進。
在這裏插入圖片描述
另外,這篇文章提出了一個設置超參數的啓發式方法,在很多新任務上都很有效。
本文的目標不是引入一個新的組件,或者爲最先進的深度學習管道增加更多的複雜性。相反,我們的目標是簡化並創建一個預訓練/傳輸管道,該管道使用最少的必要技巧,以在廣泛的流行分類任務中獲得非常強的性能。我們還研究了不同組件的影響,並深入瞭解了規模、架構和訓練超參數之間的相互作用。對於實踐者,我們計劃發佈一個在公共ImageNet-21k數據集上訓練的性能BiT-M模型。

BiT的組件

我們回顧了構建一個經過預訓練的網絡所必需的組件,該網絡可以在許多任務中獲得良好的性能。它們分爲兩組:上游組用於訓練前,下游組用於微調新任務。

2.1 Upstream Pre-Training

我們發現,長時間的訓練計劃對於擁有大量數據的訓練至關重要。我們在三個大型數據集上訓練三個BiT模型:包含130萬個圖像(位)的ILSVRC-2012[38]、包含14M個圖像(位-M)的ImageNet-21k[8]和包含300萬個圖像(位-L)的JFT[40]。

第二部分是組正則化(GN)[49]。批正則化(BN)[19]是一種常用的用於穩定訓練的技術,在大多數最先進的視覺模型中都有使用。然而,BN在遷移學習中可能會受到損害,這可能是因爲需要更新運行統計數據。我們在第4.3節中對此進行了實證研究。當訓練時每個類只有很少的圖像時,BN也可能是有害的,因爲批處理統計變得太嘈雜。在這種情況下,當GN與權重標準化(WS)結合使用時,可以提高ImageNet和COCO的性能[29]。我們證明了GN和WS在較大批量下都是有效的,並且對遷移學習有顯著的影響。

2.2 Transfer to Downstream Task

我們提出了一個簡易的微調方法,適用於許多不同的任務,訓練集大小跨越許多數量級。特別是,我們避免了對每個新任務和數據集大小進行昂貴的超參數搜索。

我們的啓發式超參數配置,我們稱之爲位超參數配置,根據數據集特徵選擇分辨率、混合的使用和訓練計劃;
在這裏插入圖片描述
在微調過程中,我們使用有限的數據預處理:將圖像調整爲固定的正方形大小,裁剪出較小的隨機正方形,並在訓練時隨機水平翻轉圖像。在測試時,我們只將圖像調整爲固定大小。我們應用的每項任務唯一的啓發式方法是,我們不會對可能破壞標籤語義的任務執行隨機水平翻轉或裁剪,例如在預測像素空間中的對象方向或座標時。
最近的研究表明,現有的增強方法會導致ConvNets的訓練和測試分辨率之間的不一致[45]。一種常見的啓發式方法是在測試時通過一個小的因素來提高分辨率。一個更好的解決方案,由[45]提出,是引入一個額外的步驟,在這個步驟中訓練的模型被微調到測試分辨率。這很適合遷移學習:我們在微調步驟中包括分辨率的變化。
應用MIXUP插值技術於這次遷移學習中,事實證明效果不錯。
最後,我們注意到我們不使用權技術重衰減,既不朝向零,也不朝向預先訓練的重量。我們也不使用隨機丟棄方法。儘管網絡非常大,BiT-L有大約10億個參數,但即使傳輸到非常小的數據集,在不需要這些技術和它們各自的超參數的情況下,性能也出奇地好。我們發現一個適當選擇的時間表是足夠的。根據樣本數自動選擇時間表,較大的數據集具有較長的時間表(見表1)。

實驗

我們使用三個不同規模的數據集訓練了三個上游模型:BiT-S、BiT-M、BiT-L。我們使用一系列的下游任務評估這些模型。【跨越了高和低的數據區域】

3.1 Data for upstream pre-training

BiT-S是在ImageNet數據集的流行ILSVRC-2012變體上進行訓練的。這個數據集包含128萬個圖像和1000個類。每個圖像都有一個標籤,並且標籤是根據WordNet層次結構組織的。
BiT-M是在完整的ImageNet-21k數據集[8]上進行訓練的,該數據集有1420萬個圖像和21k個類,也使用WordNet組織。
BiT-L是在JFT-300M數據集上訓練的,如[40,33,50]所示。此數據集是[16,6]中使用的新版本。JFT-300M由大約3億張圖片組成,每張圖片平均有1.26個標籤。標籤被組織成18 291個類的層次結構。註釋是使用自動管道執行的,因此不完善;大約20%的標籤有噪音。

3.2 Downstream tasks

使用各種類型、各種大小的標準數據集進行驗證,主要包括ILSVRC-2012 [8],CIFAR-10/100 [25], Oxford-IIIT Pet [35] and Oxford Flowers-102 [34].
還使用了VTAB。

3.3 Hyperparameter Details

對於我們所有模型的上游預訓練,我們使用普通的ResNet-v2架構[14],除了我們用組規範化[49]替換所有批規範化[19]層,並在所有卷積層中使用權重標準化[36]。第4.3節分析了這一變化。BiT-S和BiT-M模型使用ResNet-101體系結構,其中每個隱藏層的寬度都是原來的三倍(ResNet101x3)。爲了從更大的數據集中獲益,BiT-L使用ResNet-152x4模型,該模型有9.3億個可訓練參數。我們在第4.1節中探討了數據集和模型大小之間的耦合。
在這裏插入圖片描述
我們訓練了90個階段的BiT-S和BiT-M,並在30、60和80個階段將學習率降低了10倍。對於BiT-L,我們訓練了40個階段,初始學習率爲0.03,有5000個線性預熱步驟,在10、23、30和37個階段後學習率下降。我們使用4096的全局批處理大小,並在雲端TPUv3-512[22]上進行訓練,得到每個芯片8個圖像。對於大批量優化,我們採用了[9]中的配方。特別是,我們對5000個優化步驟使用線性學習率預熱,並將學習率乘以批量大小除以256。

提出了了一個啓發式設置BiT hyperparam來確定所有下游超參數。在數以百計的超參數選擇中,位超參數根據任務的圖像分辨率和訓練集大小選擇最重要的。

對於所有任務,我們將初始學習率設置爲0.003,將批大小設置爲512。我們將小於96×96像素的輸入圖像調整爲160×160像素,然後隨機裁剪128×128像素。我們將較大的圖像調整爲448×448,對BiT-S和BiT-M進行384×384大小的裁剪。對BiT-L,我們從512×512圖像中進行480×480大小的裁剪。有關如何應用水平翻轉和隨機裁剪的詳細信息,請參見附錄B。

我們定義了三種任務機制:我們稱之爲小任務(標記示例少於20k),稱之爲中等任務(標記示例少於500k),任何較大的數據集都是一個大任務。對於小任務,我們微調位爲500步;對於中等任務,我們微調位爲10k步;對於大任務,我們微調位爲20k步。在微調過程中,我們在30%、60%和90%的訓練步驟中將學習率降低10倍。最後,我們使用MixUp[56],α=0:1,用於中大型數據集。

在這裏插入圖片描述

3.4 Evaluation on Standard Computer Vision Benchmarks

我們在標準基準上評估BiT-L,並將其性能與當前的最新結果進行比較(表2)。在這裏,我們將執行與任務無關的大規模預訓練(一般表示)的模型與執行與任務相關的大規模預訓練(專業表示)的模型分開。專家方法以特定任務爲條件,例如ILSVRC-2012,然後使用大型支持數據集(如JFT-300M[33]或Instagram-1B[52])進行訓練。更多細節將在第5節中討論。專家代表非常有效,但每項任務都需要大量的培訓成本。相比之下,廣義表示只需要一次大規模的訓練,然後是更簡單的適應階段。

BiT-L的性能優於先前報道的通用SOTA模型,而且幾乎在所有情況下都優於專家模型。BiT-L模型在沒有對每個數據集進行大量超參數調整的情況下實現了這些結果:我們對所有運行(包括19個VTAB任務)使用BiT超參數,並且不執行代價高昂的調整。

受內部JFT-300M數據集上BiT-L訓練的強大結果的啓發,我們將注意力放在公共ImageNet-21k數據集上。這個數據集是廣泛使用的ILSVRC-2012的10倍多,但大部分被研究界忽略。在表3中,我們證明,與在ILSVRC-2012(BiT-S)上訓練的相同模型相比,在ImageNet-21k上訓練的BiT-M可以顯著改善視覺表現,這是由我們所有的基準測試所測量的。

在我們的詳細分析中,特別是在第4.2節中,我們討論了可能阻礙廣泛採用ImageNet-21k作爲數據集模型進行預訓練的陷阱,並強調了BiT的關鍵組件,這些組件使我們能夠在這個大型數據集上取得成功。

3.5 Evaluation On Low-data Regime

在本節中,我們研究需要多少標記樣本纔能有效地將BiT-L傳輸到新的下游任務。爲此,我們在下游訓練數據的小子集上微調我們的模型。我們在低數據中測試BiT-L。

在這裏插入圖片描述
圖2(左半部分)顯示了ILSVRC-2012、CIFAR-10和CIFAR-100上BiT-L的性能如何取決於每個類的可用標記樣本數。具有相同數量訓練數據的多個點對應於不同的隨機數據子樣本(我們爲每個類配置的每個示例評估5個隨機子樣本)。令人驚訝的是,即使每個類只有很少的樣本,BiT-L也顯示出了強大的性能,並很快接近完整數據體制的性能。特別是,在ILSVRC-2012中,每個類只有一個標記樣本,達到74.3%的最高1級準確率,在25個樣本中,最高1級準確率達到86.4%。在CIFAR-100數據集上,我們實現了85.0%,每個類只有10個樣本。
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章