Подробное объяснение основных принципов модели диффузии (3) стохастического дифференциального уравнения (СДУ)

Эта статья является продолжением "Подробного объяснения основных принципов модели распространения (2) Генеративное моделирование на основе показателей (SGM)" и продолжает знакомить с другой связанной моделью распространения. Точно так же ссылки и детали такие же, как и в предыдущем статья такая же, и читатели могут обратиться к ней самостоятельно.Эта статья является завершением основного введения в диффузию.Эта статья посвящена части стохастического дифференциального уравнения (СДУ). Большая часть теории в этой статье взята из оригинального текста SDE Song Yang et al., пожалуйста, нажмите на ссылку.
Содержание данной статьи требует изучения предварительного знания « Стохастический процесс ».

3. Стохастическое дифференциальное уравнение (SDE)

Мы заметили, что будь то DDPM или SGM, все они имеют общую характеристику: цепочка добавления шума и процесс шумоподавления оба дискретизированы , то есть следуют временному шагу 1 ~ T 1 ~ T1 ~ T разбивается, как мы подчеркивали, конечно, времяTTT должно быть достаточно большим, чтобы гарантировать, что наши окончательные выборки с добавленным шумом приближаются к стандартному нормальному распределению (если вы не понимаете, см. введение в первом разделе). На самом деле это случайный процесс.Идея СДУ состоит в том, чтобысделать этот дискретный процесс случайного управления непрерывным, поэтому должна быть задействована теория и принцип стохастического дифференциального уравнения (стохастическое управление). Сун Ян и др. дали подробное визуальное описание этого процесса (из рисунка видно, что мы хотим описать проблему через непрерывный процесс).
вставьте сюда описание изображения

3.1, СДУ прямого броуновского движения (положительный временной ряд плюс шумовое стохастическое дифференциальное уравнение броуновского движения)

Сначала приведите формулу стохастического дифференциального уравнения положительного временного ряда , где f ( x , t ) f (x, t)ф ( х ,t ) называетсяx ( t ) x(t)Коэффициент дрейфа x ( t ) , g ( t ) g (t)g ( t ) называетсяx ( t ) x (t)Коэффициент диффузии x ( t ) . ввw — стандартное броуновское движение положительных временных рядов.
dx = f ( x , t ) dt + g ( t ) dw dx = f (x, t) dt + g (t) dwд х"="ф ( х ,т ) д т+g ( t ) d w
Давайте докажем, что, будь то DDPM или SGM, они оба являются дискретными версиями SDE.

3.1.1 Эквивалентность между DDPM и прямым броуновским движением SDE

