写点什么

就是“快”!字节跳动发布文生图开放模型,迅速冲上 Hugging Face Spaces 热榜

  • 2024-02-26
    北京
  • 本文字数:2185 字

    阅读完需:约 7 分钟

就是“快”!字节跳动发布文生图开放模型,迅速冲上Hugging Face Spaces 热榜


很高兴跟大家分享我们最新的文生图模型 —— SDXL-Lightning,它实现了前所未有的速度和质量,并且已经向社区开放。


模型地址:https://huggingface.co/ByteDance/SDXL-Lightning

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


闪电般的图片生成


生成式 AI 正凭借其根据文本提示(text prompts)创造出惊艳图像乃至视频的能力,赢得全球的瞩目。当前最先进的生成模型依赖于扩散过程(diffusion),这是一个将噪声逐步转化为图像样本的迭代过程。这个过程需要耗费巨大的计算资源并且速度较慢,在生成高质量图像样本的过程中,单张图像的处理时间约为 5 秒,其中通常需要多次(20 到 40 次)调用庞大的神经网络。这样的速度限制了有快速、实时生成需求的应用场景。如何在提升生成质量的同时加快速度,是当前研究的热点领域,也是我们工作的核心目标。


SDXL-Lightning 通过一种创新技术——渐进式对抗蒸馏(Progressive Adversarial Distillation)——突破了这一障碍,实现了前所未有的生成速度。该模型能够在短短 2 步或 4 步内生成极高质量和分辨率的图像,将计算成本和时间降低十倍。我们的方法甚至可以在 1 步内为超时敏感的应用生成图像,虽然可能会稍微牺牲一些质量。


除了速度优势,SDXL-Lightning 在图像质量上也有显著表现,并在评估中超越了以往的加速技术。在实现更高分辨率和更佳细节的同时保持良好的多样性和图文匹配度。



速度对比示意

原始模型(20 步),SDXL-Lightning 模型(2 步)

模型效果


SDXL-Lightning 模型可以通过 1 步、2 步、4 步和 8 步来生成图像。推理步骤越多,图像质量越好。


以下是 4 步生成结果——



以下是 2 步生成结果——



与以前的方法(Turbo 和 LCM)相比,我们的方法生成的图像在细节上有显著改进,并且更忠实于原始生成模型的风格和布局。



回馈社区,开放模型


开源开放的浪潮已经成为推动人工智能迅猛发展的关键力量,字节跳动也自豪地成为这股浪潮的一部分。我们的模型基于目前最流行的文字生成图像开放模型 SDXL,该模型已经拥有一个繁荣的生态系统。现在,我们决定将 SDXL-Lightning 开放给全球的开发者、研究人员和创意从业者,以便他们能访问并运用这一模型,进一步推动整个行业的创新和协作。


在设计 SDXL-Lightning 时,我们就考虑到与开放模型社区的兼容。社区中已有众多艺术家和开发者创建了各种各样的风格化图像生成模型,例如卡通和动漫风格等。为了支持这些模型,我们提供 SDXL-Lightning 作为一个增速插件,它可以无缝地整合到这些多样风格的 SDXL 模型中,为各种不同模型加快图像生成的速度。



SDXL-Lightning 模型也可以和目前非常流行的控制插件 ControlNet 相结合,实现极速可控的图片生成。



SDXL-Lightning 模型也支持开源社区里目前最流行的生成软件 ComfyUI,模型可以被直接加载来使用:



关于技术细节


从理论上来说,图像生成是一个由噪声到清晰图像的逐步转化过程。在这一过程中,神经网络学习在这个转化流(flow)中各个位置上的梯度。


生成图像的具体步骤是这样的:


首先我们在流的起点,随机采样一个噪声样本,接着用神经网络计算出梯度。根据当前位置上的梯度,我们对样本进行微小的调整,然后不断重复这一过程。每一次迭代,样本都会更接近最终的图像分布,直至获得一张清晰的图像。



