何愷明拋出重磅炸彈!ImageNet並非必要
新智元報道
來源:arxiv
新智元編輯部
【新智元導讀】何愷明、Ross Cirshick等大神深夜扔出「炸彈」:ImageNet預訓練並非必須。大神們使用隨機初始化變得到了媲美COCO冠軍的結果,無情顛覆「預訓練+微調」思維定式——再看此前預訓練與此後微調所付出的種種,嗚呼哀哉,好不苦矣!
ImageNet 有用嗎?
當然有用。
但 ImageNet 預訓練卻並非必須!
剛剛,何愷明等人在arxiv貼出一篇重磅論文,題為《重新思考「ImageNet預訓練」》,讓似乎本已經平靜的ImageNet湖面,再掀波瀾!
Facebook 人工智慧研究所何愷明、Ross Cirshick 和 Piotr Dollar 三人在arxiv上貼出最新論文:重新思考ImageNet預訓練
過去幾年來,使用ImageNet這套大規模數據集進行預訓練的視覺模型,對於執行計算機視覺任務而言都是必不可少的存在。雖然並沒用多少時間,但人們似乎都默認,計算機視覺任務需要使用ImageNet預訓練模型。
然而,何愷明等人卻站出來說——
不!
ImageNet 預訓練模型並非必須,ImageNet 能做的只是加速收斂,對最終物體檢測的精度或實例分割的性能並無幫助。
他們使用隨機初始化的模型,不藉助外部數據,取得了不遜於COCO 2017冠軍的結果。
大神不愧為大神——此前我們預訓練ImageNet模型再辛辛苦苦微調,都是為了什麼?!
不用ImageNet預訓練,隨機初始化就能媲美COCO冠軍!
何愷明等人研究表明,在COCO數據集上進行隨機初始化訓練,其效果能做到不次於在ImageNet上進行預訓練。
而且,即使只用COCO中10%的訓練數據進行訓練,依然有可能實現上述結果。
他們還發現,可以在相當於ImageNet規模4倍大的數據集上,使用隨機初始化訓練,而結果不發生過擬合。
圖1:我們在COCO train2017數據集上使用ResNet-50 FPN[26]和GroupNorm[48]訓練Mask R-CNN[13],並在val2017數據集上評估邊界框AP,通過隨機權重或ImageNet預訓練初始化模型。我們通過改變學習率降低(準確率提高)的迭代來探索不同的訓練計劃。從隨機初始化訓練出來的模型需要更多的迭代來收斂,但是只收斂到一個與finetuning相似的解決方案。
實驗表明,ImageNet的預訓練在訓練的早期加速了收斂,但並不一定提供正則化或提高最終目標任務的精度。
具體說,何愷明等人通過實驗觀察到以下情況:
1、ImageNet預訓練方式加快了收斂速度,特別是在訓練早期,但隨機初始化訓練可以在訓練一段時間後趕上來。考慮到前者還要進行模型的微調,訓練總時間二者大體相當。由於在研究目標任務時經常忽略ImageNet預訓練的成本,因此採用短期訓練進行的「對照」比較可能會掩蓋隨機初始化訓練的真實表現。
2、ImageNet預訓練不能自動提供性能更優的正則化。在使用較少的圖像(不到COCO數據集的10%)進行訓練時,我們發現必須選擇新的超參數進行微調(來自預訓練)以避免過度擬合。當用這些同樣的超參數進行隨機初始化訓練時,該模型精度可以達到預訓練模型的水平,無需任何額外的正則化處理。
3、當目標任務或指標對空間定位預測更敏感時,ImageNet預訓練模型沒有表現出任何優勢。我們觀察到,採用隨機初始化訓練時,預測性能出現明顯改善。我們還發現,採用隨機初始化訓練的收斂速度也較預訓練模型快。直觀地說,基於分類任務的類ImageNet的預訓練方式,與本地化的敏感目標任務之間的任務間存在鴻溝,這可能會限制預訓練模型的優勢。
有沒有ImageNet預訓練,區別真沒那麼大
作者在論文中寫道,他們的結果挑戰了ImageNet對依賴任務進行預訓練的傳統思想,他們的發現將鼓勵人們重新思考當前計算機視覺中「預訓練和微調」的「範式」。
那麼,完全從零開始訓練,與使用ImageNet預訓練相比,最大的不同在哪裡呢?
答案是「時間」。
使用ImageNet做預訓練的模型已經具備了邊緣、紋理等低級表徵,而完全從零開始訓練的模型需要迭代更久,因此需要更多的訓練時間。
但是,從所需要的訓練樣本的像素(而非實例數)來看,隨機初始化與使用ImageNet預訓練,兩者其實相差不太多。
圖2:在所有訓練迭代中看到的圖像、實例和像素的總數,分別表示預訓練+微調(綠色條)vs.隨機初始化(紫色條)。我們考慮到ImageNet預訓練需要100 epochs,fine-tuning採用2× schedule (~24 epochs over COCO),隨機初始化採用6× schedule (~72 epochs over COCO)。我們計算ImageNet實例為1 per image (COCO是~7),和ImageNet像素為224×224,COCO為800×1333。
下圖展示了另一個例子,使用隨機初始化(深紅和深綠)和ImageNet預訓練(淺紅和淺綠),在多種情況下,兩者的結果都是可比的。
區別大嗎?
真的沒有那麼大!
圖5:使用Mask R-CNN對不同系統進行隨機初始化與預訓練的比較,包括:(i)使用FPN和GN的baseline,(ii)使用訓練時間多尺度增強的baseline,(iii)使用Cascade RCNN[3]和訓練時間增強的baseline,以及(iv)加上測試時間多尺度增強的baseline。上圖:R50;下圖R101。
※「NIPS 2018」多倫多大學提出可逆RNN:內存大降,性能不減!
※2018年國際大學生類腦計算大賽落幕,中科院自動化所獲創新特等獎
TAG:新智元 |