Stable Diffusion的数学原理

Stable Diffusion的数学原理

    正在检查是否收录...

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−βt​ ​xt−1​,βt​I)

逆向过程(Reverse process):这是正向过程的逆过程,从噪声中重构出原始数据。

p θ ( x t − 1 ∣ x t ) p_\theta(x_{t-1}|x_t) pθ​(xt−1​∣xt​)

模型的训练目标是最小化原始数据和重构数据之间的差异。

diffusion解码器扩散模型codestable diffusion深度学习生成模型jaxide数据映射url
  • 本文作者:李琛
  • 本文链接: https://wapzz.net/post-7682.html
  • 版权声明:本博客所有文章除特别声明外,均默认采用 CC BY-NC-SA 4.0 许可协议。
本站部分内容来源于网络转载,仅供学习交流使用。如涉及版权问题,请及时联系我们,我们将第一时间处理。
文章很赞!支持一下吧 还没有人为TA充电
为TA充电
还没有人为TA充电
0
  • 支付宝打赏
    支付宝扫一扫
  • 微信打赏
    微信扫一扫
感谢支持
文章很赞!支持一下吧
关于作者
2.3W+
5
0
1
WAP站长官方

通义千问团队发布Qwen1.5 聊天模型性能大幅提升

上一篇

商汤科技推出AI数据分析工具“办公小浣熊”

下一篇
  • 复制图片
按住ctrl可打开默认菜单