指称关系(Referring Relationships)

指称关系(Referring Relationships)

指称关系(Referring Relationships)


一、引入

  在日常话语中指称表达有助于识别和定位我们周围的实体。例如,我们可能会很容易将“踢球的人”与“守卫球门的人”区别开来。在该例中,我们通过各实体与其他实体的关系来消除两个人之间的歧义。

  当然,图像也一样,其不仅仅是一组对象,每个图像代表一个相互关联的网络。图像中实体之间的这些关系具有一定的语义,并可帮助观看者区分各实体。

  例如,在足球比赛的图像中(如图1),可能存在多个人,但是每个人都参与不同的关系:一个是踢球,另一个是守卫球门。文中,我们制定了利用这些 “指称关系” 来消除同一类别实体之间歧义的任务。

  最终目标是构建可以识别具体所指的实体的计算模型。我们引入了指称关系 —— 在给定关系的情况下,模型可以根据指称关系确认场景中的某些实体。形式上,任务需要输入图像以及关系,其形式为 < subject-predicate- object >,并输出主题和对象位置。例如,图1中的输入关系为< person-kicking-ball > 和 < person-guarding-goal >。指称关系(Referring Relationships)

图1 引用关系通过使用与其他实体的相对关系消除相同类别的实例之间的歧义。

  

二、主要难点及相关工作

  前人工作中主要的难点

  1 对语言建模较为困难(自然语言处理)

  2 难以对小尺寸和辨识度低的组合物进行辨别

  3 对谓词运算符进行建模并不简单

  先简单提一下场景图(scene graph),关系被形式化为图像的显式形式表示的一部分,称为场景图[14,17],如下图。场景图可以改善许多计算机视觉任务,包括语义图像检索[33],图像描述[1]和对象检测[30]。

指称关系(Referring Relationships)

  

  场景图相关文献主要是在给定输入图像的情况下输出关系。相反,我们关注的是通过输入关系和图像,定位对应的实体。

  对语言建模困难的处理

  以前的工作试图在指称表达式理解[28,24,41,42,11]的背景下消除相同类别的实体的歧义。他们的任务需要一种自然语言输入,例如“守护目标的人”,从而导致需要自然语言和计算机视觉组件的评估。确定这些模型所产生的错误是出自然语言还是可视组件,这可能具有挑战性。

  文中通过结构化关系输入接口,如 < person-kicking-ball > ,这减轻了对语言建模(自然语言处理)的需要。

  难以辨别问题的处理

  在目标定位文献中,斑马和人等一些实体具有高度的辨别力,易于检测,而玻璃和球等其他实体往往难以定位[29]。这些困难是由于例如小尺寸和非辨别性组合物而产生的。这种难度差异转化为指称关系任务。为了应对这一挑战,我们使用直觉,如果我们知道另一个实体在哪里,检测一个实体会变得更容易。

  换句话说,我们可以发现球是以踢球的人为条件的,反之亦然。

  我们通过展开模型并通过谓词定义的操作符,在主语和宾语之间迭代传递消息来训练这种循环依赖关系。

  对谓词运算符建模问题的处理

  另外,对谓词运算符进行建模并不简单,传统上,以前的视觉关系论文已经为每个谓词学习了基于外观(appearance-based)的模型[20,23,26]。不幸的是,根据所涉及的实体,谓词的外观剧烈变化使得学习谓词外观模型具有挑战性。(这里的基于外观,可理解为主语和宾语的搭配)

  例如,谓词携带的外观可以在以下两种关系之间显著变化:< person - carrying - phone >和 < truck - carrying - hay>。

  相反,受到心理学中移动聚光灯理论(the moving spotlight theory)的启发[18,35],通过使用谓词作为从一个实体到另一个实体的视觉注意转移操作来绕过这一挑战。当一个移位操作学习将注意力从主语移动到宾语时,反向谓词移位类似地将注意力从宾语移回到主语。在多次迭代中,我们将主语和宾语之间的这些非对称注意力转移操作作为每个谓词不同类型的消息操作[37,9]。

  进一步说明,我们使用来自心理学的insight(洞察?)[18,35],特别是移动聚光灯理论,这表明视觉注意力(visual attention)可以被建模为以特定目标为条件并针对特定目标的聚光灯。前人的工作已经探索了使用注意力来改善图像字幕[38,2],甚至堆叠以改善问题回答[13,39]。相比之下,我们为每个唯一谓词建模两个判别式注意力移位(attention shifting )操作,一个以主语为条件来定位对象,以及以宾语为条件的逆谓词移位以找到主语,如下图。每个谓词都利用实体的当前估计以及图像特征来学习如何移位,从而允许它利用空间和语义特征。
指称关系(Referring Relationships)

图3 (a) 相对于图像中间的主语,当使用关系< subject-left of-object>查找宾语时,谓词 left 将注意力转移到右边。相反地,当使用宾语查找主语时,逆谓词 left 会将注意力转移到左边。(b)在查看用于学习这些变化的数据集时,这些变化是直观的。例如,我们发现 ride 通常表明主语和宾语属于上下关系。

  

三、指称关系模型及流程

  回想一下,我们的目标是通过定位关系中涉及的实体,使用输入指称关系来消除图像中实体的歧义。 形式上,输入是具有指称关系的图像I,关系R = < S-P-O >,它们分别是主语,谓词和宾语类别。期望该模型定位主语和宾语。

主要模型

  Symmetric stacked attention shifting (SSAS) model

  对称堆叠注意力转移(SSAS)模型

