Slide 1

Slide 1 text

第11回全日本コンピュータビジョン勉強会 Presenter:廣岡大吾

Slide 2

Slide 2 text

自己紹介 ● 廣岡大吾 ○ Twitter:dhirooka (@daigo_hirooka) ● 機械学習エンジニア@ BrainPad ● 関心 ○ Deep Learning ○ 機械学習の実用化 ○ ソフトウェアアーキテクチャ 2

Slide 3

Slide 3 text

紹介論文:GroupViT ● セマンティックセグメンテーションを行うモデル ● ピクセル単位ラベルではなく、画像・テキストペアによっ て対照学習を行う ● 認識カテゴリをテキストとして入力できるので、柔軟に認 識カテゴリを設定できる ● 選んだ理由:画像アノテーションに触れる機会があり、効 率化や省力化に興味があったため ● https://github.com/NVlabs/GroupViT 3

Slide 4

Slide 4 text

関連研究 4 トピック 概要 GroupViTでの利用 Vision Transformer (ViT) 画像をパッチに分割し、トークン集合とし て処理するモデルアーキテクチャ Grouping Blockによってトークンを統合 し、セグメンテーションを行う テキスト教師による画 像認識学習 画像・テキストペアによる学習方式。 幅広いカテゴリの認識が可能。 CLIP(後述)が有名 CLIPと同様の学習方式を実施。 幅広いカテゴリの認識が可能 セグメンテーションの学 習 ピクセル単位で画像内の物体を予測する タスク。学習データの作成が大変 Webから収集できる豊富な 画像・テキストペアで学習可能。

Slide 5

Slide 5 text

テキスト教師による画像認識 5

Slide 6

Slide 6 text

CLIP:Contrastive Language-Image Pretraining ● OpenAIから発表された、画像・テキストペアによる画像認識の事前学習手法 ● dog, catなどのラベルではなく、画像・テキストペアを教師として学習する 6 CLIP: Connecting Text and Images

Slide 7

Slide 7 text

CLIPにおける画像・テキストペアによる対照学習 ● 画像・テキストの特徴ベクトルをそれぞれ抽出し、同一ペアは類似度を高く、異なるペアは類似度が低くな るように学習する。(対照学習: Contrastive Learningと呼ばれる) 7 NeRF in the Wild CLIP: Connecting Text and Images

Slide 8

Slide 8 text

CLIPによるゼロショット推論 ● 認識候補カテゴリをテキストとして特徴抽出し、画像特徴ベクトルとの類似度によって分類する ● 学習時に明示的に認識カテゴリを明示することなく、柔軟な認識対象を扱える 8 CLIP: Connecting Text and Images

Slide 9

Slide 9 text

GroupViT: Semantic Segmentation Emerges from Text Supervision 9

Slide 10

Slide 10 text

GroupViT:ポイント ● Grouping Blockによる段階的なトークンのグ ルーピング ● ピクセル単位ラベルではなく、 画像・テキストペアによる対照学習 ● テキスト特徴量との類似度計算による ゼロショット推論(セグメンテーション) 10

Slide 11

Slide 11 text

GroupViT:アーキテクチャ全体像 ①画像のパッチ分割とトークン化 ②Grouping Stageの積層 ③AvgPoolingによる特徴ベクトルの抽出(学習時 のみ) 11 ① ② ③

Slide 12

Slide 12 text

GroupViT:アーキテクチャ全体像 ①画像のパッチ分割とトークン化 ● 画像を16×16のパッチによって分割し、全結合層に よってトークン(特徴ベクトル)とする (一般的なViTと同様) 12 ①

Slide 13

Slide 13 text

GroupViT:アーキテクチャ全体像 ②Grouping Stageの積層 ● Grouping Stage:複数のTransformerレイヤ +Grouping Block ● 右図はGrouping Stage×2の例 13 ②

Slide 14

Slide 14 text

GroupViT:アーキテクチャ全体像 ②Grouping Stageの積層 ● Grouping Stage:複数のTransformerレイヤ +Grouping Block(後述) ● 入力:セグメント・グループトークン ● 出力:セグメントトークン 類似したセグメントトークンを階層的に グルーピングし、画像内の構造を抽出する 14 ②

Slide 15

Slide 15 text

GroupViT:アーキテクチャ全体像 ③AvgPoolingによる特徴ベクトルの抽出 (学習時のみ) ● 入力:グループ数分のセグメントトークン ● 出力:単一の特徴ベクトル 15 ③

Slide 16

Slide 16 text

GroupViT:Grouping Block グループトークンとセグメントトークンのアテンション計算 によって、セグメントトークンをグループ化する ● ①各セグメントトークンとグループの対応行列の計算 ● ②各グループの特徴量(新しいセグメントトークン)の計算 16 ② ①

Slide 17

Slide 17 text

GroupViT:Grouping Block ①各グループとセグメントトークンの対応行列の計算 Gumbel Softmax ● トークンjのグループiへの割り当て確率のモデリング 17 ①

Slide 18

Slide 18 text

GroupViT:Grouping Block ①各グループとセグメントトークンの対応行列の計算 Hard assignment ● グループとセグメントの割り当て確率 Alを0/1の グループ割り当て行列に変換する ● argmax+one-hotは微分不可であるため、実装状の工夫として 上記の定式化を実施 ○ sg:stop gradient処理 18 ①

