博客專欄

EEPW首頁 > 博客 > ECCV 2022 Oral|自反饋學(xué)習(xí)的mixup訓(xùn)練框架AutoMix

ECCV 2022 Oral|自反饋學(xué)習(xí)的mixup訓(xùn)練框架AutoMix

發(fā)布人:計算機(jī)視覺工坊 時間:2022-08-14 來源:工程師 發(fā)布文章
作者丨Pone7@知乎(已授權(quán))

來源丨h(huán)ttps://zhuanlan.zhihu.com/p/550300558編輯丨極市平臺

導(dǎo)讀

 

本工作嘗試并實現(xiàn)了一種具有“閉環(huán)自反饋”的學(xué)習(xí)框架(AutoMix)以解決“數(shù)據(jù)-模型”動態(tài)系統(tǒng)中的復(fù)雜度和準(zhǔn)確性的權(quán)衡問題。作者將眾多mixup相關(guān)的方法實現(xiàn)在他們的開源框架OpenMixup中,支持多種主流網(wǎng)絡(luò)架構(gòu)、各類實驗設(shè)定和常用數(shù)據(jù)集,并提供了常用數(shù)據(jù)集上mixup benchmark。 

圖片

論文:https://arxiv.org/abs/2103.13027

代碼:https://github.com/Westlake-AI/openmixup

我們將眾多mixup相關(guān)的方法實現(xiàn)在我們的開源框架OpenMixup中,支持多種主流網(wǎng)絡(luò)架構(gòu)(CNNs, ViTs, etc.)、各類實驗設(shè)定和常用數(shù)據(jù)集 (CIFAR, ImageNet, CUB-200, etc.),我們提供了常用數(shù)據(jù)集上mixup benchmark。同時,OpenMixup支持了主流自監(jiān)督學(xué)習(xí)算法(對比學(xué)習(xí)和Masked Image Modeling),歡迎大家試用和關(guān)注。

圖片1. Summary

我們發(fā)表于ECCV2022 (Oral)的工作嘗試并實現(xiàn)了一種具有“閉環(huán)自反饋”的學(xué)習(xí)框架(AutoMix)以解決“數(shù)據(jù)-模型”動態(tài)系統(tǒng)中的復(fù)雜度和準(zhǔn)確性的權(quán)衡問題。具體來講這是一個數(shù)據(jù)隨模型變化,模型隨數(shù)據(jù)更新的雙層優(yōu)化問題。不同于固定的數(shù)據(jù)增廣策略的模式(獨立于模型的優(yōu)化),AutoMix將參數(shù)化后的mixup數(shù)據(jù)增廣策略融入到判別模型中,形成一個完整的數(shù)據(jù)與模型相互學(xué)習(xí)的閉環(huán)系統(tǒng),即同時學(xué)習(xí)mixup樣本的(1)生成任務(wù)和 (2)判別任務(wù)。(1)是根據(jù)判別模型的狀態(tài)自適應(yīng)的學(xué)習(xí)精確的數(shù)據(jù)生成策略;(2)則是基于所學(xué)習(xí)的增廣策略來增強(qiáng)模型對數(shù)據(jù)中重要特征的判別能力。這兩種子任務(wù)服務(wù)于一個相同的優(yōu)化目標(biāo),具有自一致性。大量實驗也表明,判別式模型在AutoMix的閉環(huán)自學(xué)習(xí)系統(tǒng)(自一致性+閉環(huán)反饋)中具有更高效學(xué)習(xí)效率和明顯的性能提升。

2. Background

神經(jīng)網(wǎng)絡(luò)模型(DNNs)的泛化性能在機(jī)器學(xué)習(xí)領(lǐng)域一直受到廣泛的關(guān)注和研究,DNNs能兼具高性能和泛化性通常需要滿足兩個條件:1)過參數(shù)化的模型。2)充足的訓(xùn)練樣本。但是,在數(shù)據(jù)量不足或DNNs模型復(fù)雜度過高的情況下,模型容易出現(xiàn)過擬合現(xiàn)象,導(dǎo)致性能和泛化能力明顯下降。

