(十一)论文阅读 | 视觉关系检测


简介

在这里插入图片描述

图1:论文原文

今天介绍的论文是一篇关于视觉关系检测的文章,发表在 E C C V   2016 {\rm ECCV\ 2016} ECCV 2016上。视觉关系检测是在目标识别的基础上,进一步检测出目标检测关系。如骑在上,是图像中的目标,而“骑”是两目标间的关系。该论文是视觉关系检测中较为经典的一篇,同时文中还介绍了一种新的 V R D {\rm VRD} VRD数据集和一个结合语言先验模型的关系预测模型。论文原文 源码


0. Abstract

视觉关系是图像中目标间的相互作用,而目标间的关系多样,难以获得足够的训练样本。由于以上限制,前人工作只致力于预测目标间常见的关系,如人和自行车的关系为骑和推。论文提出的模型首先单独预测目标和关系,然后将其结合得到最终结果。通过语义词嵌入得到的语言先验用于预测目标间的关系,该模型可以凭借少量训练样本得到目标间的多种关系。最后,理解图像中目标间的关系可以用于改善图像检索。

论文贡献:(一)提出一种新的视觉关系检测模型;(二)提出一种在视觉关系检测模型上零次学习的方法;(三)该模型可以用于改善图像检索的性能;(四)提出一种新的 V R D {\rm VRD} VRD数据集。


1. Introduction

视觉关系可以通过 ⟨ o b j e c t 1 ﹣ p r e d i c a t e ﹣ o b j e c t 2 ⟩ {\rm {\left \langle object_1﹣predicate﹣object_2 \right \rangle}} object1predicateobject2表示,视觉关系检测设计到目标检测和关系检测。 V i s u a l   P h r a s e s {\rm Visual\ Phrases} Visual Phrases使用 13 13 13种目标间常见的关系,如果想要检测更多的关系,则需要大量的训练样本。即如果总共有 N N N个目标和 K K K种关系,则需要训练 O ( N 2 K ) O(N^2K) O(N2K)个检测器。观察到有些目标间的关系不常见,而目标单独出现的概率很大。作者提出了一种视觉外观模型,总共需要 O ( N + K ) O(N+K) O(N+K)个检测器来检测 O ( N 2 K ) O(N^2K) O(N2K)种关系。
此外,目标间测关系在语义上是相互关联的,如人骑马和人骑象,马和象均为动物。即使没有大量人骑象的样本,也能根据人骑马这种样本推理。词向量嵌入是一种捕捉具有相似语义特征的样本。基于以上情况,论文提出了一种语言模块,使用预训练的词向量将目标间的关系映射到向量空间,具有相似语义特征的目标距离更近。
论文提出的模型通过关系嵌入空间学习目标和关系的视觉外观特征。同时提出一种新的视觉关系检测数据集,共计 5000 5000 5000张图像和 37993 37993 37993种关系。


2. Related Work

相关工作部分主要提到前人关于空间关系检测、人物交互检测和视觉关系的工作。


3. Visual Relationship Dataset

论文提出了一种新的视觉关系检测数据集,下面是几种常用数据集的比较:
在这里插入图片描述

图2:数据集


4. Visual Relationship Prediction Model

4.1 Training Approach

V i s u a l   A p p e a r a n c e   M o d u l e {\rm Visual\ Appearance\ Module} Visual Appearance Module,首先通过学习目标及其关系的外观特征对视觉关系 V ( ) V() V()建模。由于目标间的某些关系不常见,论文采用先分别学习目标和关系的特征,再将二者结合的方法。
首先,使用 C N N {\rm CNN} CNN N = 100 N=100 N=100种目标分类;同样地,使用 C N N {\rm CNN} CNN集合目标的边界框对 K = 70 K=70 K=70种关系分类。令 R ⟨ i , j , k ⟩ R_{\left \langle i,j,k \right \rangle} Ri,j,k表示数据集中标注的真实关系, i i i j j j表示目标类别, k k k表示目标间的关系。对 V ( ) V() V()建模的结果为( O 1 O_1 O1 O 2 O_2 O2为目标对应的边界框): V ( R ⟨ i , j , k ⟩ , Θ ∣ ⟨ O 1 , O 2 ⟩ ) = P i ( O 1 ) ( z k T C N N ( O 1 , O 2 ) + s k ) P j ( O 2 ) (4.1) V(R_{\left \langle i,j,k \right \rangle},Θ|{\left \langle O_1,O_2 \right \rangle})=P_i(O_1)({\rm z}_k^T{\rm CNN}(O_1,O_2)+s_k)P_j(O_2)\tag{4.1} V(Ri,j,k,ΘO1,O2)=Pi(O1)(zkTCNN(O1,O2)+sk)Pj(O2)(4.1)

其中 Θ Θ Θ为参数集 { z k T , s k } \{{\rm z}_k^T,s_k\} {zkT,sk} z k {\rm z}_k zk s k s_k sk为学习参数,将 C N N {\rm CNN} CNN提取的特征转化为关系的概率。 k = 1 , 2 , . . . , K k=1,2,...,K k=1,2,...,K为关系, P i ( O 1 ) P_i(O_1) Pi(O1) P j ( O 2 ) P_j(O_2) Pj(O2)分别为 O 1 O_1 O1对应目标属于类别 i i i的概率和 O 2 O_2 O2对应目标属于类别 j j j的概率。 C N N ( O 1 , O 2 ) {\rm CNN}(O_1,O_2) CNN(O1,O2)是根据 O 1 O_1 O1 O 2 O_2 O2提取的目标关系特征。

L a n g u a g e   M o d u l e {\rm Language\ Module} Language Module,如上所述, ⟨ p e r s o n ﹣ r i d e ﹣ h o r s e ⟩ {\rm {\left \langle person﹣ride﹣horse\right \rangle}} personridehorse ⟨ p e r s o n ﹣ r i d e ﹣ e l e p h a n t ⟩ {\rm {\left \langle person﹣ride﹣elephant\right \rangle}} personrideelephant具有语义上的关联性。甚至,如果没有后者的样本,也能通过前者推导出来。论文提出的语言模块就是实现这一功能。
P r o j e c t   F u n c t i o n Project\ Function Project Function 首先,使用预训练的词向量 ( w o r d 2 v e c ) ({\rm word2vec}) (word2vec)将关系中的两个目标转换到词嵌入空间。接着,将这两个向量连接在一起,使用可学习参数 W {\rm W} W将其转化到关系向量空间。映射函数展示了如何使两个目标相互关联。令 w o r d 2 v e c ( ) word2vec() word2vec()表示将词转化为其 300 300 300维向量的函数。关系映射函数定义为: f ( R ⟨ i , j , k ⟩ , W ) = w k T [ w o r d 2 v e c ( t i ) , w o r d 2 v e c ( t j ) ] + b k (4.2) f(R_{\left \langle i,j,k \right \rangle},{\rm W})={\rm w}_k^T[word2vec(t_i),word2vec(t_j)]+b_k\tag{4.2} f(Ri,j,k,W)=wkT[word2vec(ti),word2vec(tj)]+bk(4.2)

其中 t j t_j tj为第 j j j个类别的词, w k T {\rm w}_k^T wkT是一个 600 600 600维向量, b k b_k bk是偏置项。 W {\rm W} W是参数集 { { w 1 , b 1 } , . . . , { w k , b k } } \{\{{\rm w}_1,b_1\},...,\{{\rm w}_k,b_k\}\} {{w1,b1},...,{wk,bk}}

