跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客GitHub 精选镜像工具UI配色美学隐私政策关于联系
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
PythonAI算法

生成式人工智能的扩散模型概述

综述由AI生成去噪扩散概率模型(DDPM)通过正向加噪和反向去噪过程实现数据生成。文章介绍了 DDPM 的数学框架,包括马尔可夫链的前向扩散与参数化的反向重建过程。详细阐述了高斯噪声下的训练目标推导,以及基于变分下界的最优化方法。此外,还涵盖了评估指标如 IS 和 FID,并讨论了 DDIM、无分类器引导及潜在扩散模型等关键改进技术,为理解现代生成式 AI 提供了理论基础。

草莓泡芙发布于 2025/2/7更新于 2026/6/325 浏览
生成式人工智能的扩散模型概述

生成式人工智能的扩散模型概述

1 引言

生成模型的目标是基于从未知潜在分布中采样得到的数据集,生成新的数据样本。为了实现这一目标,已经提出了许多不同的机器学习方法,例如生成对抗网络(GANs)、变分自编码器(VAEs)、自回归模型、归一化流和能量基模型。本文将介绍去噪扩散概率模型(DDPMs),这是一类生成方法,其基于重建一个扩散过程的思想。扩散过程从潜在分布开始,逐渐向其状态添加噪声,直到最终状态完全是噪声,然后反向重建。通过这种反向重建,纯噪声转变为有意义的数据,因此 DDPMs 提供了一种自然的生成框架。

DDPMs 最初在文献中提出,并在后续工作中进一步推广,已经能够在图像合成和编辑、视频生成、自然语言处理和异常检测等许多领域取得最先进的成果。在经典的形式中,DDPM 是一个由两个随机过程组成的框架,即正向过程和反向过程。正向过程——扩散过程——从初始时间步骤的(近似)潜在分布开始,然后逐渐向其状态添加噪声,直到其终止时间步骤的状态(近似)完全是噪声。反向过程——去噪过程——是一个参数化过程,从完全噪声的状态开始。在 DDPM 的背景下,关键思想是学习反向过程的参数,使得反向过程每个时间步骤的分布近似与正向过程对应时间步骤的分布相同。

2 去噪扩散概率模型(DDPMs)

2.1 数学框架

DDPMs 的核心在于定义一个前向扩散过程和一个反向去噪过程。

前向过程:这是一个固定的马尔可夫链,逐步向数据中添加高斯噪声。给定数据 $x_0$,前向过程定义为: $$ q(x_{1:T}|x_0) = \prod_{t=1}^{T} q(x_t|x_{t-1}) $$ 其中转移核通常为: $$ q(x_t|x_{t-1}) = \mathcal{N}(x_t; \sqrt{1-\beta_t}x_{t-1}, \beta_t\mathbf{I}) $$ 这里 $\beta_t$ 是一个预先设定的方差调度表,控制每一步添加噪声的量。利用重参数化技巧,可以直接计算任意时刻 $t$ 的状态 $x_t$: $$ x_t = \sqrt{\bar{\alpha}_t}x_0 + \sqrt{1-\bar{\alpha}_t}\epsilon, \quad \epsilon \sim \mathcal{N}(0, \mathbf{I}) $$ 其中 $\alpha_t = 1-\beta_t$,$\bar{\alpha}t = \prod{s=1}^{t} \alpha_s$。

反向过程:这是一个学习的马尔可夫链,旨在从噪声恢复数据。我们试图学习一个逆转移核 $p_\theta(x_{t-1}|x_t)$: $$ p_\theta(x_{0:T-1}|x_T) = p(x_T)\prod_{t=1}^{T} p_\theta(x_{t-1}|x_t) $$ 通常假设 $p_\theta(x_{t-1}|x_t)$ 也是高斯分布,由神经网络预测均值和方差。

2.2 训练目标

训练 DDPM 的目标是最小化证据下界(ELBO)的负值。对于高斯情况,这简化为预测噪声 $\epsilon$ 的均方误差损失: $$ L_{simple}(\theta) = \mathbb{E}{t,x_0,\epsilon} [||\epsilon - \epsilon\theta(x_t, t)||^2] $$ 其中 $\epsilon_\theta$ 是神经网络,输入为带噪图像 $x_t$ 和时间步 $t$,输出为预测的噪声。

3 带有高斯噪声的 DDPMs

本节考虑转移核由高斯分布给出的情况。直观而言,在这个设置中,我们认为正向过程逐渐向训练样本添加高斯噪声,反向过程则旨在逐渐去除噪声,从而恢复原始的训练样本。

3.1 高斯分布性质

高斯分布具有封闭性,多个高斯分布的卷积仍然是高斯分布。这使得我们可以直接计算 $q(x_t|x_0)$ 而不需要迭代模拟。

3.2 训练方案

在实际训练中,我们采样时间步 $t \sim U{1, ..., T}$,采样真实数据 $x_0$,采样噪声 $\epsilon \sim \mathcal{N}(0, \mathbf{I})$,计算 $x_t$,然后训练网络最小化预测噪声与真实噪声的差异。

