FixMatch: Simplifying Semi-Supervised Learning with Consistency and Confidence
論文標(biāo)題:FixMatch: Simplifying Semi-Supervised Learning with Consistency and Confidence
論文作者:Kihyuk Sohn, David Berthelot, Chun-Liang Li, Zizhao Zhang, Nicholas Carlini, Ekin D. Cubuk, Alex Kurakin, Han Zhang, Colin Raffel
論文來(lái)源:NeurIPS 2020
代碼來(lái)源:Code
介紹
半監(jiān)督學(xué)習(xí)有效的利用沒(méi)有標(biāo)注的數(shù)據(jù),從而提高模型的精度。這篇論文,我們將有效的結(jié)合兩種常見的半監(jiān)督學(xué)習(xí)方法:一致性正規(guī)化技術(shù)和偽標(biāo)簽技術(shù)。我們的算法叫做FixMatch,首先把沒(méi)有標(biāo)簽的圖片進(jìn)行輕微的數(shù)據(jù)增強(qiáng),用模型對(duì)怎強(qiáng)后的圖片進(jìn)行預(yù)測(cè),從而生成為標(biāo)簽。對(duì)于每張沒(méi)有標(biāo)簽的圖片,當(dāng)模型的預(yù)測(cè)得分高于一定的閾值時(shí),偽標(biāo)簽才起作用。模型預(yù)測(cè)偽標(biāo)簽的同時(shí),將同樣的圖片進(jìn)行強(qiáng)烈的數(shù)據(jù)增強(qiáng)送入網(wǎng)絡(luò),計(jì)算損失。雖然方法看起來(lái)簡(jiǎn)單,但是FixMatch在從多的半監(jiān)督學(xué)習(xí)方法中達(dá)到了最好的效果。僅用了250張標(biāo)注數(shù)據(jù),在CIFAR-10數(shù)據(jù)集上達(dá)到了94.93%的準(zhǔn)確率;僅用了40張標(biāo)注數(shù)據(jù),在CIFAR-10數(shù)據(jù)集上達(dá)到了88.61%的準(zhǔn)確率(每個(gè)類別只取了4張標(biāo)注數(shù)據(jù));因?yàn)樽髡咦隽撕芏嘞趯?shí)驗(yàn),說(shuō)明不同因素對(duì)半監(jiān)督學(xué)習(xí)效果的影響,最終FixMatch這種半監(jiān)督學(xué)習(xí)方法獲得成功。
FixMatch
整個(gè)過(guò)程如上圖所示:首先,圖片進(jìn)行輕微的數(shù)據(jù)增強(qiáng),然后輸入網(wǎng)絡(luò)進(jìn)行預(yù)測(cè),生成one-hot編碼的偽標(biāo)簽。然后,把同樣的圖片進(jìn)行強(qiáng)烈的數(shù)據(jù)增強(qiáng),得到預(yù)測(cè)特征。如果輕微數(shù)據(jù)增強(qiáng)的預(yù)測(cè)得分大于一定的閾值,那么生成的偽標(biāo)簽就和強(qiáng)烈數(shù)據(jù)增強(qiáng)的特征計(jì)算交叉熵?fù)p失。
具體步驟
符號(hào)定義
定義\(p_m(y|x)\)為模型在輸入\(x\)下的類別分布預(yù)測(cè)。
定義兩個(gè)概率分布\(p\)和\(q\)之間的交叉熵?fù)p失為\(H(p,q)\),用來(lái)衡量?jī)蓚€(gè)概率分布的差異。
定義強(qiáng)弱兩種增強(qiáng)的操作為\(\mathcal{A}(·)\)和\(\alpha(·)\)。
方法
FixMatch的損失函數(shù)有兩部分組成:有標(biāo)簽的圖片用有監(jiān)督的損失\(\mathcal{l}_s\),沒(méi)有標(biāo)簽的圖片用無(wú)監(jiān)督的損失\(\mathcal{l}_u\), 兩個(gè)損失都是標(biāo)準(zhǔn)的交叉熵?fù)p失:
對(duì)于沒(méi)有標(biāo)簽圖片的處理:首先得到偽標(biāo)簽,如果偽標(biāo)簽的得分大于一定的閾值(τ,論文中的閾值取0.95),那么,就用該偽標(biāo)簽和強(qiáng)烈數(shù)據(jù)增強(qiáng)獲得的特征計(jì)算交叉熵?fù)p失。
最后,F(xiàn)ixMatch的最終損失為:
Debiased Self-Training for Semi-Supervised Learning
論文標(biāo)題:Debiased Self-Training for Semi-Supervised Learning
論文作者:Baixu Chen, Junguang Jiang, Ximei Wang, Pengfei Wan, Jianmin Wang, Mingsheng Long
論文來(lái)源:NIPS 2022 Oral
代碼來(lái)源:Code
引入
盡管自訓(xùn)練在半監(jiān)督學(xué)習(xí)的基準(zhǔn)數(shù)據(jù)集上取得了很好的性能,但我們發(fā)現(xiàn),目前最先進(jìn)的自訓(xùn)練算法(FixMatch)仍然存在兩個(gè)主要問(wèn)題:
訓(xùn)練不穩(wěn)定:
該圖展示了使用典型的自訓(xùn)練方法FixMatch訓(xùn)練過(guò)程中,模型準(zhǔn)確率出現(xiàn)了明顯的震蕩。
馬太效應(yīng):
該圖展示了使用FixMatch算法訓(xùn)練后,準(zhǔn)確率較高的類別會(huì)取得更高的準(zhǔn)確率,而那些學(xué)習(xí)的不佳的類別的準(zhǔn)確率可能會(huì)繼續(xù)下降甚至接近0。
以上兩個(gè)問(wèn)題是由偽標(biāo)簽函數(shù)與目標(biāo)標(biāo)簽函數(shù)之間的偏差引起的。使用有偏的、不可靠的偽標(biāo)簽訓(xùn)練模型有可能會(huì)導(dǎo)致錯(cuò)誤累積,并最終造成模型性能的波動(dòng)。而對(duì)于那些表現(xiàn)不佳的類別,自訓(xùn)練偏差更嚴(yán)重,并且會(huì)隨著自訓(xùn)練的進(jìn)行而進(jìn)一步惡化,最終導(dǎo)致馬太效應(yīng)。
為了解決上述不足,我們系統(tǒng)地分析了半監(jiān)督學(xué)習(xí)中的自訓(xùn)練偏差問(wèn)題?;诜治?,我們提出了DST,一種減輕自訓(xùn)練偏差并提高訓(xùn)練穩(wěn)定性和跨類性能平衡的新方法。
問(wèn)題分析
首先,我們對(duì)自訓(xùn)練中的偏差來(lái)源進(jìn)行分析。自訓(xùn)練的偏差是指學(xué)習(xí)到的決策超平面與真實(shí)決策超平面之間的偏差。它可以近似地通過(guò)每個(gè)類別的準(zhǔn)確度來(lái)衡量,因?yàn)闆Q策超平面的偏差越大,相關(guān)類別的準(zhǔn)確度就越低。
通過(guò)分析不同訓(xùn)練條件下各類別的準(zhǔn)確率,我們有以下發(fā)現(xiàn):
標(biāo)注數(shù)據(jù)的采樣將在很大程度上影響自訓(xùn)練偏差。當(dāng)標(biāo)注數(shù)據(jù)的采樣不同時(shí),同一類別的準(zhǔn)確率可能很高也可能很低。原因是不同數(shù)據(jù)點(diǎn)與真實(shí)決策超平面之間的距離并不相同,一些數(shù)據(jù)點(diǎn)更近,而另一些則相對(duì)遠(yuǎn)離。當(dāng)標(biāo)注數(shù)據(jù)較少時(shí),每個(gè)類別采樣到的數(shù)據(jù)與真實(shí)決策超平面之間的距離可能會(huì)有很大差異,因此學(xué)習(xí)到的決策超平面會(huì)偏向某些類別:
模型的預(yù)訓(xùn)練方法也會(huì)影響自訓(xùn)練偏差。即使預(yù)訓(xùn)練數(shù)據(jù)集和下游標(biāo)記數(shù)據(jù)集都是相同的,不同的預(yù)訓(xùn)練方法會(huì)導(dǎo)致不同的類別偏向。一個(gè)可能的原因是不同的預(yù)訓(xùn)練模型學(xué)習(xí)的表示關(guān)注數(shù)據(jù)的不同方面。因此,相同的數(shù)據(jù)也可能在不同預(yù)訓(xùn)練模型的特征表示上與決策超平面有不同的距離:
使用偽標(biāo)簽進(jìn)行訓(xùn)練反而增大了自訓(xùn)練偏差。在使用偽標(biāo)簽(比如FixMatch))進(jìn)行訓(xùn)練后,不同類別的性能差距顯著擴(kuò)大,而某些類別的準(zhǔn)確率從 60% 提高到 80%,某些類別的準(zhǔn)確率從 15% 下降到 0%。這是因?yàn)閷?duì)于那些網(wǎng)絡(luò)學(xué)習(xí)的較好的類別,偽標(biāo)簽幾乎是準(zhǔn)確的,因此將它們用于訓(xùn)練可以進(jìn)一步減少偏差。但是對(duì)于很多網(wǎng)絡(luò)學(xué)習(xí)較差的類別,偽標(biāo)簽是不可靠的,常見的偽標(biāo)簽訓(xùn)練機(jī)制會(huì)進(jìn)一步增加偏差,并且難以在后續(xù)訓(xùn)練中被糾正。
基于以上觀察,我們將自訓(xùn)練引起的偏差分為兩類:
- 數(shù)據(jù)偏差(Data Bias):半監(jiān)督學(xué)習(xí)任務(wù)中固有的偏差,例如數(shù)據(jù)的采樣和預(yù)訓(xùn)練特征表示導(dǎo)致的偏差。
- 訓(xùn)練偏差(Training Bias):由自訓(xùn)練策略導(dǎo)致的偏差擴(kuò)大。
接下來(lái)我們將介紹如何減少自訓(xùn)練中的訓(xùn)練偏差和數(shù)據(jù)偏差。
方法設(shè)計(jì)
減少訓(xùn)練偏差—解耦偽標(biāo)簽生成與利用
FixMatch的訓(xùn)練偏差來(lái)源于使用自身生成的偽標(biāo)簽進(jìn)行訓(xùn)練的機(jī)制。為了減少這種偏差,一些方法轉(zhuǎn)而通過(guò)更好的教師模型生成偽標(biāo)簽,例如平均老師算法(Mean Teacher)使用當(dāng)前模型的滑動(dòng)平均作為教師模型。然而,這種方法中生成偽標(biāo)簽的教師模型和利用偽標(biāo)簽的學(xué)生模型之間仍然存在聯(lián)系,學(xué)生模型的決策超平面仍然可能會(huì)被錯(cuò)誤的偽標(biāo)簽函數(shù)所影響 。因此,在自訓(xùn)練過(guò)程中仍然存在訓(xùn)練偏差。
為了消除使用偽標(biāo)簽時(shí)的訓(xùn)練偏差,我們只使用有標(biāo)注數(shù)據(jù) \(\mathcal{L}\) 中準(zhǔn)確的標(biāo)簽,而不再使用無(wú)標(biāo)注數(shù)據(jù) \(\mathcal{U}\) 中的任何偽標(biāo)簽(它們很可能是不可靠的)來(lái)優(yōu)化分類器頭 \(h\) 。為了防止深度模型過(guò)度擬合少數(shù)有標(biāo)注樣本,我們?nèi)匀皇褂脗螛?biāo)簽進(jìn)行訓(xùn)練,但只是為了學(xué)習(xí)更好的特征表示。
如上圖的(d)所示,引入了一個(gè)代理分類器頭\(h_{pseudo}\),它直接和特征提取器\(\psi\)相連,并且只使用來(lái)自\(\mathcal{U}\)的偽標(biāo)簽進(jìn)行優(yōu)化。完整的優(yōu)化目標(biāo)是
其中偽標(biāo)簽由分類器頭\(h\)生成,但通過(guò)一個(gè)完全獨(dú)立的代理分類器頭\(h_{pseudo}\)被利用。這種解耦機(jī)制可以有效地消除在分類器頭\(h\)上進(jìn)行自訓(xùn)練所導(dǎo)致的偏差累積。代理分類器頭\(h_{pseudo}\)只負(fù)責(zé)在訓(xùn)練期間向特征提取器\(\psi\)進(jìn)行梯度的反向傳播,在推理過(guò)程中其會(huì)被丟棄,因此不會(huì)引入額外的計(jì)算負(fù)擔(dān)。
減少數(shù)據(jù)偏差—估計(jì)最壞訓(xùn)練偏差
前一小節(jié)提出了一種消除訓(xùn)練偏差的解決方案,但偽標(biāo)簽函數(shù)\(\hat f\)中仍然存在數(shù)據(jù)偏差。
如圖(a)所示,由于數(shù)據(jù)偏差的存在,每個(gè)類別的有標(biāo)注樣本到表示空間中的決策超平面的距離不同,這導(dǎo)致學(xué)習(xí)到的超平面和真正的決策超平面之間存在偏差,特別是有標(biāo)注樣本的數(shù)量非常少時(shí)。因此,偽標(biāo)簽函數(shù)\(\hat f\)很可能會(huì)在靠近這些有偏決策超平面的未標(biāo)記數(shù)據(jù)點(diǎn)上生成不正確的偽標(biāo)簽。而我們現(xiàn)在的目標(biāo)是優(yōu)化特征表示以減少數(shù)據(jù)偏差,最終提高偽標(biāo)簽的質(zhì)量。
由于我們沒(méi)有\(\mathcal{U}\)上的標(biāo)注,我們不能直接測(cè)量從而減少數(shù)據(jù)偏差。然而,訓(xùn)練偏差與數(shù)據(jù)偏差有一些相關(guān)性。在上一節(jié)中,分類器頭\(h\)僅使用準(zhǔn)確的有標(biāo)注數(shù)據(jù)進(jìn)行優(yōu)化,這是因?yàn)槭褂貌徽_的偽標(biāo)簽進(jìn)行優(yōu)化會(huì)將學(xué)習(xí)的超平面推向偏差更大的方向并導(dǎo)致訓(xùn)練偏差。因此,訓(xùn)練偏差可以認(rèn)為是在偽標(biāo)簽使用不當(dāng)時(shí)數(shù)據(jù)偏差的累積,這是依賴于訓(xùn)練算法的。而所有訓(xùn)練方法中能達(dá)到的最差訓(xùn)練偏差可以更好地衡量數(shù)據(jù)偏差的程度。通過(guò)減少最差訓(xùn)練偏差,我們可以間接地降低數(shù)據(jù)偏差。具體來(lái)說(shuō),最差的訓(xùn)練偏差對(duì)應(yīng)于通過(guò)偽標(biāo)記學(xué)習(xí)到的最差的分類器頭\(h^{’}\),\(h^{’}\)對(duì)所有有標(biāo)注的樣本\(\mathcal{L}\)預(yù)測(cè)正確,同時(shí)在無(wú)標(biāo)注的數(shù)據(jù)\(\mathcal{U}\)上盡可能地犯錯(cuò):
其中\(h^{’}\)在無(wú)標(biāo)注數(shù)據(jù)上的錯(cuò)誤是通過(guò)其與當(dāng)前偽標(biāo)簽函數(shù)\(\hat f\)的差異來(lái)估計(jì)的。該公式刻畫了未來(lái)在當(dāng)前特征提取器\(\psi\)上使用偽標(biāo)簽訓(xùn)練時(shí)可能學(xué)習(xí)到的分類器頭\(h\)的最壞情況。圖(c)可視化最差超平面,其盡可能地與目前所學(xué)習(xí)到的超平面遠(yuǎn)離,同時(shí)保證所有有標(biāo)注樣本都被正確分類。
注意到\(h_worst\)依賴于\(\psi\)生成的特征表示,因此我們可以優(yōu)化特征提取器\(\psi\)以減少最壞情況偏差:
該公式鼓勵(lì)特征提取器產(chǎn)生使得最差的超平面也能正確區(qū)分無(wú)標(biāo)注樣本的特征,從而在特征表示層面減少數(shù)據(jù)偏差。
最終目標(biāo)函數(shù)
實(shí)驗(yàn)
文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-709932.html
文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-709932.html
到了這里,關(guān)于FixMatch+DST論文閱讀筆記(待復(fù)現(xiàn))的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!