谷歌提出Meta Pseudo Labels,刷新ImageNet上的SOTA!
點藍色字關(guān)注“機器學(xué)習算法工程師”
設(shè)為星標,干貨直達!
谷歌最新的研究論文提出了一種Meta Pseudo Labels的半監(jiān)督學(xué)習方法(https://arxiv.org/pdf/2003.10580.pdf),刷新了ImageNet上的最高結(jié)果,終于終于,ImageNet的Top-1可以上90%了!

其實谷歌刷新的還是自己的記錄,因為目前ImageNet上的SOTA還是由谷歌提出的EfficientNet-L2-NoisyStudent + SAM(88.6%)和ViT(88.55%)。

首先谷歌這篇paper所提出的方法Meta Pseudo Labels是一種半監(jiān)督學(xué)習方法(a semi-supervised learning ),或者說是self-training方法。和谷歌之前的SOTA方法一樣,這里當然用到了那個未公開的300M JFT數(shù)據(jù)集。不過這里把它們當成unlabeled的數(shù)據(jù)(和NoisyStudent一樣,但ViT是用的labeled數(shù)據(jù)pretrain)。Meta Pseudo Labels可以看成是最簡單的Pseudo Labels方法的改進,如下圖所示。其實之前的SOTA方法Nosiy Student也是一種Pseudo Labels方法,如上圖所示。

Meta Pseudo Labels要解決的是Pseudo Labels容易出現(xiàn)的confirmation bias:
if the pseudo labels are inaccurate, the student will learn from inaccurate data. As a result, the student may not get significantly better than the teacher.?Overfitting to incorrect pseudo-labels predicted by the network is known as confirmation bias.
老師總會犯錯,這就會帶偏學(xué)生。谷歌提出的解決方案,是用學(xué)生在labeled數(shù)據(jù)集的表現(xiàn)來更新老師,就是上圖中老師也是不斷被訓(xùn)練的,有點強化學(xué)習的意味,就是student的preformance應(yīng)該是teacher進化的一個reward。Meta Pseudo Labels其實也算是對模型訓(xùn)練過程的優(yōu)化,為什么叫Meta,paper里面也給出解釋:
We use Meta in our method name because our technique of deriving the teacher’s update rule from the student’s feedback is based on a bi-level optimization problem which appears frequently in the literature of meta-learning.
雖然思路很簡單,但是paper里有非常復(fù)雜的推導(dǎo),這里直接貼出偽代碼(訓(xùn)練teacher時其實gradient包含三個部分:來自student的feedback,labeled數(shù)據(jù)loss,以及UDA loss):

關(guān)于Meta Pseudo Labels的benefits,paper里面給出了一個toy case,這個效果讓人震驚。簡單來說,就是用TwoMoon dataset,這個數(shù)據(jù)集中共有兩類,或者說是兩個cluster,總數(shù)據(jù)是2000個,每個cluster共有1000個,現(xiàn)在每個cluster只有3個labeled數(shù)據(jù),其它都是unlabeled的數(shù)據(jù)。作者在這樣的一個任務(wù)上對比了三種方法:Supervised Learning, Pseudo Labels, and Meta Pseudo Labels,最終結(jié)果如下所示:

紅色圈和綠色圈分別是兩類的samples,星號表示labeled的6個數(shù)據(jù),紅色和綠色區(qū)域表示模型的分類區(qū)域,雖然3類方法都可以對6個訓(xùn)練樣本正確分類,但具體到unlabeled的數(shù)據(jù)效果差別很大。SL方法基本過擬合了,分類區(qū)域完全不對;而Pseudo Labels分對了一半,但是Meta Pseudo Labels卻找到了一個比較完美的classifier。雖然這個分類任務(wù)看起來不難(兩個cluster有明顯的邊界),但是只有6個訓(xùn)練樣本,這里finding a good classifier is hard。
當然Google也在論文里狠狠地秀了一把肌肉:
We thus design a hybrid model-data parallelism framework to run Meta Pseudo?Labels. Specifically, our training process runs on a cluster of 2,048 TPUv3 cores.
論文最后的D2中說到:
Meta Pseudo Labels Is An Effective Regularization Strategy
這句話應(yīng)該是對谷歌這個方法的一個較好的總結(jié)。
如果想了解更多論文的細節(jié),可以直接看源碼:
https://github.com/google-research/google-research/tree/master/meta_pseudo_labels
推薦閱讀
CondInst:性能和速度均超越Mask RCNN的實例分割模型
mmdetection最小復(fù)刻版(十一):概率Anchor分配機制PAA深入分析
MMDetection新版本V2.7發(fā)布,支持DETR,還有YOLOV4在路上!
無需tricks,知識蒸餾提升ResNet50在ImageNet上準確度至80%+
不妨試試MoCo,來替換ImageNet上pretrain模型!
mmdetection最小復(fù)刻版(七):anchor-base和anchor-free差異分析
mmdetection最小復(fù)刻版(四):獨家yolo轉(zhuǎn)化內(nèi)幕
機器學(xué)習算法工程師
? ??? ? ? ? ? ? ? ? ? ? ? ??????? ??一個用心的公眾號
?

