Redian新闻
>
速度惊人!手机跑Stable Diffusion,12秒出图,谷歌加速扩散模型破记录

速度惊人!手机跑Stable Diffusion,12秒出图,谷歌加速扩散模型破记录

公众号新闻



  新智元报道  

编辑:桃子 拉燕
【新智元导读】手机12秒一键生图?谷歌最新研究做到了。

手机生图只要12秒?

这不是吹的,谷歌就给实现了。

最新研究中,谷歌研究人员对4个GPU分层优化,在三星手机上成功运行Stable Diffusion 1.4。

实现了11.5秒生成图像,重要的是,内存使用量也大幅减少。

正所谓,Speed Is All You Need!

论文地址:https://arxiv.org/abs/2304.11267

谷歌最新提出的方法是通用的,可以对所有扩散模型的改进,并非仅针对特定设备实现的。

通过实验结果发现,三星S23 Ultra和iPhone 14 Pro的整体图像生成时间分别减少了52%和33%。

这意味着,一部手机装下一个生成式AI模型的未来更近了。

从3080到一部手机


当前,将大型扩散模型合并到任何APP中的一个关键考虑因素是,模型将在何处执行选择。

在一个消费级设备上部署模型的好处是,较低的服务成本、改善扩展性、还可以离线,并且能改善用户隐私。

22年,Stable Diffusion刚刚发布的第一个版本,最初只能缓慢运行在RTX 3080上。

Stable Diffusion有超过10亿的参数,DALL-E是120亿,以后随着扩散模型的发展,参数量会逐渐增加。

由于设备计算和内存资源的限制,因此在运行时带来了诸多挑战。

在没有精心设计情况下,在设备上运行这些模型可能会导致,由于迭代去噪过程和过多的内存消耗,输出内容延迟就会增加。

此前,也有研究实现了将Stable Diffusion成功部署到设备上,但仅局限于特定的设备或芯片组。

对此,谷歌研究人员对大型扩散模型提供了一系列实现优化,这些模型在配备 GPU 的移动设备上实现了迄今为止报道的最快推理延迟。

在不使用INT8量化的情况下,对于一张512x512的图片进行20次迭代,Stable Diffusion 1.4的推理延迟低于12秒。

具体是如何实现的呢?

GPU感知优化


在论文中,研究人员侧重的是使用大型扩散模型,然后完成从文本描述生成图像的任务。

虽说论文中,部分讨论是研究者为Stable Diffusion特定结构所提出的优化建议,但这些优化可以很容易推广到其它大型扩散模型上。

研究人员表示,当用文本提示进行推理时,这个过程包含根据所需的文本描述,应用额外条件来指导反向扩散。

具体来说,Stable Diffusion的主要组成部分包括:文本嵌入器(Text Embedder)、噪声生成(Noise Generation)、去噪神经网络(Denoising Neural Network,aka UNet),以及图像解码器(Image Decoder)。

如下图所示:

Stable Diffusion中主要组件及其相互作用的示意图

下面,我们分别介绍一下这几个组成部分,各部分间的关系参照图。

· 文本嵌入器:

利用CLIP模型对文本提示y进行编码,生成一个高维嵌入向量τθ(y),将文本提示的语义封装进去。该嵌入被当作去噪神经网络的输入,为逆向扩散的过程提供指示。

· 噪声生成:

给潜在空间提供随机噪声z,该噪声作为逆向扩散过程的起始点。

· 去噪神经网络:

该网络被设计为近似p(z|y)形式的条件分布,利用条件去噪自动编码器θ(zt, t, τθ(y))(denoising autoencoder)。每次迭代t采用UNet架构。

同时,交叉注意机制(cross-attention mechanism)被用来操作潜在空间和文本嵌入向量,在迭代过程中预测z的去噪版本。

· 图像解码器:

    逆行扩散过程在潜在空间中进行。一旦这个过程完成,图像解码器D被用来从潜在矢量中重建RGB图像。

研究人员在整个UNet架构中实现了群组归一化(Group normalization,GN)。
这种归一化技术的工作原理是将特征图(feature map)的pipeline划分为较小的组,并对每个组进行独立的归一化,使GN对批次大小的依赖性降低,更适合于各种大小的批次和各种网络结构。
应用公式①,每个特征值被归一化为其所属组的组均值和方差

(公式①)
研究人员并没有依次执行上述提到的重塑、平均值、方差和归一化的所有操作,而是以GPU Shader的形式设计了一个特别的程序,在一个GPU命令中执行所有这些操作,无需中间流程。
这里先介绍一下Gaussian Error Linear Unit(GELU)。
GELU作为模型中普遍存在的激活函数,包含许多数值计算,如乘法、加法和高斯误差函数,如公式②所示。
研究人员弄了一个专门的Shader来整合这些数值计算及其伴随的分割和乘法操作,使其在一次绘图调用中完成执行。

(公式②)
稳定扩散中的文本/图像变换器有助于对条件分布P(z|τθ(y))进行建模,这对文本到图像的生成任务至关重要。
然而,自我/交叉注意力机制在处理长序列时遇到了困难,因为它们的时间和内存复杂性是平过方的。在论文中,研究人员介绍了两种可能的优化,旨在缓解这些计算瓶颈。
一种是Partially Fused Softmax,另一种是FlashAttention。
下面仅以Softmax为例。
上图是在注意力模块中,优化过的softmax实现。
虚线以上的流程图描述的是直接在矩阵中应用softmax的初始实现。
虚线以下的展示的则是修正后的模块(红色部分)。
总而言之,论文中研究人员提出了一整套优化方案,可以在各种设备上执行大型扩散模型时,共同达到了突破性的延迟数字。
这些改进扩大了模型的通用性,并提高了在各种设备上的整体用户体验。

