日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【长尾分布】用半监督或自监督解决

發布時間:2025/3/21 编程问答 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【长尾分布】用半监督或自监督解决 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄

1.研究背景

2.研究動機和思路

3. 半監督框架下的不均衡學習

01半監督的不平衡學習框架

02實驗

4.關于半監督不均衡學習的進一步思考

5.自監督框架下的不均衡學習

01自監督的不平衡學習框架樂

02實驗

6.結語



Yuzhe Yang等人在論文Rethinking the Value of Labels for Improving Class-Imbalanced Learning中主要研究一個經典而又非常實際且常見的問題:數據類別不平衡(也泛稱數據長尾分布)下的分類問題。我們通過理論推導和大量實驗發現,半監督和自監督均能顯著提升不平衡數據下的學習表現。

????那么開篇首先用一句話概括本文的主要貢獻:我們分別從理論和實驗上驗證了,對于類別不均衡的學習問題,利用

  • 半監督學習:也即利用更多的無標簽數據;

  • 自監督學習:不利用任何其他數據,僅通過在現有的不平衡數據上先做一步不帶標簽信息的自監督預訓練(self-supervised pre-training)

????都可以大大提升模型的表現,并且對于不同的平衡/不平衡的訓練方法,從最基本的交叉熵損失,到進階的類平衡損失[1][2],重采樣[3],重加權[4][5],以及之前的state-of-the-art最優的decouple算法[6]等,都能帶來一致的&較大的提升。相信我們從和現有方法正交的角度的分析,可以作為解決不平衡長尾問題的新的思路,其簡單和通用性也使得能夠很容易和不同方法相結合,進一步提升學習結果。

????接下來我們進入正文,我會先拋開文章本身,大體梳理一下imbalance這個問題以及一部分研究現狀,在此基礎上盡量詳細的介紹我們的思路和方法,省去不必要的細節。

1.研究背景

????數據不平衡問題在現實世界中非常普遍。對于真實數據,不同類別的數據量一般不會是理想的uniform分布,而往往會是不平衡的;如果按照不同類別數據出現的頻率從高到低排序,就會發現數據分布出現一個“長尾巴”,也即我們所稱的長尾效應。大型數據集經常表現出這樣的長尾標簽分布:

????當然,不僅僅是對于分類任務,其他任務比如object detection或instance segmentation,常用數據集也存在類別的不均衡。此外,除了視覺領域中的數據,對于涉及安全或健康的關鍵應用,例如自動駕駛和醫療/疾病診斷,數據本質上也是嚴重失衡的。

????為什么會存在不平衡的現象?其實很好理解,一個通用的解釋就是特定類別的數據是很難收集的。拿Species分類來說(參考大型數據集iNaturalist[7]),特定種類(如貓,狗等)非常常見,但是有的種類(如高山兀鷲,隨便舉的例子...)就非常稀有。再比如對自動駕駛,正常行駛的數據會占大多數,而真正發生異常情況/存在車禍危險的數據卻極少。再比如對醫療診斷,患有特定疾病的人群數相比正常人群也是極度不平衡的。對于healthcare data來說另一個可能原因是和privacy issue有關,特定病人可能都很難采集數據。

????那么,不平衡或長尾數據會有什么問題?簡單來說,如果直接把類別不平衡的樣本丟給模型用ERM學習,顯然模型會在major classes的樣本上的學習效果更好,而在minor classes上泛化效果差,因為其看到的major classes的樣本遠遠多于minor classes。

????那么,對于不平衡學習問題有哪些解決方法?我自己總結的目前主流方法大致分為以下幾種:

  • 重采樣(re-sampling):更具體可分為對少樣本的過采樣[3],或是對多樣本的欠采樣[8]。但因過采樣容易overfit到minor class,無法學到更魯棒易泛化的特征,往往在非常不平衡數據上表現會更差;而欠采樣則會造成major class嚴重的信息損失,導致欠擬合發生。

  • 數據合成(synthetic samples):即生成和少樣本相似的“新”數據。經典方法SMOTE[9],思路簡單來講是對任意選取的少類樣本,用K近鄰選取其相似樣本,通過對樣本線性插值得到新樣本。這里會想到和mixup[10]很相似,于是也有imbalance的mixup版本出現[11]。

  • 重加權(re-weighting):對不同類別(甚至不同樣本)分配不同權重。注意這里的權重可以是自適應的。此類方法的變種有很多,有最簡單的按照類別數目的倒數來做加權[12],按照“有效”樣本數加權[1],根據樣本數優化分類間距的loss加權[4],等等。

  • 遷移學習(transfer learning):這類方法的基本思路是對多類樣本和少類樣本分別建模,將學到的多類樣本的信息/表示/知識遷移給少類別使用。代表性文章有[13][14]。

  • 度量學習(metric learning):本質上是希望能夠學到更好的embedding,對少類附近的boundary/margin更好的建模。有興趣的同學可以看看[15][16]。

  • 元學習/域自適應(meta learning/domain adaptation):分別對頭部和尾部的數據進行不同處理,可以去自適應的學習如何重加權[17],或是formulate成域自適應問題[18]。

  • 解耦特征和分類器(decoupling representation & classifier):最近的研究發現將特征學習和分類器學習解耦,把不平衡學習分為兩個階段,在特征學習階段正常采樣,在分類器學習階段平衡采樣,可以帶來更好的長尾學習結果[5][6]。這也是目前的最優長尾分類算法。

  • ????至此大概總結了研究背景和常用方法;然而,即使有如數據重采樣或類平衡損失等專門設計的算法,在極端的類別失衡下,深度模型性能的下降仍然廣泛存在。因此,理解類別不均衡的數據標簽分布所帶來的影響是非常重要的。

    2.研究動機和思路

    ????不同于之前對于長尾分布研究方法,我們從“the value of labels”,即這些本身就不平衡的數據標簽具有的“價值”這一思路去考慮。與理想情況下平衡的標簽不同,這些不平衡的數據標簽存在一個非常有趣的dilemma。

    ????一方面,這些標簽提供了非常珍貴的監督信息。有監督的學習通常都比無監督的學習在給定任務上具有更高準確性,因此即使不平衡,這些標簽也擁有“正面價值”。但是另一方面,由于標簽非常不平衡,訓練模型的過程中可以非常自然的強加上label bias,從而使得最后的決策區域很大程度上被major class影響;這樣的結果又證明了不平衡標簽的“負面價值”。作為總結,在不平衡的訓練集中,這些標簽就像一把雙刃劍;想要得到更好的結果,一個非常重要的問題就是如何最大程度的利用不平衡標簽的“價值”?

    ????于是,我們嘗試系統性的分解并且分別分析上述兩種不同的角度。我們的結論表明對于正面的和負面的角度,不平衡標簽的價值都可被充分利用,從而極大的提高最后分類器的準確性:

    • 從正面價值的角度,我們發現當有更多的無標簽數據時,這些不平衡的標簽提供了稀缺的監督信息。通過利用這些信息,我們可以結合半監督學習去顯著的提高最后的分類結果,即使無標簽數據也存在長尾分布。

    • 從負面價值的角度,我們證明了不平衡標簽并非在所有情況下都是有用的。標簽的不平衡大概率會產生label bias。因此在訓練中,我們首先想到“拋棄”標簽的信息,通過自監督的學習方式先去學到好的起始表示形式。我們的結果表面通過這樣的自監督預訓練方式得到的模型也能夠有效的提高分類的準確性。

    3. 半監督框架下的不均衡學習

    ????我們首先從半監督的不均衡學習說起,通過一個簡單的理論模型分析來建立直觀的解釋(省去了許多細節;可以直接跳到解釋部分),之后展示一些有意思的實驗結果。

    那么直觀理解,對于這樣一個toy example,這個定理告訴了我們以下兩點很有意思的結論:

  • 原始數據集的不平衡性會影響我們最后estimator的準確性。

  • 無標簽數據集的不平衡性影響我們能夠得到一個好的estimator的概率。

  • 01半監督的不平衡學習框架

    ????我們的理論發現表明,利用pseudo-label偽標簽(以及訓練數據中的標簽信息)可以有助于不平衡學習;而數據的不平衡程度會影響學習的結果。受此啟發,我們系統地探索了無標記數據的有效性。我們采用最簡單的自訓練(self-training)的半監督學習方法,即對無標記數據生成偽標簽(pseudo-labeling)進而一起訓練。

    ????值得注意的是,除了self-training之外,其他的半監督算法也可以通過僅修改損失函數輕松地并入我們的框架中;同時,由于我們未指定學習策略,因此半監督框架也能很輕易的和現有類別不平衡的算法相結合。

    02實驗

    ????到了激動人心的實驗部分了 :)! 首先說一下實驗的setting --- 我們選擇了人工生成的長尾版本的CIFAR-10和SVHN數據集,因為他們均有天然對應、且數據分布相似的無標記數據:CIFAR-10屬于Tiny-Images數據集,而SVHN本身就有一個extra dataset可用來模擬多余的無標記數據。這部分更加細節的setting請詳見我們的文章;我們也開源了相應的數據供大家使用測試。對于無標記數據,我們也考慮到了其可能的不平衡/長尾分布,并顯式的比較了不同分布的無標記數據的影響。

    ????而具體的實驗結果如下表所示。我們可以清楚看到,利用無標記數據,半監督學習能夠顯著提高最后的分類結果,并且在不同的 (1) 數據集,(2) base學習方法,(3) 標記數據的不平衡比率,(4) 無標記數據的不平衡比率下,都能帶來一致的提升。此外,我們在附錄里還提供了 (5) 不同半監督學習方法的比較,以及不同data amount的ablation study。

    ????最后展示一下定性的實驗結果。我們分別畫出了不使用/使用無標簽數據,在訓練集和測試集上的t-SNE可視化圖。從圖中可以直觀看出,使用未標記數據有助于建模更清晰的類邊界,并促成更好的類間分離,尤其是對于尾類的樣本。這樣的結果也符合我們的直觀理解,對于尾類樣本,其所處區域的數據密度低,模型在學習過程中不能對這些low-density區域很好建模邊界,從而造成模糊性(ambiguity)導致較差的泛化;而無標記數據則能有效提高低密度區域樣本量,加上了更強的regularization使得模型重新更好地建模邊界。

    4.關于半監督不均衡學習的進一步思考

    ????雖然通過半監督學習,模型在不平衡數據上的表現能夠得到顯著的提升,但是半監督學習本身也存在一些實際應用的問題,而這些問題在不平衡學習中可能會被進一步放大。接下來我們通過設計相應實驗來系統地闡述和分析這些情況,并motivate接下來對于不平衡標簽“負面價值”的思考和研究。

    ????首先,無標簽數據與原始數據的相關性對于半監督學習的結果有很大的影響。舉個栗子,對于CIFAR-10(10類分類)來說,獲得的無標簽數據可能并不屬于原本10類中的任何一類(比如高山兀鷲...),這時多余的信息則可能對訓練和結果造成不小影響。為了驗證這一觀點,我們固定無標簽數據和原始訓練數據有相同的不平衡比率,但是通過改變無標簽數據和原始訓練數據的相關性去構造不同的無標簽數據集。從Figure 2中我們可以看出,無標簽數據的相關性需要達到將近60%以上才能過對不平衡學習有正面的幫助。

    ????既然原始訓練數據是不平衡的,能夠采集到的無標簽數據也大概率是極度不平衡的。譬如醫療數據中,你構建了自動診斷某類疾病的數據集,其中正例(患病)很少,只占總體1%,但因為此病得病率就在1%左右,即使大量搜集無標簽數據,其中真正患病數據大概率還是很少。那么,在同時考慮相關性的前提下,如Figure 3所示,我們首先讓無標簽數據集有足夠的相關性(60%),但改變無標簽數據的不平衡比率。這個實驗中,我們固定原始訓練數據的不平衡比率為50。可以看到對于無標簽數據,當無標簽數據過于不平衡(本例中不平衡比率高于50)時,利用無標簽數據反而可能讓結果變得更差。

    ????上述問題在某些特定的實際不平衡學習任務中,可能是非常普遍的。比如醫療/疾病診斷的應用,對于可能獲得的無標記數據,其絕大多數大概率也都是從正常樣本上采集的,這首先造成了數據的不平衡;其次,即使是患病的樣本,也很可能由很多其他混雜因素(confounding factors)導致,而這會降低與本身研究病癥的相關性。因此,在一些很難利用半監督學習的極端情況下,我們需要完全不同的但是也行之有效的方法。非常自然的,我們接下來從不平衡標簽負面價值的角度去入手,闡述另一思路 --- 自監督學習帶來的好處。

    5.自監督框架下的不均衡學習

    ????同樣地,我們首先通過一個簡單的理論模型分析來直觀理解自監督對不平衡學習所帶來的影響(同樣也可以直接跳到解釋部分),之后展示有意思的實驗結果,以及總結思考。

    ????同樣的,我們嘗試直觀的解釋這個定理的意義。我們發現在這樣簡單的情況下,如果通過一個好的self-supervised task學習到了有用的表達形式,我們能得到:

  • 有很高的概率,我們能得到一個更好的分類器。這個分類器的error probability隨數據維度??的增加而指數型減小。對于如今常見的高維數據(如圖像)這種性質是我們希望得到的。

  • 訓練數據的不平衡性會影響我們能夠得到這樣一個好的分類器的概率。

  • 01自監督的不平衡學習框架樂

    ????為利用自監督來克服固有的“label bias”,我們提出在長尾學習的第一階段先放棄標簽信息,并進行自監督預訓練(self-supervised pre-training,SSP)。此過程旨在從不平衡數據集中學到更好的、與標簽無關的初始化特征信息。在此階段后,我們可以使用任何標準的訓練方法,去訓練得到最終的模型。由于預訓練與正常訓練階段所采用的學習方法無關,因此這種策略可與任何現有的不平衡學習算法兼容。一旦自監督產生良好的初始化,網絡就可以從預訓練任務中受益,并最終學習到更通用的表示形式。

    02實驗

    ????那么又一次到了激動人心的實驗部分 ;) 這次由于不需要額外數據,我們除了在長尾的CIFAR-10/100上驗證算法,也在大型數據集ImageNet的長尾版本,以及一個真實的大型長尾數據集iNaturalist[7]上進行測試,并和相應state-of-the-art對比。對于自監督算法,我們采用了經典的Rotation prediction[19]和最新的對比學習方法MoCo[20]。在Appendix里我們也提供了更多ablation study,比較了4種不同自監督方法的效果,以及不同的Imbalance Type。

    ????具體實驗結果如以下兩表格所示。一言以蔽之,使用SSP能夠對不同的 (1) 數據集,(2) 不平衡比率,以及 (3) 不同的基礎訓練算法,都帶來了一致的、肉眼可見的提升,并且在不同數據集上都超過了之前最優的長尾分類算法。

    ????最后同樣展示一下自監督下的定性實驗結果。與之前一樣,我們分別畫出了訓練和測試集的特征t-SNE投影。從圖中不難發現,正常CE訓練的決策邊界會很大程度被頭類樣本改變,從而導致在(平衡的)測試集中尾類樣本的大量“泄漏”,無法很好泛化。相比之下,使用SSP可以保持清晰的分離效果,并減少尾類樣本的泄漏,尤其是在相鄰的頭類和尾類之間。這樣的結果同樣也能直觀理解:自監督學習通過額外的task來約束學習過程,對數據空間的結構學習的更完整、提取的信息更全面,相比不平衡的標簽信息帶來的語義信息的不平衡,其能有效減輕網絡對高層語義特征的依賴,以及對尾部數據的過擬合,學到的特征表示會更魯棒易泛化,從而在下游任務中表現更好。

    6.結語

    ????最后總結一下本文,我們首次通過半監督和自監督這兩個不同的viewpoint去嘗試理解和利用不平衡的數據(標簽),并且驗證了這兩種框架均能提升類別不均衡的長尾學習問題。我個人還是挺喜歡這篇文章的,有很直觀的理論分析與解釋,以及用非常簡潔并且通用的框架去提升長尾分布下的學習任務。拿一位給我們很高分數的reviewer的原話,“The results could be of interest to even broader area of different applications”,即不只是局限于文中做的幾個academic datasets,而對于現實中許多常見的imbalance或long-tail的任務,都是能即插即用,或是對如何有效收集無標簽數據提供一些insight的。

    ????當然,宣傳歸宣傳,我們的工作還是存在其局限性。雖然我們考慮到了無標簽數據的不平衡性,但是對于半監督(或是自監督)的算法本身,并沒有整合不平衡學習的策略,而是直接使用了vanilla的算法。其次,如我們標題所帶詞語“improving”所示,我們能提升現有的最優算法,但長尾問題本身仍未完全解決,甚至還有很大的提升空間。希望本文能拋磚引玉,也非常歡迎大家follow我們的工作!


    ?參考資料

  • abYin Cui, Menglin Jia, Tsung-Yi Lin, Yang Song, and Serge Belongie. Class-balanced loss based on effective number of samples. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages 9268–9277, 2019.

  • Tsung-Yi Lin, Priya Goyal, Ross Girshick, Kaiming He, and Piotr Dollár. Focal loss for dense object detection. In ICCV, pages 2980–2988, 2017.

  • abSamira Pouyanfar, et al. Dynamic sampling in convolutional neural networks for imbalanced data classification.

  • abLearning Imbalanced Datasets with Label-Distribution-Aware Margin Loss. NeurIPS, 2019.

  • abBBN: Bilateral-Branch Network with Cumulative Learning for Long-Tailed Visual Recognition. CVPR, 2020.

  • abDecoupling representation and classifier for long-tailed recognition. ICLR, 2020.

  • abiNatrualist 2018 competition dataset.? https://github.com/visipedia/inat_comp/tree/master/2018

  • He, H. and Garcia, E. A. Learning from imbalanced data. TKDE, 2008.

  • Chawla, N. V., et al. SMOTE: synthetic minority oversampling technique. JAIR, 2002.

  • mixup: Beyond Empirical Risk Minimization. ICLR 2018.

  • H. Chou et al. Remix: Rebalanced Mixup. 2020.

  • Deep Imbalanced Learning for Face Recognition and Attribute Prediction. TPAMI, 2019.

  • Large-scale long-tailed recognition in an open world. CVPR, 2019.

  • Feature transfer learning for face recognition with under-represented data. CVPR, 2019.

  • Range Loss for Deep Face Recognition with Long-Tail. CVPR, 2017.

  • Learning Deep Representation for Imbalanced Classification. CVPR, 2016.

  • Meta-Weight-Net: Learning an Explicit Mapping For Sample Weighting. NeurIPS, 2019.

  • Rethinking Class-Balanced Methods for Long-Tailed Recognition from a Domain Adaptation Perspective. CVPR, 2020.

  • Spyros Gidaris, Praveer Singh, and Nikos Komodakis. Unsupervised representation learning by predicting image rotations. arXiv preprint arXiv:1803.07728, 2018.

  • https://zhuanlan.zhihu.com/p/259710601

  • Kaiming He, Haoqi Fan, Yuxin Wu, Saining Xie, and Ross Girshick. Momentum contrast for unsupervised visual representation learning. arXiv preprint arXiv:1911.05722, 2019.

  • Paper:https://arxiv.org/pdf/2006.07529.pdf

  • code:https://github.com/YyzHarry/imbalanced-semi-self

  • project:https://www.mit.edu/~yuzhe/imbalanced-semi-self.html

  • 總結

    以上是生活随笔為你收集整理的【长尾分布】用半监督或自监督解决的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。