手机上0.2秒出图、当前速度之最,谷歌打造超快扩散模型MobileDiffusion
目录
前言导读
论文介绍
模型优化
宏观设计
微观设计
实验与应用
移动端基准测试
下游任务测试
生图效果展示
总结
前言导读
在手机等移动端侧运行 Stable Diffusion 等文生图生成式 AI 大模型已经成为业界追逐的热点之一,其中生成速度是主要的制约因素。
近日,来自谷歌的一篇论文「MobileDiffusion: Subsecond Text-to-Image Generation on Mobile Devices」,提出了手机端最快文生图,在 iPhone 15 Pro 上只要 0.2 秒。论文出自 UFOGen 同一团队,在打造超小扩散模型的同时, 采用当前大火的 Diffusion GAN 技术路线做采样加速。

论文介绍

论文地址:https://arxiv.org/abs/2311.16567
下面是 MobileDiffusion 一步生成的结果。

那么,MobileDiffusion 是如何优化得到的呢?让我们先从问题出发,为什么优化是必须的?
当下最火的文本到图像生成都是基于扩散模型来实现的。依赖于其预训练模型强大的基本图像生成能力和在下游微调任务上的稳健性质, 我们看到了扩散模型在诸如图像编辑、可控生成、 个性化生成以及视频生成的非凡表现。
然而作为 Foundation Model, 它的不足也很明显,主要包括了两方面:一是扩散模型的大量参数导致计算速度慢,尤其是在资源有限的情况下;二是扩散模型需要多步才能采样,这进一步导致很慢的推理速度。拿最火的的 Stable Diffusion 1.5 (SD) 为例,其基础模型包含了接近 10 亿参数,我们在 iPhone 15 Pro 上将模型量化后进行推理,50 步采样需要接近 80s。如此昂贵的资源需求和迟滞的用户体验极大的限制了其在移动端的应用场景。
为了解决以上问题,MobileDiffusion 点对点地进行优化。(1) 针对模型体积庞大的问题,我们主要对其核心组件 UNet 进行了大量试验及优化,包括了将计算昂贵的卷积精简和注意力运算放在了较低的层上,以及针对 Mobile Devices 的操作优化,诸如激活函数等。(2)针对扩散模型需要多步采样的问题, MobileDiffusion 探索并实践了像 Progressive Distillation 和当前最先进的 UFOGen 的一步推理技术
模型优化
MobileDiffusion 基于当下开源社区里最火的 SD 1.5 UNet 进行优化。在每次的优化操作后, 会同时衡量相对于原始 UNet 模型的性能的损失,测量指标包括 FID 和 CLIP 两个常用 metric。
宏观设计

上图左边是原始 UNet 的设计示意, 可以看出基本包括了 Convolution 和 Transformer,Transformer 又包括了 Self-Attention 和 Cross-Attention。
MobileDiffusion 对 UNet 优化的核心思路分为两点:
1)精简 Convolution, 众所周知,在高分辨率的特征空间上进行了 Convolution 是十分耗时的, 而且参数量很大,这里指的是 Full Convolution;
2)提高 Attention 效率。和 Convolution 一样,高 Attention 需要对整个特征空间的长度进行运算,Self-Attention 复杂度和特征空间展平后长度成平方关系,Cross-Attention 也要和空间长度成正比。
实验表明将整个 UNet 的 16 个 Transformer 移到特征分辨率最低的内层,同时每一层都剪掉一个卷积,不会对性能有明显影响。达到的效果就是:MobileDiffusion 将原本 22 个 Convolution 和 16 个 Transformer,可以极致地精简到 11 个 Convolution 和 12 个左右 Transformer,并且这些注意力都是在低分辨率特征图上进行的,因为效率会极大提升,带来了 40% 效率提升和 40% 参数剪切,最终模型如上图右图所示。和更多模型的对比如下:
微观设计

