sige

sige

提升图像编辑效率的空间增量生成引擎

SIGE是一种空间增量生成引擎,通过在编辑区域选择性执行计算来提高图像编辑效率。这种方法显著减少了条件生成对抗网络和扩散模型的计算量和延迟,同时保持了图像质量。SIGE对DDPM、Stable Diffusion和GauGAN等模型的性能提升明显,在NeurIPS 2022发表,并开源了代码和基准数据集。

SIGE图像编辑生成模型卷积优化深度学习Github开源项目

空间增量生成引擎 (SIGE)

论文 | 项目 | 幻灯片 | YouTube

[最新消息!] SIGE已被T-PAMI接收!

[最新消息!] SIGE现已支持Stable Diffusion和Mac MPS后端!我们还发布了DDPM在M1 Macbook Pro上的交互式演示代码!

[最新消息!] SIGE已被NeurIPS 2022接收!我们的代码和基准数据集已公开可用!

预览图 我们提出了空间增量生成引擎(SIGE),这是一个针对图像编辑应用选择性地在编辑区域执行计算的引擎。计算量和延迟是针对单次前向传播测量的。对于上述示例,SIGE显著降低了SDEditDDPM(4-6倍)、Stable Diffusion(8倍)和GauGAN(15倍)的计算量,同时保持图像质量。当与现有的模型压缩方法(如GAN压缩)结合时,它进一步将GauGAN的计算量减少了47倍。在NVIDIA RTX 3090上,SIGE实现了高达7.2倍的加速。

条件GAN和扩散模型的高效空间稀疏推理</br> 李牧阳林吉孟晨林Stefano Ermon韩松朱俊彦</br> 卡内基梅隆大学、麻省理工学院和斯坦福大学</br> NeurIPS 2022

演示

<p align="center"> <img src="https://yellow-cdn.veclightyear.com/835a84d5/30b0a2f3-a385-49f6-8eb5-9db3459633f9.gif" width=600> </p>

相比原始DDPM,SIGE在M1 MacBook Pro GPU上实现了2倍更少的转换时间,因为我们选择性地在编辑区域执行计算。

概述

概述基于分块的稀疏卷积概述。对于网络中的每个卷积<i>F<sub>l</sub></i>,我们将其封装为SIGE Conv<sub><i>l</i></sub>。原始图像的激活已经预先计算好。在获得编辑后的图像时,我们首先计算原始图像和编辑后图像之间的差异掩码,并将掩码缩减为活跃块索引以定位编辑区域。在每个SIGE Conv<sub><i>l</i></sub>中,我们根据缩减后的索引直接从编辑后的激活<i>A<sub>l</sub></i><sup>edited</sup>中收集活跃块,沿批次维度堆叠这些块,并将它们输入<i>F<sub>l</sub></i>。如果<i>F<sub>l</sub></i>是步长为1的3×3卷积,收集的块会有宽度为2的重叠。在从<i>F<sub>l</sub></i>获得输出块后,我们将它们散布回<i>F<sub>l</sub></i>(<i>A<sub>l</sub></i><sup>original</sup>)以获得编辑后的输出,这近似于<i>F<sub>l</sub></i>(<i>A<sub>l</sub></i><sup>edited</sup>)。

性能

效率

概述 在1.2%的编辑下,SIGE可以将DDPM、Progressive Distillation和GauGAN的计算量减少7-18倍,在NVIDIA RTX 3090上实现2-4倍加速,在Apple M1 Pro GPU上实现3-5倍加速,在M1 Pro CPU上实现4-14倍加速。当与GAN压缩结合时,它进一步将GauGAN的计算量减少50倍,在M1 Pro CPU上实现38倍加速。请查看我们的论文以获取更多细节和结果。

质量

概述不同编辑大小下的定性结果。PD是Progressive Distillation。我们的方法很好地保持了原始模型的视觉保真度,而不会丢失全局上下文。 quality-stable-diffusion

在NVIDIA RTX 3090上测量的Stable Diffusion在图像修复和编辑方面的更多定性结果。

参考文献:

  • 去噪扩散概率模型(DDPM),Ho等人,ICLR 2020
  • 去噪扩散隐式模型(DDIM),Song等人,ICLR 2021
  • 用于扩散模型快速采样的渐进蒸馏,Salimans等人,ICLR 2022
  • 具有空间自适应归一化的语义图像合成(GauGAN),Park等人,CVPR 2019
  • GAN压缩:交互式条件GAN的高效架构,Li等人,CVPR 2020
  • 使用潜在扩散模型的高分辨率图像合成,Rombach等人,CVPR 2022

先决条件

  • Python3
  • CPU、M1 GPU或NVIDIA GPU + CUDA CuDNN
  • PyTorch >= 1.7。对于M1 GPU支持,请安装PyTorch>=2.0。

入门指南

安装

安装PyTorch后,您应该能够通过PyPI安装SIGE

pip install sige

或通过GitHub:

pip install git+https://github.com/lmxyy/sige.git

或本地安装以进行开发

git clone git@github.com:lmxyy/sige.git cd sige pip install -e .

对于MPS后端,请设置环境变量:

export PYTORCH_ENABLE_MPS_FALLBACK=1

使用示例

请参阅example.py以获取最小SIGE卷积示例。首先按照上述说明安装SIGE,并使用以下命令安装torchprofile

pip install torchprofile

然后您可以运行:

python example.py

我们还提供了colab示例。

基准测试

要重现DDPMProgressive Distillation的结果,或下载LSUN Church编辑数据集,请按照diffusion/README.md中的说明操作。

要重现GauGANGAN Compression的结果,或下载Cityscapes编辑数据集,请按照gaugan/README.md中的说明操作。

