DDIM和DDPM之 间的区别与联系

核心关系概述

首先,要理解DDIM并不是一个全新的模型,而是DDPM的一个精巧的重新参数化和扩展。它们使用完全相同的训练目标和方法,因此你可以用一个训练好的DDPM模型直接来运行DDIM的采样算法,而无需重新训练。

DDIM的核心贡献是:发明了一种新的、非马尔可夫链的扩散过程,从而实现了更高效、更确定性的采样


详细区别对比

我们从几个维度来对比它们:

特性DDPMDDIM
扩散过程马尔可夫链 (Markov Chain)。每一步都严格依赖于前一步。非马尔可夫链 (Non-Markovian)。设计了一种更灵活的路径,当前状态可以依赖于更早的历史状态。
采样速度。必须严格地从 T 步一步步迭代到 1 步(例如1000步)。。允许跳步采样。可以用远少于训练步数(如50步或100步)的步骤生成高质量样本。
采样确定性随机 (Stochastic)。反向过程的每一步都注入了新的随机高斯噪声。确定性 (Deterministic) 或随机。可以通过一个参数(η)来控制随机性。当 η=0 时,过程完全确定。
生成过程是一个随机过程,即使输入相同的初始噪声,每次生成的结果都不同。η=0 时,是一个确定性映射,输入相同的初始噪声,输出结果完全相同。
数学基础基于变分推断 (Variational Inference),推导出一个去噪匹配目标。基于非马尔可夫假设,重新推导了逆向过程的概率分布,使其与DDPM的训练目标兼容。

核心问题解答

1. DDIM有把DDPM中的噪声设置为零吗?体现在哪里?

答案是:是的,但这是在采样(推理)阶段,而不是训练阶段。

在DDPM的反向采样过程中,每一步的关键操作是:

  1. 预测出当前步的噪声 ε_θ
  2. 用这个预测的噪声和公式计算出 x_{t-1}
  3. 这个计算公式里包含一项随机采样的高斯噪声 z(如下公式中的 σ_t z)。正是这项噪声使得DDPM的生成过程是随机的。

DDPM的反向采样公式(简化):
x_{t-1} = (1/√α_t) * (x_t - ((1-α_t)/√(1-ᾱ_t)) * ε_θ) + σ_t z
(其中 z ~ N(0, I)σ_t 是方差项)

DDIM的核心洞察是:他们发现,只要设计一个特殊的非马尔可夫扩散过程,这个逆向过程的分布就可以有多种选择。他们从中选择了一个方差更小的版本。

DDIM的反向采样公式(重新参数化后):
x_{t-1} = √(ᾱ_{t-1}) * ( (x_t - √(1-ᾱ_t) * ε_θ(x_t, t)) / √(ᾱ_t) ) + √(1-ᾱ_{t-1} - σ_t²) * ε_θ(x_t, t) + σ_t z

现在,重点来了:

  • 在这个公式中,σ_t 被定义为 η * √( (1-ᾱ_{t-1})/(1-ᾱ_t) ) * √(1 - ᾱ_t/ᾱ_{t-1}) )
  • 当我们设置 η = 0 时,σ_t 就等于 0
  • 一旦 σ_t = 0,上面公式的最后一项 σ_t z消失了

体现在哪里?
体现在反向采样算法的代码实现中。 当使用DDIM采样且设置 eta=0 时,代码中生成随机噪声 z 并将其与 sigma_t 相乘的那一行,实际上是在加一个零向量,相当于没有添加任何新的随机噪声。整个反向过程只依赖于初始的随机噪声 x_T 和神经网络确定的预测 ε_θ

所以,DDIM并没有“删除”DDPM中的噪声,而是通过数学推导提供了一个选项,允许我们将采样过程中额外添加的随机噪声项的大小设置为零

2. 反向采样的过程为什么说DDIM的是确定的?

正是因为上面一点。

当设置 η = 0 时,DDIM的反向采样过程不再注入任何随机性。整个过程的每一步计算都是确定的:

  1. 从纯噪声 x_T 开始(这是一个随机起点,但一旦固定就不变)。
  2. 神经网络 ε_θ 是一个确定的函数(模型权重固定)。
  3. 反向采样公式 x_{t-1} = f(x_t, ε_θ) 也是一个确定的计算,不含随机项 z

因此,给定一个固定的初始噪声 x_T,整个反向过程就像沿着一条确定的轨迹下滑,最终必然会到达同一个终点 x_0。这使得DDIM的采样成为一个确定性映射(Deterministic Mapping)。

这与DDPM形成鲜明对比:DDPM即使在相同的 x_T 下,每一步加入的随机噪声 z 都会不同,导致每次采样会走上不同的轨迹,从而产生不同的结果。

