Style Aligned image generation via shared attention

和controlnet的reference only技术类似。

1.introduction

StyleAligned,能够在生成的图像集上实现consistent style interpretation的方法。可以应用于任何基于注意力的文本到图像扩散模型上,在扩散过程中通过从每个生成的图像到batch中的第一个图像进行最小的attention sharing operations,可以得到一组具有一致风格的图像,此外利用扩散反演,可以根据参考风格图像生成具有一致风格的图像,无需优化或微调。

2.Related work

扩散过程中的cross/self-attention对生成图像的布局和内容起到了决定性作用。StyleAligned可以在没有优化阶段和没有依赖训练多个图像的情况下生成一致的图像集合。

3.Method overview

3.1 Preliminaries

T2I扩散模型采用了unet架构,由卷积层和Transformer注意力块组成,在这些注意力机制中,深层图像特征通过self-attention与彼此交互,并通过cross-attention与上下文文本embedding交互。

StyleAligned在self-attention上进行,通过attending to each other来更新深层特征。1.通过learned linear layers将特征投影为QKV;2.计算scaled dot-product attention;直观的看,每个图像特征都是通过V的加权来更新的,其中权重取决于Q和K之间的相关性,

3.2 StyleAligned image set generation

我们方法的目标是生成一组与输入的文本提示集{y1,y2,...yn}对齐并具有一致风格的图像级{L1,...Ln},在图3中可以看到Toy对象的数据集和上方的输入文本风格对齐。生成具有不同内容的风格对齐图像集的一种朴素的方法是在文本提示中使用相同的风格描述,但是在图2中已经展示共享风格描述来生成不同图像会导致不对齐的图像集。

StyleAligned的关键在于利用self-attention机制在各个生成的图像之间进行通信,这是通过在生成图像之间sharing attention layers来实现的。

QKV分别为从集合Li的深层特征投影中得到的query,key和value,full attention sharing可能会影响生成图的质量,会导致图像之间的内容泄露,例如图5所示,图像集中的独角兽染上了恐龙身上的绿色颜料。并且full attention sharing还导致了更少样式的集合。

为了限制内容泄露并允许多样性的集合,我们将注意力仅共享给生成集中的一张图片,通常是batch中的第一张,也就是说,target图像特征仅关注自身以及集合中的一张reference图像的特征,为了实现平衡的reference注意力,使用了AdaIN来对目标的Q和K进行规范化。

4.Evaluations and experiements

在sdxl上应用attention sharing,对模型70层self-attention。单个A100生成四张图需要29s。

相关推荐
后端小肥肠2 小时前
突破 LLM 极限!n8n + MemMachine 打造“无限流”小说生成器
人工智能·aigc·agent
道19932 小时前
PyTorch 从小白到高级进阶教程[工业级示例](三)
人工智能·pytorch·python
南山乐只2 小时前
【原文翻译搬运】Equipping agents for the real world with Agent Skills
人工智能·职场和发展·创业创新
AI营销快线2 小时前
金融AI内容合规,三类系统怎么选?
大数据·人工智能
测试人社区-千羽2 小时前
智能测试的终极形态:从自动化到自主化的范式变革
运维·人工智能·python·opencv·测试工具·自动化·开源软件
用户9186034312732 小时前
AI重塑云原生应用开发实战-极客时间
人工智能
秋刀鱼 ..2 小时前
2026年机器人感知与智能控制国际学术会议(RPIC 2026)
运维·人工智能·科技·金融·机器人·自动化
listhi5202 小时前
使用Hopfield神经网络解决旅行商问题
人工智能·深度学习·神经网络
锐学AI2 小时前
从零开始学MCP(八)- 构建一个MCP server
人工智能·python
木棉知行者2 小时前
PyTorch 核心方法:state_dict ()、parameters () 参数打印与应用
人工智能·pytorch·python