【经典论文阅读】Latent Diffusion Models(LDM)

Latent Diffusion Models

High-Resolution Image Synthesis with Latent Diffusion Models

摘要

动机:在有限的计算资源下进行扩散模型训练,同时保持质量和灵活性

引入跨注意力层,以卷积方式实现对一般条件输入(如文本或边界框)的响应以及高分辨率合成

1:引言

贡献

1:与纯粹基于 Transformer 的方法相比,在高维数据上的扩展更优雅

1.1 ==> 在压缩级别上工作,提供比之前工作更真实、更细致的重建

1.2 ==> 高效地应用于高分辨率的百万像素图像合成

2:与基于像素的扩散方法相比,在多种任务上(无条件图像生成、修复、随机超分辨率)取得了具有竞争力的性能,显著降低了计算成本和推理成本

3:与之前需要同时学习编码器/解码器架构和基于分数的先验的工作相比,无需对重建能力和生成能力进行复杂的权衡,确保了极高的重建忠实度,对潜在空间的正则化需求极低

4:对于密集条件约束任务(超分辨率、修复、语义合成),可以以卷积方式应用,并生成一致的超大图像

5:设计了基于跨注意力的通用条件机制,支持多模态训练

6:发布了预训练的潜在扩散模型和自编码模型

2:相关工作

1:generative models for image synthesis

2:diffusion probabilistic models(DM)

3:two-stage image synthesis

ARM:自回归模型

3:方法

autoencoding model(自编码模型) ==> learn a space that is perceptually equivalent to the image space

自编码模型的优点:

  • 低维空间采样

  • 利用从UNet继承的inductive bias,使得在处理具有空间结构的数据时**有效,无需激进的压缩

  • 通用压缩模型,其潜在空间可以用于训练多种生成模型

3.1:Perceptual Image Compression

autoencoder(自编码器)==> 通过 感知损失 + patch-based对抗目标 训练

  • 给定RGB空间的图像 x,编码器 e 把 x 编码到潜在表示 z,z = e(x)

  • 解码器 D 从潜在表示中重建图像 x^~,x^~ = D(z) = D(e(x))

    x的维度:

    z的维度:

  • 编码器下采样因子 f = H/h = W/w,讨论不同的下采样因子(2的指数倍)

避免潜在空间具有任意的高方差,采用了2种不同的正则化:

  • KL正则化:对学习到的潜在表示施加轻微的 KL 惩罚,使其趋向于标准正态分布(类似VAE)

  • VQ正则化:在解码器中使用向量量化层

3.2:Latent Diffusion Models

Diffusion Models

扩散模型:通过逐步对正态分布变量去噪,学习数据分布 p(x),对应学习固定长度为 T 的马尔可夫链的反向过程

图像合成模型,依赖于变分下界的重新加权变体

目标函数:

Generative Modeling of Latent Representations

通过训练的感知压缩模型(由 e 和 D 组成),可以访问一个高效的、低维的潜在空间

与高维像素空间相比,这个潜在空间更适合基于似然的生成模型,因为:

  • 专注于数据中重要的语义信息

  • 在一个更低维、计算上更高效的空间中进行训练

利用模型提供的与图像相关的归纳偏置:包括构建主要基于 2D 卷积层的 U-Net 的能力,并进一步将目标集中在感知上最相关的信息位上,使用重新加权的目标函数

目标函数修改为:

神经网络的主干:time-conditional UNet

zt 可以在训练期间通过 e 高效地获取

从 p(z) 的采样,可以通过 D 的一次前向传递,解码到图像空间

3.3:Conditioning Mechanisms

底层 U-Net 主干中加入跨注意力机制

为处理来自各种模态的 y,引入了一个特定领域的编码器 Tθ, 把 y 映射到一个中间表示 Tθ(y),维度为

跨注意力层的实现:

对于参数的解释:

framework

通过拼接(concatenation)或更通用的跨注意力机制(cross-attention mechanism)对潜在扩散模型 (LDMs) 进行条件化

基于图像条件对,目标函数修改为:

4:实验

4.1:感知压缩的权衡分析

实验内容:比较不同下采样因子 f(如 1, 2, 4, 8, 16, 32)对 LDM 模型性能的影响。下采样因子越大,压缩越强。

结果与分析

  • 小的下采样因子(如 f=1,2)导致训练进展缓慢,因为未能充分利用低维潜在空间的优势。

  • 过大的下采样因子(如 f=32)会导致信息损失,限制最终生成质量。

  • 最优权衡出现在 f=4 到 f=8 之间,既保证了高效的训练和推理,又提供了感知上忠实的生成结果。

结论中等强度的压缩(如 f=4 和 f=8)在效率和质量之间提供了最佳平衡。

4.2:无条件图像生成