这种确定性有什么好处?

  1. 样本可重现(Reproducibility):对于同一个“种子”(初始噪声),你总能生成完全一样的图像,这对于研究和调试非常有用。
  2. 隐空间插值(Latent Interpolation):因为反向过程是一个 deterministic mapping,你可以将初始噪声 x_T 视为图像的隐编码(Latent Code)。对两个不同的 x_T 进行插值,再通过DDIM解码,可以得到语义上平滑过渡的图像。而在DDPM中,由于过程的随机性,这种插值是不稳定、不连续的。
  3. 更快的采样:确定性只是DDIM的一个特性,它另一个巨大优势是跳步采样。因为它不依赖于马尔可夫链,我们可以设计一个子序列 {τ_1, τ_2, ..., τ_S}(其中 S << T)来进行反向过程,大步长地“跳”着生成图像,大大加速了采样速度,且质量损失很小。

总结

  • DDIMDDPM 的“灵魂伴侣”,它们共享训练过程。
  • DDIM通过改变推理(采样)过程,提供了一个方差不添加(η=0) 的选项,从而实现了确定性采样
  • 这个确定性采样过程使得生成过程可重现、可插值,并且通过与跳步采样结合,实现了质量和速度的卓越权衡

可以说,DDIM的提出极大地推动了扩散模型的应用,因为它解决了DDPM最大的痛点——采样速度过慢。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/96731.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/96731.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

c++---map和set

这里再提二叉树&#xff08;二叉搜索树&#xff09;&#xff0c;是为了后面讲解map和set做准备。 一、二叉搜索树 二叉搜索树又称二叉排序树&#xff0c;它或者是一棵空树&#xff0c;或者是具有以下性质的二叉树。 若它的左子树不为空&#xff0c;则左子树上所有节点的值都…

windows下,podman迁移镜像文件位置

docker-desktop有自带的镜像文件位置迁移功能&#xff0c;但podman-desktop还没有&#xff0c;所以只能自己操作wsl导入导出来实现# 1.一定要先停止当前machine podman machine stop# 2. 导出当前 machine&#xff08;会生成 tar 镜像&#xff09; wsl --export podman-machine…

Champ-基于3D的人物图像到动画视频生成框架

本文转载自&#xff1a;https://www.hello123.com/champ ** 一、&#x1f916; Champ 是什么&#xff1f; 阿里 南大 复旦联手打造的虚拟人动作黑科技&#xff01;Champ 可不是普通动画工具&#xff0c;它能把你随手拍的小视频变成专业级 3D 动画 —— 无论跳舞、打拳还是走…

Thingsboard 3.4 源码运行 Mac Mini

拉取源码 git clone https://github.com/thingsboard/thingsboard.gitjdk11 java -version java version "11.0.27" 2025-04-15 LTS Java(TM) SE Runtime Environment 18.9 (build 11.0.278-LTS-232) Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.278-LTS-23…

【AI大模型面试宝典60题】1-5

