神經(jīng)網(wǎng)絡(luò)的成功建立在大量的干凈數(shù)據(jù)和很深的網(wǎng)絡(luò)模型基礎(chǔ)上。但是在現(xiàn)實(shí)場(chǎng)景中數(shù)據(jù)和模型往往不會(huì)特別理想,比如數(shù)據(jù)層面有誤標(biāo)記的情況,像小狗被標(biāo)注成狼,而且實(shí)際的業(yè)務(wù)場(chǎng)景講究時(shí)效性,神經(jīng)網(wǎng)絡(luò)的層數(shù)不能特別深。
騰訊優(yōu)圖不斷迭代數(shù)據(jù)和模型缺陷情況下神經(jīng)網(wǎng)絡(luò)的有效訓(xùn)練方法,通過noisy label learning和collaborative learning技術(shù),實(shí)現(xiàn)用比較淺的網(wǎng)絡(luò)解決noisy dataset問題。相關(guān)技術(shù)已經(jīng)在騰訊的眾多業(yè)務(wù)場(chǎng)景上(行人重識(shí)別,內(nèi)容審核等)落地。本文整理自騰訊優(yōu)圖和機(jī)器之心聯(lián)合主辦的「CVPR2020線上分享」,分享嘉賓為騰訊優(yōu)圖實(shí)驗(yàn)室高級(jí)研究員Louis。
刻畫noisy label與任務(wù)目標(biāo)
一般來講,noisy label是可以通過一個(gè)噪音轉(zhuǎn)移矩陣T來刻畫,也就是noise transition matrix T。人為設(shè)計(jì)一個(gè)噪音轉(zhuǎn)移矩陣T,之后如果我們知道這個(gè)數(shù)據(jù)集中 clean label的分布,將這個(gè)分布乘以T就可以得到noisy label的分布。有了noisy label分布和對(duì)應(yīng)的數(shù)據(jù)集之后,就可以進(jìn)行很多帶噪方法的驗(yàn)證。
接下來用數(shù)學(xué)描述來刻畫一下我們帶噪學(xué)習(xí)的目標(biāo)。對(duì)于一個(gè)分類任務(wù),我們的目標(biāo)可以寫成下面的形式,x和y代表樣本和對(duì)應(yīng)的label, 在今天的語境下F是神經(jīng)網(wǎng)絡(luò)。我們的任務(wù)目標(biāo)是在數(shù)據(jù)集下優(yōu)化一個(gè)loss function,使得在noisy label下訓(xùn)練得到的解,在性能上接近在clean label下訓(xùn)練得到的解,那么數(shù)學(xué)表達(dá)就是,f ?是f的一個(gè)子集。
各顯神通,主要帶噪學(xué)習(xí)方法探索
關(guān)于帶噪學(xué)習(xí),近些年有一些重要論文。
NeurlPS 2018上的一篇論文(Generalized Cross Entropy Loss Training Deep Neural Networks with Noisy Labels)提出GCE loss(Generalized Cross Entropy loss)。它的背景是,MAE以均等分配的方式處理各個(gè)sample,而CE(cross entropy)會(huì)向識(shí)別困難的sample傾斜,因此針對(duì)noisy label,MAE比CE更加魯棒,但是CE的準(zhǔn)確度更高,擬合也更快。于是這篇文章提出GCE loss,結(jié)合MAE與CE二者的優(yōu)勢(shì)。
還有的論文(LDMI: A Novel Information-theoretic Loss Function for Training Deep Nets Robust to Label Noise, NeurlPS 2019)是基于信息論設(shè)計(jì)的lossfunction,Deterministic information loss。它的Motivation是想尋找一個(gè)信息測(cè)度(information measure)I。假設(shè)在I下任意存在兩個(gè)分類器f、f’,如果在噪音數(shù)據(jù)集下,通過I, f比f’表現(xiàn)得更好,那么在干凈數(shù)據(jù)集下,f比f’表現(xiàn)得也好,也就是說它在噪音數(shù)據(jù)集和干凈數(shù)據(jù)集上滿足一致性。如果在噪音數(shù)據(jù)集下它表現(xiàn)得好,通過一致性,在干凈數(shù)據(jù)集下表現(xiàn)得也一定很好。
把時(shí)間往前推進(jìn)一下,講一些目前正在審稿中的文章(Peer Loss Functions: Learning from Noisy Labels without Knowing Noise Rates (under review)
;Loss with Paired Samples: A Robust Learning Approach that Adapts to Label Noise (under review),關(guān)于Peer loss。Peer loss是由兩個(gè)loss function的加權(quán)得到的,比如l1, l2。α是一個(gè)超參數(shù),衡量?jī)蓚€(gè)loss的權(quán)重大小。l1、l2可以是任何分類導(dǎo)向的loss function,比如CE、MSE、MAE都行。Loss的構(gòu)造主要是在于樣本的構(gòu)造上,我們看l1的樣本,Xi對(duì)應(yīng)就是數(shù)據(jù)集中原始的樣本和對(duì)應(yīng)的label。
為什么peer loss可以很好地解決noisy label問題?為了方便,這里先把l1、l2都定義成CE loss,那么在第一項(xiàng),它表現(xiàn)的像positive learning,因?yàn)樗褪且粋€(gè)傳統(tǒng)的CE function,而在第二項(xiàng),它像 negative learning,也就是在標(biāo)記錯(cuò)的時(shí)候,比如把狗標(biāo)成汽車,如果用positive learning進(jìn)行學(xué)習(xí)的話那就出現(xiàn)問題了,它是隨機(jī)從一個(gè)label中進(jìn)行抽取,希望讓模型學(xué)到它不是一個(gè)鳥,狗不是一個(gè)鳥,它的語義關(guān)系首先是成立的,是正確的,這樣一來,第二項(xiàng)對(duì)模型也能起到一個(gè)積極的導(dǎo)向作用。
更加有意思的是,單獨(dú)訓(xùn)練第一項(xiàng)和單獨(dú)訓(xùn)練第二項(xiàng)都不可能使模型達(dá)到理論上的最優(yōu),因?yàn)槟P痛嬖趎oisy label。但是我們證明了它們兩項(xiàng)聯(lián)合訓(xùn)練,在統(tǒng)計(jì)上是可以讓模型達(dá)到最優(yōu)。
文章提出了一個(gè)主要定理,就是noise魯棒性,我們證明了存在一個(gè)最優(yōu)的超參數(shù)α,用peer loss在noisy label下進(jìn)行優(yōu)化,它得出的神經(jīng)網(wǎng)絡(luò)的解等價(jià)于用l1在clean label下進(jìn)行優(yōu)化,可以把l1理解成CEloss。所以我們理論證明了peer loss的最優(yōu)性。
看一下peer loss在數(shù)值方面的結(jié)果,這里使用的數(shù)據(jù)集是CIFAR-10,存在著40%的uniform noise,就是symmetric noise。圖中的藍(lán)色代表clean label分布,橘黃色代表noisy label分布。通過peer loss優(yōu)化后,我們畫一下clean label和noisy label的分布,可以看到我們的網(wǎng)絡(luò)把這兩個(gè)完全分開了,證明peer loss是非常有效的。
接下來,在各個(gè)數(shù)據(jù)集上衡量peer loss的表現(xiàn),我們?cè)贛NIST、Fashion MNIST、CIFAR-10上進(jìn)行了實(shí)驗(yàn),可以看到MNIST和Fashion MNIST上,用peer loss優(yōu)化的結(jié)果超過了一些其他的結(jié)果,包括DMI的結(jié)果三四十個(gè)點(diǎn),這是非常大的進(jìn)步。在CIFAR-10上也超過將近5個(gè)點(diǎn),四個(gè)多點(diǎn)左右這樣的一個(gè)結(jié)果。而且,我們發(fā)現(xiàn)peer loss尤其對(duì)Sparse,High這種noise type表現(xiàn)得特別明顯。
以上講的方法主要是設(shè)計(jì)lossfunction的思路,讓網(wǎng)絡(luò)能夠抵抗noisy label。但其實(shí)還有很多其他方法,比如samples selection和label correction,這兩個(gè)方法是通過選擇樣本和對(duì)樣本進(jìn)行糾正來進(jìn)行帶噪學(xué)習(xí)訓(xùn)練。發(fā)表在NeurlPS 2018上的這篇論文(Co-teaching: Robust Training of Deep Neural Networks with Extremely Noisy Labels)就是關(guān)于Co-teaching的。它的基本假設(shè)是認(rèn)為noisy label的loss要比clean label的要大,于是它并行地訓(xùn)練了兩個(gè)神經(jīng)網(wǎng)絡(luò)A和B,在每一個(gè)Mini-batch訓(xùn)練的過程中,每一個(gè)神經(jīng)網(wǎng)絡(luò)把它認(rèn)為loss比較小的樣本,送給它其另外一個(gè)網(wǎng)絡(luò),這樣不斷進(jìn)行迭代訓(xùn)練。
接下來介紹騰訊優(yōu)圖在2019年底發(fā)表的一篇文章(Asymmetric Co-Teaching for Unsupervised Cross-Domain Person Re-Identification),解決一類特殊的label noise。這類label noise不是人為標(biāo)注產(chǎn)生的,而是在訓(xùn)練中產(chǎn)生,在模型的聚類過程中產(chǎn)生的。比如說有這樣一批沒有標(biāo)記的樣本,然后通過一個(gè)聚類算法得到inliers和outliers,outliers是聚類算法中認(rèn)為這一點(diǎn)是孤立點(diǎn)或者是噪音點(diǎn),它沒法歸到聚類算法的ID里面,就叫做outliers,inliers是聚類算法對(duì)這些樣本進(jìn)行聚類后得到一個(gè)個(gè)cluster,但每一個(gè)cluster里面可能存在noise。
騰訊優(yōu)圖提出了一個(gè)框架,叫Asymmetric Co-teaching。因?yàn)榫垲愔写嬖趇nlier和outliers,這兩個(gè)不同源,所以用非對(duì)稱的思想去解決noiselabel的問題。
具體來說,首先有很多 Target Data,經(jīng)過模型聚類得到Inliers和Outliers。然后通過k近鄰將outliers進(jìn)行l(wèi)abel。下面一步是比較關(guān)鍵的,和Co-teaching一樣,我們也并行訓(xùn)練兩個(gè)神經(jīng)網(wǎng)絡(luò)C和M,但是我們往C和M送到的樣本是非同源的,一個(gè)inlier一個(gè)outliers。然后C和M互相發(fā)送他們認(rèn)為loss比較小的樣本進(jìn)行迭代訓(xùn)練。每次訓(xùn)練之后,再進(jìn)行聚類。不斷重復(fù)這種迭代過程,最后我們發(fā)現(xiàn)outliers越來越少,Inlier也是越來越多,Inlier每個(gè)ID的noise也是越來越少。
Asymmetric Co-teaching的結(jié)果不錯(cuò),我們主要是在行人重識(shí)別這個(gè)問題上衡量方法的有效性,也就是ReID??梢钥次覀冞@個(gè)clustering-based的方法在Market和Duke數(shù)據(jù)集中有不錯(cuò)的表現(xiàn),比之前的一些方法也多了五六個(gè)點(diǎn)。
總結(jié)一下,關(guān)于noise label前面主要介紹了七個(gè)方法,這些方法可以歸為Feature independent noise和Feature dependent noise。值得注意的是,并不是一個(gè)方法去解決Feature independent noise就無法解決Feature dependent noise,只是說一個(gè)方法它更適用于解決哪個(gè)問題。標(biāo)線框的這兩個(gè)是我們騰訊優(yōu)圖的工作。
我的介紹非常有限,如果你感興趣希望讀更多的研究,可以訪問這個(gè)網(wǎng)址,里面有更多關(guān)于noisy label learining的文章:
激活無效濾波器,提升神經(jīng)網(wǎng)絡(luò)性能
關(guān)于協(xié)作學(xué)習(xí)其實(shí)學(xué)術(shù)界沒有統(tǒng)一的定義,一般來講只要是多個(gè)模型互相協(xié)作,去解決一個(gè)或者多個(gè)任務(wù),那就可以把這種學(xué)習(xí)范式叫做協(xié)作學(xué)習(xí)。
按照任務(wù)分,協(xié)作學(xué)習(xí)可以分成兩個(gè):一個(gè)是解決多個(gè)任務(wù),有dual learning和cooperative learning;一個(gè)是多個(gè)模型一起協(xié)作解決一個(gè)任務(wù)。因?yàn)閐ual learning和cooperative learning主要是解決自然語言處理的問題,自然語言處理涉及到比如說中文翻譯成英文,英文翻譯成中文,這是一個(gè)兩個(gè)任務(wù),是多個(gè)任務(wù)。我們這里主要是講CV方面,所以說我們主要講解決一個(gè)任務(wù),接下來會(huì)介紹co-training、deep mutual learning、filter grafting和DGD這幾個(gè)工作。
關(guān)于 Co-training的這篇文章Combining labeled and unlabeled data with co-training,非常古老,是1998年的,但是它的引用量已經(jīng)好幾千,它其實(shí)是解決了半監(jiān)督的問題。
發(fā)表在CVPR 2018年的一篇論文deep mutual learning。它的思想極其簡(jiǎn)單,我們都知道蒸餾的時(shí)候teacher是fixed,然后對(duì)于學(xué)生進(jìn)行監(jiān)督,這篇文章的思想就是在蒸餾的過程中老師并不保持fixed,也進(jìn)行迭代的訓(xùn)練操作,也就是說老師教學(xué)生,學(xué)生也教老師。
時(shí)間再拉近一點(diǎn),這是今年騰訊優(yōu)圖中稿CVPR 2020年的一篇文章(Filter Grafting for Deep Neural Networks)。這篇文章的motivation是什么呢?我們知道訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)存在很多無效的filter, filterpruning技術(shù)主要對(duì)無效的濾波器進(jìn)行移除使網(wǎng)絡(luò)的推理速度增加。
與pruning相反,在這篇文章中,我們提出濾波器嫁接(filter grafting)技術(shù)。我們并不是移除網(wǎng)絡(luò)的無效濾波器,而是將其他網(wǎng)絡(luò)的有效濾波器的參數(shù)嫁接到無效濾波器上,通過引入外部信息的方法來激活無效濾波器,讓它們重新變得有價(jià)值起來,來進(jìn)一步提高網(wǎng)絡(luò)的表達(dá)能力。
這篇文章有一個(gè)非常重要的發(fā)現(xiàn)是什么呢?我們訓(xùn)練的神經(jīng)網(wǎng)絡(luò)如果在初始化的時(shí)候不一樣,在訓(xùn)練完之后,無效filter的位置是統(tǒng)計(jì)無關(guān)的。整個(gè)我們可以并行訓(xùn)練多個(gè)網(wǎng)絡(luò),多個(gè)網(wǎng)絡(luò)之間互相進(jìn)行這種操作,結(jié)束訓(xùn)練之后每個(gè)神經(jīng)網(wǎng)絡(luò)都會(huì)有更好的特征表達(dá),而且測(cè)試的時(shí)候準(zhǔn)確率性能也會(huì)更好。
可以看一下這個(gè)結(jié)果,對(duì)于在CIFAR-10、CIFAR-100上進(jìn)行的實(shí)驗(yàn),與mutual learning、傳統(tǒng)的distillation、還有RePr相比較,F(xiàn)ilter Grafting效果還是不錯(cuò)的,對(duì)于一些大網(wǎng)絡(luò),特別是對(duì)于CIFAR-100有兩個(gè)點(diǎn)的提升。
Grafting是可以有效提高無效filter,但是可能有效filter的信息量會(huì)減少。這篇還在審稿中的文章DGD: Densifying the Knowledge of Neural Networks with Filter Grafting and Knowledge Distillation是關(guān)于我們的新發(fā)現(xiàn),就是傳統(tǒng)的蒸餾可以解決這個(gè)問題,這是這篇文章的貢獻(xiàn)。
我們?cè)谧鰃rafting加權(quán)的時(shí)候,比如說M1和M2進(jìn)行加權(quán),M1的layer1加到M2的layer1上面,雖然填補(bǔ)了M2中無效filter的空虛,但是M2有效filter可能也會(huì)受到影響。因?yàn)镸1它本身也有無效filter,它直接加到M2上,M2的有效filter的信息量可能會(huì)減少,所以說我們就做了這樣一個(gè)DGD framework。
看一下DGD framework的結(jié)果。我們對(duì)比了傳統(tǒng)的filter grafting,還有knowledge distillation,發(fā)現(xiàn)比grafting distillation都有不錯(cuò)的提升,比如在CIFAR-100上,各個(gè)網(wǎng)絡(luò)基本都會(huì)比baseline提升兩到三個(gè)點(diǎn)。
待解難題:如何進(jìn)行更有效的濾波器嫁接
前面講的是noise label learning和collaborative leaning,那么基于這兩個(gè)可以做什么呢?
第一個(gè)是設(shè)計(jì)一些feature dependent noise的loss形式。 因?yàn)槲艺J(rèn)為現(xiàn)在對(duì)于noisy label learning領(lǐng)域,feature independent noise可能解決得差不多了,準(zhǔn)確率都很高了,接下來一個(gè)主要的點(diǎn)就是設(shè)計(jì)一些loss方式來解決feature dependent問題。而且,這個(gè)問題是真實(shí)的業(yè)務(wù)場(chǎng)景、真實(shí)的數(shù)據(jù)集上的noise type形式。
第二個(gè)是,我們知道grafting的motivation是來自于pruning,那么我們是否可以用grafting的一些思想去指導(dǎo)神經(jīng)網(wǎng)絡(luò)來進(jìn)行更有效的pruning,這是一些未來大家有興趣可以探索的一個(gè)點(diǎn)。
Q&A
Q:主動(dòng)學(xué)習(xí)和noisy label learning都涉及到選擇數(shù)據(jù),兩者的區(qū)別是什么?
A:的確兩者都涉及選擇數(shù)據(jù),但是關(guān)鍵在于要選擇什么樣的數(shù)據(jù),選擇數(shù)據(jù)的評(píng)價(jià)標(biāo)準(zhǔn)可能不太一樣。noisy label learning想選擇干凈的數(shù)據(jù),而主動(dòng)學(xué)習(xí)是想選擇對(duì)解決的問題有效的數(shù)據(jù)。
這些選擇方式和數(shù)據(jù)的分布息息相關(guān)的,也就是說我們講各種算法的同時(shí)要了解數(shù)據(jù)的分布,拋開數(shù)據(jù)的分布去研究算法有時(shí)候是沒有任何價(jià)值的。對(duì)于主動(dòng)學(xué)習(xí)來講,在數(shù)據(jù)集的分布不均勻的時(shí)候,要選擇loss比較大的樣本,這和noisy label learning有點(diǎn)相反,noisy label learning是要選擇loss比較小的樣本。
Q: noisy label對(duì)自動(dòng)標(biāo)注數(shù)據(jù)有用嗎?
A:這個(gè)是有用的,包括現(xiàn)在一些業(yè)務(wù)場(chǎng)景,我們用一些方法篩選出來哪些數(shù)據(jù)是值得標(biāo)的,或者說我們通過noisy label的一些方法將noisy label的樣本先檢測(cè)出來,之后再進(jìn)行有效的中心標(biāo)注,所以noisy label對(duì)自動(dòng)標(biāo)注數(shù)據(jù)還是有業(yè)務(wù)價(jià)值的。
Q:grafting對(duì)于小型network的效果如何?
A:其實(shí)我們?cè)谧龊芏鄬?shí)驗(yàn)的過程中發(fā)現(xiàn),grafting對(duì)小型網(wǎng)絡(luò)的提升是沒有對(duì)于大型網(wǎng)絡(luò)的提升高。因?yàn)闊o效filter的數(shù)量很可能出現(xiàn)在大型網(wǎng)絡(luò)上的比較多,小型網(wǎng)絡(luò)無效filter的數(shù)量比較少,我們的實(shí)驗(yàn)結(jié)果可以看到grafting是在大的數(shù)據(jù)網(wǎng)絡(luò)上效果是比較明顯的。
(免責(zé)聲明:本網(wǎng)站內(nèi)容主要來自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準(zhǔn)確性及可靠性,但不保證有關(guān)資料的準(zhǔn)確性及可靠性,讀者在使用前請(qǐng)進(jìn)一步核實(shí),并對(duì)任何自主決定的行為負(fù)責(zé)。本網(wǎng)站對(duì)有關(guān)資料所引致的錯(cuò)誤、不確或遺漏,概不負(fù)任何法律責(zé)任。
任何單位或個(gè)人認(rèn)為本網(wǎng)站中的網(wǎng)頁(yè)或鏈接內(nèi)容可能涉嫌侵犯其知識(shí)產(chǎn)權(quán)或存在不實(shí)內(nèi)容時(shí),應(yīng)及時(shí)向本網(wǎng)站提出書面權(quán)利通知或不實(shí)情況說明,并提供身份證明、權(quán)屬證明及詳細(xì)侵權(quán)或不實(shí)情況證明。本網(wǎng)站在收到上述法律文件后,將會(huì)依法盡快聯(lián)系相關(guān)文章源頭核實(shí),溝通刪除相關(guān)內(nèi)容或斷開相關(guān)鏈接。 )