Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Class Imbalanced に対するアプローチ Striking the Right Balance with Uncertainty @CVPR2019網羅的サーベイ報告会

cfiken
September 19, 2019

Class Imbalanced に対するアプローチ Striking the Right Balance with Uncertainty @CVPR2019網羅的サーベイ報告会

CVPR2019 網羅的サーベイ報告会 https://cvpr2019-survey.studio.design/ で、下記論文の紹介枠として発表しました。
Striking the Right Balance with Uncertainty
https://arxiv.org/abs/1901.07590
Class Imbalanced 問題へのアプローチ紹介として発表ではカットしましたが、他の研究論文もいくつか紹介しています。

cfiken

September 19, 2019
Tweet

More Decks by cfiken

Other Decks in Research

Transcript

  1. CVPR 2019 Class Imbalance 論文紹介 Striking the Right Balance with

    Uncertainty S. Khan et al. 2019/09/19 Kentaro Nakanishi @cfiken
  2. 本日の発表内容 • Striking the Right Balance with Uncertainty (S. Khan

    et al., CVPR 2019) [1] ◦ Class Imbalanced な問題に対する新しいアプローチ ◦ 他のアプローチも紹介 • 目次 ◦ Class Imbalanced Problem ◦ Max-Margin Loss 既存研究 ◦ CVPR 2019 で発表された研究 ◦ その他の研究 ◦ まとめ
  3. Class Imbalance Problem • Imbalanced なタスクの例 ◦ 医療画像診断 ▪ 正例(陽性データ)が少ない

    ◦ 顔認識 ▪ ターゲットによってサンプル数が異なる ▪ long-tail distribution とも
  4. • re-sampling ◦ データの分布を調整する ▪ undersampling / oversampling ◦ うまく最適化するのは難しい

    ▪ 情報損失 / 過学習 してしまう • cost-sensitive loss function ◦ 損失関数を改良することでうまく学習する ◦ 今回はこっちがメイン Class Imbalanced に対するアプローチ
  5. Cost-sensitive Loss Function • Class-Weighted ◦ クラス毎のサンプル数で割るなど、minority クラス の loss

    を相対的に大きくする • Sample-Weighted ◦ focal loss: 簡単な(正解の確信度が高い)サンプルは loss を相対的に小さくする [2] • Max-Margin ◦ loss にマージン制約を加えることで、クラス内分散 を小さく、クラス間距離を大きくするよう学習する ◦ 距離学習・表現学習とも見られる
  6. 準備: 通常の Softmax Cross Entropy Loss • モデルの出力(logits)を p’ とすると分類確率

    p は、 • Cross Entropy Loss は下記となる (y は正解 index)。 Max-Margin Loss Function 準備
  7. L-Softmax [3] / SphereFace [4] angular 空間でのマージンを提案 • 元の Loss

    • 提案 Loss: 正解クラスのみマージンを付加 正解クラスだけ と置き換えている
  8. CVPR 2019: Class Imbalance Problem • ArcFace: Additive Angular Margin

    Loss for Deep Face Recognition, J. Deng et al. [7] • Striking the Right Balance with Uncertainty, S. Khan et al. [1] • Class-Balanced Loss Based on Effective Number of Samples, Y. Cui et al. [8] • AdaptiveFace: Adaptive Margin and Sampling for Face Recognition, H. Liu et al. [9] • UniformFace: Learning Deep Equidistributed Representation for Face Recognition, Y. Duana et al. [10] • Unequal-training for Deep Face Recognition with Long-tailed Noisy Data, Y. Zhong et al. [11]
  9. ArcFace [7] マージンを angular 空間で付加 • angular に対してマージンを付加 (分かりやすくなった) •

    実装や最適化も簡単、かつ性能も改善 • SphereFace, ArcFace, CosFace は次で表現できる m1: SphereFace, m2: ArcFace, m3: CosFace
  10. ArcFace [7] Softmax, SphereFace, CosFace との違い • Softmax だとマージンがない •

    SphereFace だと θ が小さい時にマージンが消える • CosFace だと angular に対してマージンが非線形に 図: [7] Fig. 5 より、二値分類の場合のクラス境界
  11. ArcFace [7] 実験結果 • 安定して SphereFace, CosFace を上回る • SphereFace,

    CosFace も同時に入れて実験したもの の、ArcFace のみと変わらず ◦ (右表の CM が同時版)
  12. Striking the Right Balance with Uncertainty [1] モチベーション: マージンに不確実性を考慮したい •

    Class-Level: 不確実性の高いクラスに大きいマージン • Sample-Level: サンプルの分布の二次モーメントを考慮 図: [1] Fig. 1 より、点線が通常の Softmax, 実線が提案手法
  13. Striking the Right Balance with Uncertainty [1] 変更点 (L-Softmax/SphereFace) •

    L-Softmax での正解クラス • 提案手法 ハイパーパラメータ クラスの不確実性によるマージン サンプルの不確実性によるペナルティ ※ こちらも実際はθの値によって単調減少関数にするための補正が入ります
  14. Striking the Right Balance with Uncertainty [1] クラスの不確実性の推定 • Dropout

    を含むネットワークはガウス過程に近似でき る (Y. Gal and Z. Ghahramani, 2016)[12] • Dropout によるアンサンブルモデル空間   からネット ワークを N回サンプリング ◦ ある入力  に対して N個の出力   が得られる ◦ これについて1次モーメント、2次モーメントを推定
  15. Striking the Right Balance with Uncertainty [1] クラスの不確実性によるマージン • 得られた分散からクラスごとのマージンを設定

    • 分散が大きい: マージンが大きくなる = より厳しく分類 • 分散が小さい: マージンが小さくなる = よりゆるく分類 図: [1] Fig. 1 (a) より、 imbalanced な分布とクラス境界
  16. Striking the Right Balance with Uncertainty [1] 変更点 (L-Softmax/SphereFace) •

    L-Softmax での正解クラス • 提案手法 ハイパーパラメータ クラスの不確実性によるマージン サンプルの不確実性によるペナルティ ※ こちらも実際はθの値によって単調減少関数にするための補正が入ります
  17. Striking the Right Balance with Uncertainty [1] サンプルの不確実性の推定 • サンプルの分布から誤分類する確率を計算する

    •        と仮定して、次のように誤差を定義 • この誤差が正なら誤分類していることに • 定義した誤差は次の平均・分散を持つ正規分布に従う
  18. Striking the Right Balance with Uncertainty [1] サンプルの不確実性の推定 • 誤分類となる確率は次の上側確率を計算すれば良い

    • は正規分布に従うことから、これは変形の上で誤差 関数を用いて計算できる
  19. Striking the Right Balance with Uncertainty [1] 実験結果 • 顔認識、皮膚病変検出、Attribute

    予測、MNIST, CIFAR-10 のタスクでベースラインモデルと比較 ◦ 既存手法 (CosFace など) よりも平均的に良い結果に ◦ 詳細は割愛 • 既存手法と組み合わせ (CIFAR-10) 表: [1] Table 7 より
  20. Striking the Right Balance with Uncertainty [1] いくつかわからない点がちらほら • 二次モーメントの計算に出てくる

    τ が何か分からない ◦ model presicion (function of weight decay) と書 かれているが... • サンプルの誤分類率の計算で、w_j をどうやって選んで いるのか分からない ◦ 一番大きいもの? 全ての和? • 実験詳細の一部で m=3 を使うと書かれているが、m は 不確実性に基づいて決めるのではないのか ◦ 既存手法の話?
  21. Class-Balanced Loss (Effective Number) [8] モチベーション • Loss にクラスごとの重みをいい感じに与えたい 単純にサンプル数の逆数で

    重み付けすると、マイノリティ 側に偏りすぎる問題がある 図: [8] Fig.1 より 赤: 通常のロスによる決定境界 黒: サンプル数の逆数の重みによる決定境界 青: 提案手法
  22. Class-Balanced Loss (Effective Number) [8] 提案手法: サンプル数ではなく有効数を定義して重み付け • クラスごとのデータの有効数を定義 ◦

    サンプルを点ではなく単位体積を持った領域と見る ◦ あるクラスのサンプルで構成される空間の体積を N とすると、有効数は • 実際には N の値は分からないので、ハイパーパラメー タとして β を設定する (0.9, 0.99, 0.999, ...)
  23. Class-Balanced Loss (Effective Number) [8] 実験結果 • Long-Tailed CIFAR 10/100

    で実験 • 上段が通常の Loss, 下段が提案 Loss とベストケースの ハイパーパラメータ • 全てで提案手法の重みを加えたほうが良い結果に
  24. UniformFace [10] 各クラスが均一に広がるような制約を追加 • CosFace などで各クラスの表現はうまく学習できる が、特徴空間全体をうまく使えていない ◦ アンバランスだったり局所性があったりする •

    代表ベクトルが均一に広がるような損失関数である UniformLoss を提案 図: [10] Fig. 1 より。SphereFace に UniformFace を適用 した例の 2D と 3D をプロットしたもの。UniformFace の方 が均一に空間上に広がっているのが分かる。
  25. UniformFace [10] UniformLoss • 各クラスの代表ベクトルを単位量の電荷と考える • 全電荷の位置エネルギーの和を UniformLoss とし、最 小化問題を解く

    • 既存手法に混ぜることで微妙に性能改善 図: [10] Fig. 2 より、左図の状態からエネル ギーが最小となるように最適化する
  26. AdaptiveFace [9] マージンもパラメータにしつつサンプリングも工夫 • CosFace などのマージン手法で imbalanced に対応 • Adaptive

    Margin Softmax ◦ マージン m を各クラスごとに持つパラメータ化 ◦ CNN と同時に学習する • サンプリング方法も工夫 ◦ Adaptive Data Sampling ▪ 分類レイヤーの結果からサンプリング確率を変更 ◦ HardPrototypeMining 図: [9] Fig. 4 より、 C1 が minority, C2 が majority クラスの 場合の、CosFace, ArcFace に対し て Adaptive 適用した例。濃い青が サンプルに基づく境界、薄い青が真 のクラス境界。
  27. Affinity Loss [13] モチベーション • 既存手法は超球面上に制限し、angular 空間上の距離に よって分類を行っている ◦ 結果的に汎化性能を失っている

    • ガウスカーネルで類似度を定義し、ロスを設計 σ は分布の広がりを制御するハイパーパラメータ
  28. Affinity Loss [13] 実験結果 • 特徴レイヤを2次元にしてプロット • 他の実験でも多くで SoTA を記録

    ◦ DIL では Striking ~ の方が良い性能だった 図: [13] Fig. 2 より、imbalanced MNIST で実験、右が提案手法
  29. Affinity Loss [13] Multi-Centered Learning • 代表ベクトルが1つだと、複雑な形状の分布で辛い • 複数の代表ベクトルを持つことでこれに対応 ◦

    類似度の計算は代表ベクトル集合の max をとる • これによりラベルノイズにもロバストに
  30. まとめ • Class Imbalanced な問題へのアプローチとして、 Max-Margin Loss Function がある •

    CosFace, ArcFace など、顔認識の分野で簡単に距離学 習ができると流行 • 最近では ArcFace などの距離学習に更に Imbalanced な問題のための改善を加えたものが出てきている ◦ Striking the Right Balance with Uncertainty ◦ AdaptiveFace ◦ Affinity Loss • [IMO] 結局何使えばいいの? に対しては、今はとりあ えず簡単なので ArcFace が良さそう
  31. Reference [1] Striking the Right Balance with Uncertainty, S. Khan

    et al., CVPR 2019, https://arxiv.org/abs/1901.07590 [2] Focal Loss for Dense Object Detection, T. Lin et al., CVPR 2017, https://arxiv.org/abs/1708.02002 [3] Large-Margin Softmax Loss for Convolutional Neural Networks, W. Liu et al., ICML 2016, https://arxiv.org/abs/1612.02295 [4] SphereFace: Deep Hypersphere Embedding for Face Recognition, W. Liu et al., CVPR 2017, https://arxiv.org/abs/1704.08063 [5] CosFace: Large Margin Cosine Loss for Deep Face Recognition, H. Wang et al., CVPR 2018, https://arxiv.org/abs/1801.09414 [6] Additive Margin Softmax for Face Verification, F. Wang et al., Signal Processing Letters 2018, https://arxiv.org/abs/1801.05599 [7] ArcFace: Additive Angular Margin Loss for Deep Face Recognition, J. Deng et al., CVPR 2019, https://arxiv.org/abs/1801.07698 [8] Class-Balanced Loss Based on Effective Number of Samples, Y. Cui et al., CVPR 2019, https://arxiv.org/abs/1901.05555 [9] AdaptiveFace: Adaptive Margin and Sampling for Face Recognition, H. Liu et al., CVPR 2019 [10] UniformFace: Learning Deep Equidistributed Representation for Face Recognition, Y. Duana et al., CVPR 2019 [11] Unequal-training for Deep Face Recognition with Long-tailed Noisy Data, Y. Zhong et al., CVPR 2019 [12] Dropout as a bayesian approximation: Representing model uncertainty in deep learning, Y. Gal and Z. Ghahramani, ICML 2016, https://arxiv.org/abs/1506.02142 [13] Max-margin Class Imbalanced Learning with Gaussian Affinity, M. Hayat et al., https://arxiv.org/abs/1901.07711
  32. Face Verification (LFW, YTF) 49 • 顔認識タスク • 他のデータやアンサンブル モデルを使った手法,

    Metric 系など新しい損失関 数を使った手法, Imbalanced Learning のた めの手法それぞれと比較。 • 既に accuracy では多くで saturate 気味ではあるが, その中でも高い性能に
  33. Skin Lesion Detection (DIL) 50 • 皮膚病変の検出タスク • 1,300枚の画像に10クラス (もしくは5クラス)

    • 各クラス12~331枚と Imbalanced • 既存手法に比べて大きく向上 ◦ 14~15% UP (絶対量)
  34. Attribute Prediction (CelebA) 51 • セレブ写真から Attribute 予測 • 中央線より左が普通の手法,

    右が Class Imbalanced タスクのための手 法, 一番右が提案手法 • 下に行くほど Imbalanced なクラス • Imbalanced なクラスなほどよい性能, 平均でも SOTA レベルに
  35. Other Loss + Uncertainty (CIFAR10) 52 • Imbalanced CIFAR10 にマージン系損失の既存手法を適用

    • 既存手法のマージン m を Uncertainty ベースのものに修正 • 上記二種類を比較実験し、既存手法に Uncertainty を導入 することで性能向上を確認できた