目录 Q1:仅编码器(BERT 类)、仅解码器(GPT 类)和完整的编码器-解码器架构各有什么优缺点? 1. 编码器架构 (Encoder-only) - 代表:BERT系列 2. 解码器架构 (Decoder-only) - 代表:GPT系列 3. 编码器-解码器架构 (Encoder-Decoder) - 代表:T5、BART 升华与总结 (总…

macOS中找不到钥匙串访问

如果在macOS中找不到钥匙串访问&#xff0c;请操作如下命令&#xff1a; security list-keychains可以看到类似&#xff1a; “/Library/Keychains/System.keychain” 然后执行&#xff1a; open /Library/Keychains/System.keychain然后可以将应用保留在程序坞中保留。

UCOSIII移植——学习笔记1

本文是笔者在学习 正点原子官方 的《【正点原子】手把手教你学UCOS-III实时操作系统》系列视频时整理的笔记。 视频讲解清晰透彻&#xff0c;非常感谢UP主的无私奉献&#xff01;原课程链接如下&#xff1a; &#x1f449; B站视频链接&#xff1a;【正点原子】手把手教你学UCO…

SpringBootCodeGenerator使用JSqlParser解析DDL CREATE SQL 语句

&#x1f9e0; 使用 JSqlParser 解析 CREATE TABLE SQL 语句详解在数据库开发中&#xff0c;我们常常需要从 SQL 中提取表结构信息&#xff0c;比如字段名、类型、注释等。相比使用正则表达式&#xff0c;JSqlParser 提供了更可靠的方式来解析 SQL 语句&#xff0c;尤其适用于复…

css3新增-网格Grid布局

目录flex弹性布局Gird布局开启网格布局定义网格中的行和列长度值百分比值新单位fr关键字函数minmax(min, max)函数-repeatauto-fill vs auto-fit举例说明grid-template-areasgapgrid-auto-columns和grid-auto-rowsjustify-contentalign-contentjustify-contentalign-contentjus…

最新最强新太极工具3.6 支持Windows和不支持mac电脑,支持免改码,和改码,支持12—18系统

温馨提示&#xff1a;文末有资源获取方式最新最强太极工具3.6支持Windows和Mac计算机&#xff0c;支持无代码更改和代码更改&#xff0c;支持12-18个系统 支持A7-A11芯片、Apple 5s x、iPad A7至A11芯片&#xff0c;支持所有者锁定、激活锁定、无法激活&#xff08;密码界面和禁…

深入浅出 C++20:新特性与实践

C20 是 C 编程语言的一次重要更新&#xff0c;引入了许多新特性和改进&#xff0c;旨在提升代码的简洁性、安全性和性能。本文将详细介绍 C20 的一些核心特性&#xff0c;并通过示例代码帮助读者理解这些特性的应用场景。C20 新特性总结 以下是 C20 的主要新特性及其简要描述&a…

CSS 属性概述

CSS 属性概述 CSS 属性用于控制 HTML 元素的样式和行为&#xff0c;包括布局、颜色、字体、动画等。以下是常用的 CSS 属性分类及示例&#xff1a; 布局相关属性 display: 控制元素的显示方式&#xff0c;如 block、inline、flex、grid。position: 定义元素的定位方式&#…

--- 统一请求入口 Gateway ---

spring cloud gateway 官方文档 Spring Cloud Gateway 中文文档 什么是api网关 对于微服务的每个接口&#xff0c;我们都需要校验请求的权限是否足够&#xff0c;而微服务把项目细化除了许多个接口&#xff0c;若这些接口都要对服务进行权限校验的话&#xff0c;那么无疑加重…

返利app的消息队列架构:基于RabbitMQ的异步通信与解耦实践

返利app的消息队列架构&#xff1a;基于RabbitMQ的异步通信与解耦实践 大家好&#xff0c;我是阿可&#xff0c;微赚淘客系统及省赚客APP创始人&#xff0c;是个冬天不穿秋裤&#xff0c;天冷也要风度的程序猿&#xff01; 在返利app的业务流程中&#xff0c;用户下单、返利计算…

Vue3 响应式失效 debug:Proxy 陷阱导致数据更新异常的深度排查

人们眼中的天才之所以卓越非凡&#xff0c;并非天资超人一等而是付出了持续不断的努力。1万小时的锤炼是任何人从平凡变成超凡的必要条件。———— 马尔科姆格拉德威尔 &#x1f31f; Hello&#xff0c;我是Xxtaoaooo&#xff01; &#x1f308; “代码是逻辑的诗篇&#xff0…

【贪心算法】day10

&#x1f4dd;前言说明&#xff1a; 本专栏主要记录本人的贪心算法学习以及LeetCode刷题记录&#xff0c;按专题划分每题主要记录&#xff1a;&#xff08;1&#xff09;本人解法 本人屎山代码&#xff1b;&#xff08;2&#xff09;优质解法 优质代码&#xff1b;&#xff…

LeetCode算法日记 - Day 42: 岛屿数量、岛屿的最大面积

目录 1. 岛屿数量 1.1 题目解析 1.2 解法 1.3 代码实现 2. 岛屿的最大面积 2.1 题目解析 2.2 解法 2.3 代码实现 1. 岛屿数量 https://leetcode.cn/problems/number-of-islands/ 给你一个由 1&#xff08;陆地&#xff09;和 0&#xff08;水&#xff09;组成的的二维…

短波红外相机在机器视觉检测方向的应用

短波红外相机在机器视觉检测方向的应用短波红外相机&#xff1a;机器视觉的“低成本突破者”一、打破成本困局&#xff1a;短波红外的“平民化”革新二、核心技术&#xff1a;有机材料的“硬核创新”1. 材料革命&#xff1a;有机感光层的优势2. 工艺兼容&#xff1a;嫁接成熟CM…

【数据结构与算法】图 Floyd算法

相关题目&#xff1a; 1334. 阈值距离内邻居最少的城市 - 力扣&#xff08;LeetCode&#xff09; 资料 &#xff1a; Floyd算法原理及公式推导 - 知乎 Floyd 算法是一种经典的动态规划算法&#xff0c;用与求解图中所有顶点之间的最短短路路径。它由Robert Floyd 于1962…

卫星通信天线的指向精度,含义、测量和计算

卫星通信天线的指向精度&#xff0c;含义、测量和计算我们在卫星通信天线的技术规格书中&#xff0c;都会看到天线指向精度这个指标。一般来说&#xff0c;技术规格书上的天线指向精度的参数是这么写的&#xff1a;“天线指向精度≤1/10半功率波束带宽”今天这个文章&#xff0…