T r a i n i n g   P r o j e c t i o n   F u n c t i o n Training\ Projection\ Function Training Projection Function 其次,最小化函数值 f ( ) f() f()使得具有相似关系的目标的距离更近。例如使得 ⟨ m a n ﹣ r i d i n g ﹣ h o r s e ⟩ {\rm {\left \langle man﹣riding﹣horse\right \rangle}} manridinghorse ⟨ m a n ﹣ r i d i n g ﹣ c o w ⟩ {\rm {\left \langle man﹣riding﹣cow\right \rangle}} manridingcow更近,同时与 ⟨ c a r ﹣ h a s ﹣ w h e e l ⟩ {\rm {\left \langle car﹣has﹣wheel\right \rangle}} carhaswheel更远。使用以下方式表述两组关系之间的距离: [ f ( R , W ) − f ( R ′ , W ) ] 2 d ( R , R ′ ) = c o n s t a n t ,   ∀ R , R ′ (4.3) \frac{[f(R,{\rm W})-f(R^{'},{\rm W})]^2}{d(R,R^{'})}=constant,\ {\forall}R,R^{'}\tag{4.3} d(R,R)[f(R,W)f(R,W)]2=constant, R,R(4.3)

其中 d ( R , R ′ ) d(R,R^{'}) d(R,R)为在向量空间中两个目标的余弦距离与两个关系 R R R, R ′ R^{'} R之和。

现在,为了满足上式,随机采样关系对 ( ⟨ R , R ′ ⟩ ) \Big({\left \langle R,R^{'}\right \rangle}\Big) (R,R)并最小化它们的方差: K ( W ) = v a r ( { [ f ( R , W ) − f ( R ′ , W ) ] 2 d ( R , R ′ ) }   ∀ R , R ′ ) (4.4) K({\rm W})=var(\{\frac{[f(R,{\rm W})-f(R^{'},{\rm W})]^2}{d(R,R^{'})}\}\ {\forall}R,R^{'})\tag{4.4} K(W)=var({d(R,R)[f(R,W)f(R,W)]2} R,R)(4.4)

其中 v a r ( ) var() var()为方差函数,采样个数为 500 K {\rm 500K} 500K

L i k e l i h o o d   o f   a   R e l a t i o n s h i p Likelihood\ of\ a\ Relationship Likelihood of a Relationship 然后,理想情况下,上述映射函数能够预测视觉关系的似然。如,模型应以大概率确定 ⟨ d o g ﹣ d r i v e ﹣ c a r ⟩ {\rm {\left \langle dog﹣drive﹣car\right \rangle}} dogdrivecar不可能出现。作者假设如果关系 R R R R ′ R^{'} R出现次数更多,则接下来 R R R出现的可能性更大。则将其公式化为损失函数: L ( W ) = ∑ { R , R ′ } m a x { f ( R ′ , W ) − f ( R , W ) + 1 , 0 } (4.5) L({\rm W})=\sum_{\{R,R^{'}\}}{\rm max}\{f(R^{'},{\rm W})-f(R,{\rm W})+1,0\}\tag{4.5} L(W)={R,R}max{f(RW)f(R,W)+1,0}(4.5)

上式只针对训练集中出现的关系,而映射函数 f ( ) f() f()针对所有的 ⟨ o b j e c t 1 ﹣ p r e d i c a t e ﹣ o b j e c t 2 ⟩ {\rm {\left \langle object_1﹣predicate﹣object_2\right \rangle}} object1predicateobject2的组合,即使未出现在训练集。 m a x {\rm max} max在这的含义是促使正确的关系对满足 f ( R , W ) − f ( R ′ − W ) ≥ 1 f(R,{\rm W})-f(R^{'}-{\rm W})≥1 f(R,W)f(RW)1。最小化损失函数等价于使得出现关系概率低的得分较低。
O b j e c t i o n   F u n c t i o n {\rm Objection\ Function} Objection Function,上面已得到视觉外观模型 V ( ) V() V()和语言模型 f ( ) f() f()。结合上述相关等式得到目标函数: C ( Θ , W ) = ∑ ⟨ O 1 O 2 ⟩ , R m a x { 1 − V ( R , Θ ∣ ⟨ O 1 O 2 ⟩ ) f ( R , W ) + max ⁡ ⟨ O 1 ′ , O 2 ′ ⟩ ≠ ⟨ O 1 , O 2 ⟩ , R ′ ≠ R V ( R ′ , Θ ∣ ⟨ O 1 ′ , O 2 ′ ⟩ ) , f ( R ′ , W ) , 0 } (4.6) C(Θ,{\rm W})=\sum_{\left \langle O_1O_2\right \rangle,R}{\rm max}\{1-V(R,Θ|\left \langle O_1O_2\right \rangle)f(R,{\rm W})\\ +\mathop{\max}\limits_{\left \langle O_1^{'},O_2^{'}\right \rangle≠\left \langle O_1,O_2\right \rangle,R^{'}≠R}V(R^{'},Θ|{\left \langle O_1^{'},O_2^{'}\right \rangle}),f(R^{'},{\rm W}),0\}\tag{4.6} C(Θ,W)=O1O2,Rmax{1V(R,ΘO1O2)f(R,W)+O1,O2=O1,O2,R=RmaxV(R,ΘO1,O2),f(R,W),0}(4.6)

最后的目标函数为: max ⁡ Θ , W { C ( Θ , W ) + λ 1 L ( W ) + λ 2 K ( W ) } (4.7) \mathop{\max}\limits_{Θ,{\rm W}}\{C(Θ,{\rm W})+λ_1L({\rm W})+λ_2K({\rm W})\}\tag{4.7} Θ,Wmax{C(Θ,W)+λ1L(W)+λ2K(W)}(4.7)

其中 λ 1 = 0.05 , λ 2 = 0.002 λ_1=0.05,λ_2=0.002 λ1=0.05,λ2=0.002

模型的网络结构如下:在这里插入图片描述

图3:网络结构

首先输入是一幅图像,经过 R C N N {\rm RCNN} RCNN得到图像中目标对;上面分支为视觉外感模型,下面分支为语言模型;最后综合二者结果,得到最终的输出为 ⟨ o b j e c t 1 ﹣ p r e d i c a t e ﹣ o b j e c t 2 ⟩ {\rm {\left \langle object_1﹣predicate﹣object_2\right \rangle}} object1predicateobject2及其置信度。

最后给出训练算法:在这里插入图片描述

图4:训练算法

4.2 Testing

在测试阶段,对于每张测试图片,使用 R C N N {\rm RCNN} RCNN产生一系列候选目标。接着,对于 R C N N {\rm RCNN} RCNN得到目标对 ⟨ O 1 , O 2 ⟩ {\left \langle O_1,O_2\right \rangle} O1,O2,根据视觉外观模型 Θ {\rm Θ} Θ和语言模型 W {\rm W} W学习的参数预测视觉关系 ( R ⟨ i , j , k ⟩ ∗ ) (R^*_{{\left \langle i,j,k\right \rangle}}) (Ri,j,k) R ∗ = arg ⁡ max ⁡ R V ( R , Θ ∣ ⟨ O 1 , O 2 ⟩ ) f ( R , W ) (4.8) R^*=\mathop{\arg\max}\limits_{R}V(R,Θ|{\left \langle O_1,O_2\right \rangle})f(R,{\rm W})\tag{4.8} R=RargmaxV(R,ΘO1,O2)f(R,W)(4.8)


5. Experiments

首先,实验部分给出了模型不同阶段的结果。如图:在这里插入图片描述

图5:实验结果

如上图左边列是关系检测,输入是图像及其中的目标,输出是对应目标间的关系;中间列是语句检测,输入是图像,输出是 ⟨ o b j e c t 1 ﹣ p r e d i c a t e ﹣ o b j e c t 2 ⟩ {\rm {\left \langle object_1﹣predicate﹣object_2\right \rangle}} object1predicateobject2,及包含两者的一个边界框;右边列是关系检测,输入是图像,输出是 ⟨ o b j e c t 1 ﹣ p r e d i c a t e ﹣ o b j e c t 2 ⟩ {\rm {\left \langle object_1﹣predicate﹣object_2\right \rangle}} object1predicateobject2,及每个目标单独的边界框。

下面是与一些 S O T A {\rm SOTA} SOTA模型的对比:
在这里插入图片描述

图6:实验结果对比

上图中 R @ k {\rm R@k} R@k表示前 k {\rm k} k个关系检测的召回率;不同列对应于图 4 4 4中的实验结果; O u r s ﹣ V   o n l y {\rm Ours﹣V\ only} OursV only表示仅使用视觉外观模型; O u r s ﹣ L   o n l y {\rm Ours﹣L\ only} OursL only表示仅使用视觉外观模型表示仅使用语言模型; O u r s ﹣ V + n a i v e   F C {\rm Ours﹣V+naive\ FC} OursVnaive FC表示在以上基础使用一个将目标间的关系映射为频率的函数代替 f ( ) f() f()函数; O u r s ﹣ V + L   O n l y {\rm Ours﹣V+L\ Only} OursVL Only表示模型不使用式 ( 4.4 ) (4.4) (4.4)中的 K ( ) K() K() O u r s ﹣ V + L + R e g {\rm Ours﹣V+L+Reg} OursVLReg表示使用视觉外观模型、式 ( 4.4 ) (4.4) (4.4)的损失函数和在 W W W上加入 L 2 L_2 L2回归; O u r s ﹣ V {\rm Ours﹣V} OursV + L + K {\rm +L+K} LK表示模型整体,见式 ( 4.7 ) (4.7) (4.7)

下面是关于零次学习 ( Z S L ) ({\rm ZSL}) (ZSL)的结果,即对数据集中不存在的数据进行预测(相关零次学习的内容可参考这里):在这里插入图片描述

图7:ZSL结果对比

下面部分是针对图像检索 ( I m a g e   R e t r i e v a l ) ({\rm Image\ Retrieval}) (Image Retrieval)的实验对比:
在这里插入图片描述

图8:IR结果对比


6. Conclusion

论文提出一种视觉关系检测模型,首先使用目标检测网络得到图像中的目标对;然后分别通过视觉外观模型分支和语言模型分支得到目标对和关系的检测;最后综合二者结果得到最后的输出。

由于没有阅读源码,本文只总结了论文的大体结构和信息,详细内容请阅读论文原文


参考

  1. Lu C, Krishna R, Bernstein M, et al. Visual relationship detection with language priors[C]// European conference on computer vision. Springer, Cham, 2016: 852-869.


  • 3
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
视觉Transformer是一种基于Transformer架构的深度学习模型,用于处理计算机视觉任务。它的发展脉络可以追溯到自然语言处理领域中的Transformer模型。 2017年,Google的研究人员提出了Transformer模型,用于机器翻译任务。这个模型使用了自注意力机制,能够在没有序列顺序限制的情况下有效地建模长距离依赖关系,取得了很好的翻译效果。 在2018年,Ashish Vaswani等人进一步提出了"Attention is All You Need"论文,详细介绍了Transformer模型的结构和训练方法。这个论文引起了广泛关注,并成为了自然语言处理领域的重要里程碑。 在2019年,Vision Transformer (ViT)模型被提出,将Transformer模型应用于计算机视觉任务。ViT通过将图像切分为一系列小的图像块(patches),并将这些图像块转化为序列输入,然后使用Transformer模型进行处理,实现了图像分类任务。 随后,为了更好地处理图像中的空间结构信息,研究人员提出了一系列改进的视觉Transformer模型。例如,Spatial Transformer Networks (STN)模型引入了一个空间变换网络,用于学习图像的几何变换;Vision Permutator模型则通过引入可学习的排列操作,改进了图像块的排列方式。 此外,还有一些针对特定任务的视觉Transformer模型被提出,如图像分割、目标检测和图像生成等。这些模型通过在Transformer架构中引入特定的模块和损失函数,实现了不同的计算机视觉任务。 总之,视觉Transformer的发展脉络可以追溯到Transformer模型的提出和应用于自然语言处理领域,然后经过一系列改进和扩展,被成功应用于计算机视觉任务中。这些模型在图像分类、目标检测、图像分割等任务上取得了显著的性能提升,成为了计算机视觉领域的重要研究方向之一。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值