Мы уже знаем из (1), что для DDPM длина цепи равна NNN -подобный процесс сложения:
xi = 1 - β ixi - 1 + β izi - 1 x_i=\sqrt{1-\beta_i}x_{i-1}+\sqrt{\beta_i}z_{i-1}Икся"="1бя Икся - 1+бя гя - 1
β я ^ знак равно β я N \ шляпа {\ beta_i} = \ гидроразрыва {\ beta_i} {N}бя^"="Нбя,令β ( я N ) знак равно β я ^ \бета (\ гидроразрыва {я} {N}) = \ шляпа {\ beta_i}б (Ня)"="бя^х ( я N ) = xix (\ гидроразрыва {i} {N}) = x_iх (Ня)"="Иксяz ( я N ) = ziz (\ frac {i} {N}) = z_iг (Ня)"="гя
Приведенную выше формулу можно изменить:
x ( i N ) = 1 − 1 N β ( i N ) x ( i − 1 N ) + 1 N β ( i N ) z ( i − 1 N ) x (\ frac { i }{N})=\sqrt{1-\frac{1}{N}\beta(\frac{i}{N})}x(\frac{i-1}{N})+\sqrt{ \ гидроразрыва {1} {N} \ бета (\ гидроразрыва {i} {N})} г (\ гидроразрыва {i-1} {N})х (Ня)"="1Н1б (Ня) х (Ня1)+Н1б (Ня) г (Ня1)
Еслия N \frac{i}{N}НяЧто касается дискретного размера небольшого шага, то мы можем думать, что это эквивалентно
: ( t_i) = \ sqrt {1- \ bigtriangleup t \ beta ( t_i)} x ( t_ {i-1}) + \ sqrt {\ bigtriangleup t \ beta ( t_i)} z ( t_ {i-1})х ( тя)"="1( tя) х ( тя - 1)+( tя) г ( тя - 1)
, чтобы сделать его непрерывным:ti − 1 + △ t = ti t_{i-1}+\bigtriangleup t=t_iтя - 1+т"="тя
Икс ( т + △ т ) знак равно 1 - △ т β ( т + △ т ) Икс ( т ) + △ т β ( т + △ т ) z ( т ) х (т + \ bigtriangleup t) = \ sqrt {1- \ bigtriangleup t \ beta (t + \ bigtriangleup t)} x (t) + \ sqrt {\ bigtriangleup t \ beta (t + \ bigtriangleup t)} z ( t)х ( т+т )"="1( t+т ) х ( т )+( t+т ) z ( t )
将其Taylor近似进行展开
x ( t + △ t ) ≈ [ 1 − 1 2 △ t β ( t + △ t ) ] x ( t ) + △ t β ( t + △ t ) z ( t ) —— [ DDPM ] x (t + \ bigtriangleup t) \ приблизительно [1- \ frac {1} {2} \ bigtriangleup t \ beta (t + \ bigtriangleup t)] x (t) + \ sqrt {\ bigtriangleup t \ бета(t+\bigtriangleup t)}z( t)——[DDPM]х ( т+т )[ 121( т+т )] х ( т )+( t+т ) z ( t ) --- [ DD PM ]
x ( t + △ t ) - x ( t ) ≈ - 1 2 △ t β ( t ) x ( t ) + △ t β ( t ) z ( t ) --- [ DDPM ] x (t + \ bigtriangleup t) -x (t) \ приблизительно- \ frac {1} {2} \ bigtriangleup t \ beta (t) x (t) + \ sqrt {\ bigtriangleup t \ beta (t)} z(t)——[ДДПМ]х ( т+т )х ( т )21( т ) х ( т )+( т ) z ( t ) --- [ DD PM ]
而这即:
dx = − 1 2 β ( t ) x ( t ) dt + β ( t ) dw --- [ SDE ] ≈ [ DDPM ] dx=-\frac{1 }{2}\beta(t)x(t)dt+\sqrt{\beta(t)}dw——[SDE]\приблизительно[DDPM]д х"="21β ( т ) Икс ( т ) d т+б ( т ) d w —— [ S D E ][ ДД ПМ ]

3.1.2. Эквивалентность SGM и прямого броуновского движения SDE

Мы уже знаем из (2), что для SGM цепь длины равна NNN的加噪过程为:
xi~N(x0,σi2I),xi−1~N(x0,σi−12I)x_i~N(x_0,\sigma_i^2I),x_{ i-1}~N(x_0,\sigma_{i-1}^2I)ИксяН ( х0,пя2я ) , хя - 1Н ( х0,пя - 12я )
xi x_iИксяМожно рассматривать как начиная с xi − 1 x_{i-1}Икся - 1Добавлен независимый N ( 0 , ( σ i 2 − σ i − 1 2 ) I ) N (0, (\ sigma_i ^ 2- \ sigma_ {i-1} ^ 2) I)Н ( 0 ,( ря2пя - 12) I )来获得。

