趋近智
U-Net中的卷积层擅长捕捉局部模式和空间层级,但其有效感受野随网络深度增长相对缓慢。这会限制模型捕获图像远距离关联的能力,而这对于生成一致的整体结构通常很重要。此外,集成条件信息(如文本提示)需要能够将条件信号与空间特征有效对齐 (alignment)的机制。注意力机制 (attention mechanism)为这两个难题提供了有效的解决方案。
自注意力层使特征图内不同的空间位置(像素或补丁)能够直接交互,无论它们相距多远。这使得网络能够比仅依赖堆叠卷积更有效地模拟远距离关联并获取全局信息。
在U-Net块内的一个典型自注意力模块中,输入特征图 通过学习到的线性变换被映射为查询()、键()和值()表示:
这里,是可学习的权重 (weight)矩阵。注意力权重通过对查询和键的点积进行缩放,然后应用softmax函数来计算:
其中是键的维度,用于缩放。这些权重决定了每个空间位置对所有其他位置给予的“注意力”程度。自注意力层的最终输出是值向量 (vector)的加权和:
这个富含全局信息的输出特征图,通常会通过残差连接加回到原始输入特征图,并由后续层进一步处理。
自注意力常被集成到U-Net的低分辨率(瓶颈)块中,那里特征图较小,使得注意力的二次方复杂度更容易处理。然而,线性注意力或局部注意力窗口等变体也允许其在更高分辨率下使用。
图示自注意力模块在U-Net残差块内的集成方式。该模块作用于特征图,以引入全局信息。
自注意力 (self-attention)关联图像不同部分彼此,而交叉注意力关联图像部分与外部条件信号,如文本嵌入 (embedding)、类别标签,甚至来自另一图像的特征。这对于根据特定要求引导扩散过程具有基础作用。
在U-Net中用于条件控制的交叉注意力层(在Stable Diffusion等模型中很常见),查询向量 (vector)()源自U-Net的空间特征图,而键()和值()向量源自条件上下文 (context)嵌入(例如,文本编码器中的token嵌入):
这里,是U-Net的中间特征图,是条件向量或序列。注意力机制 (attention mechanism)随后计算:
输出表示受条件信息调节的图像特征。U-Net特征图()中的每个空间位置都关注条件上下文()的元素,有效地将相关条件信号注入空间表示中。这使得模型能够生成与提供的文本提示或其他条件高度一致的图像。
交叉注意力层通常插入到U-Net架构内的多个分辨率级别,常与自注意力块并用,使条件信息能够影响整个网络的特征生成。
图示交叉注意力如何将条件信息(键、值)与U-Net的图像特征(查询)集成。
集成注意力机制 (attention mechanism)显著提升了U-Net架构在扩散模型中的能力:
然而,这些优点也伴随着计算复杂度的增加。标准自注意力的复杂度与输入token(像素或补丁)数量呈平方关系,为,其中。交叉注意力的复杂度为,其中是图像特征序列长度,是上下文 (context)序列长度。这使得注意力计算量大,尤其是在高分辨率时。多头注意力 (multi-head attention)(并行运行多个小维度注意力计算)等技术是标准做法,目前的研究也在寻找更高效的注意力变体(例如,稀疏注意力、线性注意力)来降低这些成本。
通过策略性地融入自注意力与交叉注意力,U-Net成为先进扩散模型更为强大的主干网络,能够生成与复杂条件输入高度一致的高质量图像。
这部分内容有帮助吗?
© 2026 ApX Machine LearningAI伦理与透明度•