伏博毅,彭云聰,藍(lán)鑫,秦小林*
(1.中國科學(xué)院 成都計(jì)算機(jī)應(yīng)用研究所,成都 610041;2.中國科學(xué)院大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,北京 100049)
深度學(xué)習(xí)以大規(guī)模數(shù)據(jù)集為前提,在圖像分類、目標(biāo)檢測、文本分析等領(lǐng)域取得了顯著的成功,而成功的關(guān)鍵在于現(xiàn)有的海量標(biāo)記數(shù)據(jù)集,如MS COCO(MicroSoft Common Objects in Context)[1]和ImageNet[2-3]等大規(guī)模數(shù)據(jù)集。然而,實(shí)際場景中收集高質(zhì)量的大規(guī)模數(shù)據(jù)集既耗時又昂貴。為降低成本,構(gòu)建數(shù)據(jù)集的過程會利用某種程度的自動標(biāo)注或眾包標(biāo)注,而這些技術(shù)本質(zhì)上容易出錯[4],從而引入帶有標(biāo)簽噪聲的低質(zhì)量數(shù)據(jù)。此外,Northcutt等[5]發(fā)現(xiàn),在大型通用數(shù)據(jù)集如ImageNet 上也存在標(biāo)簽噪聲,ImageNet 驗(yàn)證集中存在多達(dá)2 916 個標(biāo)簽錯誤,占總驗(yàn)證集的6%。
研究表明,盡管深度學(xué)習(xí)網(wǎng)絡(luò)在對標(biāo)簽噪聲的處理上相對穩(wěn)?。?-7],但這些強(qiáng)大的模型依然存在噪聲過擬合的情況,極大地降低了模型的泛化性能。此外,如果標(biāo)簽噪聲大量出現(xiàn),它們可能會破壞當(dāng)前模型的評價體系。例如,各行業(yè)從業(yè)者依賴于帶有噪聲的真實(shí)數(shù)據(jù)集,如果用它們進(jìn)行訓(xùn)練、驗(yàn)證,可能會得出錯誤的模型。
目前標(biāo)簽噪聲問題已經(jīng)越來越受到重視,因?yàn)樗鼈兛梢燥@著影響學(xué)習(xí)到的分類器的準(zhǔn)確性[8-10]。如何從含有標(biāo)簽噪聲的數(shù)據(jù)集中學(xué)習(xí)成為現(xiàn)代深度學(xué)習(xí)任務(wù)的一項(xiàng)重要研究。因此越來越多的學(xué)者開始針對噪聲數(shù)據(jù)進(jìn)行研究,遺憾的是,傳統(tǒng)的正則化技術(shù),例如數(shù)據(jù)增強(qiáng)[11]、Dropout[12]等方式,并沒有很好地處理標(biāo)簽噪聲問題。即使上述所有正則化技術(shù)都被激活,在干凈數(shù)據(jù)和有噪聲數(shù)據(jù)上訓(xùn)練的模型之間的測試精度差距仍然很大。在存在噪聲標(biāo)簽的情況下,模型如何獲得良好的泛化能力充滿了挑戰(zhàn)性。本文介紹了最新的標(biāo)簽噪聲學(xué)習(xí)技術(shù)的進(jìn)展,以緩解標(biāo)簽噪聲帶來的影響。
本文首先詳細(xì)闡述了標(biāo)簽噪聲學(xué)習(xí)問題的來源、分類和影響,然后依據(jù)機(jī)器學(xué)習(xí)的不同要素將它歸納為基于數(shù)據(jù)的標(biāo)簽噪聲學(xué)習(xí)算法、基于損失函數(shù)的標(biāo)簽噪聲學(xué)習(xí)算法、基于模型的標(biāo)簽噪聲學(xué)習(xí)算法與基于訓(xùn)練方式的標(biāo)簽噪聲學(xué)習(xí)算法,有助于對算法進(jìn)行評價;接著提供了一個帶標(biāo)簽噪聲樣本學(xué)習(xí)的基礎(chǔ)框架,分析了各種應(yīng)用場景下標(biāo)簽噪聲問題的處理策略,以便眾多相關(guān)研究者參考和借鑒;最后,對標(biāo)簽噪聲學(xué)習(xí)技術(shù)進(jìn)行總結(jié),給出了一些優(yōu)化思路,并展望了標(biāo)簽噪聲學(xué)習(xí)算法面臨的挑戰(zhàn)與未來的發(fā)展方向。
標(biāo)簽噪聲問題可以定義為在有監(jiān)督學(xué)習(xí)下,假設(shè)帶噪數(shù)據(jù)集為D={(x1,y1),(x2,y2),…,(xn,yn)}∈(X,Y)n,噪聲分布(未知)為(X,Y)n,目標(biāo)是尋找最佳的映射函數(shù)f:X→Y[13]。損失函數(shù)常用于評估分類器的性能,可以定義損失函數(shù)L(f(x),y)以衡量分類器的預(yù)測性能。在D上的經(jīng)驗(yàn)風(fēng)險R定義為:
經(jīng)驗(yàn)風(fēng)險最小化結(jié)果為:
大部分研究采用隨機(jī)噪聲對標(biāo)簽噪聲建模,可以分類為對稱標(biāo)簽噪聲和非對稱標(biāo)簽噪聲;而實(shí)際上數(shù)據(jù)標(biāo)注錯誤往往取決于實(shí)例和識別的難度,存在實(shí)例相關(guān)噪聲[14-15]。標(biāo)簽噪聲模型可表述為:
對稱標(biāo)簽噪聲可以理解為真實(shí)標(biāo)簽yn以相同的概率ηxn,i=η被翻轉(zhuǎn)為其他標(biāo)簽i。非對稱標(biāo)簽則是真實(shí)標(biāo)簽yn以不同概率ηxn,i被翻轉(zhuǎn)為其他標(biāo)簽i,而真實(shí)標(biāo)簽yn會以更高的概率被標(biāo)注為某一特定類標(biāo)簽,即1 -ηxn>ηxn;且某個類更有可能被錯誤地標(biāo)注為特定的標(biāo)簽,即i≠yn,j≠yn,ηxn,i>ηxn,j。對稱標(biāo)簽噪聲的生成過程完全隨機(jī),生成的錯誤標(biāo)簽與真實(shí)標(biāo)簽和實(shí)例特征都不相關(guān),而實(shí)例相關(guān)噪聲生成的錯誤標(biāo)簽只與實(shí)例特征相關(guān),依賴額外的較強(qiáng)的假設(shè),某個類更有可能被標(biāo)注為與特征相關(guān)的噪聲標(biāo)簽,即
如果一個損失函數(shù)L(f(x),y)滿足式(4),那么該損失函數(shù)是對稱的。常數(shù)C表示遍歷所有類別的總損失和。具有對稱性的損失函數(shù),具有一定的抗噪能力[16]。
基于噪聲標(biāo)簽?zāi)P秃鸵陨喜煌肼晿?biāo)簽的定義,對于一個對稱損失函數(shù)L(f(x),y),噪聲情況下的經(jīng)驗(yàn)風(fēng)險R可以表示為:
對稱標(biāo)簽噪聲的經(jīng)驗(yàn)風(fēng)險R為:
其中,RL(f)為干凈數(shù)據(jù)集的經(jīng)驗(yàn)風(fēng)險。對于對稱標(biāo)簽噪聲,是一個常數(shù),其中,v是一個固定向量。當(dāng)即和RL(f)線性相關(guān),所以它們的最優(yōu)解相同,即對稱標(biāo)簽噪聲情況下的風(fēng)險最小化的模型f*和干凈數(shù)據(jù)集下的風(fēng)險最小化模型f相等,這種情況下?lián)p失函數(shù)L(f(x),y)具有魯棒性,對標(biāo)簽噪聲具有很好的抗噪性。
對于非對稱噪聲,經(jīng)驗(yàn)風(fēng)險R表達(dá)式為式(7)。如果要滿足相等的條件,則需要滿足RL(f*)=0,1 -ηy-ηy,i>0。
但是,對于帶噪數(shù)據(jù)集,僅通過經(jīng)驗(yàn)風(fēng)險最小化來處理標(biāo)簽噪聲往往不夠,因?yàn)閾p失函數(shù)L(f(x),y)的對稱條件限制過多,無法找到凸函數(shù),導(dǎo)致優(yōu)化困難,且經(jīng)驗(yàn)風(fēng)險最小化不足以處理標(biāo)簽噪聲的多樣性。因此接下來將會從數(shù)據(jù)本身、損失函數(shù)的修改、模型結(jié)構(gòu)以及訓(xùn)練方式介紹一些其他的標(biāo)簽噪聲處理方法。
實(shí)際場景中標(biāo)簽噪聲的一大來源是網(wǎng)頁爬取等各種自動標(biāo)注方法[17-18]。標(biāo)簽噪聲還存在于諸多應(yīng)用場景:在線查詢[19],在查詢某一個目標(biāo)的圖像時,存在不屬于同一個類的噪聲樣本;眾包標(biāo)注[20]中存在的非專業(yè)標(biāo)注帶來了噪聲標(biāo)簽;對抗性攻擊[21]會在原始樣本中加入噪聲以生成對抗性樣本;醫(yī)學(xué)圖像[22]的數(shù)據(jù)本身存在不確定性的醫(yī)療任務(wù),領(lǐng)域?qū)<医o出的不同的診斷結(jié)果存在標(biāo)簽噪聲。
從含有標(biāo)簽噪聲的數(shù)據(jù)集中學(xué)習(xí)已經(jīng)成為深度學(xué)習(xí)應(yīng)用的一個發(fā)展方向,通過研究標(biāo)簽噪聲對模型的影響發(fā)現(xiàn),標(biāo)簽噪聲產(chǎn)生的原因很多,主要可以歸結(jié)為4 類:1)沒有充足的信息來標(biāo)注可靠的標(biāo)簽[23],例如用簡單有限的語言描述物體,則獲取的信息量會減少。2)專家在標(biāo)注標(biāo)簽時也可能發(fā)生錯誤[24],如數(shù)據(jù)集質(zhì)量較低導(dǎo)致分辨率降低,專家很難正確標(biāo)注所有數(shù)據(jù)。3)標(biāo)注任務(wù)很主觀,不同的人標(biāo)注數(shù)據(jù)的角度不同,可能會得到不一致的結(jié)果[25-26]。4)數(shù)據(jù)編碼或通信問題有可能引起標(biāo)簽錯誤,如在垃圾郵件過濾中,反饋機(jī)制的誤解和意外點(diǎn)擊都會引起標(biāo)簽噪聲[27]。
在實(shí)際的數(shù)據(jù)集中,標(biāo)簽噪聲難以避免,這會帶來以下幾方面的影響:1)標(biāo)簽噪聲降低了模型預(yù)測的能力。如在自適應(yīng)增強(qiáng)(Adaptive boosting,Adaboost)算法中,模型往往會給被標(biāo)記錯誤的樣本更大的權(quán)重,導(dǎo)致模型的分類能力下降[28]。2)標(biāo)簽噪聲可能會增加訓(xùn)練特征的數(shù)量和模型復(fù)雜度。如受標(biāo)簽噪聲影響,決策樹節(jié)點(diǎn)的數(shù)量明顯增加,增加了模型的復(fù)雜度[29]。3)標(biāo)簽噪聲可能會改變觀測類別出現(xiàn)的頻率[30]。如研究某一人群中特定疾病的發(fā)病率,那么該人群的估計(jì)可能受到標(biāo)簽噪聲的影響。4)在特征選擇或特征排序任務(wù)中也會存在標(biāo)簽噪聲的影響。
另外,過度參數(shù)化的神經(jīng)網(wǎng)絡(luò)有足夠的容量存儲,因此帶有標(biāo)簽噪聲的大規(guī)模數(shù)據(jù)集,導(dǎo)致它們的泛化性能較差。因此,魯棒的標(biāo)簽噪聲學(xué)習(xí)算法已經(jīng)成為深度學(xué)習(xí)應(yīng)用中一項(xiàng)重要而富有挑戰(zhàn)性的任務(wù)。
標(biāo)簽噪聲學(xué)習(xí)算法的魯棒性可以通過多種方式加強(qiáng),圖1 為本文對最近的標(biāo)簽噪聲算法的分類和總結(jié)概述,大多數(shù)方法使用監(jiān)督學(xué)習(xí),對標(biāo)簽噪聲具有良好的抗噪性。本文依據(jù)機(jī)器學(xué)習(xí)的不同要素將基于深度學(xué)習(xí)的標(biāo)簽噪聲算法歸納為四類:1)基于數(shù)據(jù)的標(biāo)簽噪聲算法,旨在從帶噪數(shù)據(jù)集中識別真正標(biāo)簽,篩選出錯誤標(biāo)簽樣本;2)基于損失函數(shù)的標(biāo)簽噪聲算法,旨在修改損失函數(shù)使算法對噪聲魯棒或緩解過擬合噪聲標(biāo)簽;3)基于模型的標(biāo)簽噪聲算法,通過設(shè)計(jì)結(jié)構(gòu)魯棒的模型學(xué)習(xí)噪聲或者對模型進(jìn)行正則化以提高模型泛化能力;4)基于訓(xùn)練方式的噪聲標(biāo)簽算法,引入半監(jiān)督學(xué)習(xí)方法進(jìn)一步提高模型對噪聲的魯棒性。同時,圖1 還將深度學(xué)習(xí)最新的方法根據(jù)以上四類進(jìn)行劃分。
圖1 標(biāo)簽噪聲學(xué)習(xí)算法分類Fig.1 Categories of label noise learning algorithms
本節(jié)主要介紹數(shù)據(jù)處理的標(biāo)簽噪聲學(xué)習(xí)算法。對于標(biāo)簽噪聲問題,最簡單的做法是找出疑似標(biāo)注錯誤的樣本,通過降低權(quán)重或者直接剔除以改善學(xué)習(xí)效果。另外,如果能估計(jì)噪聲轉(zhuǎn)移矩陣或采用其他方式,進(jìn)行一定程度的標(biāo)簽修正,就能夠在標(biāo)簽噪聲情況下得到更好的效果。因此,將基于數(shù)據(jù)的標(biāo)簽噪聲學(xué)習(xí)算法歸納為以下兩種類型:樣本重加權(quán)、標(biāo)簽重修正。
2.1.1 樣本重加權(quán)
樣本重加權(quán)指通過樣本損失值、模型輸出的樣本概率、梯度等信息,找出疑似錯誤標(biāo)注的樣本,通過賦權(quán)重為0 以剔除可能樣本,或采用更平滑的手段——降低疑似樣本的權(quán)重來清理標(biāo)簽噪聲。
樣本重加權(quán)主要通過分區(qū)和迭代對標(biāo)簽噪聲進(jìn)行過濾?;诜謪^(qū)的方法制定分區(qū)規(guī)則,然后過濾不同區(qū)域的標(biāo)簽噪聲。張?jiān)鲚x等[31]提出了動態(tài)概率抽樣的方法,通過統(tǒng)計(jì)樣本的標(biāo)簽置信度對樣本分區(qū);陳慶強(qiáng)等[32]采用歐氏距離度量樣本分布的密度以劃分不同的區(qū)域,按照分區(qū)采用不同的規(guī)則過濾標(biāo)簽噪聲?;诘姆椒ㄍǔ@冒氡O(jiān)督的方法清理標(biāo)簽噪聲。孟曉超等[33]結(jié)合高斯過程模型和主動學(xué)習(xí),迭代地清理標(biāo)簽噪聲,相較于監(jiān)督分類方法,能夠保持原有數(shù)據(jù)的完整性。此外,標(biāo)簽重加權(quán)方法需要對標(biāo)簽進(jìn)行重要性估計(jì)。陳倩等[34]通過無約束最小二乘重要性算法估計(jì)標(biāo)簽重要性,結(jié)合Self-training 和標(biāo)簽重要性進(jìn)行半監(jiān)督訓(xùn)練,對樣本進(jìn)行重加權(quán)分類。這些方法依賴于分區(qū)規(guī)則和迭代階段,可能會錯誤地過濾掉噪聲樣本。
為了更方便地篩選出標(biāo)簽噪聲,Northcutt等[35]提出了置信學(xué)習(xí)(Confidence Learning)框架CleanLab,如圖2 所示。該框架旨在利用帶有標(biāo)簽噪聲的數(shù)據(jù)訓(xùn)練模型,得到的模型能夠識別具有錯誤標(biāo)簽的樣本,學(xué)習(xí)標(biāo)簽噪聲并清理標(biāo)簽噪聲。該框架主要分為三個步驟:首先評估樣本的噪聲標(biāo)簽和真正標(biāo)簽的聯(lián)合分布;然后識別錯誤標(biāo)簽的樣本;最后篩選出錯誤標(biāo)簽的樣本后,對樣本進(jìn)行重加權(quán)并重新加入訓(xùn)練。在真實(shí)充分條件下,置信學(xué)習(xí)框架可準(zhǔn)確地發(fā)現(xiàn)標(biāo)簽錯誤,并準(zhǔn)確地估計(jì)噪聲和真實(shí)標(biāo)簽的聯(lián)合分布。
圖2 置信學(xué)習(xí)框架Fig.2 Confident learning framework
從另一角度,Li等[36]提出基于樣本損失的DivideMix 算法。該算法的核心思想在于當(dāng)帶噪學(xué)習(xí)的模型較合理時,正常樣本和錯誤標(biāo)注樣本的損失值會呈現(xiàn)顯著性差異。DivideMix 采用高斯混合模型對樣本的損失值進(jìn)行聚類以劃分樣本,真實(shí)標(biāo)簽的干凈樣本為有標(biāo)簽集合,均值較??;噪聲標(biāo)簽的樣本為無標(biāo)簽集合,均值較大,并以半監(jiān)督的方式在兩個樣本集合上進(jìn)行訓(xùn)練。
上述兩種基于預(yù)測概率和損失的方法十分依賴帶噪學(xué)習(xí)的模型性能,并且需要合理地微調(diào)超參。與上述重加權(quán)方法不同,Ren等[37]提出在附加干凈無偏驗(yàn)證集情況下的重加權(quán)算法,不需要調(diào)節(jié)超參。在每一個訓(xùn)練迭代中,檢查訓(xùn)練損失平面上部分訓(xùn)練樣本的下降方向,根據(jù)驗(yàn)證損失平面下降方向的相似性對樣本進(jìn)行重加權(quán)。
樣本重加權(quán)方法比較容易適應(yīng)訓(xùn)練集偏差和標(biāo)簽噪聲,是解決標(biāo)簽噪聲問題比較流行的一種方案,但是需要潛在的檢測過程以估計(jì)噪聲模型。
2.1.2 樣本重修正
標(biāo)簽重修正是對樣本標(biāo)簽進(jìn)行一定程度的修改,達(dá)到在帶噪學(xué)習(xí)中保持良好性能的方法。標(biāo)簽平滑(Label Smoothing)常用于提高深度學(xué)習(xí)模型在噪聲數(shù)據(jù)集上的性能[38-43]。標(biāo)簽平滑將原始標(biāo)簽按式(8)進(jìn)行修改:
與傳統(tǒng)的估計(jì)標(biāo)簽轉(zhuǎn)移矩陣以校正每個樣本損失的方法不同[44],標(biāo)簽平滑相當(dāng)于向標(biāo)簽注入對稱噪聲,不僅在實(shí)驗(yàn)上取得較好的效果,Lukasik等[45]在理論上也證明了標(biāo)簽平滑可以視作一種正則化方法,即可以使模型權(quán)重收斂于小范數(shù)解。另一方面,對噪聲樣本生成偽標(biāo)簽?zāi)軌虺浞掷盟械臉颖拘畔ⅰS嗝铣氐龋?6]利用訓(xùn)練好的基網(wǎng)絡(luò)預(yù)測噪聲標(biāo)簽?;诮處?學(xué)生網(wǎng)絡(luò)的架構(gòu)通常會對標(biāo)簽進(jìn)行軟化,使學(xué)生網(wǎng)絡(luò)在帶噪學(xué)習(xí)中更加魯棒[47-51]。Pham等[52]提出了一種元偽標(biāo)簽(Meta Pseudo Labels)算法,將訓(xùn)練數(shù)據(jù)中疑似噪聲樣本的數(shù)據(jù)視為無標(biāo)簽數(shù)據(jù)進(jìn)行半監(jiān)督學(xué)習(xí)。由于半監(jiān)督學(xué)習(xí)的高效性,非常適合引入標(biāo)簽噪聲學(xué)習(xí)中。圖3 是元偽標(biāo)簽的算法流程。
圖3 元偽標(biāo)簽算法流程Fig.3 Meta pseudo labels algorithm flow
與傳統(tǒng)的偽標(biāo)簽一樣,元偽標(biāo)簽使用教師網(wǎng)絡(luò)給無標(biāo)記的數(shù)據(jù)生成偽標(biāo)簽,并且用這個偽標(biāo)簽指導(dǎo)學(xué)生網(wǎng)絡(luò)。不同的是,元偽標(biāo)簽會依據(jù)學(xué)生網(wǎng)絡(luò)在有標(biāo)簽樣本和偽標(biāo)簽樣本上的結(jié)果不斷調(diào)整教師網(wǎng)絡(luò)。該算法的核心在于,學(xué)生網(wǎng)絡(luò)和教師網(wǎng)絡(luò)之間存在交替的優(yōu)化過程。下面給出針對標(biāo)簽噪聲的元偽標(biāo)簽學(xué)習(xí)算法流程。
1)學(xué)生網(wǎng)絡(luò):抽取一部分未標(biāo)記數(shù)據(jù)(疑似噪聲數(shù)據(jù))xu,利用教師網(wǎng)絡(luò)的預(yù)測值給定偽標(biāo)簽T(xu;θT),然后使用一步梯度下降更新模型參數(shù)。學(xué)生網(wǎng)絡(luò)梯度更新公式為:
2)教師網(wǎng)絡(luò):抽取一部分有標(biāo)記數(shù)據(jù)(干凈數(shù)據(jù))(xl,yl),利用第1)步學(xué)生網(wǎng)絡(luò)優(yōu)化后的模型參數(shù)更新教師網(wǎng)絡(luò)。教師網(wǎng)絡(luò)梯度更新公式為:
標(biāo)簽重修正方法從數(shù)據(jù)本身出發(fā),將噪聲標(biāo)簽修正為接近真實(shí)類別的標(biāo)簽,能夠從根源上提高數(shù)據(jù)集的質(zhì)量;但是這種方法十分依賴原本的干凈數(shù)據(jù)集,并且標(biāo)簽重修正的錯誤可能會容易累加。
大量研究表明,損失函數(shù)的處理會提高標(biāo)簽噪聲在訓(xùn)練時的魯棒性[53]。基于損失函數(shù)的標(biāo)簽噪聲學(xué)習(xí)算法主要考慮標(biāo)簽轉(zhuǎn)移矩陣和風(fēng)險最小化方案的穩(wěn)健性。前者的目標(biāo)是估計(jì)標(biāo)簽轉(zhuǎn)移矩陣,前向或后向地校正每個樣本的損失,以減少錯誤的累計(jì);后者的目標(biāo)是設(shè)計(jì)一個損失函數(shù)而不需要估計(jì)轉(zhuǎn)移矩陣,使有噪聲標(biāo)簽和干凈數(shù)據(jù)的情況下的風(fēng)險最小化模型相同。損失函數(shù)的設(shè)計(jì)分為兩個方面:1)單獨(dú)改進(jìn)訓(xùn)練樣本誤差即損失函數(shù);2)向基礎(chǔ)損失函數(shù)中加入正則化項(xiàng)以增強(qiáng)模型魯棒性。因此,下面介紹了關(guān)于損失的三種方法:損失校正、魯棒的損失和損失正則化。
2.2.1 損失校正
損失校正首先需要估計(jì)標(biāo)簽轉(zhuǎn)移矩陣[54],即一個類別與另一個類別的錯誤標(biāo)簽的概率,然后通過修改訓(xùn)練期間的損失函數(shù)以提高魯棒性。前向校正和后向校正是兩種基于標(biāo)簽轉(zhuǎn)移矩陣的損失校正方法[44]。前向校正在前向傳播中將估計(jì)的標(biāo)簽轉(zhuǎn)移矩陣與Softmax 輸出相乘以校正每個樣本的損失;后向校正采用沒有經(jīng)過損失校正的Softmax 輸出估計(jì)標(biāo)簽轉(zhuǎn)移矩陣,然后重新訓(xùn)練模型,將估計(jì)的轉(zhuǎn)移矩陣和損失值相乘以校正損失。損失校正方法對標(biāo)簽轉(zhuǎn)移矩陣非常敏感,現(xiàn)實(shí)中的標(biāo)簽轉(zhuǎn)移矩陣也很難估計(jì)。
2.2.2 魯棒的損失
魯棒的損失函數(shù)和其他方法相比,是一種更簡單、通用的魯棒學(xué)習(xí)的解決方案。交叉熵?fù)p失(Cross Entropy loss,CE)[55]函數(shù)是常用于分類的標(biāo)準(zhǔn)損失函數(shù),收斂快但容易擬合噪聲,泛化能力較差。Ghosh等[55]證明了對稱損失函數(shù)可以魯棒地標(biāo)記噪聲。由此設(shè)計(jì)原則導(dǎo)出的對稱函數(shù)如平均絕對誤 差(Mean Absolute Error,MAE)[16]和逆交叉熵(Reverse Cross Entropy,RCE)[56]在多分類標(biāo)簽下的實(shí)驗(yàn)結(jié)果具有很好的魯棒性,但是在復(fù)雜的數(shù)據(jù)集上欠擬合。為了探討損失函數(shù)如何同時兼并魯棒性和可學(xué)習(xí)性,一系列新的損失函數(shù)被提出。Zhang等[57]設(shè)計(jì)了廣義交叉熵(Generalized Cross Entropy,GCE)損失函數(shù),它類似于MAE 和CE 的廣義混合。受KL(Kullback-Leibler)散度的啟發(fā),Wang等[56]結(jié)合CE 和RCE 設(shè)計(jì)了對稱交叉熵(Symmetric Cross Entropy,SCE)損失。但是GCE 和SCE 都只在對稱損失和CE 之間進(jìn)行折中,且SCE 對噪聲標(biāo)簽僅具有部分魯棒性。Ma等[58]對損失函數(shù)進(jìn)行簡單的歸一化規(guī)范處理,證明任何損失函數(shù)都可以對有噪聲的標(biāo)簽產(chǎn)生魯棒性。但是歸一化交叉熵(Normalized Cross Entropy,NCE)損失函數(shù)實(shí)際上改變了損失函數(shù)的形式,失去了原始損失函數(shù)的擬合能力,即損失函數(shù)的魯棒性并不會保證優(yōu)秀的可學(xué)習(xí)性。因此又提出了主動被動損失(Active Passive Loss,APL)函數(shù),組合兩個對稱損失,在保證魯棒性的同時提高了損失函數(shù)的可學(xué)習(xí)性。
以上損失函數(shù)都基于CE 進(jìn)行改進(jìn),通過組合多種形式的損失函數(shù)實(shí)現(xiàn)魯棒性和可學(xué)習(xí)性。另一種魯棒的損失僅從原CE 出發(fā),研究魯棒的損失函數(shù)。為了探討交叉熵?fù)p失函數(shù)和其他損失函數(shù)是否存在關(guān)聯(lián),F(xiàn)eng等[59]受泰勒函數(shù)啟發(fā),基于CE 提出了一種泰勒交叉熵(Taylor Cross Entropy,TCE)損失(Taylor-Loss)。TCE 通過調(diào)整超參t間接地調(diào)整泰勒級數(shù)以逼近CE,能夠擬合訓(xùn)練標(biāo)簽,對標(biāo)簽噪聲具有魯棒性。TCE 不僅繼承了CE 的優(yōu)點(diǎn),還避免了CE 過擬合的缺點(diǎn),對標(biāo)簽噪聲的魯棒性更好。TCE 的表達(dá)公式為:
Amid等[60]提出CE 在邊界和尾部存在固有的兩個缺陷:1)邏輯損失是最后一層的激活值的凸函數(shù),遠(yuǎn)離分類邊界的異常值會左右總的損失值;2)Softmax 函數(shù)在給類分配概率時,邏輯函數(shù)的尾部呈指數(shù)衰減,錯誤的標(biāo)簽會使邏輯函數(shù)的尾部呈指數(shù)下降,導(dǎo)致處理有噪聲數(shù)據(jù)的泛化能力差。因此,基于Bregman 散度[61]提出了一種雙溫邏輯損失(Bi-Tempered logistic Loss,BT-Loss),并引入了兩個參數(shù):溫度t1和尾部重量t2,以約束邏輯損失函數(shù)的界限,降低邏輯函數(shù)尾部的衰減速度,如式(12)、(13)所示。
以上損失函數(shù)都顯示了對標(biāo)簽噪聲的抗噪性,但是改進(jìn)損失函數(shù)時都引入了超參數(shù),很難一次性確定模型在超參數(shù)為何值時訓(xùn)練性能最好。應(yīng)該繼續(xù)探索是否存在不包含任何超參數(shù)的魯棒損失函數(shù)。
2.2.3 損失正則化
基于損失的正則化技術(shù)可以緩解模型過度匹配有噪聲標(biāo)簽。與魯棒損失不同,它通過向基礎(chǔ)損失函數(shù)中加入正則化項(xiàng)以增強(qiáng)模型的魯棒性。Zhou等[62]在Softmax 部分增加溫度函數(shù)銳化網(wǎng)絡(luò)的輸出,采用稀疏正則化(Sparse Regularization,SR)使網(wǎng)絡(luò)輸出稀疏,獲得了足夠的魯棒性和學(xué)習(xí)充分性。SR 的表達(dá)公式為:
對抗訓(xùn)練(Adersarial Training,AT)[63-68]以及虛擬對抗訓(xùn)練(Virtual Adersarial Training,VAT)[69]也可以作為正則化方法,以增強(qiáng)機(jī)器學(xué)習(xí)模型的魯棒性。Szegedy等[70]通過給原始樣本構(gòu)造噪聲以生成噪聲樣本,導(dǎo)致神經(jīng)網(wǎng)絡(luò)模型輸出錯誤的分類結(jié)果,這些樣本就是對抗樣本,此過程稱為對抗攻擊。對抗訓(xùn)練主要發(fā)生在構(gòu)造對抗樣本時,會輕微降低深度學(xué)習(xí)模型預(yù)測的準(zhǔn)確性。這是一種可接受的權(quán)衡,因?yàn)樗鰪?qiáng)了抗對抗性攻擊的穩(wěn)定性。在許多對抗性的例子上微調(diào)神經(jīng)網(wǎng)絡(luò)會使它在面臨對抗攻擊時更加穩(wěn)健。
對抗訓(xùn)練的公式如下:
其中:θ為模型參數(shù);D為數(shù)據(jù)分布;Ω為擾動空間;L為損失函數(shù);E 為整個數(shù)據(jù)分布D的損失函數(shù)期望。
考慮泰勒展開近似,正則化形式的對抗訓(xùn)練公式為:
添加擾動后的對抗訓(xùn)練公式為:
因此對抗訓(xùn)練可以視為在損失函數(shù)上加入正則化項(xiàng),基于損失函數(shù)進(jìn)行模型的正則化。常用的對抗樣本生成策略有快速梯度符號法(Fast Gradient Sign Method,F(xiàn)GSM)[63]、Deepfool[71]、C&W(Carlini and Wagner attacks)[72]等。
虛擬對抗訓(xùn)練是另一種有效的基于損失正則化的技術(shù)[69],它加入微小擾動以生成特定的數(shù)據(jù)點(diǎn),使這些數(shù)據(jù)點(diǎn)在原始特征空間中非常接近,但在表征向量的空間中卻相距較遠(yuǎn),然后再訓(xùn)練模型使它們的輸出彼此接近。
許多研究對模型架構(gòu)進(jìn)行了修改,建模了噪聲數(shù)據(jù)集的標(biāo)簽轉(zhuǎn)換矩陣。對模型架構(gòu)的改變方式包括在Softmax 層上添加一個噪聲適配層,或設(shè)計(jì)一個新的專用架構(gòu),以及在不改變模型參數(shù)的前提下對模型進(jìn)行正則化處理。
2.3.1 魯棒的結(jié)構(gòu)設(shè)計(jì)
許多研究針對不同的噪聲類型修改模型架構(gòu),并增加一個額外的噪聲層來學(xué)習(xí)噪聲分布,這個噪聲分布為噪聲層的權(quán)重矩陣。是噪聲標(biāo)簽的分布,p(y*=i|x,θ)是基本模型的概率輸出,那么樣本x被預(yù)測為標(biāo)簽噪聲的概率為:
當(dāng)訓(xùn)練標(biāo)簽干凈時,將噪聲層的權(quán)重矩陣設(shè)置單位矩陣,即沒有噪聲層。學(xué)習(xí)目標(biāo)是在N個樣本上最大化對數(shù)似然性。可用公式表示為:
處理標(biāo)簽噪聲常見的簡單方法是在數(shù)據(jù)預(yù)處理階段對標(biāo)簽噪聲進(jìn)行移除或者糾正[73]。這種方法雖然直接,但是難以區(qū)分信息豐富的難樣本和錯誤標(biāo)簽樣本[74]。為了克服這個缺陷,研究者們關(guān)注深度網(wǎng)絡(luò)的魯棒性,而不是數(shù)據(jù)清理方法,通過修改模型架構(gòu),以提升深度網(wǎng)絡(luò)在噪聲標(biāo)記的多分類的大規(guī)模數(shù)據(jù)集上的魯棒性。
Sukhbaatar等[75]基于卷積神經(jīng)網(wǎng)絡(luò)(Conv.net)提出自底向上(bottom-up)和自頂向下(top-down)兩種噪聲模型。bottom-up 噪聲模型在Softmax 和負(fù)對數(shù)似然(Negative Log-Likelihood,NLL)cost 層間添加了一個噪聲層;top-down 噪聲模型在Softmax 和NLL cost 層之后添加了一個噪聲層。利用這兩個模型能夠可靠地從數(shù)據(jù)中學(xué)習(xí)噪聲分布,顯著地提高深度網(wǎng)絡(luò)的性能。Goldberger等[76]使用附加的Softmax 層來模擬期望最大化(Expectation-Maximum,EM)算法優(yōu)化的似然函數(shù),提高了模型的普適性,應(yīng)用EM 算法尋找網(wǎng)絡(luò)和噪聲的參數(shù),并估計(jì)正確的標(biāo)簽。迭代期望(Expectation,E)步估計(jì)正確的標(biāo)簽,極大(Maximum,M)步對網(wǎng)絡(luò)反向傳播。但是每次預(yù)測標(biāo)簽之后都要重新訓(xùn)練模型。
噪聲適配層與損失校正方法相似,主要區(qū)別在于標(biāo)簽轉(zhuǎn)移矩陣的學(xué)習(xí)和模型的學(xué)習(xí)不分開。通過噪聲適配層來學(xué)習(xí)噪聲分布需要對噪聲類型建立強(qiáng)假設(shè),這限制了模型學(xué)習(xí)復(fù)雜的標(biāo)簽噪聲的能力。而基于EM 的模型修改方法容易陷入局部最優(yōu),并且計(jì)算代價大。為了解決上述問題,新的專用模型架構(gòu)被提出以處理復(fù)雜的標(biāo)簽噪聲。Jiang等[77]設(shè)計(jì)了一個新的噪聲模型網(wǎng)絡(luò)(Noise Modeling Network,NMN)學(xué)習(xí)噪聲轉(zhuǎn)移矩陣,然后使用另一個網(wǎng)絡(luò)來擬合真實(shí)標(biāo)簽的后驗(yàn)概率,計(jì)算出來的監(jiān)督信息可以優(yōu)化兩個子網(wǎng)絡(luò)。Han等[78]用人類的知識當(dāng)先驗(yàn),利用人類對無效的標(biāo)簽轉(zhuǎn)換的認(rèn)知約束噪聲建模過程。因?yàn)榧s束噪聲建模需要很強(qiáng)的先驗(yàn)知識,因此采用生成對抗網(wǎng)絡(luò)(Generative Adversarial Network,GAN)[79]的變體來估計(jì)生成模型。
設(shè)計(jì)的新的專用架構(gòu)對真實(shí)的噪聲數(shù)據(jù)集具備更好的魯棒性,與噪聲適配層相比,對復(fù)雜的標(biāo)簽噪聲具有更好的抗噪性,但是由于人工設(shè)計(jì)的特性,不具備噪聲適配層的可擴(kuò)展性。
2.3.2 模型正則化
帶有標(biāo)簽噪聲的數(shù)據(jù)集訓(xùn)練模型容易導(dǎo)致模型性能下降,出現(xiàn)過擬合現(xiàn)象。在不改變模型參數(shù)量的前提下,對模型進(jìn)行正則化處理,能夠有效提高模型的泛化能力,抑制過擬合。
Li等[80]提出一 種噪聲 容忍訓(xùn) 練算法(Meta-Learning based on Noise-Tolerance,MLNT),在傳統(tǒng)的梯度更新前先進(jìn)行元學(xué)習(xí)更新。在元訓(xùn)練階段,通過生成的合成噪聲標(biāo)簽?zāi)M真實(shí)訓(xùn)練,對每一組合成的噪聲標(biāo)簽使用梯度下降來更新網(wǎng)絡(luò)參數(shù);在元測試階段,盡量使更新后的網(wǎng)絡(luò)與教師模型給出一致的預(yù)測,并訓(xùn)練原始參數(shù)使一致性損失總和最小。
Dropout 也是廣泛使用的正則化技術(shù)。Jindal等[81]添加了一個額外的Softmax 層,并對該層應(yīng)用了Dropout 正則化,認(rèn)為它提供了更魯棒的訓(xùn)練,并防止了由于Dropout 的隨機(jī)性而產(chǎn)生的記憶噪聲。
本節(jié)主要通過改變模型的訓(xùn)練方法,在標(biāo)簽噪聲模型中引入半監(jiān)督方法,從而有效緩解噪聲標(biāo)簽對模型分類的影響。本節(jié)將分成兩部分進(jìn)行闡述:1)Self-training 算法,如MentorNet[82];2)Co-training 算法,如DivideMix[36]。
2.4.1 Self-training
Self-training 算法[83]可以提高模型的魯棒性,具體流程如圖4 所示。首先,利用模型訓(xùn)練有標(biāo)簽的數(shù)據(jù)集得到一個分類器,該步驟與監(jiān)督學(xué)習(xí)的方法基本一致;隨后,用訓(xùn)練好的分類器訓(xùn)練無標(biāo)簽數(shù)據(jù)集,給無標(biāo)簽樣本生成偽標(biāo)簽,并將置信度高的無標(biāo)簽樣本與它的偽標(biāo)簽一同加入訓(xùn)練集;最后,在新的訓(xùn)練集中重復(fù)上述步驟直至滿足停止條件得到最終的分類器。
圖4 Self-training算法流程Fig.4 Self-training algorithm flow
MentorNet[82]是利用數(shù)據(jù)驅(qū)動來訓(xùn)練基礎(chǔ)網(wǎng)絡(luò)的新方法,主要由兩部分組成:1)預(yù)定義課程,與Self-training 類似,存在因樣本選擇偏差引起累積誤差的缺點(diǎn);2)學(xué)習(xí)僅有標(biāo)簽樣本的課程。通過一個模擬測試讓MentorNet 不斷更新所教授的課程,基礎(chǔ)網(wǎng)絡(luò)使用更新后的模型為模擬測試提供相應(yīng)的特征。而基于干凈驗(yàn)證集的Self-training 方式,在樣本不均衡且含噪聲的數(shù)據(jù)集中效果不理想。Ren等[37]提出了在附加干凈無偏驗(yàn)證集情況下的標(biāo)簽噪聲算法。該算法雖然訓(xùn)練時間大概為原來的3 倍,但是無需過多調(diào)參,且能同時處理樣本不均衡、標(biāo)簽噪聲并存的情況。
2.4.2 Co-training
Self-training 算法解決標(biāo)簽噪聲的問題有不錯的效果,但容易出現(xiàn)錯誤累加的情況[84]。和Self-training 算法的訓(xùn)練方式不同,Co-training 算法需要訓(xùn)練兩個不同的網(wǎng)絡(luò),具體流程如圖5 所示。
圖5 Co-training算法流程Fig.5 Co-training algorithm flow
首先,利用兩組不同特征的有標(biāo)記的樣本集分別訓(xùn)練兩個分類器,然后將這兩個分類器分別訓(xùn)練未標(biāo)記樣本得到兩組正樣本和負(fù)樣本;最后,將正負(fù)樣本加入有標(biāo)記的樣本集,重復(fù)上述步驟[84]。
DivideMix 采用高斯混合模型(Gaussian Mixture Model,GMM)判別噪聲樣本,但存在確認(rèn)誤偏的問題。因此,在Co-Divide 的階段,每個網(wǎng)絡(luò)用一個GMM 建模每個樣本的損失分布,將數(shù)據(jù)集分為一個標(biāo)記集和一個未標(biāo)記集,隨后被用作另一個網(wǎng)絡(luò)的訓(xùn)練數(shù)據(jù)進(jìn)行訓(xùn)練(如圖6 所示)。運(yùn)用兩個網(wǎng)絡(luò)劃分?jǐn)?shù)據(jù)的性能比利用單個網(wǎng)絡(luò)的效果更佳[36]。
圖6 DivideMix算法流程Fig.6 DivideMix algorithm flow
隨著訓(xùn)練次數(shù)的增加,Co-training 算法在效果上會退化成Self-training 算法中的MentorNet。為解決這一問題,Yu等[85]提出結(jié)合分歧更新策略(用!=表示)與聯(lián)合訓(xùn)練的一種穩(wěn)健的學(xué)習(xí)模型Co-Teaching+(如圖7 所示)。首先用MentorNet 與Co-Teaching 預(yù)測所有數(shù)據(jù),但只保留預(yù)測結(jié)果不相同的樣本。在出現(xiàn)分歧的數(shù)據(jù)中,每個網(wǎng)絡(luò)選擇損失較小的數(shù)據(jù)用于給另一個模型更新參數(shù)。利用“分歧”策略可以保持兩個網(wǎng)絡(luò)的差異,顯著提高了聯(lián)合訓(xùn)練的性能。
圖7 半監(jiān)督標(biāo)簽噪聲算法流程Fig.7 Semi-supervised label noise algorithm flow
引入半監(jiān)督的訓(xùn)練方式是目前流行的標(biāo)簽噪聲算法,顯著地提高了對噪聲的魯棒性。雖然這類算法處理標(biāo)簽噪聲的效果很好,但是不可避免地會增加大量計(jì)算成本。
通常在CIFAR-10 和CIFAR-100、ImageNet-2012 數(shù)據(jù)集上進(jìn)行標(biāo)簽噪聲問題的實(shí)驗(yàn)對比。
CIFAR-10 數(shù)據(jù)集是一個用于識別普通物體的小型數(shù)據(jù)集,一共包含10 個類別的RGB 彩色圖片,每個圖片的尺寸為32×32,每個類別有6 000 個圖像,數(shù)據(jù)集中一共有50 000 張訓(xùn)練圖片和10 000 張測試圖片。
CIFAR-100 有100 個類,每個類有600 張大小為32×32 的彩色圖像,每類各有500 個訓(xùn)練圖像和100 個測試圖像。與CIFAR-10 相比,CIFAR-100 數(shù)據(jù)集更有層次,100 類被分成20 個超類。
CIFAR-10 和CIFAR-100 分別采用對稱噪聲和非對稱噪聲兩種標(biāo)簽噪聲。對稱標(biāo)簽噪聲通過一個隨機(jī)的熱點(diǎn)向量注入,以r的概率替換樣本的真實(shí)標(biāo)簽。
使用ImageNet-2012 進(jìn)行大規(guī)模圖像分類,該數(shù)據(jù)集有130 萬個圖像,有1 000 多個類別的干凈標(biāo)簽。
表1 為各種算法在添加了不同噪聲率r的對稱噪聲后在CIFAR-10 數(shù)據(jù)集上的測試準(zhǔn)確率對比,其中,噪聲率指標(biāo)簽錯誤的比例。根據(jù)文 獻(xiàn)[35-36],CE-Loss、Mixup[86]、Co-Teaching+[85]、Meta-Learning[52]、DivideMix 算法僅提供20%、50%、80% 噪聲下的測試準(zhǔn)確率結(jié)果;MentorNet 和CleanLab[35]算法僅提供20%、40%、70%噪聲下的測試準(zhǔn)確率結(jié)果。橫向?qū)Ρ?,隨著噪聲率的提高,各算法的測試準(zhǔn)確率都出現(xiàn)了下降趨勢,反映了不同算法對標(biāo)簽噪聲的抗噪性。縱向?qū)Ρ?,不同算法之間的提升較大,引入半監(jiān)督學(xué)習(xí)方法的標(biāo)簽噪聲算法取得了較大的突破。DivideMix 在所有噪聲率下準(zhǔn)確率都取得了最優(yōu),并且在80%的高對稱噪聲下,仍能保持0.932 的準(zhǔn)確率。
表1 在不同噪聲率下CIFAR-10上的測試準(zhǔn)確率比較Tab.1 Comparisons of test accuracy on CIFAR-10 under diferrent noise ratios
表2 為在ImageNet-2012 測試集上的Top1 和Top5 準(zhǔn)確率,其中,基于模型的標(biāo)簽噪聲算法[75]僅提供在不同噪聲率下的Top5 準(zhǔn)確率??梢钥闯觯敯艚Y(jié)構(gòu)由于人工設(shè)計(jì)的結(jié)構(gòu)的特性,相較于其他先進(jìn)方法,準(zhǔn)確率較低。在具有不同類型標(biāo)簽噪聲的所有數(shù)據(jù)集上,DivideMix 始終優(yōu)于對比方法。
表2 在ImageNet-2012測試集上的Top1和Top5準(zhǔn)確率Tab.2 Top1 and Top5 accuracies on ImageNet-2012 test set
表3 是在具有對稱標(biāo)簽噪聲的CIFAR-100 數(shù)據(jù)集上的測試準(zhǔn)確率,噪聲率r={20%,40%,50%,60%,80%,90%}。其中,Taylor-Loss取t=2;BT-Loss的t1和t2分別為0.8、1.2??梢钥闯?,對于具有高噪聲率的更具挑戰(zhàn)性的CIFAR-100 數(shù)據(jù)集,以半監(jiān)督方法為代表的DivideMix 在所有噪聲率下準(zhǔn)確率仍然遠(yuǎn)遠(yuǎn)優(yōu)于其他方法,且在高噪聲率下體現(xiàn)了一定的魯棒性??v向?qū)Ρ确治龌趽p失的標(biāo)簽噪聲算法,可以發(fā)現(xiàn)近期損失函數(shù)的研究取得了重大突破,通過改進(jìn)損失函數(shù)以提高對標(biāo)簽噪聲的魯棒性,相較于其他方法,是一種更簡單、更通用的魯棒學(xué)習(xí)的解決方案。尤其是BT-Loss 的出色表現(xiàn),能夠與基于訓(xùn)練方式的標(biāo)簽噪聲算法抗衡。
表3 在不同噪聲率下CIFAR-100上的測試準(zhǔn)確率比較Tab.3 Comparisons of test accuracy on CIFAR-100 under diferrent noise ratios
綜上所述,基于損失函數(shù)的算法近年來經(jīng)過不斷的研究,突破了同時達(dá)到魯棒學(xué)習(xí)和可學(xué)習(xí)性的瓶頸,作為一種簡單且通用的魯棒學(xué)習(xí)方式取得了明顯進(jìn)步;基于模型的算法通過改變模型架構(gòu)顯著地提高了泛化性能,存在強(qiáng)烈的人工設(shè)計(jì)特性,它的改進(jìn)不容易擴(kuò)展到其他模型架構(gòu)中;基于訓(xùn)練方式的算法設(shè)計(jì)了對噪聲標(biāo)簽更魯棒的自適應(yīng)訓(xùn)練策略,引入半監(jiān)督學(xué)習(xí)取得了目前最好的性能,但是這種方法依賴于對學(xué)習(xí)過程進(jìn)行干預(yù)和調(diào)整,或?qū)τ?xùn)練時間和學(xué)習(xí)速度等超參數(shù)敏感,所以很難調(diào)節(jié);最后,基于數(shù)據(jù)的算法能夠提高原始標(biāo)簽的質(zhì)量,但可能會將錯誤標(biāo)簽校正為正確的標(biāo)簽,可以結(jié)合現(xiàn)有的先進(jìn)算法進(jìn)一步改進(jìn),但是這些方法需要額外的干凈數(shù)據(jù)支持,或者需要一個潛在的昂貴的檢測過程來估計(jì)噪聲模型。
首先分析存在標(biāo)簽噪聲時通用的基于深度學(xué)習(xí)的標(biāo)簽噪聲處理過程,以及算法選擇的依據(jù),為處理類似問題提供參考,并比較了本文介紹的四類標(biāo)簽噪聲方法,提供了一個算法評價體系。
1)評估可否進(jìn)行標(biāo)簽噪聲學(xué)習(xí)。如果數(shù)據(jù)量過小并且存在一定程度的標(biāo)簽噪聲,為了保證算法的有效性,通常建議繼續(xù)采集數(shù)據(jù)后再進(jìn)行學(xué)習(xí)。
2)利用弱正則化的模型進(jìn)行初步訓(xùn)練,觀察標(biāo)簽噪聲量的大小。由于標(biāo)簽噪聲算法的魯棒設(shè)置,如果處理干凈數(shù)據(jù)集,通常會帶來一定的精度下降,這時首先應(yīng)該使用僅能處理輕微噪聲的溫和的標(biāo)簽噪聲算法,即不會在無噪聲時導(dǎo)致特別大的精度下降,之后使用CleanLab 等工具進(jìn)行噪聲量的評估。
3)根據(jù)標(biāo)簽噪聲量的大小進(jìn)一步選擇適合的標(biāo)簽噪聲算法。不同噪聲量適用的算法不同,因此需要根據(jù)預(yù)估的噪聲量大小為算法選擇提供依據(jù)。
4)最后衡量學(xué)習(xí)任務(wù)的難易再考慮進(jìn)一步設(shè)計(jì)。過度的魯棒約束會帶來模型復(fù)雜度的限制,因此需要根據(jù)現(xiàn)有模型在數(shù)據(jù)集上的表現(xiàn)盡可能衡量任務(wù)的難易程度。如果任務(wù)簡單,可以采取更激進(jìn)的樣本篩選等方式;如果任務(wù)復(fù)雜,需要仔細(xì)區(qū)分難樣本與標(biāo)簽噪聲樣本。
數(shù)據(jù)集能否直接進(jìn)行學(xué)習(xí)通常要考慮以下幾個因素:數(shù)據(jù)集大小、噪聲量大小及學(xué)習(xí)任務(wù)的難易程度??紤]因素不同,在標(biāo)簽噪聲學(xué)習(xí)中優(yōu)先考慮的模型不同。
4.2.1 數(shù)據(jù)集大小
當(dāng)數(shù)據(jù)集較小時,為保證訓(xùn)練結(jié)果的準(zhǔn)確性,通常建議繼續(xù)采集數(shù)據(jù),或通過旋轉(zhuǎn)、復(fù)制等手段進(jìn)行數(shù)據(jù)增強(qiáng),以擴(kuò)增樣本量。當(dāng)數(shù)據(jù)量正常時,則從噪聲量大小、學(xué)習(xí)任務(wù)的難易程度考慮簽噪聲學(xué)習(xí)。
4.2.2 噪聲量大小
大規(guī)模噪聲標(biāo)簽的存在不僅增大模型復(fù)雜度,還大幅降低了模型預(yù)測性能。在醫(yī)學(xué)圖像分割等任務(wù)中,會對模型產(chǎn)生極大影響。不同的標(biāo)簽噪聲模型對噪聲量大小處理的能力不同。當(dāng)噪聲量大時,可以優(yōu)先考慮DivideMix、樣本重加權(quán)、標(biāo)簽修正等基于數(shù)據(jù)的標(biāo)簽噪聲學(xué)習(xí)算法;當(dāng)噪聲量小時,可以選擇半監(jiān)督模型或基于損失的模型,但不適合采用DivideMix 和直接刪除樣本的重加權(quán)方法。
4.2.3 學(xué)習(xí)任務(wù)難易程度
難樣本學(xué)習(xí)一直是標(biāo)簽噪聲學(xué)習(xí)的難點(diǎn),訓(xùn)練集中通常包含較多的簡單樣本和較少的難樣本,學(xué)習(xí)難樣本能在一定程度上提高模型的泛化能力。若在模型訓(xùn)練時考慮難樣本的學(xué)習(xí),可以通過元學(xué)習(xí)利用干凈驗(yàn)證集輔助,或采用基于模型或損失函數(shù)的方法,也可以采取一些激進(jìn)的方法,如樣本重加權(quán),甚至是刪除樣本的方法。
本節(jié)對第3 章中介紹的4 類標(biāo)簽噪聲方法根據(jù)以下5 個相關(guān)屬性進(jìn)行評價,為未來的研究提供幫助。表4 為4 類標(biāo)簽噪聲方法在5 個屬性下的對比。
表4 各類算法屬性對比Tab.4 Comparison of attributes of various algorithms
1)適配性。隨著深度學(xué)習(xí)的快速發(fā)展,一些新的網(wǎng)絡(luò)結(jié)構(gòu)不斷出現(xiàn)并且非常有效;因此,支持任何類型網(wǎng)絡(luò)結(jié)構(gòu)的能力很重要。適配性能確保標(biāo)簽噪聲算法快速適應(yīng)最先進(jìn)的網(wǎng)絡(luò)體系結(jié)構(gòu)。標(biāo)簽噪聲算法中的魯棒損失能很好地與任何網(wǎng)絡(luò)結(jié)構(gòu)結(jié)合,從而提高網(wǎng)絡(luò)性能,使網(wǎng)絡(luò)結(jié)構(gòu)能夠在不同的標(biāo)簽噪聲下保持魯棒性。
2)高噪聲。在真實(shí)世界的噪聲數(shù)據(jù)中,噪聲率存在從輕到重不同比重的分布;因此,標(biāo)簽噪聲算法應(yīng)對不同程度的噪聲率體現(xiàn)出噪聲魯棒性。高噪聲確保標(biāo)簽噪聲算法甚至可以對抗強(qiáng)噪聲。DivideMix 在所有噪聲率下都優(yōu)于其他方法,且在高噪聲下體現(xiàn)了一定的魯棒性。
3)訓(xùn)練損耗。滿足深度學(xué)習(xí)發(fā)展的需求離不開硬件技術(shù)的進(jìn)步,不同的網(wǎng)絡(luò)結(jié)構(gòu)在訓(xùn)練時,模型參數(shù)和輸出會占用一定的顯存損耗和時間計(jì)算量成本。因此,訓(xùn)練損耗應(yīng)確保標(biāo)簽噪聲算法在提高噪聲魯棒性的基礎(chǔ)上,不額外增加訓(xùn)練的顯存損耗、不給學(xué)習(xí)過程帶來額外的計(jì)算成本,并保持算法的速率和效率?;谟?xùn)練的方法大多使用預(yù)訓(xùn)練的網(wǎng)絡(luò),這會給學(xué)習(xí)過程帶來額外的計(jì)算成本。
4)超參數(shù)敏感性。深度學(xué)習(xí)中的超參數(shù)指控制訓(xùn)練過程的一些參數(shù),敏感的超參數(shù)的不同取值對模型性能的影響很大,找到最好的超參數(shù)對模型十分重要。因此,標(biāo)簽噪聲算法應(yīng)衡量對不同取值的超參數(shù)的敏感性。魯棒損失中的BT Loss的t1、t2的不同取值會影響模型對標(biāo)簽噪聲的魯棒性。
5)弱正則化。僅能處理輕微噪聲的溫和的標(biāo)簽噪聲算法,在干凈標(biāo)簽情況下反而會導(dǎo)致性能下降,但不會在無噪聲情況下帶來特別大的精度下降。因此,這種溫和的標(biāo)簽噪聲算法體現(xiàn)了一種弱正則化。弱正則化確保標(biāo)簽噪聲算法在存在輕微噪聲的情況下,能夠帶來性能的提升?;隰敯艚Y(jié)構(gòu)的標(biāo)簽噪聲算法對中小型數(shù)據(jù)集的標(biāo)簽噪聲具有一定的魯棒性,但是僅能輕微改善噪聲的抑制結(jié)果,在干凈標(biāo)簽情況下的性能反而略低于真實(shí)世界的輕微噪聲下的性能。
標(biāo)簽噪聲存在于真實(shí)數(shù)據(jù)集中,導(dǎo)致深度學(xué)習(xí)模型難以獲得理想的性能;除了圖像分類以外,標(biāo)簽噪聲還可能存在于所有的有監(jiān)督學(xué)習(xí)任務(wù)中,例如語義分割、目標(biāo)檢測、文本分類等。本文歸納了大量克服噪聲標(biāo)簽現(xiàn)象的標(biāo)簽噪聲學(xué)習(xí)算法,所有的方法都有優(yōu)缺點(diǎn)及適用性,所以研究者可以為特定場景選擇最合適的算法。
盡管目前已經(jīng)提出了許多標(biāo)簽噪聲算法,但在有噪聲標(biāo)簽的情況下進(jìn)行深度學(xué)習(xí)仍然存在許多問題??紤]到標(biāo)簽噪聲對神經(jīng)網(wǎng)絡(luò)的影響及分析,例如噪聲標(biāo)簽會降低學(xué)習(xí)效果,尤其是對于具有挑戰(zhàn)性的樣本;因此,與其說對噪聲樣本過度適應(yīng),不如說對具有挑戰(zhàn)性的樣本適應(yīng)不足可能是模型性能下降的原因,這是一個有待解決的問題。另一個可能的研究方向可能是努力打破噪聲的結(jié)構(gòu),使它在特征域中均勻分布。