最近,来自南加州大学、哈佛大学等机构的研究团队提出了一种全新的基于提示学习的方法——DreamDistribution。
这种方法可以让任何基于文字提示的生成模型(比如文生图、文生3D等),通过一组参照图片来学习对应的视觉属性共性和变化的文本提示分布。
图片
论文地址:https://arxiv.org/abs/2312.14216
项目主页:https://briannlongzhao.github.io/DreamDistribution/
代码链接:https://github.com/briannlongzhao/DreamDistribution
不仅如此,学习到的提示分布可以用来生成近似于参照图片但更具多样性的图片,同时也支持调整分布的方差来控制多样性,结合多个提示分布生成混合概念图片等操作。
简单来说就是,仅用几张到十几张参照图片就能无限生成符合参照图片视觉效果并具有显著多样性的图片,轻松生成高达玩具模型多样新设计!
图片
在3D生成模型上即插即用,还可以生成不同样式的跑车,建筑等:
图片
同样支持类似于Textual Inversion,DreamBooth的文本引导编辑能力:
图片
在3D生成上同样具有编辑能力:
图片
在训练后支持控制生成的多样性的操作(第二行向下多样性增加):
图片
支持多种概念的混合:
图片
如下图所示,用户只需提供一组参照图片,比如不同的高达玩具图像,DreamDistribution就可以学习到一个对应于这一组图片的文本提示分布D*。
图片
然后,在推理时通过从D*中采样,生成有足够变化和多样性的分布内输出图像。
此外,D*同样支持由文本引导的编辑来生成图像的变化,比如从Jumping D*的提示分布中采样即可生成跳跃姿势的高达玩具图片等等。
由于方法相对独立于下游的生成模型,学习到的提示分布同样适用于其他基于文本提示的生成任务。
除了展示中基于MVDream文本到3D生成作为例子,通过类似的提示修改也可生成具有适当变化的符合文本提示的3D模型渲染。
研究动机
在扩散生成模型日益蓬勃发展的今天,视觉生成的质量随之提高。
最先进的图片生成模型,如DALL·E,Imagen,Stable Diffusion,MidJourney等系列的文本生成图像模型,已经可以生成非常高质量的图片。
但同时,由于文本提示很难概括视觉概念上的细节,一些研究如Textual Inversion,DreamBooth等通过图片引导的方法追求模型生成的可控性以及个性化(personalization/customization)能力,即根据参照图片使生成模型理解一个个性化概念,如特定的一条宠物狗,一个特定的玩具,等等,再通过文字引导的提示编辑来生成基于个性化概念变化的图片。
然而,这些方法都着重于个性化一个具体的实例,但在很多情况下用户可能需要个性化一个更抽象的视觉特征并生成新的实例,比如生成设计风格一致的新高达玩具,或者相似画风的新卡通角色、新画作、等等。
如果使用已有的实例层面的个性化方法则很难生成不同于参照图片中给定的实例的图片,并且如果参考图片表述的并非同一个实例时,现有的实例层面的个性化方法则无法捕捉到参考图片中的变化,并在生成过程中导致有限的多样性。
方法概述
DreamDistribution训练方法主要分为三部分。
1. 基于类似Textual Inversion的提示学习的方法,只更新固定长度的提示嵌入,冻结其余下游文本编码器以及扩散模型的参数。
2. 在提示学习的基础上,引入了提示分布学习,即保存多个长度相同的文本提示嵌入,并在语义空间内用这些提示的语义特征去拟合一个提示的高斯分布。
同时为保证不同的提示在语义空间内的特征不同,引入了正交损失项(Orthogonal Loss)去最小化不同提示之间在语义空间内的的余弦相似度。
3. 为了优化整体分布,使用了重参数的方法进行多次可导采样,最后的损失函数为与训练下游生成模型相同的图片重建损失或噪声预测的均方损失函数,以及由超参数控制的正交损失函数。
推理时即可直接从学习到的文本提示分布中采样,作为下游生成模型的提示输入来输出图片。
图片
如果需要进行文本引导的提示修改,则对所有提示在嵌入空间加同样的文本前缀或后缀,并重新在语义特征空间拟合高斯分布并采样作为下游生成模型的输入。
实验和结果
多样个性化生成
我们首先展示方法生成多样的个性化图像的能力。通过DreamDistribution生成的图像保留了训练图片中的共有视觉特征,同时与训练图片不同并且具有高多样性。
给定一组不容易用文本描述,但同时具有一些相似的视觉属性的训练图像(通常为5-20张),可以通过简单地从学习的分布中采样作为输入提示生成多样化的分布内图像。
因此,学习到的提示分布可以被视为与训练图像集相对应的描述的分布。
对比基线
我们与流行的实例级个性化方法进行比较,包括Textual Inversion、DreamBooth、Custom Diffusion。
我们还对比了使用简短描述作为文本提示的方法,以及使用详细描述的长文本作为提示的方法。这些比较强调了我们的方法在处理训练图像的相似性和多样性方面的能力。
使用相同的预训练Stable Diffusion版本2.1,并且使用基线工作中提供的默认超参数。
对比结果
下图显示了与基线方法的可视化比较。无论是短文本提示方法还是长文本提示方法,在视觉上都无法生成与参照图片相符的结果,因为预训练的生成模型所理解的名词很可能与参照图像有偏差,而且参照图像的细节很难用语言描述。
使用基线个性化方法生成的图像通常在所有示例中显示有限的变化或与参照图片不一致的视觉属性。这些方法都尝试将图片中的概念与单个固定的提示嵌入关联起来,所以在语义上固定的嵌入缺少变化。
尽管去噪的过程能够引入一些随机性,但由于训练目标是将各种不同的概念与同一个固定的嵌入建立联系,这将导致1)提示嵌入欠拟合并且仅学习到一个过于广泛的概念,比如物体类别的名词本身,从而导致生成出的图片与参照图片不符(如下图中间一列倒数第2,4行),或者2)拟合于训练图像的某一个特定的视觉上的组合,从而导致生成图像缺乏多样性(如下图左列倒数第2,3,4行)。
通过使用多个提示模型和优化提示分布来建模多个概念,我们提出的方法能够产生更多样的外观,视角等实质性变化,例如左列最后一行。我们的方法还可以建模材质和背景信息,并生成颜色和姿态方面具有显著变化的新实例,如中间列示例中最后一行所示。
图片
以及线条、整体风格等变化,并生成像右列中最后一行展示的新涂鸦创作。总体而言,DreamDistribution能够生成在颜色,视角、姿态、布局,细节设计等方面产生实质性的变化的图像,同时保持与参照图像相符的适当视觉属性。
质量和多样性评估
我们在多样性和质量方面进行了定量评估,在包括真实物体照片(大尺度和小尺度)、著名艺术家的作品,具有显著风格的卡通人物插画以及在线社区插画师的作品等12种多样化图像场景上训练了DreamBooth、Textual Inversion、Custom Diffusion和DreamDistribution。
自动评估指标
我们使用既定的自动评估指标对生成图像进行评估,这些指标衡量了合成图像的多样性和真实图像之间的相似性。
在下表中,使用FID、CLIP-I和DINO等流行指标来评估图像质量。我们的方法在所有三个质量度量中均达到最佳质量,表明我们的方法能够创建更多满足提示要求的高质量图像。
图片
此外,在表1中报告了Density和Coverage指标。Density衡量真实样本密集聚集的区域,而Coverage计算真实样本邻域中包含至少一个生成样本的比例,反映图片的多样程度。我们的方法在整体上实现了最佳的覆盖率和多样性。
人类评估
我们进行了基于12组参考图像的人工评估。对于每个参考图像集,我们分别使用基线方法和我们的方法生成图像,每种方法生成40张图像,总计1,920张图像。我们指派了10位独立的注释者。
对于这12个参考集中的每一个,注释者被要求根据他们对生成图像与参考集的相似性以及生成集内的多样性的感知,选择最倾向的生成图像集。
这些方法是匿名的,因此注释者不知道哪个生成集对应于哪种方法。我们收集了总共120个样本并统计了偏好的频率。与三个基线模型相比,我们生成的图像在多样性方面表现整体更好。
提示分布的可控性
下图展示了更多文本引导的提示编辑生成结果。
图片
除了文本引导的提示编辑,学习到的提示分布还可以通过缩放方差来控制生成的多样性。如下图所示,当缩放系数γ变大时,生成的图像更具随机性,而缩放系数等于0时则生成图片的多样性和随机性显著下降。
图片
不同的提示分布还可以通过按权重相加来得到生成具有混合概念的图片的效果,如下图所示,按不同比例混合中国山水画和梵高画作所对应的提示分布,可以生成多样的混合两种特征的图片。
图片
应用于3D生成
由于方法独立于下游生成模型,学习到的提示分布可以即插即用于其他文字提示驱动的生成任务,譬如文字生成3D。
图片
我们实验使用MVDream作为3D生成模型,结果显示在3D生成任务上同样可以体现多样性生成,以及文本提示编辑等功能。
图片
总结
这项工作注重于不同于实例层面而时更广泛的图片集层面的个性化生成任务,从而使得生成的图像更具多样性、创新性,但同时符合参照图片的一些视觉属性。
工作还有一些不足,比如生成效果高度依赖于训练图片的质量和多样性,并且在3D生成上的结果还有提高空间。
研究人员希望未来能有办法将方法优化得更鲁棒,同时提升在类似3D生成任务上的效果。更多细节请参考原文章。
参考资料:
https://briannlongzhao.github.io/DreamDistribution/