數(shù)據(jù)增強(qiáng)(Data Augmentation, DA)算法作為一種DNNs正則化手段能夠顯著提升模型的泛化性能,而基于數(shù)據(jù)混合(Data Mixing)的一系列數(shù)據(jù)增強(qiáng)算法,兼顧了樣本和標(biāo)簽?;诨旌系脑鰪V算法通過凸性組合(Convex Combination)來生成虛擬樣本和標(biāo)簽,達(dá)到擴(kuò)充樣本量和提高數(shù)據(jù)分布多樣性的目的。

樣本混合增強(qiáng)算法的核心問題是如何生成合理的混合樣本以及對應(yīng)的混合標(biāo)簽,在圖像分類任務(wù)中,一般固定混合標(biāo)簽的生成方式,改進(jìn)混合圖像的生成算法。如下圖所示,CutMix將一張圖像的局部區(qū)域隨機(jī)替換為另一張圖像的對應(yīng)區(qū)域,并根據(jù)混合圖像上不同像素的面積比例生成混合標(biāo)簽。但是由于CutMix在原圖上選取局部區(qū)域的位置和尺寸均是隨機(jī)選擇,可能出現(xiàn)被切割的區(qū)域不包含分類任務(wù)相關(guān)目標(biāo)的現(xiàn)象,這將導(dǎo)致混合標(biāo)簽與混合圖像中目標(biāo)的語義不匹配而誤導(dǎo)模型的優(yōu)化。

圖片

為了解決該問題,PuzzleMix和Co-Mixup等基于圖像顯著性區(qū)域(Saliency Region)和組合優(yōu)化算法設(shè)計了較為精確的樣本混合策略,使得類別相關(guān)的區(qū)域在混合后的樣本中保留下來。但是這種間接優(yōu)化方式引入了大量的額外運算開銷,這對于追求高效的數(shù)據(jù)增廣方法而言是極為不利的。因此,該工作主要討論了以下兩個問題:

  1. 如何設(shè)計一個準(zhǔn)確的混合策略來提升目標(biāo)任務(wù)性能?
  2. 如何高效的解決mixup生成和分類的雙層優(yōu)化問題?

為了解決這兩個問題,我們先對mixup問題進(jìn)行了重定義并提出了“閉環(huán)自反饋”框架:automatic mixup(AutoMix)。如下圖所示,AutoMix不僅可以精確定位目標(biāo)區(qū)域并準(zhǔn)確生成混合樣本,而且在一定程度上減少了額外計算成本,提高了訓(xùn)練效率。

圖片3. Preliminary3.1 Mixup training

對于輸入樣本  和其對應(yīng)的標(biāo)簽  。我們通過 cross-entropy (CE) loss來學(xué)習(xí)一個分類器  :

基于以上, 我們進(jìn)一步考慮mixup classification|問題: 給定樣本混合函數(shù) , 標(biāo)簽混合函數(shù) , 和從  中采樣的混合比例  。我們可以得到混合后的樣本  和標(biāo)簽 . 與上式相似, 我們可以通過mixup crossentropy (MCE) loss來學(xué)習(xí)一個新的分類器  :

3.2 Mixup reformulation

通過  我們可以發(fā)現(xiàn)mixup training有以下兩種特征 (1) 需要設(shè)計額外樣本和標(biāo)簽的混合函 數(shù)  和  。(2)  的分類性能取決于混合函數(shù)的設(shè)計。因此, 我們很自然的把mixup訓(xùn)練 拆分成兩個互相接收互益反饋的子任務(wù)(i) 混合樣本生成 (ii) 混合樣本分類。我們最終的目的是訓(xùn)練 一個好的分類器, 故mixup樣本生成是服務(wù)于分類任務(wù)的輔助任務(wù)。一般情況下, 我們會使用onehot形式對標(biāo)簽進(jìn)行編碼, 基于這種信息固定且無序的標(biāo)簽編碼方式, 標(biāo)簽混合函數(shù)  會直接采 用線性揷值的方式對標(biāo)簽進(jìn)行混合:

而樣本混合函數(shù)  的設(shè)計便成為決定模型性能的關(guān)鍵。通過定義一個參數(shù)化的樣本混合函數(shù) , 我們可以把mixup training的訓(xùn)練目標(biāo)寫成一個統(tǒng)一的優(yōu)化目標(biāo):

3.3 Offline mixup limits the power of mixup