Slide 19

Slide 19 text

GroupViT:Grouping Block ②各グループの特徴量(新しいセグメントトークン)の計算 ● グループ割り当て行列に基づいてセグメントトークン sl を統合し、新たなセグメントトークン sl+1を得る 19 ②

Slide 20

Slide 20 text

GroupViT:アーキテクチャ全体像 Grouping Stageによってセグメントトークンを統合していくことで、画像の構造を抽出する 20 NeRF in the Wild

Slide 21

Slide 21 text

GroupViT:学習方法 CLIPと同様に、画像・テキストペアの特徴ベクトルを抽出し、正しいペア同士の類似度が高くなるように学習する (対照学習) ● ①Image-Text Contrastive Loss ○ CLIPと同様の対照損失 ● ②Multi-Label Image-Text Contrastive Loss ○ オリジナルのテキストからランダムに名詞を 抽出・生成したテキストによる対照損失 ○ Positive pairを水増しできる ● Total loss:①+② 21 NeRF in the Wild ① ②

Slide 22

Slide 22 text

GroupViT:ゼロショットのセグメンテーション カテゴリ分類と領域割り当てによってセグメンテーションを行う ● カテゴリ分類 ○ セグメントトークンとテキスト特徴ベクトル の類似度に基づいて分類を実施 22 NeRF in the Wild

Slide 23

Slide 23 text

GroupViT:ゼロショットのセグメンテーション 23 カテゴリ分類と領域割り当てによってセグメンテーションを行う ● 領域割り当て ○ 各Grouping Stageのグループ割り当て行列の積 によって、各画像パッチとグループの対応 が得られる

Slide 24

Slide 24 text

実験概要 ● アーキテクチャ ○ Grouping Stageが1,2の2種類のGroupViTを構築 ○ 最終的なグループ数はどちらも 8 ○ テキストエンコーダは CLIPと同じTransformer ● 学習 ○ CC(12M画像・テキストペア)、 YFCC(14Mペア)データセットで学習 ○ ゼロショットセグメンテーションは PASCAL VOC2012、PASCAL Contextデータセットで評価 24

Slide 25

Slide 25 text

実験:hard/soft assignmentの効果 ● Hard assignment(グループ割り当て行列の one-hot化)によってマスク精度向上 ○ →One-hot化によって、グループ間の曖昧性を抑えることができる 25

Slide 26

Slide 26 text

実験:マルチラベル対照損失の効果 ● マルチラベル対照損失の追加によってマスク精度向上 ○ →学習・推論時のpromptの一貫性が貢献したと考えられる ○ ※推論時のprompt:「A picture of a <対象クラス>」 26

Slide 27

Slide 27 text

実験:グループトークン数の効果 ● グループトークンは概ね多いほど優れた認識性能となる ○ それぞれのグループが画像内の個別のカテゴリに対応できている 27

Slide 28

Slide 28 text

実験:マルチステージグルーピングの効果 ● 2stageのグルーピングによって、セグメンテーションの性能向上 ○ 定性的にも、より滑らかなセグメンテーションマスクを予測できている 28

Slide 29

Slide 29 text

実験:既存の事前学習手法との比較 ● 既存のDINO、MoCoなどの自己教師あり →ファインチューニング時の精度よりも、 GroupViTのゼロショット 推論が優れている ○ →テキストによる対照学習がセグメンテーションでも有用 29

Slide 30

Slide 30 text

実験:抽出されたグループの可視化 ● 各グループに対応した領域を可視化 ○ Stage 1:eye, limb ○ Stage 2:grass, body, face ● →階層的なグルーピングによって、細かい概念を 徐々に統合できている 30

Slide 31

Slide 31 text

Limitations:背景カテゴリの認識 ● PASCAL Contextの背景カテゴリ(ground, road, wallなど)は精度が低い(〜 1.5 IoU) ○ グループ自体は統合できているが、分類が失敗する傾向 ○ →背景がテキストとして描写されづらいことに起因すると考えられる。改善の余地あり 31

Slide 32

Slide 32 text

まとめ・感想 ● 画像・テキストペアによって対照学習を行い、ゼロショットのセグメンテーション推論が可能 ○ ピクセル単位の(高コストな)アノテーションが不要 ○ テキストを介してほぼ任意のカテゴリを扱える ● Gumbel Softmaxを介したグルーピング(離散化)のテクニックが面白い ○ wav2vec 2.0(音声生成)でも使われている ○ モデル内でカテゴリのサンプリングを組み込みたいときには汎用的と思われる ● テキスト教師による学習の隆盛を感じた ○ bboxの扱いが難しいが、物体検知での試みも面白そう 32

Slide 33

Slide 33 text

References ● 記載のない限り画像は GroupViTの論文・プロジェクトページより引用 ○ GroupViT: Semantic Segmentation Emerges from Text Supervision ● その他論文 ○ [1611.01144] Categorical Reparameterization with Gumbel-Softmax ○ Gumbel Softmax Explained | Papers With Code ○ [2006.11477] wav2vec 2.0: A Framework for Self-Supervised Learning of Speech Representations 33