Upgrade to Pro — share decks privately, control downloads, hide ads and more …

拡散モデルの原理紹介

BrainPad
May 08, 2024

 拡散モデルの原理紹介

ブレインパッドの社内勉強会「b2b」で利用した資料です。
※ 本資料の公開はブレインパッドをもっとオープンにする取り組みOpenBPの活動のひとつです。
[OpenBrainPad Project]
https://brainpad.github.io/OpenBrainPad/

BrainPad

May 08, 2024
Tweet

More Decks by BrainPad

Other Decks in Science

Transcript

  1. 生成モデルとは 対象ドメインのデータ(分布𝒑(𝒙) に従うと想定)をサンプルするモデルの総称。 ※どんなデータでもベクトルとして扱うことになるので 𝑥 ∈ ℝ𝑑 とする。本資料では、確率密度関数を 分布と表現しています。 各生成モデルを理解するのに下記3つの観点を押さえることが重要(と思っている)

    ① 分布の表現方法 – ドメインデータの分布 𝑝(𝒙)(未知)をうまく表現するための分布族:𝒑𝜽 (𝒙) (θはパラメータ) ② 学習方法 – 「良い𝜃」の定義とそれを求めるアルゴリズム ③ データのサンプル方法 ※入力に対する条件付き分布を考えることもある(例:テキストから画像を生成) その場合は条件付き確率 𝒑(𝒙|𝑪) と 𝒑𝜽 (𝒙|𝑪) を考えればよい( 𝑪は入力 )。
  2. 拡散モデル(DDPM)とは Denoising Diffusion Probabilistic Models(DDPM) ▪ 生成モデルの1つ ▪ 2つの確率過程(マルコフ過程)を考えるのが特徴 https://arxiv.org/pdf/2006.11239.pdf

    より引用 逆拡散過程 拡散過程 完全なノイズ:正規分布 データ分布:𝑝(𝑥0 ) ※簡単のため1次元として表示していますが、 実際のデータは高次元です。 ① 分布の表現方法 ② 学習方法 ③ データのサンプル方法 の説明の前に少し準備を…
  3. Step.1 下記の初期分布に従い、データを生成: 𝑥0 Step.2 時刻𝑡 = 1から𝑇まで以下の変換を繰り返す: 拡散過程 以下のような確率過程を考える 𝒙𝟎

    の情報はノイズに埋もれていく → 最終出力𝒙𝑻 の分布は初期値にほぼ依らない 前時刻の 値を縮小 ノイズを付与 𝜖𝑡 :標準正規分布に従うノイズ、𝛼𝑡 , 𝛽𝑡 :0から1の間の実数(詳細は省略) 対象ドメインデータの従う分布に相当 分布: 拡散過程
  4. Step.1 下記の初期分布に従い、データを生成: 𝑥𝑇 Step.2 時刻𝑡 = 𝑇から1まで以下の変換を繰り返す: 逆拡散過程 以下のような確率過程を考える(拡散過程を逆転させるイメージ) 𝜖𝑡

    :標準正規分布に従うノイズ、𝛼𝑡 , 𝛽𝑡 :0から1の間の実数(詳細は省略) 縮小した分を 割り戻し 加えられた ノイズを推定 ※𝜃は学習させるパラメータ 分布: ※拡散過程の各ステップの変換式(再掲) 標準正規分布 逆拡散過程
  5. Step.1 下記の初期分布に従い、データを生成: 𝑥0 Step.2 時刻𝑡 = 1から𝑇まで以下を繰り返す: 拡散過程 以下のような確率過程を考える 𝒙𝟎

    の情報はノイズに埋もれていく → 最終出力𝒙𝑻 の分布は初期値に依らない 前時刻の 値を縮小 ノイズを付与 𝜖𝑡 :標準正規分布に従うノイズ、𝛼𝑡 , 𝛽𝑡 :0から1の間の実数 ただし、 は平均𝑎、分散共分散行列Σの正規分布の確率密 度関数。 条件付き確率 データの従う分布 マルコフ性 分布:
  6. Step.1 下記の初期分布に従い、データを生成: 𝑥𝑇 Step.2 時刻𝑡 = 𝑇から1まで以下を繰り返す: 逆拡散過程 以下のような確率過程を考える(拡散過程を逆転させるイメージ) 𝜖𝑡

    :標準正規分布に従うノイズ、𝛼𝑡 , 𝛽𝑡 :0から1の間の実数 直接書くと長いので とおいた。 条件付き確率 縮小した分を 割り戻し 加えられた ノイズを推定 ※𝜃は学習させるパラメータ マルコフ性 分布: