性能超群!牛津&上海AI Lab&港大&商汤&清华强强联手,提出用于引用图像分割的语言感知视觉Transformer!代码已开源...

关注公众号,发现CV技术之美


本篇分享 CVPR 2022 论文『LAVT: Language-Aware Vision Transformer for Referring Image Segmentation』,牛津&上海AI Lab&港大&商汤&清华强强联手,提出用于引用图像分割的语言感知视觉Transformer!代码已开源!

详细信息如下:

cda05ae1822d823a487b927290fdc8a5.png

  • 论文地址:https://arxiv.org/abs/2112.02244

  • 代码地址:https://github.com/yz93/lavt-ris

      01      

摘要

引用图像分割(Referring image segmentation)是一项基本的视觉语言任务,旨在从图像中分割出由自然语言表达所引用的对象。这项任务背后的关键挑战之一是利用引用表达来突出图像中的相关位置。解决这个问题的一个范例是利用强大的视觉语言(“跨模态”)解码器来融合从视觉编码器和语言编码器中独立提取的特征。

最近的方法通过利用 Transformer 作为跨模态解码器,在这一范式中取得了显著进步,同时 Transformer 在许多其他视觉语言任务中取得了压倒性的成功。在这项工作中,作者采用不同的方法,通过视觉 Transformer 编码器网络的中间层中语言和视觉特征的早期融合,可以实现明显更好的跨模态对齐。

通过在视觉特征编码阶段进行跨模态特征融合,可以利用 Transformer 编码器的建模能力来挖掘有用的多模态上下文。这样,使用轻量级掩码预测器很容易获得准确的分割结果。本文的方法大大超过了以前在RefCOCO、RefCOCO+ 和 G-Ref 上的最先进方法。

      02      

Motivation

给定目标对象的图像和文本描述,参考图像分割(Referring image segmentation)旨在预测描绘该对象的像素级掩码。它为各种应用产生了巨大的价值,例如基于语言的人机交互和图像编辑。与基于固定类别条件的传统单模态视觉分割任务相比,参考图像分割必须处理人类自然语言中更丰富的词汇和句法种类。

在这个任务中,目标对象是从一个自由形式的表达中推断出来的,其中包括表示实体、动作、属性、位置等概念的单词和短语,这些概念按句法规则组织。因此,这项任务的关键挑战是找到与给定文本条件相关的视觉特征。

332a794484abc2b459fa54dc214f82e6.png

在过去的几年里,人们越来越多地致力于参考图像分割。一种被广泛采用的范例是首先从不同的编码器网络中独立地提取视觉和语言特征,然后将它们融合在一起以使用跨模态解码器进行预测。具体来说,融合策略包括循环交互、跨模态注意力、多模态图推理、语言结构引导的上下文建模等。最近的进展通过使用跨模态 Transformer解码器(如上图(a) 所示)来学习更有效的跨模态对齐,从而提高了性能。 

尽管已经取得了很大进展,但在传统范式中,Transformer 增强参考图像分割的潜力仍然远未得到充分探索。具体来说,跨模态交互仅在特征编码之后发生,跨模态解码器仅负责对齐视觉和语言特征。因此,以前的方法未能有效地利用编码器中丰富的 Transformer 层来挖掘有用的多模态上下文。为了解决这些问题,一个潜在的解决方案是利用视觉编码器网络在视觉编码过程中联合嵌入语言和视觉特征。

因此,本文提出了一个语言感知视觉Transformer(LAVT)网络,其中视觉特征与语言特征一起编码,在每个空间位置“感知”它们的相关语言上下文。如上图(b)所示,LAVT充分利用了现代视觉Transformer骨干网络中的多阶段设计,形成了一种分层的语言感知视觉编码方案。

具体来说,作者通过在网络的每个阶段发生的像素-词注意力机制将语言特征密集集成到视觉特征中。然后,在下一个编码器阶段,以下 Transformer 块利用有益的视觉语言提示。这种方法使模型能够放弃复杂的跨模态解码器,因为提取的语言感知视觉特征可以很容易地用于使用轻量级掩码预测器获取准确的分割掩码。

为了评估所提出方法的有效性,作者对各种主流参考图像分割数据集进行了广泛的实验。本文的 LAVT 在 RefCOCO 、RefCOCO+、G-Ref(UMD partition) 和 G-Ref(Google partition) 进行了实验,将这些数据集的最新技术水平分别提高了 7.08%、6.64%、6.84% 和 8.57%。

      03      

