阅读论文1_d

DistriFusion: Distributed Parallel Inference for High-Resolution Diffusion Models

现在对论文的实验等后续部分进行解读


Experiments

我们首先描述我们的实验设置,包括我们的基准数据集、基线和评估协议。 然后我们介绍有关质量和效率的主要结果。最后,我们进一步展示一些消融研究来验证每个设计选择。

实验设置

模型: 由于我们的方法只需要现成的预训练扩散模型,我们主要在最先进的公共文本到图像模型 Stable Diffusion XL (SDXL) [43] 上进行实验。SDXL 首先使用预训练的自动编码器将图像压缩为 8 倍小的潜在表示,然后在这个潜在空间中应用扩散模型。它还结合了多个交叉注意层以促进文本调节。与原始的 Stable Diffusion [51] 相比,SDXL 采用了更多的注意层,从而产生了一个计算密集度更高的模型。(SDXL中有自动编码器、扩散模型、注意力层)

什么是预训练扩散模型?
预训练扩散模型(Pre-trained Diffusion Models)是深度学习领域中的一种生成模型,它基于扩散过程的理念,通过逐步增加噪声和逐步去噪的方式,从噪声中生成高质量的数据样本,如图像、声音等。
预训练扩散模型在多个领域具有广泛的应用前景,包括但不限于图像生成、文本生成、语音合成、医学影像分析等,本文主要讨论的是图像的生成。
什么是SDXL ?
Stable Diffusion是一个多模态语言-图像模型,Stable Diffusion XL 简称 SDXL,是最新的图像生成模型,在它出现之前,Stable Diffusion已经有2个大版本在用了,stable 1.5和 stable 2.1。SDXL 1.0 出现前,同样经历了0.9和beta版本的过渡阶段, SDXL 1.0 在 stable 1.5的基础上做了改进,参数数量从0.98B扩大到6.6B。在AI领域,更大的参数意味着更好的质量。

数据集: 我们使用 COCO Captions 2014 [5] 数据集的 HuggingFace 版本对我们的方法进行基准测试。此数据集包含来自 Microsoft Common Objects in COntext (COCO) 数据集 [30] 的图像的人工生成的字幕。为了进行评估,我们从验证集中随机抽取一个子集,该子集包含 5K 张图像,每张图像一个字幕。

Baseline: 我们将 DistriFusion 与以下基线在质量和效率方面进行比较:
• Naïve Patch。在每次迭代中,输入按行或列交替划分。然后,模型独立处理这些补丁,而它们之间没有任何交互。随后将输出连接在一起。
• ParaDiGMS [56] 是一种通过并行去噪多个步骤来加速预训练扩散模型的技术。它使用 Picard 迭代来猜测未来步骤的解决方案,并迭代地对其进行细化,直到收敛。我们对 ParaDiGMS 使用批处理大小 8,以与原始论文 [56] 中的表 4 对齐。我们根据经验发现,这种设置在质量和延迟方面均能获得最佳性能。

什么是Picard 迭代
Picard迭代,也称为不动点迭代法或逐次逼近法,是一种用于求解数学问题的迭代技术。它特别适用于求解常微分方程的初值问题以及非线性方程的解。Picard迭代法的基本思想是通过构造一个递归序列来逼近问题的解。

Metrics: 根据先前的研究 [22、23、35、41],我们使用标准指标评估图像质量:峰值信噪比 (PSNR,越高越好)、LPIPS(越低越好)[72] 和 Fréchet 初始距离 (FID,越低越好) [11]†。我们使用 PSNR 来量化基准方法的输出与原始扩散模型输出之间的微小数值差异。LPIPS 用于评估感知相似性。此外,FID 分数用于测量方法的输出与原始输出或真实图像之间的分布差异

Implementation details: 默认情况下,我们采用 50 步 DDIM 采样器 [58],无分类器指导尺度为 5,以生成 1024 × 1024 图像,除非另有说明。 除了第一步,我们还执行另一个 4 步同步补丁并行,作为预热阶段。 有关延迟测量详细信息,请参阅我们 arXiv 版本中的第 5.1 节。

主要结果(略)

消融实验

使用同步张量并行性 (Sync. TP) 和同步补丁并行性 (Sync. PP) 对延迟进行了基准测试

PP 利用 AllGather 而非 AllReduce,从而降低通信需求且不额外使用计算资源。

总结

在本文中,我们引入了 DistriFusion 来加速具有多个 GPU 的扩散模型以实现并行性。我们的方法将图像分成多个块,并将每个块分配给单独的 GPU。我们重用了之前步骤中预先计算的激活来维护块交互。在 Stable Diffusion XL 上,我们的方法在 8 个 NVIDIA A100 上实现了高达 6.1 倍的加速。这一进步不仅提高了 AI 生成内容创建的效率,还为未来 AI 应用并行计算的研究树立了新的标杆。


至此,这篇论文全部阅读完成,对实现的方法大致有了了解,但是在github上由于那个模型,老是运行失败,报错是预扩散模型的下载问题,还有其他问题,我看到这个方法溶于crossai,试试在crossai试试。

在这里插入图片描述
我自己下了这个预训练模型,但是他会显示缺少文件,不懂为啥还缺少bin文件和config.json文件

他还有一个模型sdxl和sd,跑一下试试,重新下载这个模型,我检查了这个模型里有json和bin文件,希望不要再出现这个问题
git clone git@hf.co:CompVis/stable-diffusion-safety-checker,bin文件太大,下载不下来,烦,这个预训练模型不行,这个项目也没跑起来。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值