# 简化的训练循环伪代码
for batch in dataloader:
    x0 = batch
    t = torch.randint(0, T, (batch_size,))
    epsilon = torch.randn_like(x0)
    alpha_bar = alphas_cumprod[t]
    xt = sqrt(alpha_bar) * x0 + sqrt(1 - alpha_bar) * epsilon
    pred_noise = model(xt, t)
    loss = mse_loss(pred_noise, epsilon)
    optimizer.zero_grad()
    loss.backward()
    optimizer.step()

3.3 架构选择

常用的神经网络架构包括 U-Net,它结合了跳跃连接以保留空间细节,并配合注意力机制处理长距离依赖。

4 生成模型的评估

在生成建模的背景下,评估生成数据的质量和性能至关重要。

4.1 内容不变指标

  1. Inception Score (IS):衡量生成图像的清晰度和多样性。公式为 $\exp(\mathbb{E}_{x} [KL(p(y|x) || p(y))])$。
  2. Fréchet Inception Distance (FID):比较生成图像和真实图像特征分布的距离。公式为 $|\mu_r - \mu_g|^2 + \text{Tr}(\Sigma_r + \Sigma_g - 2(\Sigma_r\Sigma_g)^{1/2})$。FID 通常被认为比 IS 更稳健。

5 扩展与改进

5.1 去噪扩散隐式模型(DDIM)

DDIM 将扩散过程视为非马尔可夫过程,允许确定性采样。这使得推理速度显著加快,且支持插值和编辑操作。

5.2 无分类器扩散引导

通过训练时随机丢弃条件标签,模型可以在推理时利用梯度引导生成特定类别的数据,无需额外的分类器。

5.3 潜在扩散模型(LDM)

LDM 先在潜在空间(Latent Space)进行扩散,而不是像素空间。这通过预训练的 VAE 压缩图像维度,大幅降低了计算成本,使得高分辨率图像生成成为可能。

结论

扩散模型通过模拟物理扩散过程的逆过程,实现了高质量的生成能力。随着 DDIM、LDM 等技术的演进,扩散模型已成为当前生成式人工智能领域的核心范式之一。

目录

  1. 生成式人工智能的扩散模型概述
  2. 1 引言
  3. 2 去噪扩散概率模型(DDPMs)
  4. 2.1 数学框架
  5. 2.2 训练目标
  6. 3 带有高斯噪声的 DDPMs
  7. 3.1 高斯分布性质
  8. 3.2 训练方案
  9. 简化的训练循环伪代码
  10. 3.3 架构选择
  11. 4 生成模型的评估
  12. 4.1 内容不变指标
  13. 5 扩展与改进
  14. 5.1 去噪扩散隐式模型(DDIM)
  15. 5.2 无分类器扩散引导
  16. 5.3 潜在扩散模型(LDM)
  17. 结论
  • 💰 8折买阿里云服务器限时8折了解详情
  • Magick API 一键接入全球大模型注册送1000万token查看
  • 🤖 一键搭建Deepseek满血版了解详情
  • 一键打造专属AI 智能体了解详情
极客日志微信公众号二维码

微信扫一扫,关注极客日志

微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

更多推荐文章

查看全部
  • Python 入门指南:核心优势、环境配置与最佳实践
  • RAG 技术全面解析:五步流程与十二优化策略详解
  • 基于 LangGraph 与 GPT-Researcher 构建多智能体 AI 研究助理
  • 小白转行 Python 数据分析的职业规划与学习路径
  • 大模型微调技术 LoRA 核心原理与实战面经总结
  • 全国计算机等级考试二级证书的作用与含金量分析
  • 基于 Python 和 FastAPI 实现摸鱼倒计时界面
  • AI NovelGenerator:打破长篇创作壁垒的智能写作革命
  • Gazebo 机器人三维物理仿真平台
  • 苍穹外卖实战:Spring Task 定时任务与 WebSocket 实时通信
  • UV 国内源配置指南:PyPI 与解释器加速实战
  • AI 大模型开发必备书籍推荐:从入门到实战
  • 大语言模型(LLM)技术深度解析与架构演进
  • 基于人类反馈的强化学习(RLHF)全解析
  • 大模型技术入门与微调实战指南
  • AI 最佳落地应用场景分析与实践
  • Android 大厂面试真题与核心知识点解析
  • OpenClaw AI 编程上下文 Token 限制分析与扩容实战
  • HDFS 副本数管理指南:动态调整与性能评估
  • Python 单线程、多线程与多进程详解及代码示例

相关免费在线工具

  • 加密/解密文本

    使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online

  • RSA密钥对生成器

    生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online

  • Mermaid 预览与可视化编辑

    基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online

  • 随机西班牙地址生成器

    随机生成西班牙地址(支持马德里、加泰罗尼亚、安达卢西亚、瓦伦西亚筛选),支持数量快捷选择、显示全部与下载。 在线工具,随机西班牙地址生成器在线工具,online

  • Gemini 图片去水印

    基于开源反向 Alpha 混合算法去除 Gemini/Nano Banana 图片水印,支持批量处理与下载。 在线工具,Gemini 图片去水印在线工具,online

  • curl 转代码

    解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online