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

[Journal club] Prototypical Contrastive Learning of Unsupervised Representations

[Journal club] Prototypical Contrastive Learning of Unsupervised Representations

More Decks by Semantic Machine Intelligence Lab., Keio Univ.

Other Decks in Technology

Transcript

  1. Prototypical Contrastive Learning of Unsupervised Representations Junnan Li, Pan Zhou,

    Caiming Xiong, Steven C.H. Hoi (Salesforce Research) Li, Pan Zhou, Caiming Xiong and Steven C. H. Hoi. Prototypical Contrastive Learning of Unsupervised Representations, ICLR2021 慶應義塾⼤学 杉浦孔明研究室 和⽥唯我 ICLR 2021
    和田唯我 / Yuiga Wada
  2. 概要 2 ü 教師なし表現学習⼿法 Prototypical Contrastive Learning (PCL) を提案 ü

    EM-algorithmに基づき, プロトタイプを基準とした損失 ProtoNCE Loss を提案 ü 様々な画像認識タスクで既存⼿法を超える結果を記録
  3. 背景: Instance-wiseな対照学習は, 本質的な意味情報を獲得できない 3 o Instance-wiseな教師なし表現学習 • 加⼯された画像(instance)のペアが同じ元画像に由来するかを識別 o Instance-wiseな⼿法における2つの問題点

    1. 低次元の特徴だけで識別できるため,識別はNNにとって簡単なタスク ⇒ ⾼密度な情報をエンコードしているとは⾔い難い 2. ペア間の類似度が⾼くても, 負例は負例として扱う ⇒ 負例ペアにおける類似性についての 意味情報は獲得できない
  4. 既存⼿法: 対照学習⼿法には改善の余地がある 4 既存⼿法 種類 問題点 • SimCLR[Chen+, ICML20] •

    MoCo[He+, CVPR20] Instance-wise Instance-wiseな⼿法であり, 前述の問題点有り • DeepCluster[Caron+, ECCV18] prototype-wise PCAによる次元削減処理を挟む ⇒クラスタリングによる最適化が 直接的でない DeepCluster[Caron+, ECCV18] PCA not good
  5. 提案⼿法: Prototypical Contrastive Learning (PCL) 5 Prototypical Contrastive Learning (PCL)

    • EM-Algorithmに基づき, クラスタリングを⾏いながら特徴表現を学習 1. E-Step : kNN法によるクラスタリングでプロトタイプの事後分布を決定 2. M-Step : 対数尤度の期待値を最⼤化するパラメタを計算 提案⼿法における更新⼿順
  6. EM-Algorithm: PCLでは対数尤度最⼤化のためEMを⽤いる 6 1. E-Step : kNN法によるクラスタリングでプロトタイプの事後分布を決定 2. M-Step :

    対数尤度の期待値を最⼤化するパラメタを計算 提案⼿法における更新⼿順 プロトタイプ 𝒄𝒊 を潜在変数として, 対数尤度を最⼤化するモデルのパラメタ 𝜃 を獲得したい (プロトタイプ : クラスタの重⼼のこと) 提案⼿法の⽬標
  7. 前準備: 最適化における⽬的関数の整理 7 上式を直接求めるのは困難なので, Jensenの不等式より, 最右辺を最⼤化すれば良いので,最右辺からパラメタ 𝜃 依存部だけ取り出した下式 を⽬的関数とする. ただし,

    𝑄 𝐜𝐢 ≔ 𝑝 𝒄𝒊 ; 𝒙𝒊 , 𝜽 (∵ ∑𝑄 𝐜𝐢 = 1 ⇒ − ∑ ∑𝑄 𝐜𝐢 𝑙𝑜𝑔𝑄 𝐜𝐢 は定数)
  8. E-Step: クラスタリングによりプロトタイプの事後分布を決定 8 E-Step • Momentum Encoderの出⼒についてクラスタリングを実⾏ • kNN法によりプロトタイプ 𝒄𝒊

    の事後分布 𝑝 𝒄𝒊; 𝒙𝒊, 𝜽 を決定 Encoderの指数移動平均
  9. M-Step (1/3): 対数尤度を最⼤化するパラメタ 𝜃 を求める 9 M-Step • 対数尤度を最⼤化するパラメタ 𝜃

    を求める • 事前分布を 1/𝑘 とすると, • ⼊⼒ {𝒙𝒊 } がプロトタイプを中⼼に等⽅的に分布してると仮定すると, 𝑝 𝒙𝒊; 𝒄𝒊, 𝜽 は
  10. M-Step (2/3): 対数尤度を最⼤化するパラメタ 𝜃 を求める 10 以上より, 対数尤度を最⼤化するパラメタ 𝜃 は

    (具体的な計算過程は省略) ・ ・ ・
  11. M-Step (3/3): 対数尤度を最⼤化する損失関数を提案 11 M-Step • 対数尤度を最⼤化するパラメタ 𝜃 は 損失に組み込む

    損失関数 ProtoNCE Loss (提案⼿法)
  12. ProtoNCE Lossはインスタンスのペアも損失に⽤いる 12 ProtoNCE Loss ⇒ ProtoNCE Lossはインスタンスのペアも損失に使⽤ InfoNCE Loss[Oord+,

    2018] → MoCoで使⽤される損失関数 instance-wise prototype-wise
  13. 定性的結果: 特徴ごとに適切なクラスタが形成 13 • 各クラスタに属する画像をランダムに選択 ⇒ 教師なし学習にも拘らず, 特徴ごとに適切なクラスタが形成 Cluster X

    Cluster Y
  14. 定量的結果: 画像分類タスクにおいて既存⼿法を上回る結果 14 • ResNet + 線形分類器による画像分類 ⇒ MoCoやSimCLRといった既存⼿法を上回る結果を記録

  15. 定量的結果: 物体検出タスクにおいて既存⼿法を上回る結果 15 • ImageNet-1Mを⽤いた物体検出 ⇒ MoCoによる事前学習や教師あり学習を上回る結果を記録

  16. Ablation: 損失関数はインスタンスのペアも考慮するのが最良 16 • ProtoNCE Lossはinstance-wiseであり, prototype-wiseでもある → 損失を変えて画像分類タスクを実施 ⇒

    ”instance”・”proto”の両者を使うのが最良 instance-wise → “instance” prototype-wise → “proto”
  17. PCL動かしてみた: Encoderの出⼒を線形SVMで⼆値分類 17 o 実験設定 • データセット: PASCAL VOC2007 [Everingham+,

    IJCV10] • Encoderの出⼒ 𝒉 を線形SVMに通し, 各クラスについて⼆値分類 Linear SVM 𝒉 5 𝒚
  18. PCL動かしてみた: 極めて単純なモデルでも⾼精度で画像分類可能に 18 • 全クラスにおいて mAP = 85.45を記録 • 例:

    “airplain”の⼆値分類結果 (全クラスの画像を⼊⼒) → 線形SVMという⾮常に単純なモデルで極めて良い性能を記録 True Positive False Positive
  19. まとめ 19 ü 教師なし表現学習⼿法 Prototypical Contrastive Learning (PCL) を提案 ü

    EM-algorithmに基づき, プロトタイプを基準とした損失 ProtoNCE Loss を提案 • ただし, 純粋にprototype-wiseな損失にすると精度が落ちる ü 様々な画像認識タスクで既存⼿法を超える結果を記録
  20. Appendix: 擬似コード 20

  21. Appendix: t-SNEによる可視化結果 21

  22. Appendix: プロトタイプの種類 22 • クラスタは包含関係を許容する (fine-grained / coarse-grained)