SlideShare une entreprise Scribd logo
1  sur  27
Télécharger pour lire hors ligne
http://deeplearning.jp/
How Much Can CLIP Benefit Vision-and-Language Tasks?
CLIPは画像×言語タスクにどれだけ貢献できるだろうか?(ICLR 2022)
山本 貴之(ヤフー株式会社)
DEEP LEARNING JP
[DL Papers]
1
書誌情報
How Much Can CLIP Benefit Vision-and-Language Tasks?
CLIPは画像×言語タスクにどれだけ貢献できるだろうか?
https://openreview.net/pdf?id=zf_Ll3HZWgy
タイトル:
著者: Sheng Shen∗†, Liunian Harold Li∗‡, Hao Tan◦ , Mohit Bansal◦ , Anna Rohrbach† , Kai-Wei Chang‡ , Zhewei Yao† and Kurt Keutzer†
†University of California, Berkeley, ‡University of California, Los Angeles ◦University of North Carolina at Chapel Hill
先行研究CLIPは優れた画像×言語エンコーダーという仮定の下、CLIPを下流タスクと統合する事で、
従来の下流タスクでSotAを出せるはずという仮説。多数の実験を行い検証。手法を提案
概要:
2
選定理由: 1) マルチモーダル大規模基盤モデルが、シングルモーダルタスクの性能を上げる(ここへの興味)
2) 言語込でマルチモーダル学習すると、人の知恵の記録である言語の力を活かせるのでは(仮説)
(ICLR 2022 Poster)
公式実装: https://github.com/clip-vil/CLIP-ViL
※出典記載の無い図表は本論文からの引用
アジェンダ
1. 導入
2. 先行研究
3. 手法
4. 実験
5. まとめ
3
アジェンダ
1. 導入
2. 先行研究
3. 手法
4. 実験
5. まとめ
4
1. 導入
5
 画像に対するQ&Aタスク(VQA)では、画像エンコーダーの性能がボトルネックと言われている
背景
 CLIPを独立した画像エンコーダーとして利用。既存研究のVQAモデルに画像表現として入力
 CLIPとVQAモデルを統合しEndToEndで学習
実験
 CLIPをうまく使う事で、既存VQAタスクに比べ大幅な精度向上(SotA)
結論
 CLIPだけでVQAタスクは性能が出ない。CLIPと既存VQAモデルを統合すると性能が出るのでは?
