0
点赞
收藏
分享

微信扫一扫

【场景图生成】Unbiased Scene Graph Generation from Biased Training

一叶随风_c94d 2022-04-14 阅读 76

文章下载地址:https://arxiv.org/pdf/2002.11949.pdf

代码地址:GitHub - KaihuaTang/Scene-Graph-Benchmark.pytorch

发表地点:CVPR 2020

1 内容概述

现有的场景图生成方法因为training loss的存在,也就是数据集中关系分布存在长尾分布,存在关系检测并不准确的问题。

本文提出了一种基于TDE的因果推理的场景图生成方法,保留biased traing的过滤结果作用,同时去除图像内容上下文干扰带来的关系检测不准确这一副作用。

通过这样一种训练方式的改善,可以看见场景图生成效果的提升。

2 研究背景和创新点

背景:场景图生成任务本是为下游任务例如captioning,VQA提供一个全面的视觉场景表征。现有的方法往往会抛弃掉模糊的视觉关系,将所有的内容抽象成一张graph,图中具有稀疏的object分布以及一些binary的links.

问题:因为严重的training bias,现有的生成模型更像是一堆object词汇的堆积。

​例如b所示,因为训练集合中各类关系的长尾分布,很容易在后续场景图生成的过程中用near等常见关系来替代behind/in front of等不常见关系。所以如何更好地分辨细粒度的视觉关系呢?

bias也可以分成两类:好的contextual prior,可以帮助过滤不合理的关系对,例如apple不可能park on table;坏的long-tailed bias,就如上面所述。

如何留下好的,去掉坏的bias,找出一种unbiased的训练方式就是研究的重点了。

创新点:决策往往是针对内容content和上下文context一起确定的,人类不会因为环境的bias做出不恰当的决定作者认为是因为人类可以进行因果推理。

因此文章的创新点就是将likelihood-based的推理变成causality-based的推理,重点就是分辨训练数据带来的main effect以及side effect。

​如果可以将常见的biased推理结果以及反事实的推理结果相比较,如上图b所示,是否就可以留下好的bias的过滤效果并且去掉上下文对谓词预测结果的影响呢?基于此,作者提出了一种基于total direct effect的unbiased场景图生成方法。

3 方法介绍

下方讲述将用因果图的角度来分析场景图生成这一任务

3.1 节点关系介绍

在上图(b)中,

节点I表示图像输入,嵌入预训练的Faster R-CNN模型,输出bounding box以及feature map;

关系I->X表示object feature extractor,可以对object进行特征嵌入;

节点X表示经过嵌入后的object feature;

关系X->Z表示object分类过程,将X输入后得到object的对应类别;

节点Z表示object的类别;

关系X->Y表示对场景图生成的object feature输入;

关系Z->Y表示对场景图生成的object class输入;

关系I->Y表示对场景图生成的视觉上下文输入;

节点Y表示predicate classification,谓词预测,也就是将三部分输入融合在一起后得到的预测结果;

训练损失就是常见的cross-entropy loss.

3.2 内容介绍

​如(a)中在学习到好的contextual prior之后,进行因果推理过程中的干预。

图(b),就是将I->X的边切断,给X随便赋值,忽略掉object特征对推理结果的干扰,尽量避免视觉内容对推理结果的干扰。

图(c)就是反事实推理,不改变Z,只是改变X的结果,只依赖上下文得到的推理结果。

(c)中的结果不针对object内容,只是由上下文带来的bias,也是我们想去除的。

在因果推理中,最后的预测结果也就是total direct effect(TDE),计算方法如下所示

最后的预测结果也是两个预测logits的相减。

4 实验结果

实验的可视化结果也展现了通过TDE这样一种谓词预测方式后生成结果的改善。

举报

相关推荐

0 条评论