引用

如果您在研究中使用此代码,请引用我们的论文。

@inproceedings{li2022efficient, title={Efficient Spatially Sparse Inference for Conditional GANs and Diffusion Models}, author={Li, Muyang and Lin, Ji and Meng, Chenlin and Ermon, Stefano and Han, Song and Zhu, Jun-Yan}, booktitle={Advances in Neural Information Processing Systems (NeurIPS)}, year={2022} }

致谢

我们的代码基于SDEditddimdiffusion_distillationgan-compressiondpm-solverstable-diffusion开发。我们参考了sbnet实现基于平铺的稀疏卷积算法。我们的工作还受到torchsparse中收集/分散实现的启发。

我们感谢torchprofile用于MACs测量,clean-fid用于FID计算,以及drn用于Cityscapes mIoU计算。

我们感谢丁耀耀、叶子豪、郑连敏、唐浩天和朱立庚对引擎设计的有益评论。我们还感谢George Cazenavette、邓康乐、高睿涵、陆道涵、王圣宇和张炳良的宝贵反馈。该项目部分得到NSF、MIT-IBM Watson AI Lab、快手公司和索尼公司的支持。

编辑推荐精选

讯飞智文

讯飞智文

一键生成PPT和Word,让学习生活更轻松

讯飞智文是一个利用 AI 技术的项目,能够帮助用户生成 PPT 以及各类文档。无论是商业领域的市场分析报告、年度目标制定,还是学生群体的职业生涯规划、实习避坑指南,亦或是活动策划、旅游攻略等内容,它都能提供支持,帮助用户精准表达,轻松呈现各种信息。

AI办公办公工具AI工具讯飞智文AI在线生成PPTAI撰写助手多语种文档生成AI自动配图热门
讯飞星火

讯飞星火

深度推理能力全新升级,全面对标OpenAI o1

科大讯飞的星火大模型,支持语言理解、知识问答和文本创作等多功能,适用于多种文件和业务场景,提升办公和日常生活的效率。讯飞星火是一个提供丰富智能服务的平台,涵盖科技资讯、图像创作、写作辅助、编程解答、科研文献解读等功能,能为不同需求的用户提供便捷高效的帮助,助力用户轻松获取信息、解决问题,满足多样化使用场景。

热门AI开发模型训练AI工具讯飞星火大模型智能问答内容创作多语种支持智慧生活
Spark-TTS

Spark-TTS

一种基于大语言模型的高效单流解耦语音令牌文本到语音合成模型

Spark-TTS 是一个基于 PyTorch 的开源文本到语音合成项目,由多个知名机构联合参与。该项目提供了高效的 LLM(大语言模型)驱动的语音合成方案,支持语音克隆和语音创建功能,可通过命令行界面(CLI)和 Web UI 两种方式使用。用户可以根据需求调整语音的性别、音高、速度等参数,生成高质量的语音。该项目适用于多种场景,如有声读物制作、智能语音助手开发等。

Trae

Trae

字节跳动发布的AI编程神器IDE

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

AI工具TraeAI IDE协作生产力转型热门
咔片PPT

咔片PPT

AI助力,做PPT更简单!

咔片是一款轻量化在线演示设计工具,借助 AI 技术,实现从内容生成到智能设计的一站式 PPT 制作服务。支持多种文档格式导入生成 PPT,提供海量模板、智能美化、素材替换等功能,适用于销售、教师、学生等各类人群,能高效制作出高品质 PPT,满足不同场景演示需求。

讯飞绘文

讯飞绘文

选题、配图、成文,一站式创作,让内容运营更高效

讯飞绘文,一个AI集成平台,支持写作、选题、配图、排版和发布。高效生成适用于各类媒体的定制内容,加速品牌传播,提升内容营销效果。

热门AI辅助写作AI工具讯飞绘文内容运营AI创作个性化文章多平台分发AI助手
材料星

材料星

专业的AI公文写作平台,公文写作神器

AI 材料星,专业的 AI 公文写作辅助平台,为体制内工作人员提供高效的公文写作解决方案。拥有海量公文文库、9 大核心 AI 功能,支持 30 + 文稿类型生成,助力快速完成领导讲话、工作总结、述职报告等材料,提升办公效率,是体制打工人的得力写作神器。

openai-agents-python

openai-agents-python

OpenAI Agents SDK,助力开发者便捷使用 OpenAI 相关功能。

openai-agents-python 是 OpenAI 推出的一款强大 Python SDK,它为开发者提供了与 OpenAI 模型交互的高效工具,支持工具调用、结果处理、追踪等功能,涵盖多种应用场景,如研究助手、财务研究等,能显著提升开发效率,让开发者更轻松地利用 OpenAI 的技术优势。

Hunyuan3D-2

Hunyuan3D-2

高分辨率纹理 3D 资产生成

Hunyuan3D-2 是腾讯开发的用于 3D 资产生成的强大工具,支持从文本描述、单张图片或多视角图片生成 3D 模型,具备快速形状生成能力,可生成带纹理的高质量 3D 模型,适用于多个领域,为 3D 创作提供了高效解决方案。

3FS

3FS

一个具备存储、管理和客户端操作等多种功能的分布式文件系统相关项目。

3FS 是一个功能强大的分布式文件系统项目,涵盖了存储引擎、元数据管理、客户端工具等多个模块。它支持多种文件操作,如创建文件和目录、设置布局等,同时具备高效的事件循环、节点选择和协程池管理等特性。适用于需要大规模数据存储和管理的场景,能够提高系统的性能和可靠性,是分布式存储领域的优质解决方案。

下拉加载更多