xi = xi − 1 + (σ i 2 − σ i − 1 2 ) zi − 1 x_i=x_{i-1}+\sqrt{(\sigma_i^2-\sigma_{i- 1}^2)}z_{i-1}Икся"="Икся - 1+( ря2пя - 12) гя - 1
x (i N) = xi, σ (i N) = σ i, z (i N) = zi, xi = xi - 1 + △ tx(\frac{i}{N})=x_i,\sigma( \frac{i}{N})=\sigma_i,z(\frac{i}{N})=z_i,x_i=x_{i-1}+\bigtriangleup tх (Ня)"="Икся, с (Ня)"="пя, з (Ня)"="гяхя"="Икся - 1+t
上式变成了:
x ( t + △ t ) = x ( t ) + ( σ 2 ( t + △ t ) − σ 2 ( t ) ) ztx(t+\bigtriangleup t)=x(t)+ \sqrt{(\sigma^2(t+\bigtriangleup t)-\sigma^2(t))}z_{t}х ( т+т )"="х ( т )+( р2 (т+т )п2 (т)) гт
Икс ( т + △ т ) - Икс ( т ) знак равно ( σ 2 ( т + △ т ) - σ 2 ( т ) ) △ т △ tztt --- [ SGM ] x (t + \ bigtriangleup t) - x (t) = \ sqrt {\ frac {(\ sigma ^ 2 (t + \ bigtriangleup t) - \ sigma ^ 2 (t))} {\ bigtriangleup t} \ bigtriangleup t} z_ {t} t — — [SGM]х ( т+т )х ( т )"="т( р2 (т+т )п2 (т) )т гтt —— [ SGM ]
x ( t + △ t ) - x ( t ) ≈ d ( σ 2 ( t ) ) dt △ tzt —— [ SGM ] x (t + \ bigtriangleup t) -x (t) \ приблизительно \ sqrt {\ frac {d (\ sigma ^ 2 (t))} {dt} \ bigtriangleup t} z_t — [SGM]х ( т+т )х ( т )д тд ( р2 (т) )т гт—— [ SGM ]
А это:
dx = d ( σ 2 ( t ) ) dtdw —— [ SDE ] ≈ [ SGM ] dx = \ sqrt {\ frac {d (\ sigma ^ 2 (t))} {dt }}dw——[SDE]\примерно[SGM]д х"="д тд ( р2 (т) ) d w —— [ S D E ][ СГМ ]

3.1.3 Новая производительность SDE

В связи с приведенным выше обсуждением мы уже знаем следующую эквивалентность
: 2} \ бета (t) x (t) dt + \ sqrt {\ beta (t)} dw — — [SDE] \ приблизительно [DDPM]д х"="21β ( т ) Икс ( т ) d т+б ( т ) d w —— [ S D E ][ DD PM ]
dx знак равно d ( σ 2 ( t ) ) dtdw —— [ SDE ] ≈ [ SGM ] dx = \ sqrt {\ frac {d (\ sigma ^ 2 (t))} {dt}} dw — — [SDE]\ок [SGM]д х"="д тд ( р2 (т) ) d w —— [ S D E ][ SGM ]
Сонг и др. предлагают в качестве альтернативы метод SDE с лучшими характеристиками
: ds ) dw —— [ NSDE ] dx = - \ frac {1} {2} \ beta (t) x (t) dt + \ sqrt {\ beta (t) (1-2e ^ {- 2 \ int_o ^ t \ beta(s)ds})}dw - [NSDE]д х"="21β ( т ) Икс ( т ) d т+б ( т ) ( 1_2отβ ( s ) d s ) d w —— [ NS D E ]

С помощью кратких доказательств в 3.1.2 и 3.1.1 мы даем эквивалентность между SDE и DDPM/SGM в цепочке добавления шума, которая показывает, что процесс добавления шума DDPM и SGM является дискретизированным процессом SDE. SDE всесторонне рассматривает недостатки и преимущества вышеупомянутых двух непрерывных добавок шума, и автор предлагает метод NSDE.

3.2 Обратное броуновское движение SDE (стохастическое дифференциальное уравнение броуновского движения с обратной синхронизацией шумоподавления)

