O slideshow foi denunciado.
Seu SlideShare está sendo baixado. ×

Noisy Labels と戦う深層学習

Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio

Confira estes a seguir

1 de 22 Anúncio
Anúncio

Mais Conteúdo rRelacionado

Mais recentes (20)

Anúncio

Noisy Labels と戦う深層学習

  1. 1. 2022.08.04 洪 嘉源 株式会社 Mobility Technologies Noisy Labels と戦う深層学習
  2. 2. ▪ 教師あり深層学習で分類タスクを解く時の、データセット中のNoisy Labels 問題について紹介する ▪ この分野で取り扱っているNoise の種類 ▪ Noisy Labels問題に対する主流なアプローチ ▪ 一部論文の手法の紹介 ▪ 参考にしたサーベイ論文 ▪ Learning from Noisy Labels with Deep Neural Networks: A Survey[1], Hwanjun Song, Minseok Kim, Dongmin Park, Yooju Shin, Jae-Gil Lee ▪ https://github.com/songhwanjun/Awesome-Noisy-Labels 2 本資料について
  3. 3. ▪ 教師あり学習ではラベルが付いたデータセットが必要 ▪ 人手でラベル付けをするか、text/image search で画像を集めるか、完全に間 違いなくcleanなデータセットを作るのは難しい ▪ 深層ニューラルネットワーク(DNN) はノイズのあるデータセットを学習する 時、Noisy Labels にoverfit しやすく、モデルの汎化性能が落ちる 3 Noisy Labels
  4. 4. ▪ Instance-independent Label Noise (Class-conditional Noise, CCN) ▪ ノイズはdata feature とは独立であり、noisy label になる確率はtrue label のクラスのみに依存する ▪ 多くの手法はこの仮定に基づいている ▪ 一般的に、noisy label 𝑦 になる確率は、noise transition matrix で表現する T ∈ 0,1 𝑐×𝑐 , 𝑤ℎ𝑒𝑟𝑒 𝑇𝑖𝑗 ≔ 𝑝(𝑦 = 𝑗|𝑦 = 𝑖) ▪ 各class間の関係でさらに下記の分類がある ▪ Symmetric/ Uniform noise:全てのクラスが同じの確率で誤ったラベルを付ける ▪ Pair/ Asymmetric noise:二つ特定のクラスのペアの間だけ誤ったラベルを付ける ▪ Tri/ Column/ Block-diagonal noise:三つ以上特定のクラスの間だけ誤ったラベル を付ける 4 ノイズの種類
  5. 5. ▪ Instance-dependent Label Noise (IDN) ▪ ノイズはdata featureとtrue labelに依存する ▪ 現実のnoisy label はこちらのパターンに近い ▪ noisy label 𝑦 になる確率は下記で表現する 𝜌𝑖𝑗 𝑥 = 𝑝(𝑦 = 𝑗|𝑦 = 𝑖, 𝑥) 5 ノイズの種類 上記画像の真ラベルは猫であっても、 1枚目はより犬に間違えやすい。
  6. 6. ▪ 現在主流の手法は主に下記のカテゴリに分類できる 1. Robust Architecture 2. Robust Loss Function 3. Loss Adjustment 4. Robust Regularization 5. Sample Selection 6 深層学習でnoisy labelsに対抗する手法
  7. 7. ▪ DNNの構造を改造し、noisy labelに対する汎化能力を向上する ▪ 基本的な流れ 1. noise transition matrixをモデリングする 2. noise transition matrixをベースに、noisy labelを処理する特殊なlayerを追 加もしくはnetwork全体を改造して、noisy labelのデータセットを学習する 3. (optional) 推論時にそれらの構造を外す or 別のブランチで出力する ▪ 備考 1. 基本的にはinstance-independent label noiseしか対応できていない 2. DNNの構造を改造後、他のモデル構造に拡張するのは難しい 7 Robust Architecture
  8. 8. ▪ 新たなLoss Functionを設計してロバスト性を保証する ▪ 備考 1. 基本的にクラス数が少ないなど比較的に学習しやすいケースにしか適用できな い 2. 学習の収束には時間がかかる 8 Robust Loss Function
  9. 9. ▪ Categorical Cross Entropy (CCE)は分類タスクで多く使用されているが、 Mean Absolute Error(MAE)の方が noisy labelに対してよりロバスト 1. MAEは平均で全てのサンプルを処理するが、 CEはhard sampleに注目しやすく、noisy labelに傾きやすい[3] 2. しかし、MAEは収束しづらく、精度はCEより低い → この論文では、MAEとCEを合わせて、GCEを提案する ▪ GCE ▪ 𝑞 ∈ 0,1 𝑞 → 0, 𝐺𝐶𝐸 → 𝐶𝐶𝐸, 𝑞 → 1, 𝐺𝐶𝐸 → 𝑀𝐴𝐸 9 [NeurIPS’18] Generalized Cross Entropy (GCE)[2]
  10. 10. ▪ 二つの損失関数を重み付けで新たな損失関数を設計する ▪ Peer Loss 全ての学習サンプル 𝑥𝑖, 𝑦𝑖 に対して、 𝑙𝑝−𝛼 𝑓 𝑥𝑖, 𝑦𝑖 = 𝑙1 𝑓(𝑥𝑖), 𝑦𝑖 − 𝛼𝑙2 𝑓(𝑥𝑖), 𝑦 1. 上式の𝛼はゼロではないハイパーパラメータ 2. 上式の𝑙1, 𝑙2は任意の分類損失関数(例えばCE, MSE, MAE) 3. 上式の 𝑥𝑖, 𝑦 はpeer sampleで、 𝑦 はランダムで学習セットから サンプリングするラベル 4. 前項は通常の分類ロスでpositive learningして、 後項はnegative learningと似ている効果がある 5. noisy labelのデータセットに対して、 両者合わせて訓練する方がる統計上最優になるため、性能が向上する 10 [ICML’20] Peer Loss[4]
  11. 11. ▪ DNNをアップデートする前に、学習サンプルの損失を調整することで、 noisy labelの悪影響を低減する手法 ▪ 一般的には下記アプローチがある 1. Loss Correction noise transition matrixを予測し、損失を修正する 2. Loss Reweighting 損失を計算時に異なるサンプルへの重み付けを行う 3. Label Refurbishment labelを予測しながら修正し、損失を調整する 4. Meta Learning loss adjustmentの最適化ルールを推論する手法 11 Loss Adjustment
  12. 12. ▪ 備考 1. Loss Correction → 基本的にはinstance-independent label noiseしか対応できていない、 noise transition matrixの予測の正確さに依存する 2. Loss Reweighting →ハイパーパラメータの調整が難しく、実応用しづらい 3. Label Refurbishment → 修正したラベルが間違ったらそれにoverfitしやすい 4. Meta Learning → 補助的なclean datasetが必要、コストが比較的に高い 12 Loss Adjustment
  13. 13. ▪ 多くの研究ではClass-Conditional Noise(CCN)を前提として行うが、 この論文では主にInstance Dependent Noise(IDN)を解決するために提案した ▪ IDNとCCNの学習の違いについて分析した 1. 同じnoise割合の場合、IDNの方はよりoverfitしやすい 2. IDNでは、CCNより記憶効果(Memorization Effect)の影響が少ない ※ 記憶効果: DNNは先にデータの中の簡単なパターンを学習し、 後にハードなパターンやノイズを学習する 3. IDNでは、epochの増加に伴い、 DNNがnoisy labelへの予測確率 が上昇し、振動し続ける。振動発生 の時間や強度はinstanceごとに異なる ※ 振動というのは、epoch増加に伴い予測確率変化 のブレ 13 [AAAI’21] SEAL[5]
  14. 14. ▪ Self-evolution Average Label (SEAL) ▪ DNNの学習中、epoch毎に各サンプルのsoftmax出力を記録し、 それらの平均を計算し、新たなsoft labelsとして再度学習する 14 [AAAI’21] SEAL
  15. 15. ▪ 正則化(regularization)は、モデルの汎化性能を向上するための広く使われた手法 ▪ 一般的な正則化手法として、data augmentation, weight decay, drop out, batch normalizationなどは、ある程度noisy label datasetの問題を解決できるが、 大量なnoiseのある datasetでは足りない → より高度な正則化の手法が研究される ▪ 備考 1. data augmentation のような暗黙な正則化手法では、 feature spaceが拡張するため学習時に収束が遅い 2. dropout, weight decay のような明示的な正則化手法では、 多くの手法ではセンシティブなモデル依存のハイパラを導入する ため、チューニングしづらい 15 Robust Regularization
  16. 16. ▪ Noise labelは2種類 1. Close-set Noisy Label: noisy labelは学習対象のラベル集合にある 2. Open-set Noisy Label: noisy labelは学習対象のラベル集合にない ▪ Open-set noiseを学習に入れることで、正則化の効果があり、ロバスト性を向上する ▪ DNNの構造が一定の時、「記憶」の容量は一定で、学習データを増やすと、 全てのデータを覚えるのは難しいため、overfitが避けられる ▪ 学習データが足りないとき、 動的にOpen-set noiseを追加することによって、 モデルの表現能力を消耗して、inherent noises(他の学習クラスに誤ラベル付 けしたノイズ)へのoverfitを低下させる ▪ この手法は、cleanなデータセット での効果はほぼない 16 [NeurIPS’21] ODNL[6]
  17. 17. ▪ 訓練中noisy label dataset から真ラベルを選んで学習する手法 ▪ 主に下記のアプローチで真ラベルを選出する 1. Multi-network learning 複数なネットワークの共同学習の手法 2. Multi-round learning 学習roundを重複する手法 3. Hybrid approach 複数のテクニックを利用する半教師ありの手法 ▪ 備考 1. 学習コストが比較的に高い 17 Sample Selection
  18. 18. ▪ 理論: 1. (CCNでは)記憶効果(Memorization Effect)があるため、 DNNは先にclean labelのeasy samplesを学習し、後にnoisy labelのhard samplesを学習する → DNNの訓練の初期ではclean/noisy labelを区別する 2. Clean labelのsampleの損失が低い ▪ Co –teaching ▪ 二つのDNNを同時に学習して、一つのDNNで小さい損失のサンプルを clean labelのサンプルとしてselectして、もう一つのDNNに学習させる 18 [NeurIPS’18] Co-teaching[7]
  19. 19. ▪ 損失が大きいなデータは、誤ラベル付けのノイズ以外にも、cleanですがhard(正しい が認識が難しい)のデータの可能性もある ▪ Combats Noisy Labels by Concerning Uncertainty(CNLCU) 1. 数roundの学習を行う、各サンプルの損失の平均を計算し、 sample selectionの指標とする 2. soft truncation と hard truncation の二つの手法で平均を計算する (外れ値を除外する) 3. 二つのDNNが同時に学習して、片方で損失の 平均が小さいサンプルは、もう一つ のDNNに学習させる 19 [ICLR’22] CNLCU[8]
  20. 20. ▪ 主に六つの視点から比較する Flexibility:様々な構造のネットワークに適用できるか ▪ No Pre-train: pre-trainedのモデルが必要か Full Exploration: 全ての真データ(特にclean hard sample)も学習できたか No Supervision: 補助のclean datasetもしくはノイズ率が必要か Heavy Noise: 高ノイズ率のデータセットも対応できるか Complex Noise: いろんなタイプのノイズも対応できるか 20 手法の比較
  21. 21. ▪ 完全にnoisy labelを取り除くことができないが、悪影響を低減するこ とができる ▪ Noisy labelの学習データセットのnoisy labelのパターンを正しく認識 し、適切な手法を選択することが重要 21 まとめ
  22. 22. [1] Hwanjun Song, Minseok Kim, Dongmin Park, Yooju Shin, Jae-Gil Lee, “Learning from Noisy Labels with Deep Neural Networks: A Survey”, TNNLS journal [2] Z. Zhang and M. Sabuncu, “Generalized cross entropy loss for training deep neural networks with noisy labels,” in Proc. NeurIPS, 2018, pp. 8778–8788. [3] A. Ghosh, H. Kumar, and P. Sastry, “Robust loss functions under label noise for deep neural networks,” in Proc. AAAI, 2017. [4] Yang Liu, Hongyi Guo, “Peer Loss Functions: Learning from Noisy Labels without Knowing Noise Rates”, in Proc. ICML, 2020. [5] P. Chen, J. Ye, G. Chen, J. Zhao, and P.-A. Heng, “Beyond class-conditional assumption: A primary attempt to combat instancedependent label noise,” in Proc. AAAI, 2021. [6] H. Wei, L. Tao, R. Xie, and B. An, “Open-set label noise can improve robustness against inherent label noise,” in Proc. NeurIPS, 2021. [7] B. Han, Q. Yao, X. Yu, G. Niu, M. Xu, W. Hu, I. Tsang, and M. Sugiyama, “Co-teaching: Robust training of deep neural networks with extremely noisy labels,” in Proc. NeurIPS, 2018, pp. 8527–8537. [8] Xiaobo Xia, Tongliang Liu, Bo Han, Mingming Gong, Jun Yu, Gang Niu, Masashi Sugiyama, “Sample Selection with Uncertainty of Losses for Learning with Noisy Labels”, ,” in Proc. ICLR, 2022 22 reference

Notas do Editor

  • Noisy Labels とは

×