指称关系(Referring Relationships)

主要流程:

  1. 预训练得到 image_feature。 给定图像和 relationship,图像经一个pre-trained 的网络提取图像视觉特征(image_feature),特征 feature map 的尺寸是(L, L, C),C为通道数;

  2. 映射稠密C维矩阵。 将 subject 和 object(作者在代码中将 subject 和 object 表示为其类别 id,为一个整数)映射为一个稠密 C 维向量:embedded_subject,embedded_object;

  3. 得到初步的注意力映射图。 image_feature 分别与 embedded_subject、embedded_object,逐位置进行内积,计算初始的 subject attention map 和 object attention map,尺寸均为 (L, L, 1);
    x^0=Att(μ,S)=ReLU(μEmb(S))y^0=Att(μ,O)=ReLU(μEmb(O))\begin{array}{l}{\hat{\mathbf{x}}^{0}=\operatorname{Att}(\boldsymbol{\mu}, S)=\operatorname{ReLU}(\boldsymbol{\mu} \cdot \operatorname{Emb}(S))} \\ {\hat{\mathbf{y}}^{0}=\operatorname{Att}(\boldsymbol{\mu}, O)=\operatorname{ReLU}(\boldsymbol{\mu} \cdot \operatorname{Emb}(O))}\end{array}

  4. 计算预测转移图。 以 subject attention map 为输入,经若干层卷积处理(卷积核尺寸为 k x k,中间层 feature map 通道数为 c,最后一层通道数为 1),计算 subject->object 的 predicate shift (L, L, 1);同时以 object attention map 为输入,经若干层卷积处理(配置与 subject->object 相同),计算 object->subject 的 predicate shift (L, L, 1);

x^shift0=Sh1(y^0,P)=lnReLU(y^0Fl1(P))\hat{\mathbf{x}}_{\text {shift}}^{0}=\operatorname{Sh}^{-1}\left(\hat{\mathbf{y}}^{0}, P\right)=\bigcirc_{l}^{n} \operatorname{ReLU}\left(\hat{\mathbf{y}}^{0} * F_{l}^{-1}(P)\right)

y^shift0=Sh(x^0,P)=lnReLU(x^0Fl(P))\hat{\boldsymbol{y}}_{\text {shift}}^{0}=\operatorname{Sh}\left(\hat{\mathbf{x}}^{0}, P\right)=\bigcirc_{l}^{n} \operatorname{Re} \mathrm{L} \mathrm{U}\left(\hat{\mathbf{x}}^{0} * F_{l}(P)\right)

  1. 进一步根据特征图和预测转移图计算新的注意力映射。 将 subject->object predicate shift 与 image_feature 相乘(相当于对 image_feature 的每个位置进行加权)后,逐位置 embedded_object 进行内积,计算得到新的 object attention map;同时, 将 object->subject predicate shift 与 image_feature 相乘,并逐位置与 embedded_subject 进行内积,计算得到新的 subject attention map;
    x^1=Att(x^shift0×μ,S)y^1=Att(y^shift0×μ,O) \begin{aligned} \hat{\mathbf{x}}^{1} &amp;=\operatorname{Att}\left(\hat{\mathbf{x}}_{\text {shift}}^{0} \times \boldsymbol{\mu}, S\right) \\ \hat{\mathbf{y}}^{1} &amp;=\operatorname{Att}\left(\hat{\mathbf{y}}_{\text {shift}}^{0} \times \boldsymbol{\mu}, O\right) \end{aligned}

6.循环迭代。 更新 subject/object attention map,进行第 4 步,循环迭代多次;

  1. 迭代完成之后,基于 subject attention map 计算 subject 区域,基于 object attention map 计算 object 区域;

  我们使用两种类型的模块设计我们的模型:注意力和谓词转换模块。 注意力模型试图在图像中定位特定类别,谓词转换模块学习将注意力从一个实体转移到另一个实体。

  

四、实验

  实验关于CLEVR[12],VRD[23]和Visual Genome[17]的指称关系的结果。这里分别展示了主语和宾语定位的平均 IoU 和KL散度。(Mean Intersection over Union,是用于定位图像显著部分的常用度量[4,5],该度量预测图像区域与地实际位置边界框中的平均交点。),如下图。
指称关系(Referring Relationships)

  我们可以将模型分解为注意力和移位模块,并将它们堆叠起来以参与场景图的节点。在这里,我们演示了如何使用我们的模型从一个节点(phone)开始并使用关系遍历场景图来连接节点并定位短语中的所有实体< phone on the person next to another person wearing a jacket >。第二个例子涉及< hat worn by person to the right of another person above the table >中的实体,如下图。
指称关系(Referring Relationships)
  三种没有部分实体测试情况:输入没有主题为< ___ -predicate-object >,输入没有对象为< subject- predicate-___ >,只有谓词输入< __ - predicate - ___>。依然在定位人物方面有一定的效果提升。指称关系(Referring Relationships)

五、结论

  文中介绍了指称关系的任务,其模型利用视觉关系来消除相同类别的实例之间的歧义。模型迭代地使用谓词作为关系中两个实体之间的注意力转移。同时,还证明了该模型产生了可解释的谓词转换,使我们能够验证模型实际上是在学习转移注意力。甚至通过依赖部分指称关系以及如何扩展它以在场景图上执行注意力扫视来展示该模型如何用于定位完全看不见的类别。指称关系的改进可以为视觉算法检测看不见的实体并学习增强其对视觉世界的理解铺平道路。