这里将只介绍几种新颖的设计,有兴趣的读者可以阅读正文, 会有更详细的介绍。
Decouple Self-Attention and Cross-Attention
传统 UNet 里 Transformer 同时包含 Self-Attention 和 Cross-Attention,MobileDiffusion 将 Self-Attention 全部放在了最低分辨率特征图,但是保留一个 Cross-Attention 在中间层,发现这种设计既提高了运算效率又保证了模型出图质量
Finetune softmax into relu
softmax 众所周知在大部分未优化情况下是难以并行的,因此效率很低。MobileDiffusion 提出直接将 softmax 函数 finetune 到 relu,因为 relu 是每一个点的激活,更为高效。令人惊讶的是,只需要大概一万步的微调,模型 metric 反而提升了,出图质量也有保障。因此 relu 相比于 softmax 的优势是很明显的了。
Separable Convolution (可分离卷积)
MobileDiffuison 精简参数的关键还在采用了 Seprable Convolution。这种技术已经被 MobileNet 等工作证实是极为有效的,特别是移动端,但是一般在生成模型上很少采用。MobileDiffusion 实验发现 Separable Convolution 对减少参数是很有效的,尤其是将其放在 UNet 最内层,模型质量经分析证明是没有损失的。
采样优化
当下最常采用的采样优化方法包括了 Progressive Distillation 和 UFOGen, 分别可以做到 8 steps 和 1 step。为了证明在模型极致精简后,这些采样依然适用,MobileDiffusion 对两者同时做了实验验证。
采样优化前后和基准模型的比较如下,可以看出采样优化后的 8 steps 和 1 step 的模型,指标都是比较突出的。

实验与应用
移动端基准测试
MobileDiffusion 在 iPhone 15 Pro 上可以得到当前最快的出图速度,0.2s!

下游任务测试
MobileDiffusion 探索了包括 ControlNet/Plugin 和 LoRA Finetune 的下游任务。从下图可以看出,经过模型和采样优化后,MobileDiffusion 依然保持了优秀的模型微调能力。

生图效果展示


