场景图生成论文阅读笔记 之 Attention-Translation-Relation Network for Scalable Scene Graph Generation

Attention-Translation-Relation Network for Scalable Scene Graph Generation

2019 ICCV
code: https://github.com/deeplab-ai/atr-net

针对问题

很多工作使用通用的注意机制和数据集的统计特性来取代视觉特征,但是目标的特征决定了对感兴趣目标的选择(谓词类更多地取决于目标的视觉特征而不仅仅是类别信息),并且过度依赖数据集的统计信息会导致网络受限于少量数据集,泛化能力差

算法内容

具体结构

论文中提出谓词类的概率应该如下式来计算:谓词类置信度*目标对之间存在关联的概率,因为谓词类置信度可以认为是目标对存在关系的条件下的概率
在这里插入图片描述

因此就需要模块来计算上述两个概率分数,如下图为网络结构。
在这里插入图片描述

步骤
① 使用Faster-RCNN检测出目标
② 每个目标都可能与其他目标存在关系,因此首先在所有目标之间构建全连接图
③ 分为两个分支分别预测目标对之间的关系谓词,预测目标对之间存在关系的分数
④ 对于每一对目标对来说,将P(related) 与每一类谓词类Pi的分数P(Pi|related)相乘,取P(Pi)最大的谓词类
⑤ 得到最终的场景图

在这里插入图片描述

文中为每一个谓词类都分配了一个“head“,即Multi-head attention结构。每个head的输入为空间位置的掩码与目标的类别,以此来迫使注意力集中于类别信息和位置信息。位置信息是类别不可知的,同时类别词嵌入中包含了目标的类别以及语义信息,这两个特性就使得能够捕获数据集的内在特性。

损失函数

文中使用了attentional pooling模块(来自2017 ICCV Towards
Context-Aware Interaction Recognition for Visual Relationship Detection),并且分别为主语目标,宾语目标以及谓词特征计算了权重Ws(A), Wo(A), Wp(A)。(其中A指上文提到的多头结构的每个head产生的特征向量拼接组成的矩阵)
有了权重后,模仿VTransE的P=S-O的公式,将权重添加进去就变成了下式(x为视觉特征):
在这里插入图片描述

并且作者并没有直接优||P+S-O||的最小值,而设计了损失函数来优化上式。

因为将任务分为了谓词预测分支与相关性分支两个任务,所以损失函数也分为两部分。
直接上原文,文章在这里有的部分解释的很模糊,有点没太看懂。。。
在这里插入图片描述
在这里插入图片描述

总结

文章最大的特点或创新点个人认为是将任务划分为预测谓词分支和相关性分支,即下式:
在这里插入图片描述

并结合了multi-head attention结构来使网络关注空间位置信息与类别信息,避免使用数据集的统计特性导致泛化能力差。
最终的检测结果并没有提升太多,并且还没有提供meanRecall的结果,可能文章的重点是在体现模型的泛化能力吧。。。做了很多实验,在VRD,sVG,VG-VTE等等多个数据集都做了对比。

在VG150的结果:
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值