3.2.1. Обратное броуновское движение SDE.

Андерсон указал, что процесс, обратный процессу прямого добавления шума, по-прежнему является стохастическим дифференциальным уравнением. Подробное описание этой части дано Сонгом и др. Формула выглядит следующим образом, где f ( x , t ) f (x, t)ф ( х ,t ) называетсяx ( t ) x(t)Коэффициент дрейфа x ( t ) , g ( t ) g (t)g ( t ) называетсяx ( t ) x (t)Коэффициент диффузии x ( t ) . ш ^ \ шляпа {ш}ж^ - стандартное броуновское движение обратного временного ряда,pt ( x ) p_t (x)пт( х ) естьх ( т ) х ( т )x ( t ) функция плотности распределения.
dx = [f ( x , t ) - g 2 ( t ) ∇ xlog ( pt ( x ) ) ] dt + g ( t ) dw ^ dx = [f (x, t) -g ^ 2 (t) \ nabla_xlog (p_t(x))]dt+g(t)d\шляпа{ш}д х"="[ ж ( х ,т )г2 (т)хл о г ( рт( х ))] д т+г ( т ) дж^

3.2.2 Эквивалентность траекторий между ОДУ потока вероятностей (обыкновенное дифференциальное уравнение потока вероятностей) и СДУ.

Сонг и др. доказали, что для любого обратного временного ряда, шумоподавляющего процесс стохастического дифференциального уравнения броуновского движения, существует соответствующее обыкновенное дифференциальное уравнение детерминированного потока вероятностей. Его трудно записать. Автор прямо дает заключение здесь. Для подробного доказательства, пожалуйста, обратитесь к приложению к оригинальному тексту Требуется знание стохастического процесса и теории вероятностей.
dx = [f ( x , t ) - 1 2 g 2 ( t ) ∇ xlog ( pt ( x ) ) ] dt dx = [f (x, t) - \ frac {1} {2} g ^ 2 (t )\nabla_xlog(p_t(x))]dtд х"="[ ж ( х ,т )21г2 (т)хл о г ( рт( x ))] d t
Формула ОДУ имеет ту же плотность ребер, что и формула СДУpt ( x ) p_t(x)пт( х )

3.3, обучение SDE

Будь то SDE в 3.2.1 или ODE в 3.2.2, это показывает, что в любой момент времени ttВ момент времени t , когда мы уже знаем егопоказатель Стевина (см. раздел II)∇ xlog ( pt ( x ) ) \nabla_xlog(p_t(x))хл о г ( рт( x )) , то мы можем использовать соответствующий численный метод для обратного создания выборочных данных в соответствии со временем обратного стохастического дифференциального уравнения.По сравнению с SGM, он может использовать несколько методов:

①Используйте итеративное обновление Ланжевена Монте-Карло + выборку (применимы как SGM, так и SDE) (если вы не понимаете, обратитесь ко второй лекции)
②Численные решатели SDE (применимо только к SDE)
③Численные решатели ODE (применимо только к SDE)

3.3.1, метод обучения SDE

