MIT博士生、北大校友,利用自監(jiān)督算法,解決了數(shù)據(jù)集中這一常見的“難題”
本文經(jīng)AI新媒體量子位(公眾號ID:QbitAI)授權(quán)轉(zhuǎn)載,轉(zhuǎn)載請聯(lián)系出處。
訓練模型時,你是否也遭遇過這樣的“尷尬”時刻:
好不容易找到了自己想要的數(shù)據(jù)集,結(jié)果點進去一看,大部分樣本都是一類物體。(例如,數(shù)據(jù)集標簽「動物」,結(jié)果80%的樣本都是「貓」)
用上面這個數(shù)據(jù)集訓練的動物檢測模型,可能只能識別「貓」。
這類數(shù)據(jù)不均衡(某一標簽數(shù)量太多,其余標簽數(shù)量太少)的問題,在機器學習中被稱為“長尾問題”。
這個問題導致,數(shù)據(jù)集中(尤其是大型數(shù)據(jù)集)樣本數(shù)量少的物體,泛化效果會非常差。
△像一條長長的尾巴
然而事實上,在一個數(shù)據(jù)集中,幾乎總有常見和不常見的類別,其中不常見的類別,又往往成為需要被識別的目標。
例如,自動駕駛感知模型中,就要求AI能提前預測可能違規(guī)的情形,并及時阻止。
然而在自動駕駛數(shù)據(jù)集里,不可能全是肇禍、違規(guī)的場景(大部分場景還是安全的)。
那么,這些“不均衡”的數(shù)據(jù)集,就真的不能用了嗎?
來自MIT的兩名博士生楊宇喆和Zhi Xu,想到了一種新的解決方案,研究成果登上了NeurIPS 2020頂會。
一起來看看。
一些已有的解決辦法
事實上,此前為了解決“不均衡”數(shù)據(jù)集,研究者們已經(jīng)嘗試過多種方法。
僅僅是主流算法,就分為七種:
重采樣 (re-sampling):分為對少樣本的過采樣、及多樣本的欠采樣,但這2種方法,都有欠缺的地方。其中,過采樣容易發(fā)生少樣本過擬合,無法學習更魯棒、易泛化的特征,在不平衡數(shù)據(jù)上表現(xiàn)較差;欠采樣會造成多樣本嚴重信息損失,導致發(fā)生欠擬合。
數(shù)據(jù)合成 (synthetic samples):生成和少樣本相似的新數(shù)據(jù)。以SMOTE方法為例,對于任意選取的少類樣本,它用K近鄰選取相似樣本,并通過對樣本線性插值得到新樣本。這里與mixup方法相似,因此,也有非均衡的mixup版本出現(xiàn)。
重加權(quán) (re-weighting):為不同類別(甚至不同樣本)分配不同的權(quán)重。其中,權(quán)重可以自適應。這一方法誕生出很多變種,如對類別數(shù)目的倒數(shù)進行加權(quán)、對“有效”樣本數(shù)加權(quán)、對樣本數(shù)優(yōu)化分類間距的損失加權(quán)等等。
遷移學習 (transfer learning):對多類和少類樣本分別建模,將學到的多類樣本信息/表示/知識遷移給少類別使用。
度量學習 (metric learning):希望能學到更好的嵌入,以對少類附近的邊界/邊緣更好地建模。
元學習/域自適應 (meta learning/domain adaptation):分別對頭、尾部數(shù)據(jù)進行不同處理,自適應地學習如何重加權(quán),或是規(guī)劃成域自適應問題。
解耦特征和分類器 (decoupling representation & classifier):研究發(fā)現(xiàn),將特征學習和分類器學習解耦、將不平衡學習分為兩個階段,并在特征學習階段正常采樣、在分類器學習階段平衡采樣,可以帶來更好的長尾學習效果。這是目前最優(yōu)的長尾分類算法。
但這些,在樣本極端失衡的情況下也沒法用,如果真的只有幾個樣本,模型的性能差異就無法避免。
關鍵在于,究竟該怎么理解這里面的“不均衡”?
“不均衡”標簽的內(nèi)在價值
那些本身就不平衡的數(shù)據(jù)標簽,會不會具有什么價值?
研究發(fā)現(xiàn),這些不平衡的數(shù)據(jù)標簽,就像是一把“雙刃劍”。
一方面,這些標簽提供了非常珍貴的監(jiān)督信息。
在特定任務上,有監(jiān)督學習通常比無監(jiān)督學習的準確性更高,即使不平衡,標簽也都具有“正面價值”。
但另一方面,標簽的不平衡,會導致模型在訓練過程中,被強加標簽偏見 (label bias),從而在決策區(qū)域被主類別極大地影響。
研究者們認為,即使是不平衡標簽,它的價值也可以被充分利用,并極大地提高模型分類的準確性。
如果能先“拋棄標簽信息”,通過自監(jiān)督預訓練,讓模型學習到好的起始表示形式,是否就能有效地提高分類準確性?
從半監(jiān)督,到自監(jiān)督預訓練
作者們先對半監(jiān)督下的不均衡學習進行了實驗。
實驗證明,利用無標記數(shù)據(jù)的半監(jiān)督學習,能顯著提高分類結(jié)果。
從圖中可以看出,未標記數(shù)據(jù),有助于建模更清晰的類邊界,促成更好的類間分離。
這是因為,尾類樣本所處區(qū)域數(shù)據(jù)密度低,在學習過程中,模型不能很好地對低密度區(qū)域進行建模,導致泛化性差。
而無標記數(shù)據(jù),能有效提高低密度區(qū)域樣本量,使得模型能對邊界進行更好的建模。
然而,在一些很難利用半監(jiān)督學習的極端情況下,仍然需要自監(jiān)督學習出場。
這是因為,一旦自監(jiān)督產(chǎn)生良好初始化,網(wǎng)絡就可以從預訓練任務中受益,學習到更通用的表示形式。
而實驗同樣證明了這一點。
正常預訓練的決策邊界,很大程度上會被頭類樣本改變,導致尾類樣本大量“泄漏”,無法很好地泛化。
而采用自監(jiān)督預訓練的話,學習到的樣本保持清晰的分離效果,且能減少尾類樣本泄漏。
也就是說,為了利用自監(jiān)督克服標簽偏見,在長尾學習的第一階段,需要先放棄標簽信息,進行自監(jiān)督預訓練。
此階段后,可以使用任何標準訓練方法,訓練得到最終模型。(例如此前所用的遷移學習、重加權(quán)、域自適應……)
這樣,就能更好地解決長尾問題。
作者介紹
論文一作楊宇喆,目前是MIT計算機科學的三年級博士生,本科畢業(yè)于北京大學。
目前,楊宇喆的研究方向主要有兩個:基于學習的無線感應技術,應用方向是醫(yī)療保??;機器學習,主要是針對機器學習和強化學習的魯棒性進行研究。
論文二作Zhi Xu,本科畢業(yè)于伊利諾伊大學厄巴納-香檳分校,同樣是MIT的博士生,感興趣的研究方向是機器學習理論和現(xiàn)代應用,目前主要在研究強化學習的穩(wěn)定性、效率、結(jié)構(gòu)和復雜度。
論文地址:
https://arxiv.org/abs/2006.07529
項目地址:
https://github.com/YyzHarry/imbalanced-semi-self
論文解讀@楊宇喆:
https://zhuanlan.zhihu.com/p/259710601