>100 Views
July 10, 25
スライド概要
AI・機械学習を勉強したい学生たちが集まる、京都大学の自主ゼミサークルです。私たちのサークルに興味のある方はX(Twitter)をご覧ください!
KaiRA 生成DeepLearning #12 生成Deep Learning 13.5~6 :マルチモーダルモデル 京都大学 工学部 情報学科 宮前明生 0
アジェンダ ◼ Flamingoの概要 ◼ アーキテクチャ ◼ 結果 Flamingo 以下の論文をベースに解説する 以下の論文をベースに解説する Flamingo 1
アジェンダ ◼ Flamingoの概要 ◼ アーキテクチャ ◼ 結果 2
Flamingoの概要:Flamingoのタスク Flamingo Imagen, Stable diffusion • テキストから画像を生成す • 視覚データ+テキストからテ キストを生成するモデル るモデル • 視覚データとは、画像と動画 を含む Prompt: A horse riding an astronaut. Stable diffusion onlineから生成 3
Flamingoの概要: Flamingoのタスク • 入力は複数の画像や動 画とテキストを可能と している • Fine-tuningなしで、 few-shot推定(わずか な入出力例から推定) で高い精度を誇る 4
Flamingoの概要:モデルの概要 • 様々な解像度の画像や動画を同次元埋め込みの条件付けとして 扱うために、Vision EncoderとPerceiver Resamplarを用いる • テキスト中の複数の画像や動画に条件付けが対応するようにマ スクされたcross-attention層を用いる • 最終的に、視覚データ𝑥を条件として、次のトークン𝑦𝑙 の予測を 繰り返すときの尤度を次のようにモデル化する 𝑝 𝑦 𝑥 = ς𝐿𝑙=1 𝑝(𝑦𝑙 |𝑦<𝑙 , 𝑥≤𝑙 ) 5
アジェンダ ◼ Flamingoの概要 ◼ アーキテクチャ ◼ 結果 6
アーキテクチャ:Vision Encoder FlamingoのVision Encoderは Normalizer-Free ResNet(NFNet)の F6モデルを用いる NFNet CLIP • ResNetのアーキテクチャ • ViTのアーキテクチャ • 画像とテキストの埋め込み • バッチ正則化なしでAdaptive Gradient Clippingを採用 ペアをコサイン類似度で最 適化 • 画像とテキストの埋め込みペ アをコサイン類似度で最適化 7
アーキテクチャ:Vision Encoder 画像 • NFNetから得た特徴マップを平坦化 する 動画 • 1秒1フレームずつサンプリングする • サンプリングごとにNFNetから得た 特徴マップを得て、時間埋め込みを 付与し、平坦化する • サンプリングごとの埋め込みベクト ルを連結する 8
アーキテクチャ: Perceiver Resamplar Vision Encoderから可変長(画像の解像 度や動画のフレーム数による)の平坦化 されたベクトルを受け取る ➢ ベクトル次元の上限を設けず、短いベ クトルも長いベクトルも同じ次元に変 換して、計算を簡単にしたい 視覚ベクトル埋め込みをキー𝐾とバリュー 𝑉、64次元の潜在ベクトルをクエリ𝑄とし たcross-attention層で同次元の出力を得 る(潜在ベクトルも学習される) 9
アーキテクチャ: Perceiver Resamplar Perceiver Resamplar • 時間埋め込みと平坦化からベ クトルx_fを得る • 潜在ベクトルxにattention層 とffw層の出力を足し合わせ る • 上の処理をnum_layers回繰 り返す 10
アーキテクチャ:Language model GATED XATTN-DENSE • masked cross-attention層で複数の視覚データを文章に条件付け している • Tanh gatingで視覚条件付けを制御し、学習を安定させている LM layers • self-attention層を持つ事前学習済モデル • DeepMind社で開発したChinchillaをLanguage modelに採用した 11
アーキテクチャ:Language model 画像や動画が複数ある場合、それぞれの視 覚埋め込みを文章に対応させる必要がある 視覚埋め込み 2. マスクして条件付け 1. 文章の前処理 画像の直前を境 目に文章をチャ ンクに分割する チャンクごとに他の チャンクをマスクして、 含まれる画像の埋め込 みを条件付けする 12
アーキテクチャ: Language model GATED XATTN-DENSE • cross-attention層は、チャ ンクごとの視覚ベクトル埋め 込みをキー𝐾とバリュー𝑉、 マスクされた言語入力Y埋め 込みをクエリ𝑄とした(チャ ンクごとの出力を合計する) • cross-attention層、FFW層 の出力に𝑡𝑎𝑛ℎ(𝛼)を掛けたも のをYに足し合わせる(𝛼も 層ごとに学習される) LM layer • self-attention層、FFW層の 出力をYに足し合わせる 𝛼は初期値を0とすることで、学習が初期で は出力が事前学習済のLMにのみ依存するの で、学習が安定する self-attention層のおかげで、部分的なcrossattentionの条件付けが文章全体に反映される 13
アーキテクチャ: Language model GATED XATTN-DENSE • cross-attention層は、チャ ンクごとの視覚ベクトル埋め 込みをキー𝐾とバリュー𝑉、 マスクされた言語入力Y埋め 込みをクエリ𝑄とした(チャ ンクごとの出力を合計する) • cross-attention層、FFW層 の出力に𝑡𝑎𝑛ℎ(𝛼)を掛けたも のをYに足し合わせる(𝛼も 層ごとに学習される) LM layer • self-attention層、FFW層の 出力をYに足し合わせる 14
アーキテクチャ: Language model tanh gating 24層のLM層から構成されるFlaminogoについて、 𝑡𝑎𝑛ℎ(𝛼)の絶対値|𝛼|の訓練時の推移 15
アーキテクチャ:それぞれのtransfomer Perceiver Resampler、GATE XATTNDENSE、Frozen LMで使われた transfomerの詳細は表のようになる L:層数、D:transfomerの隠れ次元、 H:ヘッド数、Act.:活性化関数 • それぞれのキーとバリューの次元は D/Hとなる • FFW層(MLP)の隠れ次元は4D 16
アジェンダ ◼ Flamingoの概要 ◼ アーキテクチャ ◼ 結果 17
結果:評価用ベンチマーク マルチモーダルモデルの性能を評価する ための16のデータセット DEV:開発段階での検証に使われた Gen.:生成タスク 18
結果:Flamingo(few-shot)vsSOTA(fine-tuning) • Few-shot推定(わずかな例が与えらた推定)の Flamingoとfine-tuningしたSOTA(以前の最高性 能のモデル)の比較 • Flamingoは16つのうち6つのタスクで上回った FT: fine-tuning Shot: 例の数 19
結果:Flamingo(fine-tuning)vsSOTA(fine-tuning) • Flamingoが性能で上回れなかった16つのうち 9つのタスクについて、 fine-tuningした FlamingoとSOTAの比較 • Flamingoは検証データとテストデータの両方 で9つのうち5つ上回った 20
参考文献 Flamingo CLIP NormalizerFree ResNet (NFNet) 21