何愷明、Ross Girshick等大神深夜扔出“炸彈”:ImageNet預訓練并非必須。大神們使用隨機初始化變得到了媲美COCO冠軍的結果,無情顛覆“預訓練+微調”思維定式——再看此前預訓練與此后微調所付出的種種,嗚呼哀哉,好不苦矣!
ImageNet 有用嗎?
當然有用。
但 ImageNet 預訓練卻并非必須!
剛剛,何愷明等人在arxiv貼出一篇重磅論文,題為《重新思考“ImageNet預訓練”》,讓似乎本已經平靜的ImageNet湖面,再掀波瀾!
Facebook 人工智能研究所何愷明、Ross Cirshick 和 Piotr Dollar 三人在arxiv上貼出最新論文:重新思考ImageNet預訓練
過去幾年來,使用ImageNet這套大規(guī)模數(shù)據(jù)集進行預訓練的視覺模型,對于執(zhí)行計算機視覺任務而言都是必不可少的存在。雖然并沒用多少時間,但人們似乎都默認,計算機視覺任務需要使用ImageNet預訓練模型。
然而,何愷明等人卻站出來說——不!
ImageNet 預訓練模型并非必須,ImageNet 能做的只是加速收斂,對最終物體檢測的精度或實例分割的性能并無幫助。
他們使用隨機初始化的模型,不借助外部數(shù)據(jù),取得了不遜于COCO 2017冠軍的結果。
大神不愧為大神——此前我們預訓練ImageNet模型再辛辛苦苦微調,都是為了什么?!
不用ImageNet預訓練,隨機初始化就能媲美COCO冠軍!
何愷明等人研究表明,在COCO數(shù)據(jù)集上進行隨機初始化訓練,其效果能做到不次于在ImageNet上進行預訓練。
而且,即使只用COCO中10%的訓練數(shù)據(jù)進行訓練,依然有可能實現(xiàn)上述結果。
他們還發(fā)現(xiàn),可以在相當于ImageNet規(guī)模4倍大的數(shù)據(jù)集上,使用隨機初始化訓練,而結果不發(fā)生過擬合。
圖1:我們在COCO train2017數(shù)據(jù)集上使用ResNet-50 FPN[26]和GroupNorm[48]訓練Mask R-CNN[13],并在val2017數(shù)據(jù)集上評估邊界框AP,通過隨機權重或ImageNet預訓練初始化模型。我們通過改變學習率降低(準確率提高)的迭代來探索不同的訓練計劃。從隨機初始化訓練出來的模型需要更多的迭代來收斂,但是只收斂到一個與finetuning相似的解決方案。
實驗表明,ImageNet的預訓練在訓練的早期加速了收斂,但并不一定提供正則化或提高最終目標任務的精度。
具體說,何愷明等人通過實驗觀察到以下情況:
1、ImageNet預訓練方式加快了收斂速度,特別是在訓練早期,但隨機初始化訓練可以在訓練一段時間后趕上來。考慮到前者還要進行模型的微調,訓練總時間二者大體相當。由于在研究目標任務時經常忽略ImageNet預訓練的成本,因此采用短期訓練進行的“對照”比較可能會掩蓋隨機初始化訓練的真實表現(xiàn)。
2、ImageNet預訓練不能自動提供性能更優(yōu)的正則化。在使用較少的圖像(不到COCO數(shù)據(jù)集的10%)進行訓練時,我們發(fā)現(xiàn)必須選擇新的超參數(shù)進行微調(來自預訓練)以避免過度擬合。當用這些同樣的超參數(shù)進行隨機初始化訓練時,該模型精度可以達到預訓練模型的水平,無需任何額外的正則化處理。
3、當目標任務或指標對空間定位預測更敏感時,ImageNet預訓練模型沒有表現(xiàn)出任何優(yōu)勢。我們觀察到,采用隨機初始化訓練時,預測性能出現(xiàn)明顯改善。我們還發(fā)現(xiàn),采用隨機初始化訓練的收斂速度也較預訓練模型快。直觀地說,基于分類任務的類ImageNet的預訓練方式,與本地化的敏感目標任務之間的任務間存在鴻溝,這可能會限制預訓練模型的優(yōu)勢。
有沒有ImageNet預訓練,區(qū)別真沒那么大
作者在論文中寫道,他們的結果挑戰(zhàn)了ImageNet對依賴任務進行預訓練的傳統(tǒng)思想,他們的發(fā)現(xiàn)將鼓勵人們重新思考當前計算機視覺中“預訓練和微調”的“范式”。
那么,完全從零開始訓練,與使用ImageNet預訓練相比,最大的不同在哪里呢?
答案是“時間”。
使用ImageNet做預訓練的模型已經具備了邊緣、紋理等低級表征,而完全從零開始訓練的模型需要迭代更久,因此需要更多的訓練時間。
但是,從所需要的訓練樣本的像素(而非實例數(shù))來看,隨機初始化與使用ImageNet預訓練,兩者其實相差不太多。
圖2:在所有訓練迭代中看到的圖像、實例和像素的總數(shù),分別表示預訓練+微調(綠色條)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預訓練(淺紅和淺綠),在多種情況下,兩者的結果都是可比的。
區(qū)別大嗎?
真的沒有那么大!
圖5:使用Mask R-CNN對不同系統(tǒng)進行隨機初始化與預訓練的比較,包括:(i)使用FPN和GN的baseline,(ii)使用訓練時間多尺度增強的baseline,(iii)使用Cascade RCNN[3]和訓練時間增強的baseline,以及(iv)加上測試時間多尺度增強的baseline。上圖:R50;下圖R101。
此論文實驗部分寫得非常漂亮,了解詳情推薦閱讀原文(地址見文末)。
“ImageNet時代完結”,從零開始訓練完全可行
何愷明等人在這篇論文中,探討了以下幾點:
無需更改架構,就能對目標任務進行從頭開始的訓練。
從頭開始訓練需要更多的迭代,以充分收斂。
在許多情況下,從頭開始的訓練并不比ImageNet預訓練的同個模型差,甚至在只有10k COCO圖像的情況下也是如此。
ImageNet預訓練加速了目標任務的收斂。
ImageNet預訓練不一定有助于減少過擬合,除非數(shù)據(jù)量真的非常小。
如果目標任務對定位比對分類更敏感,那么ImageNet預訓練的幫助較小。
從目前的文獻來看,這些結果是令人驚訝的,并對當前凡是計算機視覺任務就先拿ImageNet來預訓練的做法不啻一記當頭棒喝。
這些結果表明,當沒有足夠的目標數(shù)據(jù)或計算資源來對目標任務進行訓練時,ImageNet預訓練方式是一種基于“歷史”的解決方法(并且可能會持續(xù)一段時間)。
現(xiàn)在看,ImageNet標注方便、應用廣泛,似乎是“免費”資源,拿來用即可。
但不是的,拋開構建ImageNet花費了多少人力物力和時間不說,對于某些任務而言,如果目標數(shù)據(jù)與ImageNet相差太大,用在微調ImageNet預訓練模型上的時間和精力,還不如直接從頭開始訓練。
這項工作也并非要我們徹底拋棄預訓練模型,而是表明(至少視覺檢測任務)除了用 ImageNet 預訓練之外,還存在另一種訓練方式,從零開始訓練也完全可以。
這篇論文貼出來沒多久,知乎上便出現(xiàn)了討論“如何評價何愷明等 arxiv 新作 Rethinking ImageNet Pre-training?”
截止發(fā)稿前,點贊最高的回答來自中科院計算所博士“王晉東不在家”:
我不是排斥使用ImageNet pretrained network,我只是覺得,應該找一些領域,讓ImageNet真正有用。不妨試試用這些預訓練好的網(wǎng)絡去進行醫(yī)學圖像分類、極端圖像(低分辨率、逆光、精細圖像、衛(wèi)星)分類,這才是ImageNet的正確價值。
不過,欣喜的是,也有一批采用了淺層網(wǎng)絡,或者是加入對抗機制的淺層網(wǎng)絡,在最近的頂會上有所突破。
不能一直隨大流,是時候重新思考了。
另一位計算機視覺從業(yè)者mileistone也表示:
深度學習領域理論發(fā)展慢于應用,像“train from scratch”類似的common practice很多,這些common practice很多沒有理論支撐,我們也沒法判斷有沒有道理,我們只知道大家都這么用。因為可質疑的地方太多了,我們很容易失去獨立思考的能力。
希望更多的“rethink”文章出來,這些文章像鯰魚一樣,持續(xù)激發(fā)深度學習領域的活力。
何愷明等人認為,他們的論文和實驗表明,隨機初始化也有可能生成媲美COCO冠軍的結果,正因如此,計算機視覺從業(yè)者才更應該慎待預訓練特征。
計算機視覺的通用表征,仍然值得我們去追求。
-
計算機視覺
+關注
關注
8文章
1696瀏覽量
45927 -
數(shù)據(jù)集
+關注
關注
4文章
1205瀏覽量
24643 -
深度學習
+關注
關注
73文章
5492瀏覽量
120976
原文標題:何愷明拋出重磅炸彈!ImageNet并非必要
文章出處:【微信號:AI_era,微信公眾號:新智元】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論