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
79
SigLIP
SuperHotDog
May 14, 2025
Tweet
Share
More Decks by SuperHotDog
See All by SuperHotDog
post-training
superhotdogcat
3
580
研究室紹介用スライド: Unified Memoryを活⽤した効率的な計算⽅法を考えよう
superhotdogcat
0
86
大規模モデル計算の裏に潜む 並列分散処理について
superhotdogcat
1
52
オンプレソロプレイ
superhotdogcat
0
76
CUDAを触ろう
superhotdogcat
0
100
GemmaでRAG を作ろう
superhotdogcat
1
570
Featured
See All Featured
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.9k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
35
2.4k
A designer walks into a library…
pauljervisheath
207
24k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
How to Ace a Technical Interview
jacobian
278
23k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
990
Documentation Writing (for coders)
carmenintech
72
4.9k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Producing Creativity
orderedlist
PRO
346
40k
Code Reviewing Like a Champion
maltzj
524
40k
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値が 上がった。すごい