Stable Diffusion的数学原理
Stable Diffusion是一种深度学习模型,用于生成和操作图像。它主要基于变分自编码器(Variational Autoencoders, VAEs)和扩散模型(Diffusion Models)的结合。下面是这些关键概念的详细解释:
变分自编码器(VAEs)
变分自编码器是一种生成模型,用于学习输入数据的潜在表示。VAE包括两部分:编码器和解码器。
-
编码器(Encoder):将输入数据映射到一个潜在空间(latent space)。映射过程可以表示为:
q
ϕ
(
z
∣
x
)
q_phi(z|x)
qϕ(z∣x)
其中,
x
x
x是输入数据,
z
z
z是潜在表示,
ϕ
phi
ϕ是编码器的参数。
-
解码器(Decoder):将潜在空间的表示映射回数据空间,尝试重构输入。公式如下:
p
θ
(
x
∣
z
)
p_theta(x|z)
pθ(x∣z)
其中,
θ
theta
θ是解码器的参数。
VAE的目标是最大化输入数据的对数似然的下界(ELBO, Evidence Lower BOund):
log
p
(
x
)
≥
E
q
ϕ
(
z
∣
x
)
[
log
p
θ
(
x
∣
z
)
]
−
D
K
L
(
q
ϕ
(
z
∣
x
)
∣
∣
p
(
z
)
)
log p(x) geq mathbb{E}_{q_phi(z|x)}[log p_theta(x|z)] – D_{KL}(q_phi(z|x) || p(z))
logp(x)≥Eqϕ(z∣x)[logpθ(x∣z)]−DKL(qϕ(z∣x)∣∣p(z))
这里,
D
K
L
D_{KL}
DKL是KL散度,一种衡量两个概率分布差异的方法。
扩散模型(Diffusion Models)
扩散模型是一种逐步将数据从其原始状态转化为无序状态,然后再逆转这个过程以生成数据的模型。其基本步骤如下:
-
正向过程(Forward process):这是一个马尔可夫链过程,逐渐在数据上增加噪声,直到数据完全转化为噪声。
q
(
x
t
∣
x
t
−
1
)
=
N
(
x
t
;
1
−
β
t
x
t
−
1
,
β
t
I
)
q(x_t|x_{t-1}) = mathcal{N}(x_t; sqrt{1-beta_t}x_{t-1}, beta_t I)
q(xt∣xt−1)=N(xt;1−βtxt−1,βtI)
-
逆向过程(Reverse process):这是正向过程的逆过程,从噪声中重构出原始数据。
p
θ
(
x
t
−
1
∣
x
t
)
p_theta(x_{t-1}|x_t)
pθ(xt−1∣xt)
模型的训练目标是最小化原始数据和重构数据之间的差异。
文章来源于互联网:Stable Diffusion的数学原理
相关推荐: Stable Diffusion 模型分享:majicMIX sombre 麦橘唯美
本文收录于《AI绘画从入门到精通》专栏,专栏总目录:点这里。 模型介绍 非常推荐的一个唯美风格的大模型,由国人“Merjic”发布,下载量颇高。这个模型的风格特点是长于展现光影在皮肤上的质感和卷曲有型的发丝,展现出纤细和曲线之美。 条目 内容 类型 大模型 基…
5bei.cn大模型教程网











