9.6K Views
May 16, 24
スライド概要
DL輪読会資料
DEEP LEARNING JP [DL Papers] EmerDiff: Emerging Pixel-level Semantic Knowledge in Diffusion Models Yuta Oshima, Matsuo Lab http://deeplearning.jp/
EmerDiff: Emerging Pixel-level Semantic Knowledge in Diffusion Models 書誌情報 著者 • ICLR2024 • Koichi Namekata, Amirmojtaba Sabour, Sanja Fidler, Seung Wook Kim • University of Toronto, Vector Institute, NVIDIA 概要 • 事前学習済みの拡散モデルから,追加の学 習なしにセグメンテーションを行う. • 拡散モデル内部にセマンティックな情報が 現れていることを示唆. 2
目次 1. 拡散モデルの基礎 2. EmerDiff: Emerging Pixel-level Semantic Knowledge in Diffusion Models 3
拡散モデルとは • 拡散モデルは,画像生成での成功を皮切りに,大きく注目を集める生成モデル. • 発展の契機となったのは,Denoising Diffusion Probabilistic Models (DDPM)[1]と 呼ばれるモデルの登場. • GANなどの従来の生成モデルに比べ,生成品質や学習安定性の面で優れる. 4
拡散モデルとは • 拡散モデルでは,初期値のノイズから段階的にノイズを除去し,データを生成. • 下の図における𝑥 𝑇 は,ガウス分布からランダムにサンプリングされた初期値 となっている. • ランダムな初期値テンソルからデータを生成する深層生成モデルの基本的な 設計に沿っている. 5
拡散モデルの枠組み Denoising Diffusion Probalistic Model (DDPM) [1] • データx0 に徐々にガウシアンノイズを加えていき,完全なガウシアンノイズ 𝑥 𝑇 ~𝑁(𝑥 𝑇 ; 0, 𝐼)にする(拡散過程).ここにはNNは使用しない. • β𝑡 の値が大きいほど,ノイズの割合が大きい. • 𝑡が離散の場合は,𝑇 = 1000などがよく用いられる. 6
拡散モデルの枠組み Denoising Diffusion Probalistic Model (DDPM) [1] • 生成は,拡散過程を逆向きに辿る(逆過程).逆過程をNNでモデル化. • ノイズの乗ったデータ𝑥t と拡散時刻𝑡を入力とし, 𝑥𝑡−1の平均と分散を求める形 で定式化することができる. 7
拡散モデルの枠組み Denoising Diffusion Probalistic Model (DDPM) [1] • 実際は, ノイズの乗ったデータ𝑥t と拡散時刻𝑡を入力とし, 𝑥t に載っているノイ ズを予測する.このノイズ予測器にNNが用いられている. 画像引用元:深層生成モデル2024 第6回 講義資料 8
拡散モデルの枠組み Denoising Diffusion Probalistic Model (DDPM) [1] • 実際は, ノイズの乗ったデータ𝑥t と拡散時刻𝑡を入力とし, 𝑥t に載っているノイ ズを予測する.このノイズ予測器にNNが用いられている. • ノイズ予測器で予測したノイズεを 𝑥t から引くことで,反復的にノイズを除去. 画像引用元:深層生成モデル2024 第6回 講義資料 9
拡散モデルのアーキテクチャ Denoising Diffusion Probalistic Model (DDPM) [1] • DDPMではノイズ除去器にU-Net [2] を用いる. • 最近ではViTベースの拡散モデル[3]も現れている. 10
軽量な拡散モデル 潜在拡散モデル [6] • VQ-VAE[4][5]等と組み合わせることで,画像を低次元の潜在変数に落 とし込み,より少ない計算量で拡散モデルを学習する. • より高解像度の生成も可能に. 11
条件付け拡散モデル Text to Image (T2I) の拡散モデル [6][7] • 条件付け生成モデルの枠組みを拡散モデルに応用した研究. • 言語情報で条件付けることで,柔軟な指示を生成される画像に与えることが可能. • Cross attentionを用いて条件付けを行うことが多い[6]. 12
目次 1. 生成モデルの基礎 2. EmerDiff: Emerging Pixel-level Semantic Knowledge in Diffusion Models 13
背景 • 拡散モデルでは,これまでの画像生成モデル を凌駕する,高精細な画像生成が可能なため, モデルは画像の細部の情報まで理解している はず. • 拡散モデルから適切に表現を抽出する方法さ え見つかれば,セグメンテーションタスクを うまく解けるはずである. 14
手法 • 拡散モデルの特徴マップ(16 × 16)から意味的なまとまりを捉え,画像(512 × 512)へマッピングする. • 使用するのはK-meansクラスタリングと事前学習済み拡散モデル(Stable Diffusion, SD[6])のみなので,学習の必要がない. • セマンティックな情報が必要という意味で,言語条件付け拡散モデルであることが重要. 15
手法 • 緑枠の処理 • まず,対象の画像をUnetに入力し,特徴マップを取得する. • 先行研究に基づき,upsample方向で𝟏𝟔 × 𝟏𝟔(特にセマンティックな情報を含む[8])の,1つ目(含まれる物体 の内容の操作に寄与する[9])のcross attentionのquery vectorを用いる. • 最もノイズレベルが低い𝑡𝑓 = 1の際のマップを採用(下線はハイパーパラメタ). • Cross attentionのquery vectorは言語条件付けとのやりとりをするため,セマンティックな情報を含む. • このマップを,K-meansクラスタリングし,特徴マップ上のまとまりを捉えたマスク𝑴を得る. 16
手法 • オレンジ枠の処理 • 特徴マップ上のまとまりを捉えたマスク𝑴の値に二種類の定数 𝜆, −𝜆 をかけ,Unet内部の attention計算後に足し合わせる(Modulation).その潜在変数に対して逆過程を回す. • 3つ目のattentionに対して.逆過程の 𝑡𝑚 = 281 以降のみこの処理を行う(下線はハイパーパラメタ) . • そして得られた二つの潜在変数 𝐼+ , 𝐼−の差分を計算する.この差が大きい部分(差分マップ𝒅) が,潜在変数上で特徴マップ上のあるまとまりに対応する部分である. • 差分マップ𝑑の𝑎𝑟𝑔𝑚𝑎𝑥をとることで,画像のセグメンテーションを完了する. 17
実験 • 基本的な結果 • ナイーブなupsampleと比較して,提案されたパイプラインの有効性が確認される(図4). • 16 × 16のセグメンテーションマップをただアップサンプルした場合は,荒く理解困難. • Maskの数の指定を変更した場合も,意味的に適切な方法で物体数が増えていく(図5). • 定量的にも,対照学習のモデルに勝っている(表2). 18
実験 • さらなる結果 • 提案手法と,アノテーションな しで手に入る,任意の単語 (オープンボキャブラリー)に よるセグメンテーションモデル の先行研究と組み合わせること で,互いの弱点を補ったモデル を構築可能. • 組み合わせ方は,単純に重なり の大きさにより決める. 19
実験 • アブレーション • マップを抽出する際の拡散タイムステップ𝑡𝑓 は重要(図12). • Modulationで重要なのは,何層目のcross attentionに作用させるか(図14). • 1層目が含まれる物体の内容などの荒い内容,3層 目が見た目などの精細情報を扱っているためか[9]. 20
限界と結論 • 極端に小さい物体(例えば、動物の脚や人間の顔)の識別が困難(図8). • 詳細な部分が低次元のレイヤーに圧縮されているため,低解像度のセグメンテーションマップを生成する際に,こフ レームワークがそれらを分離できないためか. • 特徴表現には,物体のセマンティクスだけでなく,空間的な位置や色などの他の属性も含まれて いる可能性があり,空や地面などの一部の物体が過剰にセグメンテーションされてる. • SDのみでしか検証していないが,より多くの生成モデルの理解を助けうる知見である. 21
感想 興味深かった点 • SDの内部挙動について,先行研究で判明している知見をフルで活用していた. • SDのような公開モデルの挙動について詳しく知っておくと良いことがある. • 学習せずともセグメンテーションができる. • 特にGPUが高騰している現在だと,学習フリーの研究が増えてきていることもあり,考えさせられた. • 紹介しきれなかったが,アブレーションが豊富で,痒いところに手が届く論文になっていた. • 「生成できるということは理解しているということ」であるという思想を強く感じた. 考える余地のある点 • 拡散モデルのような高精細な生成が可能なモデルが,画像の細部への知識を多く含むのは直感的 も理解しやすいが,一方で,画像の大域的な情報を持っているとは限らない. • 画像分類などは,対照学習のモデルの方が上手くできるかもしれない. • これだけでは,「生成できるということは理解しているということ」とは限らない. 22
参考文献 [1] Jonathan Ho, Ajay Jain, and Pieter Abbeel. Denoising diffusion probabilistic models. Advances in neural information processing systems, 33:6840–6851, 2020. [2] Ronneberger, O., Fischer, P., & Brox, T. (2015). U-net: Convolutional networks for biomedical image segmentation. In Medical Image Computing and Computer-Assisted Intervention–MICCAI 2015: 18th International Conference, Munich, Germany, October 5-9, 2015, Proceedings, Part III 18 (pp. 234-241). Springer International Publishing. [3] William Peebles and Saining Xie. Scalable diffusion models with transformers. arXiv preprint arXiv:2212.09748, 2022. [4] Van Den Oord, Aaron, and Oriol Vinyals. "Neural discrete representation learning." Advances in neural information processing systems 30 (2017). [5] Razavi, Ali, Aaron Van den Oord, and Oriol Vinyals. "Generating diverse high-fidelity images with vq-vae-2." Advances in neural information processing systems 32 (2019). [6] Rombach, Robin, et al. "High-resolution image synthesis with latent diffusion models." Proceedings of the IEEE/CVF conference on computer vision and pattern recognition. 2022. [7] Ramesh, A., Dhariwal, P., Nichol, A., Chu, C., & Chen, M. (2022). Hierarchical text-conditional image generation with clip latents. arXiv preprint arXiv:2204.06125, 1(2), 3. [8] Grace Luo, Lisa Dunlap, Dong Huk Park, Aleksander Holynski, and Trevor Darrell. Diffusion hyperfeatures: Searching through time and space for semantic correspondence. arXiv, 2023. [9] Andrey Voynov, Qinghao Chu, Daniel Cohen-Or, and Kfir Aberman. P+: Extended textual conditioning in text-to-image generation. 2023. [10] https://lilianweng.github.io/posts/2021-07-11-diffusion-models/ 23
生成モデルとは • 観測されたデータが従う分布(データ分布)をモデル化することで,それらと似 たデータを生成できるモデル. データ分布 𝑝𝑑𝑎𝑡𝑎 (𝑥) モデル化 (近似) 生成 生成モデル 𝑝θ (𝑥) 生成 データの集合D = {𝑥 𝑖 }1𝑁 24
深層生成モデルとは • ニューラルネットワークでモデル化された生成モデルを,特に深層生成モデルと 呼ぶ. • ランダムにサンプリングされた初期値からデータを生成するモデルが多い. 𝑧 ランダムな 初期値 生成モデル 𝑝θ (𝑥|𝑧) 生成された データ 25
深層生成モデルとは • 拡散モデル以前にも,多くの深層生成モデルの枠組みが提案されている[10]. 26
条件付け生成モデルとは • ランダムな初期値の他に,条件𝒄を入力に用いることで,指定した条件に合った 生成が可能となる. • 例えばMNISTの生成なら,条件𝑐として数字ラベルを与えれば,その数字の画像を生成可能. • 条件𝑐はラベルのような単純なものである必要はない.テキストなどでも. c 𝑧 生成モデル 𝑝θ 𝑥 𝑧, 𝑐) 27