方法

b71115a5919c4b15116f2ab25e95598f.png

上图展示了本文的语言感知视觉Transformer (LAVT) 的pipeline,它利用分层视觉Transformer来联合嵌入语言和视觉信息以促进跨模态对齐。在本节中,作者首先在3.1节中介绍语言感知视觉编码策略。这是通过第 3.2 节中详述的像素词注意力模块和第3.3节中的语言路径实现的。然后在3.4节中,作者描述了用于获得最终结果的轻量级掩码预测器。

3.1. Language-aware visual encoding

给定图像的输入对和从图像中指定对象的自然语言表达式,模型输出描绘对象的像素级掩码。为了提取语言特征,作者采用深度语言表示模型将输入表达式嵌入到高维词向量中。作者将语言特征表示为,其中和 分别表示通道数和单词数。

在获得语言特征后,通过视觉Transformer层的层次组织为四个阶段进行联合视觉特征编码和视觉语言(在以下内容中也称为“跨模态”或“多模态”)特征融合。作者在自下而上的方向上使用 i ∈ {1, 2, 3, 4} 对每个阶段进行索引。每个阶段使用一堆 Transformer 编码层(具有相同的输出大小)、多模态特征融合模块 和可学习的门控单元。在每个阶段中,通过三个步骤生成和提炼语言感知视觉特征。

首先,Transformer 层 将前一阶段的特征作为输入,输出丰富的视觉特征,表示为 。然后,通过多模态特征融合模块 与语言特征 相结合,产生一组多模态特征,记为。最后,中的每个元素由可学习的门控单元加权,然后逐个元素添加到 以产生一组嵌入语言信息的增强视觉特征,将其表示为。

Transformer 编码层的四个阶段对应于 Swin Transformer 中的四个阶段,Swin Transformer是一种适用于解决密集预测任务的高效分层视觉骨干网。每个阶段的多模态特征融合模块是本文提出的像素-词注意模块(PWAM),旨在将语言含义与视觉线索紧密对齐。而门控单元就是语言门 (LG),这是本文设计的一个特殊单元,用于调节语言信息沿语言路径 (LP) 的流动。

3.2. Pixel-word attention module

为了将目标对象与其背景分离,对齐对象的视觉和语言表示非常重要。一种通用方法是将每个像素的表示与引用表达式的表示相结合,并学习区分“引用”类和“背景”类的多模态表示。以前的方法已经开发出各种机制来应对这一挑战,包括动态卷积、concat、跨模态注意力、图神经网络等等。与大多数以前的跨模态注意机制相比,本文的像素-词注意模块(PWAM)产生的内存占用要小得多,因为它避免了计算两个图像大小的空间特征图之间的注意权重,由于注意力步骤更少,也更简单。

a23bf702a3d93c755deae50616fb94d5.png

上图示意性地说明了PWAM。给定输入视觉特征和语言特征,PWAM 分两步执行多模态融合,如下所述。首先,在每个空间位置,PWAM 聚合整个单词维度的语言特征 L,以生成特定位置的句子级特征向量,该向量收集与当前局部邻域最相关的语言信息。这一步生成一组空间特征图。具体来说,的计算如下:

1298576d73cd50b8a9e854da2029eee4.png

其中 是投影函数。每个语言投影 都实现为具有 个输出通道的 1×1 卷积。查询投影和最终投影分别实现为 1×1 卷积,然后是实例归一化,输出通道数为。这里,“flatten”是指将两个空间维度以行优先展开,而“unflatten”是指相反的操作。这两个操作和转置用于将特征图转换为适当的形状进行计算。作者使用视觉特征作为查询,语言特征作为键和值来实现缩放的点积注意力,在查询投影函数 和输出投影函数 中进行线性变换后的实例归一化。

其次,在获得与 形状相同的语言特征后,将它们组合起来,通过元素乘法生成一组多模态特征图。具体步骤描述如下:

12407250c0948e212f76eddc8ff08898.png

其中表示逐元素乘法,和分别是视觉投影和最终的多模态投影。这两个函数中的每一个都实现为 1×1 卷积,然后是 ReLU非线性。

3.3. Language pathway

56542a2109faff7007042ac5c9fe3147.png