モチベー
ション
アジェンダ
1. 導入
2. 先行研究
3. 手法
4. 実験
5. まとめ
6
2. 先行研究 CLIP 何を推論するモデルか?
7
学習済CLIPモデルの推論
テキスト入力
画像入力
バッチ内の
対応するペアは近くに
それ以外は遠くなるように
学習したモデル
対照推定
下記論文の図をベースに輪読者加筆
Alec Radford, et al. 2021. Learning transferable visual models from natural language supervision.
テキストの表現ベクトル
画像の表現ベクトル
バッチ内の
対応するペアは近くに
それ以外は遠くなるように
学習したモデル
対応する4億ペア
で学習している
2. 先行研究 CLIP モデル構造
8
エンコーダー部の構造
テキスト用モデル
画像用モデル
✓ Transformer
8アテンションヘッド 6,300万パラメータ
12層512次元 49,152ボキャブサイズ
✓ ResNet
5種類:ResNet 50・ResNet 101・RN50x4・RN50x16・RN50x64
✓ VisionTransformer
3種類:ViT B/32・ViT B/16・ViT L/14
下記論文の図をベースに輪読者加筆
Alec Radford, et al. 2021. Learning transferable visual models from natural language supervision.
本論文では
両モデルで比較
2. 先行研究 CLIP ゼロショット分類の利用手法
9
入力:分類候補
入力:分類したい画像
下記論文の図をベースに輪読者加筆
Alec Radford, et al. 2021. Learning transferable visual models from natural language supervision.
出力:分類候補の中で最も
類似度が高いものを正解とする
“A photo of a”をプロンプトとして付ける理由は、
1枚の画像には複数の被写体や要素があり、学習時の説明文は
これらを説明する「完全な文章」である為、分類したい被写体(犬)を
精度高く分類するために付けている。
これにより精度が1.3%向上する
2. 先行研究 LXMERT: Learning Cross-Modality Encoder Representations from Transformers
10
既存VQAモデル。SotA(論文執筆時点)
構造はTransformerベース
本論文の下流タスクVQAモデルとして、CLIPと統合させて利用している
LXMERT: Learning Cross-Modality Encoder Representations from Transformers (EMNLP,2019)
セルフ
アテンション
クロス
アテンション
フィード
フォワード
2. 先行研究 LXMERT: Learning Cross-Modality Encoder Representations from Transformers
11
クロスアテンション詳細
LXMERT: Learning Cross-Modality Encoder Representations from Transformers (EMNLP,2019)
https://github.com/airsplay/lxmert/blob/0db1182b9030da3ce41f17717cc628e1cd0a95d5/src/lxrt/modeling.py
class LXRTXLayer(nn.Module):
def __init__(self, config):
self.visual_attention = BertCrossattLayer(config)
def cross_att(self, lang_input, lang_attention_mask, visn_input, visn_attention_mask):
lang_att_output = self.visual_attention(lang_input, visn_input, ctx_att_mask=visn_attention_mask)
visn_att_output = self.visual_attention(visn_input, lang_input, ctx_att_mask=lang_attention_mask)
class BertCrossattLayer(nn.Module):
def __init__(self, config):
self.att = BertAttention(config)
def forward(self, input_tensor, ctx_tensor, ctx_att_mask=None):
output = self.att(input_tensor, ctx_tensor, ctx_att_mask)
class BertAttention(nn.Module):
def forward(self, hidden_states, context, attention_mask=None):
mixed_query_layer = self.query(hidden_states)
mixed_key_layer = self.key(context)
mixed_value_layer = self.value(context)
言語から
Query
画像入力
言語入力
言語から
Key, Value
言語から
Query
画像から
Key, Value
画像出力
言語出力
ソースコードの関連行のみ抜粋
画像から
Query
画像から
Query
画像から
Key,Value
言語から
Key,Value
言語出力
画像出力
2. 先行研究 LXMERT: Learning Cross-Modality Encoder Representations from Transformers
12
5種類のプレトレーニング実施(→本論文では内3種類を利用)
パラメータは0から学習(BERT学習済より精度が良かった為)
LXMERT: Learning Cross-Modality Encoder Representations from Transformers (EMNLP,2019)
マスクオブジェクト予測
※本論文では不使用
アジェンダ
1. 導入
2. 先行研究
3. 手法
4. 実験
5. まとめ
13
3. 手法 実験タスクは大きく2種類
14
画像質問応答
Visual Question&Answer
画像キャプション
Image Captioning
VL Navigation
Vision&Language Navigation
全体のポイントを説明する為、
説明分量の観点から輪読省略
Pythia
MCAN
Pythia : https://arxiv.org/pdf/1807.09956.pdf (2018)
MCAN : https://arxiv.org/pdf/1906.10770.pdf (2019)
LXMERT : https://arxiv.org/pdf/1908.07490.pdf (2019)
タスク 独立利用① 結合学習②
LXMERT
① 独立利用:CLIP画像エンコーダー → 既存VQAモデルに入力
② 結合学習:CLIPとVQAモデル(LXMERT)を結合 → EndToEndで学習
3. 手法 モデル構造 結合学習のステップ
15
①学習済
CLIP ②V&L プレトレーニング
③タスクに応じた
ファインチューニング
赤で囲ったモデルは同一
青で囲ったモデルは同一
3ステップの順で処理
既存VQA
LXMERTの構造
3. 手法 モデル構造 V&Lプレトレーニング手法
16
V&L プレトレーニング V&Lプレトレーニング手順
1. Masked Language Modeling
15%のサブワードをマスクして学習
2. テキスト-画像マッチング
50%確率でミスマッチペアを与える
3. 質問応答学習
条件等
1. プレトレーニングとファインチューニング時は
CLIPまでEndToEndで学習
2. A100 GPU 8台で約5日間の学習
CLIP
LXMERTの構造
モデルの出力部
3. 手法 V&Lプレトレーニングデータの一部 MS COCO
17
MS COCO (Lin et al., 2014)
Flickrから収集した30万枚の実世界の写真
3. 手法 V&Lプレトレーニングデータの一部 Visual Genome
18
Visual Genome (Krishna et al., 2017)
アジェンダ
1. 導入
2. 先行研究
3. 手法
4. 実験
5. まとめ
19
20
4. 実験 結果は大きく2つの実験別に説明
① 独立利用
② 結合学習
21
4. 実験 【①独立利用】の結果
VQAタスク結果
青で囲ったモデルは同一
Pythia : https://arxiv.org/pdf/1807.09956.pdf
MCAN : https://arxiv.org/pdf/1906.10770.pdf
Huaizu Jiang, et al. 2020. In defense of grid features for visual question answering. In Proceedings of the IEEE/CVF Conference on ComputerVision and Pattern Recognition
実験内容・条件
 プレトレーニング「なし」
 下図のステップで実行
 各VisualEncoderで精度比較
 Pythia,MCAN論文のVQAタスクを実行
実験結果
 提案手法が最高精度
CLIP-ResNet50x4
 ただしCLIPのモデル構造が
VisionTransformer(表中ViTの
記載)は精度が低い
 VG-**やBUTD-**はテストデー
タと同一ドメインの学習デー
タを使っている。有利なはず
だが提案手法に及ばず
※VQA v2 のTest-dev , Test-stdデータセットで評価(Accuracy)
※“†”マークは(Jiang et al., 2020)の結果より引用
提案手法:CLIPを画像エンコードに使用
1
1
1
2
2
2
3
3
3
3
3
理由後述
22
4. 実験 ResNet50x4とは?
SimCLR https://arxiv.org/pdf/2002.05709.pdf
ResNet50x4とは、SimCLRを使って対照推定で学習させたResNet50の事
教師あり
ResNet-50
23
4. 実験 ②結合学習の結果
① 独立利用
② 結合学習
24
4. 実験 【②結合学習】の結果
プレトレーニング有無実験 → 差分
各モデル×画像エンコーダーの結果
提案手法:CLIPを画像エンコードに使用 & V&Lプレトレーニング実施
実験結果
 提案手法がSotA
 プレトレーニングで同じデータセット同じ
Epoch数にも関わらずLXMERTに対しても良
い結果
 PixelBERTは提案手法と類似構造で、
ImageNetで学習されたResNetを用いている。
これに対して提案手法が良い結果
 VinVLはリージョンベース手法を拡張させた