Прочитав это, читатели должны были понять, что разница между SDE и SGM заключается в том, что один имеет дело с непрерывным типом, а другой — с дискретным типом.SDE — это продвижение SGM и DDPM.Для более общих моделей мы понимаем, что если мы можем обучать сеть, учитывая любое время TTT (обратите внимание, что в отличие от SGM, это время может быть не целым числом), если ∇ xlog ( pt ( x ) ) \nabla_xlog(p_t(x))можно хорошо оценитьхл о г ( рт( x )) , то для численного моделирования генерации можно использовать обратное решение SDE или обратное решение ODE, поэтому цель по-прежнему состоит в том, чтобы изучить сетьs θ ( xt , t ) s_\theta(x_t,t)ся( хт,t )
L oss = E t ∈ [ 0 , T ] , x 0 , xt [ ∣ ∣ s θ ( xt , t ) − ∇ x log ( p 0 ~ t ( xt ∣ x 0 ) ) ∣ ∣ 2 ] Loss = E_{t\in[0,T],x_0,x_t}[||s_\theta(x_t,t)-\nabla_xlog(p_{0~t}(x_t|x_0))||^2]Л осс"="Еt [ 0 , T ] , х0, хт[ ∣∣ ся( хт,т )хл о г ( р0 т( хтх0)) 2 ]其中p 0 ~ t ( xt ∣ x 0 ) ) p_{0~t}(x_t|x_0))п0 т( хтх0)) получается путем решения задачи прямого броуновского движения SDE,ttт из[ 0 , Т ] [0, Т][ 0 ,T ] для однородной выборки,не обязательно должно быть целым числом.
После обучения сети SDE может использоватьs θ ( xt , t ) s_\theta(x_t,t)ся( хт,t ) , чтобы заменить процесс обратной выборки, в каждый момент времени t процесс прямой обратной генерации удовлетворяет следующему( 1 ) (1)( 1 ) или(2) (2)( 2 ) Сформировать:
dx = [ f ( x , t ) − 1 2 g 2 ( t ) s θ ( xt , t ) ] dt -- ( 1 ) dx = [f ( x , t ) - \ frac { 1 {2}g^2(t)s_\theta(x_t,t)]dt——(1)д х"="[ ж ( х ,т )21г2 (т)ся( хт,t )] d t -- ( 1 )
dx = [ f ( x , t ) − g 2 ( t ) s θ ( xt , t ) ] dt + g ( t ) dw ^ -- ( 2 ) dx = [f (x,t)-g^2(t)s_\theta(x_t,t)]dt+g(t)d\hat{w}——(2)д х"="[ ж ( х ,т )г2 (т)ся( хт,т )] д т+г ( т ) дж^ ——(2)
Метод отбора проб может быть выполнен ①②③, упомянутым в 3.3.

4、Распространение-резюме

На данный момент автор представил текущие три основные модели Diffusion. Читателям вполне достаточно изучить вводный курс «Диффузия» Читателям предлагается выбрать исходный текст для чтения в соответствии с их интересами в последующем углубленном содержании.

Подводя итог, автор ввел (1) (2) (3) основу диффузии, где (2) (3) — связанный с ней метод Score-Function. (1) Это похоже на сквозной метод прямого прогнозирования DDPM.Я надеюсь, что это содержание может дать больше вдохновения для читателей, которые плохо знакомы с Diffusion. Конечно, введение автора гораздо менее подробно, чем исходный текст. Если вы хотите лучше понять содержание, рекомендуется прочитать эти три статьи напрямую. Автор дал ссылки Текущий статус исследования Diffusion основан на части данных трех основных моделей, части алгоритма, методе эффективной выборки и методе параметра обновления, методе взвешивания потери параметра и некоторых других частях для улучшить, но основная идея в основном такие же, как эти три модели. После прочтения (1)~(3) я надеюсь, что у вас появилось базовое понимание и интерес к диффузии, и я надеюсь вдохновить вас на ваши будущие исследования и приложения.

Все формулы набраны вручную, и автор не является ученым, специализирующимся на диффузии.Это содержание представляет собой только собственные учебные заметки и понимание автора.Конечно, могут быть небольшие ошибки или неточные выводы. Если вы обнаружите ошибки или неточности, автор очень приветствует ваши исправления и критические замечания. Автор надеется вместе со всеми изучить состояние развития и перспективы МО. В то же время автор также следит за текущим состоянием развития и новыми результатами исследований МО и МО в режиме реального времени. Если позже будет время, автор обновит кодовую часть этих трех моделей. Всем спасибо!

おすすめ

転載: blog.csdn.net/lvoutongyi/article/details/129190533