Closed13

VisionTransformer入門を読むぞ

wokwok

1章
自然言語からVison And Languageを経てコンピュータビジョンに応用が進んでいる。
VisionとLanguageが混ざっている方が先っていうのが自然というか、不思議というか。

wokwok

BERTとGPT(GPT-2,GPT-3)の違いは、ファインチューニングの際に目的タスクのデータセットが必要ない点。
例無しだと厳しいが、幾つかの例を示せばSOTAになる。(Few Shot)

wokwok

Transformerの弱点
・サイズがでかい
・系列長が長いと計算コストが高くなる

wokwok

Visual and Languageの例
Visual Question Answering, Image Captioning, Vision and Language Navigation

そのほかの例
VCR(Visual Commonsense Reasoning): VQAの根拠示す版
Grounding Referring Expression: テキストに示された物体が写っている場所を特定
Caption-Based Image Retrieval: テキストによる画像検索

派生
MedlCat, MedViLL: 医療画像特化
LayoutLM: 文書画像による文書分類
CLIP, DALL-Eも派生の一つ
CLIP: テキスト(自然言語)と画像の関係性を学習
DALL-E:画像生成。生成した画像のランキングにCLIPを使っていて、生成画像と入力画像の一致を確認

Bottom-up Attension:物体検出した各物体を一つのトークンとして使う。(テキストは従来Bertと同じく単語をトークンとする)

↑これがVision単体よりも先にLanguageとVisionのマルチモーダルが先に来ている理由か。

マルチモーダルの情報入力方法は二つ。
Single-StreamとMulti-Sream

wokwok

DETR:Transformerを用いた物体検出。画像をグリッドに切って特徴抽出。トークンとして使用。
iGPT: ピクセル単位の画像補完
ViT:画像認識。グリッドに切って、(特徴量抽出はせずに)ピクセルを並べてベクトルとみなす。それを線形変換したものを使用。

Transformerの計算量は入力系列の2乗に比例

wokwok

2章
Vision Transformereの実装

なんだこれ、めちゃくちゃわかりやすい(w)

最後Encoderの説明の最後でCLSトークンの取り出し方が書かれてなくて「?」となったが、MLP Headの最後のところで処理していた。すごい分かりやすかったので、Encoderの最後のところで触れておいてもよかったのではないかと思った(甘え)。

wokwok

3章 実験と可視化

Normalizeの時によく見かける値ってImageNet由来だったのか。脳死でおまじない化してた。

Label Smoothing:

ViTは帰納バイアスが働きデータが膨大でないと性能が上がらないらしい。

wokwok

5章 Vision And Languageタスクへの応用
ざっと見。

wokwok

6章 Vision Transformerの派生手法

Swin Transformer: 現在のViTのベースラインとなっているモデル。物体の大きさに対応できるように、パッチ分割(Window)を段階的に行う。Window内ででSelf Attentionさせることで計算量も削減。

DeiT: CNNを教師とした蒸留によりTransformerをトレーニング。少ないデータセットで精度を出す。
ハードターゲット:One-hot
ソフトターゲット:確率分布

CvT(Convolutional Vision Transformer): CNNとTransformerを組み合わせた、なんてものもあるようだ。

MAE(Masked AutoEncoder)
いや、もう凄すぎて意味わからんね。ここまでくると。

wokwok

7章 Transformerの謎
(コンボイの謎ではない。)

まさにこれ

・Positiona Enbedding
 どのように位置を符号化して、どのように情報を付与するか。

・Multi Head Attention
self attentionは、クエリーとキーのベクトル成分同士の掛け算が大きくなる成分に、内積の結果が依存する。⇒ほかの成分同士の掛け算が無視されやすい。
Multi-Head にすることで、クエリーとキーを分割して内積を出すので、影響を受けないで作れる部分が出てくる。
一方で、複数のヘッドを削除しても性能劣化しない場合があり、複数のヘッドが同じ特徴を学習しているように見える場合がある。⇒計算が無駄。違う特徴を学習するようにガイドするとよい。

・Layer Normalization
PostNorm
PreNorm

wokwok

8章 Vision Transformerの謎

Transformerが最強というわけではないよ。

ViTも局所性を持たすこともできるかも。(下層がCNNと似てる)
規模によってはResNetも形状に反応するかも。
ViTもCNNも攻撃に弱い部分があるが、弱いポイントが異なる。

このスクラップは2023/01/27にクローズされました