GINet: Graph Interaction Network for Scene Parsing

论文:GINet: Graph Interaction Network for Scene Parsing

介绍

目前来说,大部分语义分割的方法都是基于输入图像,也就是视觉特征进行分类,但这样就缺少了不同类别间的上下文相关性。 non-local可以通过计算不同像素之间的相关性来建立上下文关系,但计算量较大。于是有人试图将图卷积神经网络(GCN)加入到语义分割中,将特征空间中的一些区域映射到图空间中,每个节点代表不同的区域。对图空间做图卷积的话,就相当于捕捉不同区域之间的关系。之后再将图空间映射回特征空间。过程如下图顶部所示。

image-20201028190157624

于是作者猜想,如果只是去捕捉像素点的信息,会不会不太充分。如上图所示,作者试图加入语义概念的信息。将语义信息也投射到图空间中,以此来引导图空间的视觉信息。

文章主要有以下三个贡献:

  • 提出了一种新的图交互单元GI unit用于上下文建模。
  • 提出了Semantic Context Loss (SC-loss) 用来强调出现在场景中的类别,抑制没有出现的类别。
  • 提出了一种图交互网络GINet。

方法

作者首先介绍了图交互网络GINet的框架,之后介绍了图交互单元GI unit,最后对SC-loss做出解释。

GINet

GINet模型框架如下:

image-20201028191713465
  1. 作者使用预训练好的ResNet作为backbone提取视觉特征。随后,作者将图像中的类别以文本的形式提取出来经过word embedding(如GloVe),将单词映射到方便处理的多维向量。

  2. 将视觉特征和文本特征经过graph projection投射到图空间,分别构建两个图VisG和SemG。此时VisG中的节点表示某一区域的视觉特征,边表示不同区域之间的关系。SemG中的节点和边表示经过word embedding后的文本特征和文本间的关系。

  3. 在GI Unit中进行图交互graph interaction,利用文本图的语义信息指导视觉图的形成。

  4. 将经过GI Unit处理后的图重新投影到特征空间,并通过1*1的卷积和上采样的到最终结果。

Graph Interaction Unit

GI Unit的目的是将视觉特征和语义特征映射到视觉图和语义图上(Graph Construction),并对其进行上下文推理(Graph Interaction)。以视觉节点和语义节点的相似性为指导改进节点。

Graph Construction

给定一个视觉特征\(X\in\mathbb{R}^{L\times C}\),其中\(L=H\times W\)。我们目标是构建一个视觉图\(P\in\mathbb{R}^{N\times D}\),其中N是图的节点数,D是每个节点的特征数。因此,作者引入了一个变换矩阵\(Z\in\mathbb{R}^{N\times L}\),它将特征\(X\)投射到图空间\(P\),计算如下

image-20201028201500344

其中\(W\)是个可训练参数,将特征维数由\(C\)转到\(D\),而\(Z\)负责将局部特征转化为图中的一个节点。

经过word embedding语义特征\(l_i\in\mathbb{R}^K\),其中\(i\)表示单词类别数,\(K\)表示经过word embedding的单词维数。我们的目标是将语义特征\(l_i\)映射到图空间\(S\in\mathbb{R}^{M\times D}\),其中\(M\)表示节点数量,等于数据集中类数,\(D\)是每个节点的维数。利用MLP进行转化。

image-20201028202809927

其中\(S_i\)表示每一类的节点特征。

Graph Interaction

将视觉图和语义图分别简称VisG和SemG,两者进行交互。

首先对VisG进行图卷积以捕获更多的上下文信息,方便之后与SemG进行交互。

image-20201028204623297

同理对SemG进行相似的图卷积

image-20201028214029858

在S2V中,计算VisG的一个节点\(i\)和Sem的\(j\)的相似度

image-20201028205843998

其中\(W_p\)\(W_s\)是个科学系的矩阵来进一步降低特征维数。

之后用从SemG中提取出来的相关度信息来增强VisG。

image-20201028210043388

其中\(W_{s2v}\)是个可训练的矩阵,\(\beta_{s2v}\)是个初始化为零的可学习的向量。

对于V2S同理得到

image-20201028211108960

对于GI Unit有两个输出,一个是VisG,一个是SemG。对于VisG,通过重新投影映射到特征空间中,可表示为

image-20201028214148575

Semantic Context Loss

作者提出SC-loss,用来强调场景中出现的类别,抑制没有出现的类别。

作者对每个类别定义了一个科学系的语义中心\(c_i\)。 对于SemG \(S_o\)中的每一个节点\(s_i\),计算\(s_i\)\(c_i\)的点乘并通过sigmoid激活得到\(v_i\),由BCE loss进行训练。如果\(v_i\)更接近1,则表示该样本中存在相应的类别。SC-loss可表示为:

image-20201028212819334

实验

image-20201028213400252 image-20201028213407106 image-20201028213420507
posted @ 2020-10-28 21:37  Arsene_W  阅读(489)  评论(0编辑  收藏  举报