图:生成流程(来自:https://arxiv.org/abs/2011.13456)


由于生成流复杂且非直线,生成过程必须一次只走一小步以减少梯度误差累积,所以需要神经网络的频繁计算,这就是计算量大的原因。



图:曲线流程(图片来自:https://arxiv.org/abs/2210.05475)


为了减少生成图像所需的步骤数量,许多研究致力于寻找解决方案。一些研究提出了能减少误差的采样方法,而其他研究则试图使生成流更加直线化。尽管这些方法有所进展,但它们仍然需要超过 10 个推理步骤来生成图像。


另一种方法是模型蒸馏,它能够在少于 10 个推理步骤的情况下生成高质量图像。不同于计算当前流位置下的梯度,模型蒸馏改变模型预测的目标,直接让其预测下一个更远的流位置。具体来说,我们训练一个学生网络直接预测老师网络完成了多步推理后的结果。这样的策略可以大幅减少所需的推理步骤数量。通过反复应用这个过程,我们可以进一步降低推理步骤的数量。这种方法被先前的研究称之为渐进式蒸馏。



图:渐进式蒸馏,学生网络预测老师网络多步后的结果


在实际操作中,学生网络往往难以精确预测未来的流位置。误差随着每一步的累积而放大,导致在少于 8 步推理的情况下,模型产生的图像开始变得模糊不清。


为了解决这个问题,我们的策略是不强求学生网络精确匹配教师网络的预测,而是让学生网络在概率分布上与教师网络保持一致。换言之,学生网络被训练来预测一个概率上可能的位置,即使这个位置并不完全准确,我们也不会对它进行惩罚。这个目标是通过对抗训练来实现的,引入了一个额外的判别网络来帮助实现学生网络和教师网络输出的分布匹配。


这是我们研究方法的简要概述。在技术论文(https://arxiv.org/abs/2402.13929)中,我们提供了更深入的理论分析、训练策略以及模型的具体公式化细节。


SDXL-Lightning 之外


尽管本研究主要探讨了如何利用 SDXL-Lightning 技术进行图像生成,但我们所提出的渐进式对抗蒸馏方法的应用潜力不局限于静态图像的范畴。这一创新技术也可以被运用于快速且高质量生成视频、音频以及其他多模态内容。我们诚挚邀请您在 HuggingFace 平台上体验 SDXL-Lightning,并期待您宝贵的意见和反馈。

2024-02-26 15:279132

评论 1 条评论

发布
用户头像
质疑模型速度和效率益处的观点可能忽略了深度学习发展的独特趋势。就如海洋探索需新型潜艇以更快速度深入未知,SDXL-Lightning模型的速度提升使我们能更迅速探索创意边界,从而推动技术创新和实用化应用的发展。
2024-02-27 10:34 · 北京
回复
没有更多了
发现更多内容

43%非常看好TypeScript…解读“2022前端开发者现状报告”

华为云开发者联盟

typescript 开发者 前端

体验远超Hue,这才是技术人员最喜欢的SQL工具

雨果

sql hue DaaS数据即服务

对数学直观、感性的认知是理解数学、喜爱数学的必经之路,这本书做到了!

图灵教育

高中数学

MySQL数据指令

武师叔

8月月更

用Python自动生成 图文并茂的数据分析 报告

程序员晚枫

Python pip Office 自动化办公

传统数据中台又贵又复杂?何不试一试永久免费的下一代数据中台

雨果

数据中台 DaaS数据即服务

进行知识管理的好处有哪些?

Geek_da0866

Wallys/QCA 9880/802.11ac Mini PCIe Wi-Fi Module, Dual Band, 2,4GHz / 5GHz advanced edition

wallys-wifi6

叮~点击定制你的数字车手证,参与挑战吉尼斯世界纪录™ 称号

亚马逊云科技 (Amazon Web Services)

Amaozn DeepRacer

Linux进阶删除用户组

flow

8月月更

OpenHarmony——内核对象队列之算法详解(下)

OpenHarmony开发者

OpenHarmony

论文分享:「FED BN」使用LOCAL BATCH NORMALIZATION方法解决Non-iid问题

隐语SecretFlow

密码学和算法 机器学习/深度学习

Linux进阶显示用户UID和GID

flow

8月月更

说了半天跨平台,今儿咱就来跨跨!(完结篇)——Kubernetes上手实践

为自己带盐

Docker WSL2 k8s入门 签约计划第三季 8月月更

uniapp电影购票选座系统源码

清风

源码 计算机毕业设计

【燃】是时候展现真正的实力了!一文看懂2022华为开发者大赛技术亮点

华为云开发者联盟

云计算 华为云 开发者大赛

Substrate 源码更新导读八月第1周: 新版事务化存储层启用默认模式, Polkadot v0.9.27发布

彭亚伦

Substrate polkadot 波卡

【Python】:如何利用Python实现文件操作

翼同学

Python 编程语言 文件操作 8月日更 入门学习

【Python】:如何处理异常报错?

翼同学

Python 编程语言 异常处理 8月月更 入门学习

怎样选择一个好的SaaS知识库工具?

Geek_da0866

艺术与科技的狂欢,云端XR支撑阿那亚2022砂之盒沉浸艺术季

阿里云弹性计算

vr 视觉计算 云XR平台 沉浸式体验 GPU实例

不是吧,连公司里的卷王写代码都复制粘贴,这合理?

Liam

前端 代码 手写代码 代码阅读 写好代码

[ Kitex 源码解读 ] Kitex 请求重试的分类及实现原理

baiyutang

Go 微服务架构 云原生 kitex CloudWeGo

Linux进阶新增用户组

flow

8月月更

阿里云张新涛:支持沉浸式体验应用快速落地,阿里云云XR平台发布

阿里云弹性计算

视觉计算 云XR平台 沉浸式体验 GPU实例

毕昇编译器优化:Lazy Code Motion

华为云开发者联盟

云计算 后端 表达式 毕昇编译器

Linux进阶删除用户

flow

8月月更

crm系统哪家好?好用的crm管理系统推荐

优秀

CRM系统

华为云全流程护航《流浪方舟》破竹首发,打造口碑爆款

华为云开发者联盟

云计算 后端 华为云 流浪方舟

作为开发人员,您应该熟悉的 7 个 JavaScript 概念

flow

8月月更

Linux进阶切换用户

flow

8月月更

就是“快”!字节跳动发布文生图开放模型,迅速冲上Hugging Face Spaces 热榜_字节跳动_字节跳动智能创作团队_InfoQ精选文章