ICCV 2021|“白嫖”性能的MixMo,一種新的數(shù)據(jù)增強or模型融合方法
本文作者提出了一種新的多輸入多輸出深度子網(wǎng)學(xué)習(xí)廣義框架MixMo,MixMo可以作為一種集成方法或一種新的混合樣本數(shù)據(jù)增強方法進(jìn)行分析,同時仍然與兩種研究方向的工作保持互補。
寫在前面
最近的工作提出的不用額外計算的集成方法,大多是在一個網(wǎng)絡(luò)中同時設(shè)置不同的subnet。訓(xùn)練時。每個subnet只學(xué)習(xí)分類多個輸入數(shù)據(jù)中的其中一個。然而,如何更好地混合這些多個輸入的問題迄今尚未被研究。
在本文,作者提出了一種新的多輸入多輸出深度子網(wǎng)學(xué)習(xí)廣義框架MixMo。作者的Motivation是用一個更合適的混合機(jī)制來代替先前方法中求和導(dǎo)致的次優(yōu)操作。受到混合樣本數(shù)據(jù)增強的啟發(fā),作者發(fā)現(xiàn)特征的混合可以使subnet更強,使得數(shù)據(jù)更加多樣,進(jìn)而提高模型performance。
基于MixMo,作者提升了CIFAR-100和Tiny ImageNet數(shù)據(jù)集上的SOTA性能。
1. 論文和代碼地址
論文地址:https://arxiv.org/abs/2103.06132
代碼地址:https://github.com/alexrame/mixmo-pytorch
2. Motivation
卷積神經(jīng)網(wǎng)絡(luò)(cnn)在計算機(jī)視覺任務(wù)中表現(xiàn)出了出色的性能,尤其是分類任務(wù)。為了在真實場景中增加魯棒性或贏得Kaggle競賽,cnn通常會采用兩種實用策略:數(shù)據(jù)增強 和模型集成 。
數(shù)據(jù)增強可以減少過擬合并提升模型的泛化性。傳統(tǒng)的圖像增強是保留標(biāo)簽的:例如翻轉(zhuǎn)、裁剪等。然而,最近的混合樣本數(shù)據(jù)增強(MSDA)改變了這種方式:多個輸入和它們的標(biāo)簽按比例混合來創(chuàng)建人工樣本,代表工作有MixUp,CutMix等等。
模型集成證明了聚合來自多個神經(jīng)網(wǎng)絡(luò)的不同預(yù)測能夠顯著提高了泛化能力,尤其是不確定性估計。從經(jīng)驗上講,幾個小網(wǎng)絡(luò)的集成通常比一個大網(wǎng)絡(luò)性能更好。然而,在訓(xùn)練和推理方面,集成在時間和顯存消耗方面都是昂貴的:這往往限制了模型集成的適用性。
在本文,作者提出了多輸入多輸出框架MixMo。為了解決傳統(tǒng)集成中出現(xiàn)的這些開銷,作者將M個獨立子網(wǎng)放入一個單一的base網(wǎng)絡(luò)中。這也是合理的,因為在模型集成時,“最終采納的網(wǎng)絡(luò)”其實就和整體的網(wǎng)絡(luò)表現(xiàn)差不多。
所以,現(xiàn)在最大的問題是如何在沒有結(jié)構(gòu)差異的情況下加強subnet之間的多樣性。
如上圖,作者在訓(xùn)練過程中同時考慮了M個輸入,M個輸入被M個參數(shù)不共享的Encoder編碼到共享空間中,然后將特征送到核心網(wǎng)絡(luò),核心網(wǎng)絡(luò)最終分成M個分支;這個M個分支用來預(yù)測不同輸入信息的label。在inference的時候,同一圖像重復(fù)M次:通過平均M個預(yù)測獲得“免費”的集成效果。
與現(xiàn)有的MSDA相比,MixMo最大的不同就是multi-input mixing block。如果合并是一個基本的求和,MixMo將變成到MIMO[1]。作者對比了大量的MSDA的工作,設(shè)計了更合適的混合塊,因此作者采用binary masking的方法來確保子網(wǎng)絡(luò)的多樣性。(如上圖所示,作者對不同樣本采用了一個binary masking方法,這一點就類似CutMix,而不是像MIMO那樣直接相加 )。
這種不對稱的混合也會造成網(wǎng)絡(luò)特征中的信息不平衡的新問題,因此作者通過一個新的加權(quán)函數(shù)來解決多個分類訓(xùn)練任務(wù)之間的不平衡問題。
3. 方法
MixMo的整體結(jié)構(gòu)如上圖所示
3.1. General overview
核心網(wǎng)絡(luò)C需要同時處理兩種輸入的特征表示。然后多層的網(wǎng)絡(luò)D,通過這個mix的特征,再一次把各自樣本的類別識別出來。(個人理解這個網(wǎng)絡(luò)是一個“分-總-分”的結(jié)構(gòu),首先,這個網(wǎng)絡(luò)對不同輸入的樣本進(jìn)行分別編碼,這是第一個“分”的過程;然后這些被編碼的特征通過Mixing Block融合,這是“總”的過程;最后不同的層再根據(jù)這個混合的特征,識別出各自樣本的類別,這是最后一個“分”的過程 )
訓(xùn)練過程中的損失函數(shù)為各自樣本的交叉熵?fù)p失函數(shù)之和(分別乘上各自的權(quán)重,權(quán)重的計算見下文):
在inference的時候,同一個輸入x被輸入到不同的分支中,核心網(wǎng)絡(luò)C的輸入為的和,這最大的保留了來自兩種編碼信息。然后,最終的預(yù)測結(jié)果為將不同分支的預(yù)測平均值。這使得模型可以在一次前向傳播的過程中享受模型融合的結(jié)果。
3.2. Mixing block
Mixing block 是MixMo的核心,它將兩個輸入組合成一個共享表示。受MSDA混合方法的啟發(fā),MixMo通用框架包含了更廣泛的變化。
作者提出的第一個變體是 Linear-MixMo,借鑒了MixUp的思想,直接將兩張圖片通過一個透明度疊在一起:
接著,作者受到MixCut的啟發(fā),提出了 Cut-MixMo :
與Linear-MixMo不同,這里并不是將整張圖片相加,而是像MixCut一樣,每次都是加了一個patch。
Cut-MixMo比其他策略表現(xiàn)更好。具體來說,Cut-MixMo中的binary mixing取代了MIMO和 Linear-MixMo中的線性插值,使子網(wǎng)絡(luò)更加精確和多樣化。
為什么Cut-MixMo會比 Linear-MixMo要更好?
1)基于CutMix優(yōu)于Mixup的相同原因,M中的binary mixing訓(xùn)練了更強的單個子網(wǎng)。此外通過binary mixing,模擬了常見的物體遮擋問題。
2)線性插值從根本上不適合誘導(dǎo)多樣性,因為兩個輸入都保留了完整的信息。CutMix通過交替選擇的圖像patch,顯式地增加了數(shù)據(jù)集的多樣性。
3.3. Loss weighting
Mixing機(jī)制中的不對稱可能導(dǎo)致一種輸入蓋過另一種輸入。當(dāng)時,權(quán)重更大的輸入可能更容易預(yù)測。因此,作者定義了一個權(quán)重函數(shù)來平衡多個損失函數(shù)的重要性。這種加權(quán)調(diào)整了有效學(xué)習(xí)率、梯度在網(wǎng)絡(luò)中的流動方式以及混合信息在特征中表示的方式。
加權(quán)函數(shù)具體表示如下:
其中是一個超參數(shù),的曲線如下圖所示:
3.4. From manifold mixing to MixMo
相比于其他MSDA方法,MixMo使用兩個獨立的編碼器(每個編碼器輸入一個數(shù)據(jù)),并且它輸出是兩個預(yù)測而不是一個。
而其他MSDA方法使用一個單一的分類器,該分類器針對一個唯一的軟標(biāo)簽,通過線性插值反映不同的類。相反,MixMo選擇充分利用混合樣本的復(fù)合特性,訓(xùn)練分離的dense層,d0和d1,在測試時能夠在沒有額外計算的情況下,達(dá)到模型集成的效果。
4.實驗
4.1. Main results on CIFAR-100 and CIFAR-10
上表展示了MixMo在CIFAR10和CIFAR100上的結(jié)果,可以看出相比于原始的網(wǎng)絡(luò),MixMo對于性能的提升非常明顯。
從上圖可以看出,隨著寬度w的增加,MixMo比DE(綠色曲線)的性能提升更加明顯。
4.2. Training time
可以看出,在相同的訓(xùn)練時間內(nèi),Cut-MixMo的表現(xiàn)優(yōu)于DE。
4.3. The mixing block
上表比較幾個mix block的性能,可以看出無論形狀如何,binary mixing的性能都優(yōu)于線性混合。
4.4. Weighting function
上圖比較了加權(quán)函數(shù)不同r下的性能,r在[3,6]范圍內(nèi)達(dá)到了很好的trade-off。
4.5. Multiple encoders and classifiers
上表的實驗結(jié)果表明,2個編碼器和2個分類器對于實驗結(jié)果是比較好的。
4.6. Pushing MixMo further: Tiny ImageNet
在更大的規(guī)模和更多樣的64 × 64圖像上,Cut-MixMo在Tiny ImageNet上達(dá)到了70.24%的新水平,如上表所示。
5. 總結(jié)
在本文中,作者提出了MixMo,一個多輸入多輸出策略的框架。MixMo可以作為一種集成方法或一種新的混合樣本數(shù)據(jù)增強方法進(jìn)行分析,同時仍然與兩種研究方向的工作保持互補。此外,作者引入了一個新的權(quán)重函數(shù),以平衡訓(xùn)練時的損失。最終,作者通過實驗證明了MixMo的有效性。
參考文獻(xiàn)
[1]. Marton Havasi, Rodolphe Jenatton, Stanislav Fort,Jeremiah Liu, Jasper Roland Snoek, Balaji Lakshminarayanan, Andrew Mingbo Dai, and Dustin Tran. Training independent subnetworks for robust prediction. In ICLR,2021.
*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。