もの。これよりも提案手法が良い結果
 プレトレーニング有無の差分は、SotAの
CLIP-Res50x4で+6.57pointである
1
3
1
2
2
3
5
5
※単位:Accuracy
4
4
25
4. 実験 ViTが精度が悪い理由
 CLIPのVisionTransformer(=ViT)モデルは、物体の位置検知精度の要因で結果が良くない
VQAタスク結果
Grad-CAMによる可視化
左の女性のシャツは何色ですか?
アジェンダ
1. 導入
2. 先行研究
3. 手法
4. 実験
5. まとめ
26
5. まとめ
結論
 様々なVision&Languageタスクで画像エンコーダー部にCLIPを使うと精度が向上
 手法は2つ。特に②の精度向上が著しく、手法として提案
①CLIPの表現ベクトル出力を下流タスクに入力(シンプルな手法)
②下流タスクと学習済CLIPモデルを結合しEndToEndでプレトレーニングとファインチューニングを実施
 CLIPのVisionTransformerモデルは物体の位置検知が上手くいかず結果が良くない(ResNet50x4モデル推奨)
27
感想
 CLIPの下流タスク応用手法として興味深い
 CLIP活用による精度向上は、単に物量で勝ってるので当たり前との批判もありそう
 CLIP-Res50よりCLIP-Res50x4が下流タスク性能が良い。”教師あり”より”自己教師あり対照推定”のメリット
 “億単位の量” × “WEB上などの網羅的データ”によるマルチモーダル大規模基盤モデルは、技術的特異点を一
つ越える気がする。これより、各モーダルに内在する法則(例えば、文章で表現されたロジック)がクロス
モーダルに埋め込まれて、それが下流タスクの性能を上げているのではないか(輪読者の仮説)

Contenu connexe

Tendances

Tendances (20)

[DL輪読会]Vision Transformer with Deformable Attention (Deformable Attention Tra...
[DL輪読会]Vision Transformer with Deformable Attention (Deformable Attention Tra...[DL輪読会]Vision Transformer with Deformable Attention (Deformable Attention Tra...
[DL輪読会]Vision Transformer with Deformable Attention (Deformable Attention Tra...
 
【DL輪読会】言語以外でのTransformerのまとめ (ViT, Perceiver, Frozen Pretrained Transformer etc)
【DL輪読会】言語以外でのTransformerのまとめ (ViT, Perceiver, Frozen Pretrained Transformer etc)【DL輪読会】言語以外でのTransformerのまとめ (ViT, Perceiver, Frozen Pretrained Transformer etc)
【DL輪読会】言語以外でのTransformerのまとめ (ViT, Perceiver, Frozen Pretrained Transformer etc)
 
[DL輪読会]Set Transformer: A Framework for Attention-based Permutation-Invariant...
[DL輪読会]Set Transformer: A Framework for Attention-based Permutation-Invariant...[DL輪読会]Set Transformer: A Framework for Attention-based Permutation-Invariant...
[DL輪読会]Set Transformer: A Framework for Attention-based Permutation-Invariant...
 
猫でも分かるVariational AutoEncoder
猫でも分かるVariational AutoEncoder猫でも分かるVariational AutoEncoder
猫でも分かるVariational AutoEncoder
 
強化学習と逆強化学習を組み合わせた模倣学習
強化学習と逆強化学習を組み合わせた模倣学習強化学習と逆強化学習を組み合わせた模倣学習
強化学習と逆強化学習を組み合わせた模倣学習
 
[DL輪読会]GLIDE: Guided Language to Image Diffusion for Generation and Editing
[DL輪読会]GLIDE: Guided Language to Image Diffusion  for Generation and Editing[DL輪読会]GLIDE: Guided Language to Image Diffusion  for Generation and Editing
[DL輪読会]GLIDE: Guided Language to Image Diffusion for Generation and Editing
 
【DL輪読会】Hierarchical Text-Conditional Image Generation with CLIP Latents
【DL輪読会】Hierarchical Text-Conditional Image Generation with CLIP Latents【DL輪読会】Hierarchical Text-Conditional Image Generation with CLIP Latents
【DL輪読会】Hierarchical Text-Conditional Image Generation with CLIP Latents
 
【DL輪読会】Perceiver io a general architecture for structured inputs & outputs
【DL輪読会】Perceiver io  a general architecture for structured inputs & outputs 【DL輪読会】Perceiver io  a general architecture for structured inputs & outputs
【DL輪読会】Perceiver io a general architecture for structured inputs & outputs
 
【DL輪読会】An Image is Worth One Word: Personalizing Text-to-Image Generation usi...
【DL輪読会】An Image is Worth One Word: Personalizing Text-to-Image Generation usi...【DL輪読会】An Image is Worth One Word: Personalizing Text-to-Image Generation usi...
【DL輪読会】An Image is Worth One Word: Personalizing Text-to-Image Generation usi...
 
SSII2022 [SS1] ニューラル3D表現の最新動向〜 ニューラルネットでなんでも表せる?? 〜​
SSII2022 [SS1] ニューラル3D表現の最新動向〜 ニューラルネットでなんでも表せる?? 〜​SSII2022 [SS1] ニューラル3D表現の最新動向〜 ニューラルネットでなんでも表せる?? 〜​
SSII2022 [SS1] ニューラル3D表現の最新動向〜 ニューラルネットでなんでも表せる?? 〜​
 
[DL輪読会]GQNと関連研究,世界モデルとの関係について
[DL輪読会]GQNと関連研究,世界モデルとの関係について[DL輪読会]GQNと関連研究,世界モデルとの関係について
[DL輪読会]GQNと関連研究,世界モデルとの関係について
 
[DL輪読会]相互情報量最大化による表現学習
[DL輪読会]相互情報量最大化による表現学習[DL輪読会]相互情報量最大化による表現学習
[DL輪読会]相互情報量最大化による表現学習
 
SSII2021 [OS2-02] 深層学習におけるデータ拡張の原理と最新動向
SSII2021 [OS2-02] 深層学習におけるデータ拡張の原理と最新動向SSII2021 [OS2-02] 深層学習におけるデータ拡張の原理と最新動向
SSII2021 [OS2-02] 深層学習におけるデータ拡張の原理と最新動向
 
Attentionの基礎からTransformerの入門まで
Attentionの基礎からTransformerの入門までAttentionの基礎からTransformerの入門まで
Attentionの基礎からTransformerの入門まで
 
PRML学習者から入る深層生成モデル入門
PRML学習者から入る深層生成モデル入門PRML学習者から入る深層生成モデル入門
PRML学習者から入る深層生成モデル入門
 
SSII2022 [SS2] 少ないデータやラベルを効率的に活用する機械学習技術 〜 足りない情報をどのように補うか?〜
SSII2022 [SS2] 少ないデータやラベルを効率的に活用する機械学習技術 〜 足りない情報をどのように補うか?〜SSII2022 [SS2] 少ないデータやラベルを効率的に活用する機械学習技術 〜 足りない情報をどのように補うか?〜
SSII2022 [SS2] 少ないデータやラベルを効率的に活用する機械学習技術 〜 足りない情報をどのように補うか?〜
 
近年のHierarchical Vision Transformer
近年のHierarchical Vision Transformer近年のHierarchical Vision Transformer
近年のHierarchical Vision Transformer
 
深層生成モデルと世界モデル(2020/11/20版)
深層生成モデルと世界モデル(2020/11/20版)深層生成モデルと世界モデル(2020/11/20版)
深層生成モデルと世界モデル(2020/11/20版)
 
【DL輪読会】DINOv2: Learning Robust Visual Features without Supervision
【DL輪読会】DINOv2: Learning Robust Visual Features without Supervision【DL輪読会】DINOv2: Learning Robust Visual Features without Supervision
【DL輪読会】DINOv2: Learning Robust Visual Features without Supervision
 
[DL輪読会]Model soups: averaging weights of multiple fine-tuned models improves ...
[DL輪読会]Model soups: averaging weights of multiple fine-tuned models improves ...[DL輪読会]Model soups: averaging weights of multiple fine-tuned models improves ...
[DL輪読会]Model soups: averaging weights of multiple fine-tuned models improves ...
 

Similaire à 【DL輪読会】How Much Can CLIP Benefit Vision-and-Language Tasks?

大規模画像認識とその周辺
大規模画像認識とその周辺大規模画像認識とその周辺
大規模画像認識とその周辺
n_hidekey
 
関西CVPRML勉強会 2012.2.18 (一般物体認識 - データセット)
関西CVPRML勉強会 2012.2.18 (一般物体認識 - データセット)関西CVPRML勉強会 2012.2.18 (一般物体認識 - データセット)
関西CVPRML勉強会 2012.2.18 (一般物体認識 - データセット)
Akisato Kimura
 

Similaire à 【DL輪読会】How Much Can CLIP Benefit Vision-and-Language Tasks? (20)

Deep learning を用いた画像から説明文の自動生成に関する研究の紹介
Deep learning を用いた画像から説明文の自動生成に関する研究の紹介Deep learning を用いた画像から説明文の自動生成に関する研究の紹介
Deep learning を用いた画像から説明文の自動生成に関する研究の紹介
 
大規模画像認識とその周辺
大規模画像認識とその周辺大規模画像認識とその周辺
大規模画像認識とその周辺
 
Bridging between Vision and Language
Bridging between Vision and LanguageBridging between Vision and Language
Bridging between Vision and Language
 
BERT+XLNet+RoBERTa
BERT+XLNet+RoBERTaBERT+XLNet+RoBERTa
BERT+XLNet+RoBERTa
 
はじめての人のためのDeep Learning
はじめての人のためのDeep Learningはじめての人のためのDeep Learning
はじめての人のためのDeep Learning
 
Deep Learningの基礎と応用
Deep Learningの基礎と応用Deep Learningの基礎と応用
Deep Learningの基礎と応用
 
Word2vec alpha
Word2vec alphaWord2vec alpha
Word2vec alpha
 
MS COCO Dataset Introduction
MS COCO Dataset IntroductionMS COCO Dataset Introduction
MS COCO Dataset Introduction
 
文献紹介:VideoCLIP: Contrastive Pre-training for Zero-shot Video-Text Understanding
文献紹介:VideoCLIP: Contrastive Pre-training for Zero-shot Video-Text Understanding文献紹介:VideoCLIP: Contrastive Pre-training for Zero-shot Video-Text Understanding
文献紹介:VideoCLIP: Contrastive Pre-training for Zero-shot Video-Text Understanding
 
論文紹介:A Survey of Vision-Language Pre-Trained Models
論文紹介:A Survey of Vision-Language Pre-Trained Models論文紹介:A Survey of Vision-Language Pre-Trained Models
論文紹介:A Survey of Vision-Language Pre-Trained Models
 
20201010 personreid
20201010 personreid20201010 personreid
20201010 personreid
 
Deep Learning基本理論とTensorFlow
Deep Learning基本理論とTensorFlowDeep Learning基本理論とTensorFlow
Deep Learning基本理論とTensorFlow
 
リクルートはいかにして、ディープラーニング(深層学習)の導入を成功させたか
リクルートはいかにして、ディープラーニング(深層学習)の導入を成功させたかリクルートはいかにして、ディープラーニング(深層学習)の導入を成功させたか
リクルートはいかにして、ディープラーニング(深層学習)の導入を成功させたか
 
Semat - a Japanese introduction
Semat - a Japanese introductionSemat - a Japanese introduction
Semat - a Japanese introduction
 
「機械学習とは?」から始める Deep learning実践入門
「機械学習とは?」から始める Deep learning実践入門「機械学習とは?」から始める Deep learning実践入門
「機械学習とは?」から始める Deep learning実践入門
 
Transformer メタサーベイ
Transformer メタサーベイTransformer メタサーベイ
Transformer メタサーベイ
 
Vision-and-Language Navigation: Interpreting visually-grounded navigation ins...
Vision-and-Language Navigation: Interpreting visually-grounded navigation ins...Vision-and-Language Navigation: Interpreting visually-grounded navigation ins...
Vision-and-Language Navigation: Interpreting visually-grounded navigation ins...
 
「解説資料」ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
「解説資料」ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation 「解説資料」ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
「解説資料」ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
 
【DL輪読会】ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
【DL輪読会】ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation【DL輪読会】ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
【DL輪読会】ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
 
関西CVPRML勉強会 2012.2.18 (一般物体認識 - データセット)
関西CVPRML勉強会 2012.2.18 (一般物体認識 - データセット)関西CVPRML勉強会 2012.2.18 (一般物体認識 - データセット)
関西CVPRML勉強会 2012.2.18 (一般物体認識 - データセット)
 

Plus de Deep Learning JP

Plus de Deep Learning JP (20)

【DL輪読会】AdaptDiffuser: Diffusion Models as Adaptive Self-evolving Planners
【DL輪読会】AdaptDiffuser: Diffusion Models as Adaptive Self-evolving Planners【DL輪読会】AdaptDiffuser: Diffusion Models as Adaptive Self-evolving Planners
【DL輪読会】AdaptDiffuser: Diffusion Models as Adaptive Self-evolving Planners
 
【DL輪読会】事前学習用データセットについて
【DL輪読会】事前学習用データセットについて【DL輪読会】事前学習用データセットについて
【DL輪読会】事前学習用データセットについて
 
【DL輪読会】 "Learning to render novel views from wide-baseline stereo pairs." CVP...
【DL輪読会】 "Learning to render novel views from wide-baseline stereo pairs." CVP...【DL輪読会】 "Learning to render novel views from wide-baseline stereo pairs." CVP...
【DL輪読会】 "Learning to render novel views from wide-baseline stereo pairs." CVP...
 
【DL輪読会】Zero-Shot Dual-Lens Super-Resolution
【DL輪読会】Zero-Shot Dual-Lens Super-Resolution【DL輪読会】Zero-Shot Dual-Lens Super-Resolution
【DL輪読会】Zero-Shot Dual-Lens Super-Resolution
 
【DL輪読会】BloombergGPT: A Large Language Model for Finance arxiv
【DL輪読会】BloombergGPT: A Large Language Model for Finance arxiv【DL輪読会】BloombergGPT: A Large Language Model for Finance arxiv
【DL輪読会】BloombergGPT: A Large Language Model for Finance arxiv
 
【DL輪読会】マルチモーダル LLM
【DL輪読会】マルチモーダル LLM【DL輪読会】マルチモーダル LLM
【DL輪読会】マルチモーダル LLM
 
【 DL輪読会】ToolLLM: Facilitating Large Language Models to Master 16000+ Real-wo...
 【 DL輪読会】ToolLLM: Facilitating Large Language Models to Master 16000+ Real-wo... 【 DL輪読会】ToolLLM: Facilitating Large Language Models to Master 16000+ Real-wo...
【 DL輪読会】ToolLLM: Facilitating Large Language Models to Master 16000+ Real-wo...
 
【DL輪読会】AnyLoc: Towards Universal Visual Place Recognition
【DL輪読会】AnyLoc: Towards Universal Visual Place Recognition【DL輪読会】AnyLoc: Towards Universal Visual Place Recognition
【DL輪読会】AnyLoc: Towards Universal Visual Place Recognition
 
【DL輪読会】Can Neural Network Memorization Be Localized?
【DL輪読会】Can Neural Network Memorization Be Localized?【DL輪読会】Can Neural Network Memorization Be Localized?
【DL輪読会】Can Neural Network Memorization Be Localized?
 
【DL輪読会】Hopfield network 関連研究について
【DL輪読会】Hopfield network 関連研究について【DL輪読会】Hopfield network 関連研究について
【DL輪読会】Hopfield network 関連研究について
 
【DL輪読会】SimPer: Simple self-supervised learning of periodic targets( ICLR 2023 )
【DL輪読会】SimPer: Simple self-supervised learning of periodic targets( ICLR 2023 )【DL輪読会】SimPer: Simple self-supervised learning of periodic targets( ICLR 2023 )
【DL輪読会】SimPer: Simple self-supervised learning of periodic targets( ICLR 2023 )
 
【DL輪読会】RLCD: Reinforcement Learning from Contrast Distillation for Language M...
【DL輪読会】RLCD: Reinforcement Learning from Contrast Distillation for Language M...【DL輪読会】RLCD: Reinforcement Learning from Contrast Distillation for Language M...
【DL輪読会】RLCD: Reinforcement Learning from Contrast Distillation for Language M...
 
【DL輪読会】"Secrets of RLHF in Large Language Models Part I: PPO"
【DL輪読会】"Secrets of RLHF in Large Language Models Part I: PPO"【DL輪読会】"Secrets of RLHF in Large Language Models Part I: PPO"
【DL輪読会】"Secrets of RLHF in Large Language Models Part I: PPO"
 
【DL輪読会】"Language Instructed Reinforcement Learning for Human-AI Coordination "
【DL輪読会】"Language Instructed Reinforcement Learning  for Human-AI Coordination "【DL輪読会】"Language Instructed Reinforcement Learning  for Human-AI Coordination "
【DL輪読会】"Language Instructed Reinforcement Learning for Human-AI Coordination "
 
【DL輪読会】Llama 2: Open Foundation and Fine-Tuned Chat Models
【DL輪読会】Llama 2: Open Foundation and Fine-Tuned Chat Models【DL輪読会】Llama 2: Open Foundation and Fine-Tuned Chat Models
【DL輪読会】Llama 2: Open Foundation and Fine-Tuned Chat Models
 
【DL輪読会】"Learning Fine-Grained Bimanual Manipulation with Low-Cost Hardware"
【DL輪読会】"Learning Fine-Grained Bimanual Manipulation with Low-Cost Hardware"【DL輪読会】"Learning Fine-Grained Bimanual Manipulation with Low-Cost Hardware"
【DL輪読会】"Learning Fine-Grained Bimanual Manipulation with Low-Cost Hardware"
 
【DL輪読会】Parameter is Not All You Need:Starting from Non-Parametric Networks fo...
【DL輪読会】Parameter is Not All You Need:Starting from Non-Parametric Networks fo...【DL輪読会】Parameter is Not All You Need:Starting from Non-Parametric Networks fo...
【DL輪読会】Parameter is Not All You Need:Starting from Non-Parametric Networks fo...
 
【DL輪読会】Drag Your GAN: Interactive Point-based Manipulation on the Generative ...
【DL輪読会】Drag Your GAN: Interactive Point-based Manipulation on the Generative ...【DL輪読会】Drag Your GAN: Interactive Point-based Manipulation on the Generative ...
【DL輪読会】Drag Your GAN: Interactive Point-based Manipulation on the Generative ...
 
【DL輪読会】Self-Supervised Learning from Images with a Joint-Embedding Predictive...
【DL輪読会】Self-Supervised Learning from Images with a Joint-Embedding Predictive...【DL輪読会】Self-Supervised Learning from Images with a Joint-Embedding Predictive...
【DL輪読会】Self-Supervised Learning from Images with a Joint-Embedding Predictive...
 
【DL輪読会】Towards Understanding Ensemble, Knowledge Distillation and Self-Distil...
【DL輪読会】Towards Understanding Ensemble, Knowledge Distillation and Self-Distil...【DL輪読会】Towards Understanding Ensemble, Knowledge Distillation and Self-Distil...
【DL輪読会】Towards Understanding Ensemble, Knowledge Distillation and Self-Distil...
 

【DL輪読会】How Much Can CLIP Benefit Vision-and-Language Tasks?

  • 1. http://deeplearning.jp/ How Much Can CLIP Benefit Vision-and-Language Tasks? CLIPは画像×言語タスクにどれだけ貢献できるだろうか?(ICLR 2022) 山本 貴之(ヤフー株式会社) DEEP LEARNING JP [DL Papers] 1
  • 2. 書誌情報 How Much Can CLIP Benefit Vision-and-Language Tasks? CLIPは画像×言語タスクにどれだけ貢献できるだろうか? https://openreview.net/pdf?id=zf_Ll3HZWgy タイトル: 著者: Sheng Shen∗†, Liunian Harold Li∗‡, Hao Tan◦ , Mohit Bansal◦ , Anna Rohrbach† , Kai-Wei Chang‡ , Zhewei Yao† and Kurt Keutzer† †University of California, Berkeley, ‡University of California, Los Angeles ◦University of North Carolina at Chapel Hill 先行研究CLIPは優れた画像×言語エンコーダーという仮定の下、CLIPを下流タスクと統合する事で、 従来の下流タスクでSotAを出せるはずという仮説。多数の実験を行い検証。手法を提案 概要: 2 選定理由: 1) マルチモーダル大規模基盤モデルが、シングルモーダルタスクの性能を上げる(ここへの興味) 2) 言語込でマルチモーダル学習すると、人の知恵の記録である言語の力を活かせるのでは(仮説) (ICLR 2022 Poster) 公式実装: https://github.com/clip-vil/CLIP-ViL ※出典記載の無い図表は本論文からの引用
  • 3. アジェンダ 1. 導入 2. 先行研究 3. 手法 4. 実験 5. まとめ 3
  • 4. アジェンダ 1. 導入 2. 先行研究 3. 手法 4. 実験 5. まとめ 4
  • 5. 1. 導入 5  画像に対するQ&Aタスク(VQA)では、画像エンコーダーの性能がボトルネックと言われている 背景  CLIPを独立した画像エンコーダーとして利用。既存研究のVQAモデルに画像表現として入力  CLIPとVQAモデルを統合しEndToEndで学習 実験  CLIPをうまく使う事で、既存VQAタスクに比べ大幅な精度向上(SotA) 結論  CLIPだけでVQAタスクは性能が出ない。CLIPと既存VQAモデルを統合すると性能が出るのでは? モチベー ション
  • 6. アジェンダ 1. 導入 2. 先行研究 3. 手法 4. 実験 5. まとめ 6
  • 7. 2. 先行研究 CLIP 何を推論するモデルか? 7 学習済CLIPモデルの推論 テキスト入力 画像入力 バッチ内の 対応するペアは近くに それ以外は遠くなるように 学習したモデル 対照推定 下記論文の図をベースに輪読者加筆 Alec Radford, et al. 2021. Learning transferable visual models from natural language supervision. テキストの表現ベクトル 画像の表現ベクトル バッチ内の 対応するペアは近くに それ以外は遠くなるように 学習したモデル 対応する4億ペア で学習している
  • 8. 2. 先行研究 CLIP モデル構造 8 エンコーダー部の構造 テキスト用モデル 画像用モデル ✓ Transformer 8アテンションヘッド 6,300万パラメータ 12層512次元 49,152ボキャブサイズ ✓ ResNet 5種類:ResNet 50・ResNet 101・RN50x4・RN50x16・RN50x64 ✓ VisionTransformer 3種類:ViT B/32・ViT B/16・ViT L/14 下記論文の図をベースに輪読者加筆 Alec Radford, et al. 2021. Learning transferable visual models from natural language supervision. 本論文では 両モデルで比較
  • 9. 2. 先行研究 CLIP ゼロショット分類の利用手法 9 入力:分類候補 入力:分類したい画像 下記論文の図をベースに輪読者加筆 Alec Radford, et al. 2021. Learning transferable visual models from natural language supervision. 出力:分類候補の中で最も 類似度が高いものを正解とする “A photo of a”をプロンプトとして付ける理由は、 1枚の画像には複数の被写体や要素があり、学習時の説明文は これらを説明する「完全な文章」である為、分類したい被写体(犬)を 精度高く分類するために付けている。 これにより精度が1.3%向上する
  • 10. 2. 先行研究 LXMERT: Learning Cross-Modality Encoder Representations from Transformers 10 既存VQAモデル。SotA(論文執筆時点) 構造はTransformerベース 本論文の下流タスクVQAモデルとして、CLIPと統合させて利用している LXMERT: Learning Cross-Modality Encoder Representations from Transformers (EMNLP,2019) セルフ アテンション クロス アテンション フィード フォワード
  • 11. 2. 先行研究 LXMERT: Learning Cross-Modality Encoder Representations from Transformers 11 クロスアテンション詳細 LXMERT: Learning Cross-Modality Encoder Representations from Transformers (EMNLP,2019) https://github.com/airsplay/lxmert/blob/0db1182b9030da3ce41f17717cc628e1cd0a95d5/src/lxrt/modeling.py class LXRTXLayer(nn.Module): def __init__(self, config): self.visual_attention = BertCrossattLayer(config) def cross_att(self, lang_input, lang_attention_mask, visn_input, visn_attention_mask): lang_att_output = self.visual_attention(lang_input, visn_input, ctx_att_mask=visn_attention_mask) visn_att_output = self.visual_attention(visn_input, lang_input, ctx_att_mask=lang_attention_mask) class BertCrossattLayer(nn.Module): def __init__(self, config): self.att = BertAttention(config) def forward(self, input_tensor, ctx_tensor, ctx_att_mask=None): output = self.att(input_tensor, ctx_tensor, ctx_att_mask) class BertAttention(nn.Module): def forward(self, hidden_states, context, attention_mask=None): mixed_query_layer = self.query(hidden_states) mixed_key_layer = self.key(context) mixed_value_layer = self.value(context) 言語から Query 画像入力 言語入力 言語から Key, Value 言語から Query 画像から Key, Value 画像出力 言語出力 ソースコードの関連行のみ抜粋 画像から Query 画像から Query 画像から Key,Value 言語から Key,Value 言語出力 画像出力
  • 12. 2. 先行研究 LXMERT: Learning Cross-Modality Encoder Representations from Transformers 12 5種類のプレトレーニング実施(→本論文では内3種類を利用) パラメータは0から学習(BERT学習済より精度が良かった為) LXMERT: Learning Cross-Modality Encoder Representations from Transformers (EMNLP,2019) マスクオブジェクト予測 ※本論文では不使用
  • 13. アジェンダ 1. 導入 2. 先行研究 3. 手法 4. 実験 5. まとめ 13
  • 14. 3. 手法 実験タスクは大きく2種類 14 画像質問応答 Visual Question&Answer 画像キャプション Image Captioning VL Navigation Vision&Language Navigation 全体のポイントを説明する為、 説明分量の観点から輪読省略 Pythia MCAN Pythia : https://arxiv.org/pdf/1807.09956.pdf (2018) MCAN : https://arxiv.org/pdf/1906.10770.pdf (2019) LXMERT : https://arxiv.org/pdf/1908.07490.pdf (2019) タスク 独立利用① 結合学習② LXMERT ① 独立利用:CLIP画像エンコーダー → 既存VQAモデルに入力 ② 結合学習:CLIPとVQAモデル(LXMERT)を結合 → EndToEndで学習
  • 15. 3. 手法 モデル構造 結合学習のステップ 15 ①学習済 CLIP ②V&L プレトレーニング ③タスクに応じた ファインチューニング 赤で囲ったモデルは同一 青で囲ったモデルは同一 3ステップの順で処理 既存VQA LXMERTの構造
  • 16. 3. 手法 モデル構造 V&Lプレトレーニング手法 16 V&L プレトレーニング V&Lプレトレーニング手順 1. Masked Language Modeling 15%のサブワードをマスクして学習 2. テキスト-画像マッチング 50%確率でミスマッチペアを与える 3. 質問応答学習 条件等 1. プレトレーニングとファインチューニング時は CLIPまでEndToEndで学習 2. A100 GPU 8台で約5日間の学習 CLIP LXMERTの構造 モデルの出力部
  • 17. 3. 手法 V&Lプレトレーニングデータの一部 MS COCO 17 MS COCO (Lin et al., 2014) Flickrから収集した30万枚の実世界の写真
  • 18. 3. 手法 V&Lプレトレーニングデータの一部 Visual Genome 18 Visual Genome (Krishna et al., 2017)
  • 19. アジェンダ 1. 導入 2. 先行研究 3. 手法 4. 実験 5. まとめ 19
  • 21. 21 4. 実験 【①独立利用】の結果 VQAタスク結果 青で囲ったモデルは同一 Pythia : https://arxiv.org/pdf/1807.09956.pdf MCAN : https://arxiv.org/pdf/1906.10770.pdf Huaizu Jiang, et al. 2020. In defense of grid features for visual question answering. In Proceedings of the IEEE/CVF Conference on ComputerVision and Pattern Recognition 実験内容・条件  プレトレーニング「なし」  下図のステップで実行  各VisualEncoderで精度比較  Pythia,MCAN論文のVQAタスクを実行 実験結果  提案手法が最高精度 CLIP-ResNet50x4  ただしCLIPのモデル構造が VisionTransformer(表中ViTの 記載)は精度が低い  VG-**やBUTD-**はテストデー タと同一ドメインの学習デー タを使っている。有利なはず だが提案手法に及ばず ※VQA v2 のTest-dev , Test-stdデータセットで評価(Accuracy) ※“†”マークは(Jiang et al., 2020)の結果より引用 提案手法:CLIPを画像エンコードに使用 1 1 1 2 2 2 3 3 3 3 3 理由後述
  • 22. 22 4. 実験 ResNet50x4とは? SimCLR https://arxiv.org/pdf/2002.05709.pdf ResNet50x4とは、SimCLRを使って対照推定で学習させたResNet50の事 教師あり ResNet-50
  • 23. 23 4. 実験 ②結合学習の結果 ① 独立利用 ② 結合学習
  • 24. 24 4. 実験 【②結合学習】の結果 プレトレーニング有無実験 → 差分 各モデル×画像エンコーダーの結果 提案手法:CLIPを画像エンコードに使用 & V&Lプレトレーニング実施 実験結果  提案手法がSotA  プレトレーニングで同じデータセット同じ Epoch数にも関わらずLXMERTに対しても良 い結果  PixelBERTは提案手法と類似構造で、 ImageNetで学習されたResNetを用いている。 これに対して提案手法が良い結果  VinVLはリージョンベース手法を拡張させた もの。これよりも提案手法が良い結果  プレトレーニング有無の差分は、SotAの CLIP-Res50x4で+6.57pointである 1 3 1 2 2 3 5 5 ※単位:Accuracy 4 4
  • 25. 25 4. 実験 ViTが精度が悪い理由  CLIPのVisionTransformer(=ViT)モデルは、物体の位置検知精度の要因で結果が良くない VQAタスク結果 Grad-CAMによる可視化 左の女性のシャツは何色ですか?
  • 26. アジェンダ 1. 導入 2. 先行研究 3. 手法 4. 実験 5. まとめ 26
  • 27. 5. まとめ 結論  様々なVision&Languageタスクで画像エンコーダー部にCLIPを使うと精度が向上  手法は2つ。特に②の精度向上が著しく、手法として提案 ①CLIPの表現ベクトル出力を下流タスクに入力(シンプルな手法) ②下流タスクと学習済CLIPモデルを結合しEndToEndでプレトレーニングとファインチューニングを実施  CLIPのVisionTransformerモデルは物体の位置検知が上手くいかず結果が良くない(ResNet50x4モデル推奨) 27 感想  CLIPの下流タスク応用手法として興味深い  CLIP活用による精度向上は、単に物量で勝ってるので当たり前との批判もありそう  CLIP-Res50よりCLIP-Res50x4が下流タスク性能が良い。”教師あり”より”自己教師あり対照推定”のメリット  “億単位の量” × “WEB上などの網羅的データ”によるマルチモーダル大規模基盤モデルは、技術的特異点を一 つ越える気がする。これより、各モーダルに内在する法則(例えば、文章で表現されたロジック)がクロス モーダルに埋め込まれて、それが下流タスクの性能を上げているのではないか(輪読者の仮説)