如前所述,在每个阶段,作者将 PWAM 的输出 与 Transformer 层的输出合并。作者将这种合并操作中的计算称为语言路径。为了防止压倒 中的视觉信号并允许自适应量的语言信息流向 Transformer 层的下一阶段,作者设计了一个语言门,它学习一组基于的元素权重图来重新缩放中的每个元素。语言路径在上图中示意性地说明,并在数学上描述如下:

478435e2a3e68d88b76a786222257c73.png

其中表示逐元素乘法,是一个双层感知器,第一层是 1×1 卷积,然后是 ReLU非线性,第二层是 1×1 卷积,然后是tanh函数。上式中的求和运算 是利用预训练视觉 Transformer 层进行多模态嵌入的有效方法,因为将多模态特征处理为“补充”(或“残差”)可以避免破坏在纯视觉数据上预训练的初始化权重。

3.4. Segmentation

作者以自上而下的方式组合多模态特征图 , i ∈ {1, 2, 3, 4},以利用多尺度语义进行最终分割。解码过程可以用下面的递归函数来描述:

26bfdd6c4ff5e5045d0c86fba0df2d30.png

这里 '[ ; ]' 表示沿通道维度的特征concat,υ表示通过双线性插值进行上采样,是一个投影函数,通过BatchNorm和 ReLU非线性连接的两个 3×3 卷积实现。最终的特征图通过 1×1 卷积投影到两个类别分数图中。

3.5. Implementation

作者在 PyTorch中实现本文的方法,并使用 HuggingFace 的 Transformer 库中的 BERT 实现。LAVT 中的 Transformer 层使用 Swin Transformer在 ImageNet22K上预训练的分类权重进行初始化。本文的语言编码器是基础 BERT 模型,具有 12 层,隐藏大小为 768,并使用官方预训练的权重进行初始化。

本文模型中的其余权重是随机初始化的。设置为 512,模型使用交叉熵损失进行优化。作者采用 AdamW优化器,权重衰减为 0.01,初始学习率为 0.00005。作者用batch大小为 32 的 40 个 epoch 训练本文的模型。在一个 epoch 中对每个对象(同时为它随机采样一个引用表达式)仅迭代一次。图像被调整为 480×480,并且没有应用数据增强技术。在推理过程中,沿分数图的通道维度的 argmax 用作预测。

      04      

实验

b3daa1bfe0e1987815e24be60ae3f31f.png

在上表中,作者使用 oIoU 指标在 RefCOCO、RefCOCO+和 G-Ref数据集上针对最先进的参考图像分割方法评估 LAVT。LAVT 在所有三个数据集的所有评估子集上都优于所有以前的方法。

1572c406d9368f851c5c9ce489662574.png

上表展示了模型中LP和PWAM模块的消融结果,可以看出这两个模块对于提升模型的性能都是有效的。

2cb6230c7dd605482c0104ff7e5ff6da.png

在上表(a) 中,作者比较了 sigmoid 函数和tanh作为 LG 中的最终激活函数。使用 sigmoid 函数会导致较差的结果。在上表 (b) 中,作者比较了归一化函数对实验结果的影响。在上表 (c) 中,作者展示了不同特征用于最后分类的结果对比。在上表 (d) 中,作者展示了不同attention的结果对比。

18a3642b7c026fbcaf07f6f0c6339f1b.png

在上图中,作者可视化了完整模型和两个消融模型(没有语言路径(“w/o LP”)和没有像素词注意模块(“w/o PW AM”)的预测和特征图。

2ff1c8edc47faacd4a5176b2a74291ad.png

为了进一步验证本文提出的通过视觉 Transformer 编码器网络融合跨模态信息的方法的有效性,在上表中,作者提供了本文的方法与之前三种最先进的方法 (LTS, VLT和 EFN)之间的公平比较。

      05      

总结

在本文中,作者提出了一种用于参考图像分割的语言感知视觉Transformer(LAVT)框架,该框架利用视觉Transformer的多阶段设计来联合编码多模态输入。三个基准的实验结果证明了它相对于现有技术的优势。

参考资料

[1]https://arxiv.org/abs/2112.02244
[2]https://github.com/yz93/lavt-ris

▊ 作者简介

研究领域:FightingCV公众号运营者,研究方向为多模态内容理解,专注于解决视觉模态和语言模态相结合的任务,促进Vision-Language模型的实地应用。

知乎/公众号:FightingCV

d3bfa6978c200fa633575335857492da.jpeg

END

欢迎加入「图像分割交流群👇备注:分割

3d2ad40a05b35cd54114b225dc31a77d.png

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值