实验内容:在多个数据集(CelebA-HQ, FFHQ, LSUN-Churches, LSUN-Bedrooms)上评估 LDM 的无条件生成能力,并通过 FID、Precision 和 Recall 指标与其他方法(如 GAN, DDPM)进行比较。

结果与分析

  • LDM 在大多数数据集上的 FID 指标优于现有扩散模型(例如 ADM)和 GAN 方法,尤其在 CelebA-HQ 数据集上达到 SOTA 性能。

  • 与现有基于像素空间的扩散方法相比,LDM 显著降低了推理和训练的计算成本。

结论:LDM 在无条件图像生成任务中表现出色,能够在更低的计算资源下实现更好的质量。

4.3:条件图像生成

实验内容

  • 通过引入交叉注意力机制(cross-attention),LDM 被扩展到条件生成任务(例如文本到图像生成)。

  • 使用 MS-COCO 数据集评估文本生成性能,并在语义地图条件下进行语义合成。

结果与分析

  • 在文本到图像生成上,LDM 超越了 DALL-E 和 CogView 等方法,FID 指标显著降低。

  • 在语义合成任务中,LDM 能够在低分辨率训练的基础上生成更高分辨率的图像(如 512×1024)。

结论:LDM 的交叉注意力机制极大地增强了条件生成的灵活性,尤其适用于文本到图像等复杂条件。

4.4:超分辨率任务

实验内容:在 ImageNet 数据集上进行 64×64→256×256 超分辨率任务,与 SR3 模型进行比较。

结果与分析

  • LDM 在 FID 指标上优于 SR3,但 IS 指标稍逊。

  • 用户研究表明,在感知一致性上,LDM 生成的高分辨率图像更受欢迎。

结论:LDM 能有效进行超分辨率生成,且具有更高的生成质量。

4.5:图像修复

实验内容:在 Places 数据集上进行图像修复,与 LaMa 等方法比较,评估填补遮挡区域的效果。

结果与分析

  • LDM 修复质量(FID)优于大多数现有方法,并通过用户研究证明更受人类偏好。

  • 高分辨率的修复任务(如 512×512)得益于潜在空间的特性。

结论:LDM 提供了一种通用的条件生成方法,在高质量修复任务中表现突出。

总结

性能提升:LDM 在多个任务上展现出较传统扩散模型显著的性能提升,尤其是在计算效率和感知质量之间实现了良好平衡。

通用性与灵活性:LDM 的架构设计(如交叉注意力机制)使其适应多种条件生成任务,例如文本、语义地图到图像生成。

计算优势:相较于像素空间的扩散模型,LDM 大幅减少了训练时间和推理计算需求,降低了硬件门槛。

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

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

相关文章

交换瓶子(图论 贪心)

1224. 交换瓶子 - AcWing题库 把每一个瓶子看成一个点,从每个瓶子向他应该在的那个位置的瓶子连一条边 通过这个方式,我们就可以连出n条边 观察可以发现这些图有特点: n个点 连成n条边 因为每个点会指向它应该在的位置的那个点&#xff…

汽车免拆案例 | 2007款宝马650i车发动机偶尔无法起动

故障现象 一辆2007款宝马650i车,搭载N62B48B发动机,累计行驶里程约为26万km。车主反映,发动机偶尔无法起动,故障频率较低,十几天出现1 次,且故障出现时起动机不工作。 故障诊断  接车后试车,…

厦门凯酷全科技有限公司怎么样?