12秒,业界领先


为了评估改进后的模型,研究人员分别在三星S23 Ultra (Adreno 740) 和iPhone 14 Pro Max (A16) 进行了一组基准测试。
作为去噪神经网络,UNet是计算需求最高的组件。
研究人员提供了执行单次迭代的UNet所需的延迟数据,以毫秒为单位测量,图像分辨率为512x512。
此外,他们记录了运行时生成的中间张量在「Tensor」列中的内存使用情况,以及为保存模型权重分配的内存在「Weight」列中的使用情况,均以兆字节为单位。
请注意,内存管理器通过重用中间张量的缓冲区来优化内存占用。
如表中数据显示,第一行显示了在公共Github仓库中使用内部OpenCL内核实现,但没有任何优化的结果。
实现之后的结果,并且研究者在没有任何优化的情况下使用内部OpenCL内核。
第2-5行,分别逐个启用每个优化:
Opt. Softmax:部分融合的softmax和优化的softmax减少步骤
S-GN/GELU:用于组归一化和GELU的专用内核
FlashAttn.:FlashAttention实现
Winograd(All):采用Winograd卷积
随着每个优化的启用,实验结果发现延迟逐步减少。
与基线相比,在两种设备上都观察到了显著的总体延迟降低:三星S23 Ultra 降低52.2%,iPhone 14 Pro Max降低32.9%。
此外,研究人员还评估了在三星S23 Ultra进行文本到图像输出端到端延迟。
进行了20次去噪迭代,生成一张512x512图像,实现了不到12秒的业界领先结果。
可见,在没有数据连接或云服务器的情况下,在手机上本地运行生成式人工智能模型,将开辟了许多可能性。
谷歌最新研究给出了一种全新方案。
参考资料:

https://arxiv.org/abs/2304.11267

https://www.reddit.com/r/MachineLearning/comments/12zclus/d_google_researchers_achieve_performance/




微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
南澳散记 (增订本) :第二十章:父母来访南澳(上)小心!美国半数州出现「大角星」新冠变种!传播速度惊人!小心!美国已有27个州发现这种新冠病毒新变种!传播速度惊人!图像生成终结扩散模型,OpenAI「一致性模型」加冕!GAN的速度一步生图,高达18FPSCVPR 2023 | Collaborative Diffusion 怎样让不同的扩散模型合作?谷歌下场优化扩散模型,三星手机运行Stable Diffusion,12秒内出图豪斯曼:《诗歌外编》: 第二十二首:R.L.S.AIGC教程:如何使用Stable Diffusion,实现PBR材质纹理自由?微软3D生成扩散模型RODIN,秒级定制3D数字化身iPhone两秒出图,目前已知的最快移动端Stable Diffusion模型来了12秒内AI在手机上完成作画!谷歌提出扩散模型推理加速新方法谷歌模型支持手机上跑Stable Diffusion;普华永道砸10亿美元投资AIGC;天翼云将推出大模型丨AIGC大事日报7 天花 5 万美元,我们成功复制了 Stable Diffusion,成本大降 88%!训练代码已开源五秒AI绘画出图,全球最快的Stable Diffusion终于来了! [ 第364期 ]GAN的反击:朱俊彦CVPR新作GigaGAN,出图速度秒杀Stable Diffusion加特技只需一句话or一张图,Stable Diffusion的公司把AIGC玩出了新花样7天花5万美元,我们成功复制了 Stable Diffusion,成本大降88%!训练代码已开源网店模特危机,谷歌发布图片合成模型TryOnDiffusion科技巨头持续血拼:微软豪掷数亿造ChatGPT超算,谷歌加急测试Big Bard精通Stable Diffusion画图,理解LoRA、Dreambooth、Hypernetworks四大模型差异扩散模型还能预测地震和犯罪?清华团队最新研究提出时空扩散点过程宾州东部州立监狱(Eastern State Penitentiary),窗门小桌美国已有27个州发现这种新冠病毒新变种!传播速度惊人!CVPR 2023 | GAN的反击!朱俊彦新作GigaGAN,出图速度秒杀Stable Diffusion终结扩散模型:OpenAI开源新模型代码,一步成图,1秒18张谷歌优化扩散模型!在三星手机上运行Stable Diffusion,12秒内出图!八十年代之前, 国人之烟民还有一特别的地方,如何处理烟屁首个超大规模GAN模型!生成速度比Diffusion快20+倍,0.13秒出图,最高支持1600万像素AIGC玩出新花样!Stable Diffusion公司提出基于扩散模型的视频合成新模型直播预告:基于AIACC加速器快速实现Stable-Diffusion AI绘画|阿里云加速AIGC技术公开课九层塔、罗勒、紫苏有什么区别?Stable Diffusion公司重磅开源大语言模型StableLM,又爆火了!速抢!澳洲新纪念币到手$80,转手就卖$1200!升值速度惊人,数量有限(多图)Stability AI 发布开源版 DreamStudio,可使用最新 Stable Diffusion XL 图像生成器刘燕CVPR 2023 | GAN的反击!朱俊彦新作GigaGAN,出图速度秒杀Stable Diffusion!
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。