速度提升数十倍,只需一张图一句话,谷歌新模型20秒即可实现变脸

时隔 8 个月,谷歌又提出了一种能在 20 秒内实现人脸个性化处理的新生成模型。

此前,谷歌和波士顿大学的研究者提出了一种「个性化(Personalization)」的文本到图像扩散模型 DreamBooth,用户只需提供 3~5 个样本 + 一句话,AI 就能定制照片级图像。

对于「个性化」我们可以这样理解,以输入图像为参考,生成的图像在各种情境和不同风格中都能保持对其身份的高度忠实。

举例来讲,输入左侧 4 张小狗的照片,DreamBooth 就可以生成不同类型的小狗,如小狗在景点里旅游、在海里游泳、趴在窝棚里睡觉、甚至人类给它修剪毛发,而生成的图片都高度保持了原图像的特点。

然而,个性化过程在时间和内存需求方面还存在很多挑战。具体到单个个性化模型,进行微调需要大量的 GPU 时间投入,不仅如此,个性化模型还需要很高的存储容量。

为了克服这些挑战,时隔 8 个月,谷歌又提出了一种新的生成模型 HyperDreamBooth。HyperDreamBooth 可以生成不同上下文和风格的人脸,同时还能保留脸部关键知识。

在只使用一张参考图像的情况下,HyperDreamBooth 在大约 20 秒内实现了对人脸的个性化处理,比 DreamBooth 快 25 倍,比 Textual Inversion 快 125 倍,不仅如此,生成的图像与 DreamBooth 质量一样、风格还多样性。此外,HyperDreamBooth 还比常规的 DreamBooth 模型小 10000 倍。

论文地址:arxiv.org/pdf/2307.06...

论文主页:hyperdreambooth.github.io/

在我们深入探讨技术细节之前,先看一些效果。

下图中,左边一栏是输入图像,给定一张图像就可以;中间一栏是根据不同的提示生成的人脸,提示语分别是 Instagram 上一张 V 型脸的自拍照;皮克斯卡通人物的 V 型脸;摇滚明星 V 型脸;树皮一样的 V 型脸。最右边生成的是人物专业照片 V 型脸。结果显示,HyperDreamBooth 具有相当大的可编辑性,同时还能保持人物关键面部特征的完整性。

HyperDreamBooth 与 Textual Inversion 、DreamBooth 方法比较有何优势呢?

下图展示了两个示例、5 种风格,结果显示,HyperDreamBooth 可以很好的保持输入图像特性,还具有很强的可编辑性。

接下来我们看看 HyperDreamBooth 具体是如何实现的。

方法介绍

该研究提出的方法由 3 个核心部分组成,分别是轻量级 DreamBooth(Lightweight DreamBooth,LiDB)、预测 LiDB 权重的 HyperNetwork 和 rank-relaxed 快速微调。

LiDB 的核心思想是进一步分解 rank-1 LoRa 残差的权重空间。具体来说,该研究使用 rank-1 LoRA 权重空间内的随机正交不完全基(random orthogonal incomplete basis)来实现这一点,如下图所示:

HyperDreamBooth 的训练和快速微调如下图 2 所示,分为两个阶段。

第 1 阶段:训练 HyperNetwork 以根据人脸图像预测网络权重。该研究使用预先计算的个性化权重进行监督,使用 L2 损失和 vanilla 扩散重建损失函数。第 2 阶段:给定面部图像,用 HyperNetwork 预测网络权重的初步猜测(initial guess),然后使用重建损失进行微调以增强保真度。

HyperNetwork 架构

该研究使用的 HyperNetwork 架构如下图 4 所示。其中,视觉 Transformer(ViT)编码器将人脸图像转换成潜在的人脸特征,然后将其连接到潜在层权重特征(初始化为 0)。Transformer 解码器接收连接特征的序列,并通过使用 delta 预测细化初始权重来迭代地预测权重特征的值。

值得一提的是,这是 transformer 解码器首次被用于 HyperNetwork。

如下图所示,HyperNetwork + 快速微调取得了良好的效果:

实验

下表为 HyperDreamBooth 与 DreamBooth、 Textual Inversion 比较结果。表明,在所有指标上,HyperDreamBooth 得分最高。

下表为不同迭代次数下的比较结果,比较模型包括 HyperDreamBooth、DreamBooth、400 次迭代的 DreamBooth-Agg-1 和 40 次迭代的 DreamBooth-Agg-2。结果显示,HyperDreamBooth 在三项指标上都超过其他模型。

下表为消融实验结果:主要对比的是 HyperNetwork 对性能的影响。

用户研究。该研究还让用户以投票的方式参与评估,结果显示用户对 HyperNetwork 生成的结果偏好强烈。

了解更多内容,请参考原论文。

相关推荐
深度学习实战训练营39 分钟前
基于keras的停车场车位识别
人工智能·深度学习·keras
乔代码嘚1 小时前
AI2.0时代,普通小白如何通过AI月入30万
人工智能·stable diffusion·aigc
墨@#≯1 小时前
机器学习系列篇章0 --- 人工智能&机器学习相关概念梳理
人工智能·经验分享·机器学习
Elastic 中国社区官方博客1 小时前
Elasticsearch:使用 LLM 实现传统搜索自动化
大数据·人工智能·elasticsearch·搜索引擎·ai·自动化·全文检索
_.Switch1 小时前
Python机器学习模型的部署与维护:版本管理、监控与更新策略
开发语言·人工智能·python·算法·机器学习
XiaoLiuLB1 小时前
ChatGPT Canvas:交互式对话编辑器
人工智能·自然语言处理·chatgpt·编辑器·aigc
Hoper.J1 小时前
PyTorch 模型保存与加载的三种常用方式
人工智能·pytorch·python
菜就多练_08281 小时前
《深度学习》OpenCV 摄像头OCR 过程及案例解析
人工智能·深度学习·opencv·ocr
达柳斯·绍达华·宁2 小时前
CNN中的平移不变性和平移等变性
人工智能·神经网络·cnn
技术无疆2 小时前
【Python】Streamlit:为数据科学与机器学习打造的简易应用框架
开发语言·人工智能·python·深度学习·神经网络·机器学习·数据挖掘