為了優(yōu)化上述函數(shù), 現(xiàn)有的方法主要采用非參數(shù)化的方式將單獨做離線優(yōu)化設(shè)計?;诓煌?先驗假設(shè), 先前的mixup方法主要側(cè)重在以非參數(shù)化的方式手動設(shè)計 , 比如最大化混合樣本 中與標(biāo)簽相關(guān)的saliency信息, 而這樣設(shè)計的  是脫離了最終優(yōu)化目標(biāo)的。如下圖所示, 左圖 中手工設(shè)計的mixup所對應(yīng)對的混合樣本生成是獨立于混合樣本分類任務(wù)的, 所以他們所生成出的 混合樣本可能與最終優(yōu)化目標(biāo)無關(guān)因此存在冗余甚至降低訓(xùn)練效率。為了解決該問題, 我們提出了 具有閉環(huán)自學(xué)習(xí)性質(zhì)的AutoMix, 如右側(cè)子圖所示, 成功把這兩個子任務(wù)動態(tài)得聯(lián)系了起來。

圖片4. AutoMix: closed self-feedback framework4.1 Parametric Mixup Generation

參數(shù)化的mixup policy  不僅可以與主干網(wǎng)絡(luò)同時更新, 而且擺脫計算顯著性信息的額外開 銷。為了形成閉環(huán)反饋, 我們使用中間層的特征作為  的輸入。在給定樣本特征  和  和混 合比例  的條件下, AutoMix的混合函數(shù)可以寫成以下形式:

其中  是逐元素點乘,  為嵌入了  信息的  層特征。我們選擇的  嵌入方式也非常簡單有 效,  ?;谶@樣的設(shè)計, 樣本混合效果如下圖所示  。

圖片4.2 Mix Block

 的目標(biāo)是生成一個像素級的掩碼 , 用于混合輸入空間的樣本對  和  。由于  是計 算樣本對之間的關(guān)系并且在輸入空間使用, 所以參數(shù)化的混合函數(shù)中需要包含相似度矩陣  的計 算和上采樣函數(shù)  。此外, 由于mixup的對稱性,  。以  為例子,  的計算過程如下:

 為線性變換矩陣;  是矩陣乘;  是將輸出的掩碼歸一到0到1之間的Sigmoid激活函數(shù)。得 到  之后, 對于  的掩碼則利用對稱性便可得到,  。由于  需要根據(jù)  計算  和  樣本對之間像素級的相對關(guān)系, 所以我們提出cross-attention mechanism來達(dá)到這個目的:

其中,  是共享參數(shù)的線性變換矩陣,  是歸一化因子。綜上所述, Mix Block的設(shè)計如下圖 所示:

圖片

在Mix Block的端到端的訓(xùn)練方面, 我們提出了一個輔助損失函數(shù) , 用于幫助Mix Block在訓(xùn)練 早期生成與  成比例的混合掩碼:

 是一個隨著訓(xùn)練漸變?yōu)?的損失權(quán)重, 初始值為  。此外, 我們在使用MCE loss的同時也加入了 標(biāo)準(zhǔn)的CE loss, 主要是為了加速主干網(wǎng)絡(luò)的學(xué)習(xí)以提供穩(wěn)定的特征給Mix Block生成新的混合樣 本。AutoMix的最終優(yōu)化目標(biāo)可以總結(jié)為:

但是我們發(fā)現(xiàn), 在一次梯度反傳中同時更新  和  兩套參數(shù)的方式會帶來不穩(wěn)定性, 如下圖所 示, Mix Block很容易陷入Trivial solution (vanilla mixup)。為了更好在一套框架下同時優(yōu)化兩套參 數(shù) (bi-level optimization), 我們進(jìn)一步引入了Momentum Pipeline (MP) 用于解耦合兩套參數(shù) 的訓(xùn)練, 在穩(wěn)定了訓(xùn)練過程的同時也加快了收斂速度。

圖片4.3 Momentum Pipeline圖片

受自監(jiān)督學(xué)習(xí)中解決特征塌縮(feature collapse)問題的啟發(fā), 我們也嘗試通過使用stop gradient操作和孿生網(wǎng)絡(luò)(Siamese)來解決Mix Block塌縮點問題, 從而穩(wěn)定AutoMix訓(xùn)練。如上 圖所示, 綠色的計算流通過使用凍結(jié)的encoder  來專注訓(xùn)練Mix Block, 而藍(lán)色則固定Mix Block 參數(shù)只訓(xùn)練encoder , 這種解耦合的計算流是通過stop gradient操作來實現(xiàn)的。值得注意多是被 凍結(jié)的encoder的參數(shù)是通過  和EMA (exponential moving average)的策略進(jìn)行更新的:

