Press "Enter" to skip to content

你口袋里的艺术家伙伴:SnapFusion 是一种人工智能方法,将扩散模型的能力带到移动设备上

你口袋里的艺术家伙伴:SnapFusion 是一种人工智能方法,将扩散模型的能力带到移动设备上 计算科学 第1张你口袋里的艺术家伙伴:SnapFusion 是一种人工智能方法,将扩散模型的能力带到移动设备上 计算科学 第2张

扩散模型。如果您一直关注人工智能领域的进展,您一定经常听到这个术语。它们是使生成式人工智能方法革命成为可能的关键。我们现在有了可以在几秒钟内使用文本提示生成逼真图像的模型。它们已经革新了内容生成、图像编辑、超分辨率、视频合成和3D资产生成。

尽管这种印象深刻的性能并不便宜。扩散模型在计算要求方面非常苛刻。这意味着您需要真正高端的GPU才能充分利用它们。是的,也有尝试让它们在本地计算机上运行,但即使如此,您也需要高端计算机。另一方面,使用云提供商可能是一种替代方案,但在这种情况下,您可能会冒着隐私风险。

然后,我们还需要考虑到的是即时性。对于大多数人来说,他们花在手机上的时间比花在计算机上的时间更长。如果您想在移动设备上使用扩散模型,那么祝您好运,因为它对设备本身的有限硬件功率要求过高。

扩散模型是下一个大事,但在将它们应用于实际应用程序之前,我们需要解决它们的复杂性。已经有多次尝试专注于加速移动设备上的推理,但它们没有实现无缝的用户体验或定量评估生成质量。好吧,这是一个故事,直到现在,因为我们有一个新的玩家进入领域,它的名字叫做SnapFusion

SnapFusion是首个在移动设备上生成图像的文本到图像扩散模型,时间不到2秒。它优化了UNet架构并减少了去噪步骤的数量,以提高推理速度。此外,它使用了不断发展的训练框架,引入了数据蒸馏管道,并在步骤蒸馏过程中增强了学习目标。

你口袋里的艺术家伙伴:SnapFusion 是一种人工智能方法,将扩散模型的能力带到移动设备上 计算科学 第3张
SnapFusion概览。来源: https://arxiv.org/pdf/2306.00980.pdf

在对结构进行任何更改之前,SnapFusion的作者首先研究了SD-v1.5的架构冗余性,以获得高效的神经网络。然而,由于高昂的培训成本,将传统剪枝或架构搜索技术应用于SD是具有挑战性的。架构的任何更改都可能导致性能下降,需要进行大量的微调和大量的计算资源。因此,这条路被堵住了,他们不得不开发替代解决方案,可以在逐渐提高其效率的同时保持预训练UNet模型的性能。

为了增加推理速度,SnapFusion专注于优化UNet架构,这是有条件扩散模型中的瓶颈。现有的作品主要关注后训练优化,但是SnapFusion确定了架构冗余并提出了一个不断发展的训练框架,其表现优于原始的稳定扩散模型,同时显著提高了速度。它还引入了一个数据蒸馏管道,以压缩和加速图像解码器。

SnapFusion包括一个强大的训练阶段,在该阶段应用随机前向传播以执行每个交叉关注和ResNet块,并具有一定的概率。这种强大的训练增强确保网络对架构排列具有容忍性,从而允许准确评估每个块和稳定的架构演变。

通过使用通过通道缩减获得的解码器的合成数据来训练解码器,可以实现高效的图像解码器。该压缩解码器具有显著较少的参数,并且比SD-v1.5的解码器更快。蒸馏过程涉及使用文本提示生成两个图像,一个来自高效解码器,另一个来自SD-v1.5,以获得从SD-v1.5的UNet中获得的潜在表示。

提出的阶段蒸馏方法包括一个香草蒸馏损失目标,旨在最小化学生UNet的预测和教师UNet的嘈杂潜在表示之间的差异。此外,引入了CFG感知蒸馏损失目标,以提高CLIP分数。CFG引导预测在教师和学生模型中使用,其中CFG比例是随机抽样的,以在训练期间在FID和CLIP分数之间提供权衡。

你口袋里的艺术家伙伴:SnapFusion 是一种人工智能方法,将扩散模型的能力带到移动设备上 计算科学 第4张
SnapFusion生成的样本图像。来源:https://arxiv.org/pdf/2306.00980.pdf

由于改进的阶段蒸馏和网络架构开发,SnapFusion可以在移动设备上不到2秒的时间内从文本提示生成512×512像素的图像。生成的图像展示了与最先进的稳定扩散模型相似的质量。

Leave a Reply

Your email address will not be published. Required fields are marked *