总结
MobileDiffusion 探索了多种模型和采样优化方法,最终可以实现在移动端的亚秒级出图能力,下游微调应用依然有保障。我们相信这将会对今后高效的扩散模型设计产生影响,并拓展移动端应用实例。
感谢你看到这里,也欢迎点击关注左下方公众号,一个有趣有AI的AIGC公众号:关注AI、深度学习、计算机视觉、AIGC、Stable Diffusion等相关技术,欢迎一起交流学习~
相关文章:
手机上0.2秒出图、当前速度之最,谷歌打造超快扩散模型MobileDiffusion
目录 前言导读 论文介绍 模型优化 宏观设计 微观设计 实验与应用 移动端基准测试 下游任务测试 生图效果展示 总结 前言导读 在手机等移动端侧运行 Stable Diffusion 等文生图生成式 AI 大模型已经成为业界追逐的热点之一,其中生成速度是主要的制约因素。…...
浅谈WPF之UniformGrid和ItemsControl
在日常开发中,有些布局非常具有规律性,比如相同的列宽,行高,均匀的排列等,为了简化开发,WPF提供了UniformGrid布局和ItemsControl容器,本文以一个简单的小例子,简述,如何…...
SEO系列--robots.txt的用法
原文网址:SEO系列--robots.txt的用法-CSDN博客 简介 本文介绍网站的robots.txt文件的用法。 Robots是站点与搜索引擎爬虫沟通的重要渠道,站点通过robots文件声明本网站中不想被搜索引擎抓取的部分或者只让搜索引擎抓取指定内容。 搜索引擎使用spider…...
环形链表(快慢指针)
给你单链表的头节点 head ,请你反转链表,并返回反转后的链表 给你一个链表的头节点 head ,判断链表中是否有环。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环…...
vue day06
1、路由模块封装 2、声明式导航 实现导航高亮效果 直接通过这两个类名对相应标签设置样式 点击a链接进入my页面时,a链接 我的音乐高亮,同时my下的a、b页面中的 我的音乐也有router-link-active类,但没有精确匹配的类(只有my页…...
ffmpeg 输入文件,输入出udp-ts 指定pid、Programid ts流参数
要使用FFmpeg将输入文件转换为UDP传输流(TS)并指定特定的PID、Program ID以及其他TS流参数,您可以使用以下命令: ffmpeg -i input_file -c:v libx264 -preset ultrafast -tune zerolatency -f mpegts -map 0:v:0 -map 0:a:0 -pid …...
操作系统透视:从历史沿革到现代应用,剖析Linux与网站服务架构
目录 操作系统 windows macos Linux 服务器搭建网站 关于解释器的流程 curl -I命令 名词解释 dos bash/terminal,(终端) nginx/apache(Linux平台下的) iis(Windows平台下的) GUI(图形化管理接口ÿ…...
金蝶82新建员工信息维护菜单,并新建导入模板,导入时出现不能在此处导入模板
原因:82版本bug,校验了所有T_BS_SHRFileTemplate中 FDATANUMBER001的uipk 只要任意一个模板里面不包含当前列表的uipk就会抛出异常 解决办法: 将当前列表uipk加到其他FDATANUMBER001的模板中 例如: update T_BS_SHRFileTemplate set FU…...
套你npm镜像
套你npm镜像 大天才,给我错误镜像信息,然后npm install卡住!! gpt生成的淘宝镜像地址: https://registry.npm.taobao.org/安装情况:卡死如下… 正确镜像地址: # 更换npm config set registry…...
[网络安全]IIS---FTP服务器 、serverU详解
一 . FTP服务器(File Transfor Protocol) : 协议:文件传输协议 端口号:TCP: 20(数据) / 21(控制) 二 . FTP工作方式: 1.主动模式 : (FTP服务器21端口与FTP客户端产生的随机端口先建立连接 建立连接后,再使用FTP服务器21端口与FTP客户端创建的一个新的随机端口进行发送…...
校园自助洗浴设施运维服务认证的介绍
校园自助洗浴设施运维服务认证是一种针对校园自助洗浴设施运维服务质量的评估和认证体系。通过该认证,学校可以确保自助洗浴设施的安全、可靠、卫生和持续运行,为师生提供更好的洗浴体验。 自助洗浴设施运维服务通常包括的具体工作: 1.设备维…...
NetCore iText7 根据PDF模板 导出PDF文件
iText 7 是一个用于处理 PDF 文件的流行的开源库,它提供了丰富的功能,包括创建、编辑和处理 PDF 文档。它支持 .NET 平台,因此可以在 .NET Core 中使用该库来处理 PDF 文件。 使用 iText 7,您可以进行以下操作: 1. 创…...
Notion 开源替代品:兼容 Miro 绘图 | 开源日报 No.162
toeverything/AFFiNE Stars: 25.6k License: NOASSERTION AFFiNE 是下一代知识库,将规划、排序和创建集于一身。它是一个注重隐私、开源、可定制且即插即用的替代方案,可以与 Notion 和 Miro 相媲美。主要功能和优势包括: 超融合࿱…...
LangChain 81 LangGraph 从入门到精通三
LangChain系列文章 LangChain 60 深入理解LangChain 表达式语言23 multiple chains链透传参数 LangChain Expression Language (LCEL)LangChain 61 深入理解LangChain 表达式语言24 multiple chains链透传参数 LangChain Expression Language (LCEL)LangChain 62 深入理解Lang…...
Python学习从0到1 day13 Python数据容器.4.set集合、dict字典,映射
他往黑夜里去了,我陪他 ——24.2.4 一、set集合 1.为什么使用集合? 通过特性来分析: 列表可修改、支持重复元素且有序 元组、字符串不可修改、支持重复元素且有序 局限在于:它们都支持重复元素 当场景需要对内容进行去重处理&am…...
Java生成微信小程序二维码的方式有哪些?
大家好我是咕噜美乐蒂,很高兴又见面啦!今天我们来谈一下如何使用Java生成微信小程序二维码,有哪些方式方法呢? 生成微信小程序二维码是开发微信小程序时的常见需求之一。在Java中,我们可以使用多种方式来生成微信小程…...
一箭11星,吉利未来出行星座第二个轨道面部署完成!
临近春节,国内卫星产业又传来好消息! 2024年2月3日7时37分,11颗卫星通过长征二号丙运载火箭,在西昌卫星发射中心发射升空。火箭顺利将所有卫星送入预定轨道,所有卫星状态正常,发射任务获得圆满成功。 本次发…...
【持续学习系列(九)】《Continual Learning with Pre-Trained Models: A Survey》
一、论文信息 1 标题 Continual Learning with Pre-Trained Models: A Survey 2 作者 Da-Wei Zhou, Hai-Long Sun, Jingyi Ning, Han-Jia Ye, De-Chuan Zhan 3 研究机构 National Key Laboratory for Novel Software Technology, Nanjing University; School of Artifici…...
redis的AOF
redis 提供了两种持久化方式—— RDB(Redis DataBase) 和 AOF(Append Only File) ,可以将 Redis 在内存中的数据库状态保存到磁盘里。 RDB快照并不是很可靠。如果服务器突然宕机了,最新的数据就会丢失。除了 RDB 持久化功能之外,Redis 还提供…...
TDengine 签约杭州云润,助力某大型水表企业时序数据处理
在智慧电表水表的数据采集和存储过程中,时序数据处理成为一个重要的问题。由于电表水表数据具有时间序列的特点,传统的数据库和数据处理方式往往难以满足大规模数据的高速采集、存储和实时分析需求。因此,越来越多的企业开始进行数据架构改造…...
Wan2.2-I2V-A14B惊艳效果:动态镜头推移、自然光影变化、流畅运镜展示
Wan2.2-I2V-A14B惊艳效果:动态镜头推移、自然光影变化、流畅运镜展示 1. 专业级视频生成能力 Wan2.2-I2V-A14B模型带来了令人惊叹的视频生成效果,能够将简单的文字描述转化为专业水准的动态视频。这个模型特别擅长处理复杂的镜头运动和光影变化&#x…...
千问3.5-2B实战案例:在线考试截图作弊行为特征识别与标记
千问3.5-2B实战案例:在线考试截图作弊行为特征识别与标记 1. 项目背景与挑战 在线教育平台的监考人员每天需要审核大量考试截图,人工识别作弊行为存在以下痛点: 效率低下:平均每张截图需要30秒人工检查标准不一:不同…...
从命令到思想:Shell脚本编程的“一课一得”
引言在Linux系统学习的旅程中,Shell脚本编程是一个绕不开的重要关卡。在此之前,我们只是在命令行中逐条输入指令,像一个机械的执行者;在此之后,我们开始将自己的思路封装成可复用的逻辑,成为一个真正的设计…...
python mmap
# 聊聊Python里的mmap:把文件当内存用 平时处理文件的时候,大多数人想到的都是open、read、write这些常规操作。但如果你需要处理特别大的文件,或者想在多个进程间共享数据,常规的文件操作就显得有些力不从心了。这时候可以看看mm…...
费马小定理,快速幂
今天显示延续了昨天的背包问题,先是写了一题背包问题,后面就写费马定理加快速幂。费马小定理证明如果一个数p是质数,并且a不是p的倍数,那么一定有a^(p-1)1(mod p);那么自然有a^(p-2)a^-1(mod p)…...
深度学习图神经网络:从结构数据中学习表示
深度学习图神经网络:从结构数据中学习表示 1. 背景与意义 图神经网络(Graph Neural Networks,GNNs)是一类专门处理图结构数据的深度学习模型。在现实世界中,许多数据都具有图结构,如社交网络、分子结构、…...
汇川CodeSys PLC组态实战:从网络配置到硬件集成的核心步骤解析
1. 汇川PLC与CodeSys环境基础搭建 第一次接触汇川PLC和CodeSys组态时,我完全被各种专业术语搞懵了。后来在实际项目中摸爬滚打才发现,这套组合其实就像搭积木一样有趣。汇川PLC作为国产工控领域的佼佼者,搭配CodeSys这个国际通用的开发环境&a…...
Deneyap雨水传感器I²C驱动与嵌入式应用指南
1. 项目概述Deneyap Yagmur Algılama Modl (Deneyap Rain Sensor),是土耳其Deneyap教育平台推出的专用雨水检测传感器模块,型号为M32(MPV1.0),其核心控制器采用STMicroelectronics的STM8S003F3P6 8位微控制器。该模块…...
别再傻傻分不清!ESP32-S3上USB CDC、UART0和板载CH340到底谁在干活?
ESP32-S3串口全解析:快速识别USB CDC、UART0与CH340的实战指南 刚拿到ESP32-S3开发板时,很多开发者都会遇到一个令人困惑的场景——连接电脑后,设备管理器里突然冒出三四个COM端口,而Arduino IDE的下拉菜单里也列出一堆选项。到底…...
基于OpenCV的航天器自主对接算法原型
南加州大学SURE项目学生开发算法原型,助力航天器对接自动化 作为在新泽西州长大、并在加拿大就读寄宿学校的学生,Derek Chibuzor年少时经常乘坐飞机。这段旅行经历激发了他对飞行的持久兴趣。进入南加州大学后,Chibuzor选择主修航空航天工程。…...