随着短视频和直播带货的兴起,抖音电商平台迅速崛起,成为众多品牌和商家争夺的新战场。在这个竞争激烈的市场中,如何抓住机遇、实现销售增长,成为了每个企业面临的挑战。厦门凯酷全科技有限公司(以下简称“凯酷全”&…

「Mac玩转仓颉内测版49」小学奥数篇12 - 图形变换与坐标计算

本篇将通过 Python 和 Cangjie 双语实现图形变换与坐标计算。这个题目帮助学生理解平面几何中的旋转、平移和对称变换,并学会用编程实现坐标变化。 关键词 小学奥数Python Cangjie图形变换坐标计算 一、题目描述 编写一个程序,模拟以下三种图形变换&a…

MBTI 16人格分析

文章目录 一、MBTI介绍二、十六种MBTI人格1.ESTJ:总经理2.ENTP:辩论家3.INTP:逻辑学家4.ISFJ:守卫者 三、4组人格分析1.E与I2.S与N3.T与F4.P与J 一、MBTI介绍 MBTI是一种人格类型理论模型。全称是“Myers-Briggs Type Indicator”…

2024 X-GAME 上海智能新能源汽车大数据竞赛决赛顺利举行,和鲸Heywhale连续五年助推新能源汽车产业发展

11月22日,第七届 X-GAME 上海智能新能源汽车大数据竞赛圆满落幕!这是和鲸作为协办方第五年为 X-GAME 新能源汽车分析赛道提供全程支持,赋能新能源汽车的产业发展。自 2018 年首次举办以来,以“数联万物,车载未来”为主…

书生实战营第四期-进阶岛第六关-MindSearch 快速部署

一、开发环境配置 1、打开codespace主页,选择Blank模板进行创建 Codespaces 2、创建conda环境隔离并安装依赖 conda create -n mindsearch python3.10 -y conda init 因为是新建的codespace,在第一次创建conda环境时,需要conda init 然后再…

开发类似的同款小程序系统制作流程

很多老板想要开发一款和别人家类似的同款小程序系统,但是不知道该怎么开发制作,本文就为大家详细介绍一下开发类似的同款小程序的流程为大家做参考。 一、前期准备找到对标小程序:首先,需要找到你想要模仿的同款小程序&#xff0…

《操作系统 - 清华大学》6 -7:局部页面置换算法:Belady现象

文章目录 1. 定义2. LRU、FIFO和Clock的比较 1. 定义 局部页面置换算法的特点是针对一个正在运行的程序,它访问内存的情况,访问页的情况,来决定应该采取什么样策略,把相应的页替换出去,站在算法本身角度来考虑置换哪个…

Spring Boot 3 中Bean的配置和实例化详解

一、引言 在Java企业级开发领域,Spring Boot凭借其简洁、快速、高效的特点,迅速成为了众多开发者的首选框架。Spring Boot通过自动配置、起步依赖等特性,极大地简化了Spring应用的搭建和开发过程。而在Spring Boot的众多核心特性中&#xff…

maven报错“找不到符号“

问题 springboot项目 maven编译打包过程,报错"找不到符号" 解决 很多网上方法都试过,都没用 换jdk,把17->21

UnityShaderLab-实现溶解效果

实现思路: 使用一张噪声图,与一个Cut值计算(加或减),将计算后的值赋值给Alpha,然后小于0的片段就被丢弃掉了。 ShaderGraph实现: ShaderLab实现: 效果: 未完待续。。。 参考链接…

分布式 令牌桶算法 总结

前言 相关系列 《分布式 & 目录》《分布式 & 令牌桶算法 & 总结》《分布式 & 令牌桶算法 & 问题》 参考文献 《【算法】令牌桶算法》 概述 简介 TBA Token Bucket Algorithm 令牌桶算法是一种流行于网络通信领域的流量控制/频率限制算法。令牌…

【JavaEE初阶】CSS

🎄CSS是什么? 层叠样式表 (Cascading Style Sheets). CSS 能够对网页中元素位置的排版进行像素级精确控制, 实现美化页面的效果. 能够做到页面的样式和结构分离. 用来美化HTML所写的界面,就如同化妆一样 🍀CSS基础语法规范 选…

【计网】HTTP协议详解

🌎应用层协议Http 文章目录: 应用层协议Http 认识HTTP协议       认识URL Http协议请求与响应格式       HTTP Request       HTTP Response       HTTP常见Header       URI资源以及网页跳转原因 HTTP其他属性字段   …

Android上运行OpenCV(Android Studio)

用Android Studio的话,整体来说没什么难的,照着教程来做就好了。 【OpenCV】OpenCV库的安装 - Android与OpenCV系列教程_哔哩哔哩_bilibili 主要就是导入module,然后加入依赖。代码只有几行。 if(OpenCVLoader.initLocal()){Toast.makeText(…

openWebUI+ollamawindows+不用docker+webLite本地安装

openWebUI & ollama & windows & 不用docker & webLite 本地安装 总结一下安装教程 10核CPU16G内存 两个web框架都可以,先说简单的 ollama-webui-lite(https://github.com/ollama-webui/ollama-webui-lite) 轻量级,只使用nodejs 先装…

Linux下进程替换exec系列接口

文章目录 Linux下进程替换1. c库exec函数族一、exec函数族简介二、exec函数族函数原型及参数说明三、exec函数族的工作机制四、注意事项五、示例代码 2. 系统调用execve接口一、execve接口与C库exec函数族的关系二、函数原型三、参数说明四、工作原理五、返回值六、注意事项七、…

【一本通】质因数分解

【一本通】质因数分解 C语言实现C 语言实现Java语言实现Python语言实现 💐The Begin💐点点关注,收藏不迷路💐 已知正整数n 是两个不同的质数的乘积,试求出较大的那个质数。 输入 输入只有一行,包含一个正…

xtu oj 1618 素数个数

文章目录 前言代码思路 前言 有点儿难&#xff0c;至少对我来说。去年考试我没写出来。 代码 #include<stdio.h> #include<stdbool.h> #include<stdlib.h>//加 math 那个头文件好像要加这个头文件&#xff0c;我之前编译错误过&#xff0c;血泪教训 #incl…