Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
SigLIP
Search
SuperHotDog
May 14, 2025
1
96
SigLIP
SuperHotDog
May 14, 2025
Tweet
Share
More Decks by SuperHotDog
See All by SuperHotDog
Dockerの裏側を攻める
superhotdogcat
0
5
post-training
superhotdogcat
3
590
研究室紹介用スライド: Unified Memoryを活⽤した効率的な計算⽅法を考えよう
superhotdogcat
0
94
大規模モデル計算の裏に潜む 並列分散処理について
superhotdogcat
1
58
オンプレソロプレイ
superhotdogcat
0
78
CUDAを触ろう
superhotdogcat
0
110
GemmaでRAG を作ろう
superhotdogcat
1
620
Featured
See All Featured
Music & Morning Musume
bryan
46
7k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
The Cost Of JavaScript in 2023
addyosmani
55
9.3k
Producing Creativity
orderedlist
PRO
348
40k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.8k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
253
22k
How to train your dragon (web standard)
notwaldorf
97
6.4k
Context Engineering - Making Every Token Count
addyosmani
9
410
How to Think Like a Performance Engineer
csswizardry
28
2.3k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
118
20k
GraphQLとの向き合い方2022年版
quramy
49
14k
Transcript
SigLIP 2025/05/14 犬 この資料は大学で発表したのを公開用に調整したもの
ちょっと宣伝 ・NeurIPS出します。
Contrastive Learning ・似ているものと似ていないものの対応関係を学習する方法 →もうちょい話すと, ある1つのEncoderから取り出されるベクトルともう1つのEncoderか ら取り出されるベクトルの対応関係のあるところのコサイン類似度を近づけて, 対応関係 のないところのコサイン類似度を遠ざける方法
どうやる?(数式面) ・まずはCLIPから解説する ・同じ対応関係のcosine類似度の確 率が最大となるように計算をする
どうやる?(コード面) ここのlogitsが各データの同一 batch内でのtextとimageの類似 度を示す n番目のデータはn番目に似るべ きだというラベル
図で解説 これがlogits これがラベル, 対角線 上のデータが似るべき だという対応関係
推論 ・推論の時はImage一つに対してTextが複 数, その中で1番確率の高いものを採用す るという推論を行う ・TextのEmbeddingが近いものなら学習時 に無くてもZero-Shot可能というのがCLIP の嬉しいところ ・既存のDeepLearningとは違うところ
CLIPのちょっと不便なところ ・NeurIPSで発表した時にも突っ込まれたが , CLIPは1つの データに対して1つの推論しかできない ・例えば右の画像はなんと推論すべき ?きゅうり?卵?生姜? みかん?にんじん? ・その組み合わせ? ・あとは勘の良い方は気付かれたかもしれないが
,Batch Sizeに応じて相対確率の値が変化するので Batch Sizeに よってもよく変動する
SigLIP ・Google系Multimodalでよく採用されるアーキテクチャ ・CLIPとの変更箇所は単純, 損失関数部分をSoftmaxではなくSigmoidに変えただけ, そこで登場するのが以下の難解コード
SigLIP ・実はこう見えてコードはSigmoid BasedなContrastive Lossを計算している ・手元で計算してみよう(算数ができる人なら30秒ぐらいで気づくはず)(ヒント: 数式のz_ij は対応関係の時1, 対応関係じゃない時-1)
SigLIP
SigLIP 1 -1 -1 -1 -1 1 -1 -1 -1
-1 1 -1 -1 -1 -1 1 こういう感じの行列になる, 対角成分 が対応関係としているのはCLIPと同じ
SigLIP 各成分がこれのn×n行列ができる これを全成分で合計してnで割ると この式ができる
推論 ・推論の時はImage一つに対してTextが複 数, その中でSigmoid演算を通して確率が 0.5を超えているものを全て選ぶ
マルチラベルのSigLIPの場合 1 -1 -1 -1 -1 1 -1 -1 -1
-1 1 -1 -1 -1 -1 1 こういう感じの行列になる, 対角成分 が対応関係としているのはCLIPと同じ ・対角成分を対応関係とすると精度が 下がってダメな場合がある ・例えば, Batch内に同じ所見が含まれ ている場合である。 ・ImageNetなどはラベル数が1000もあ るのでBatchが小さい時は同じラベル が含まれる可能性は小さいが, 心電図 初見は多くても100なのでBatchが100 を超えてくると鳩の巣原理的に不正な 対応関係が必ず存在することになる
マルチラベルのSigLIPの場合 1 -1 1 -1 -1 1 -1 -1 1
-1 1 1 -1 -1 1 1 こういう感じ ・そこでラベルのうち同じものが含まれ ているものは1として追加した(もう少し いい方法がある気がしなくもない) ・これだけでマルチラベルでのF1値が 上がった。すごい