在MP的加持下,我們可以能看到最直接的效果就是Mix Block的訓(xùn)練變得穩(wěn)定且收斂快速。如下圖所示,Mix Block在前幾個epoch就可以為主干網(wǎng)絡(luò)提供高質(zhì)量的混合樣本。

圖片5. Results

我們對AutoMix做了全面的評估,主要分為以下三個方面:(1)多場景下的圖像分類問題,(2)基于對抗樣本的魯棒性測試和(3)遷移到其他下游任務(wù)的性能表現(xiàn)。AutoMix均表現(xiàn)突出,達(dá)到最佳性能。

5.1 Image Classification

在圖像分類的經(jīng)典benchmark上進(jìn)行大量測試,主要測試數(shù)據(jù)為CIFAR、Tiny ImageNet和ImageNet。在小分辨率數(shù)據(jù)集上,我們基于ResNet、ResNeXt和Wide-ResNet對比了主流mixup算法。

圖片

ImageNet: 在ImageNet上,我們基于不同參數(shù)量的ResNet和主流Transformer架構(gòu)對比了更多實用的mixup算法。有一個比較有趣的現(xiàn)象是其他mixup方法在基于ResNet-18網(wǎng)絡(luò)在ImageNet上訓(xùn)練時都起到了負(fù)面效果,一個可能的解釋是mixup方法所生成的混合樣本過大的增加了學(xué)習(xí)難度。而AutoMix生成的樣本盡可能與語意保持一致,更貼切真實數(shù)據(jù)分布,適當(dāng)增加了數(shù)據(jù)的豐富程度。

圖片圖片

Fine-grained and Scene Classification: 此外,我們也做了全面的細(xì)粒度分類能力測試,包括經(jīng)典的CUB-200和FGVC-Aircraft和更具有挑戰(zhàn)性的大規(guī)模數(shù)據(jù)集iNaturalist17/18。同時,我們在Place205上測試了場景分類性能。在各類場景上,AutoMix均取得最佳性能。

圖片

Calibration: mixup方法可以對分類模型過度自信的(over-confident)預(yù)測起到矯正的作用,即分類準(zhǔn)確度和置信度應(yīng)該保持線性的對應(yīng)關(guān)系,我們既不希望模型對預(yù)測錯誤的樣本有過高的置信度,也不希望對預(yù)測正確的樣本是低置信的。如下圖所示,AutoMix更加貼近紅色虛線,起到了最佳的矯正效果。

圖片5.2 Robustness

我們使用人造數(shù)據(jù)集CIFAR-C和對抗攻擊手段FGSM來測試模型的魯棒性。

圖片5.3 Transfer Learning

與其他mixup方法一致,我們分別在CUB-200和COCO2017數(shù)據(jù)集上對弱監(jiān)督目標(biāo)定位和目標(biāo)檢測這兩個常見的下游任務(wù)做了測試。效果如下:

圖片

Weakly supervised object localization (WSOL)

圖片

Object Detection

5.4 Ablation Study

消融實驗主要分析了三個問題:(1)Mix Block中所提出的模塊是否有效?(2)如果去掉EMA和CE loss,模型性能會受多少影響?(3)AutoMix中的超參數(shù)應(yīng)該如何選擇?

圖片

上面的兩個表格回答問題(1)和(2)。左邊的表驗證了cross attention模塊、 \lambda\lambda embedding和輔助損失的重要性。右邊的表格將設(shè)計的Mix Block與MixUp和CutMix做橫向?qū)Ρ?,我們可以看出MP的設(shè)計對Mix Block是非常關(guān)鍵的,而EMA和CE loss只是起到incremental的增益效果。下圖回答了問題(3),AutoMix的超參數(shù)包括 BetaBeta 分布中的 \alpha\alpha 值和特征圖的層數(shù),我們通過實驗測試將他們分別定為 \alpha=2\alpha=2 和 l=3l=3 。這種設(shè)置是通用且高效的,無需額外調(diào)整。

圖片

本文僅做學(xué)術(shù)分享,如有侵權(quán),請聯(lián)系刪文。


*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。



關(guān)鍵詞: AI

相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