VSRN论文阅读笔记:Visual Semantic Reasoning for Image-Text Matching

论文地址:1909.02701v1.pdf (arxiv.org)

代码地址:https://github.com/KunpengLi1994/VSRN

我写这个博客的时候并没有看源代码,只是针对论文进行一个笔记记录,所以肯定会出现理解不到位情况,希望能帮到大家并且本文有什么错误请指出,因为我也在学习阶段,谢谢。

本文提出了一个用于图像文本匹配的视觉语义推理网络。所采用的数据集为COCO和Flickr 30K。

动机:目前出现的模型要么是通过卷积神经网络(CNN)特征与特定的接受域进行卷积提取,只进行局部像素级分析,他们很难识别高层次的语义概念。要么掌握了包括多个对象在内的区域内的一些局部语义概念,但仍然缺乏允许更远区域之间进行信息交流的全局推理机制。在人类理解一个场景的时候,这种全局的推理能力是至关重要的,然而目前的图像文本匹配系统并没这种全局推理的能力。

为了解决这种问题,提出了一个简单且可解释的推理模型来生成捕获场景的关键对象语义概念的视觉表示

注:这里的关键对象作者文章中提到图像中的某些区域和语义关系是冗余的,所以本模型只会关注整张图的重要部分。

贡献:(a)提出了一个简单且可解释的推理模型VSRN,通过区域关系推理和全局语义推理生成增强的视觉表示。(b)设计了一种解释方法,以可视化和验证生成的图像表示可以捕获场景的关键对象和语义概念,以便它可以更好地与相应的文本标题对齐。(c)本文提出的VSRN在MS-COCO[28]和Flickr30K[40]数据集上实现了一种新的图像-文本匹配技术。

模型流程图: 

图2。视觉语义推理网络(VSRN)概述。基于自底向上注意的显著图像区域(章节3.1),VSRN首先使用GCN对这些区域进行区域关系推理,生成具有语义关系的特征(章节3.2)。然后VSRN利用门和内存机制对关系增强特征进行全局语义推理,选择判别信息,逐步生成整个场景的表示(章节3.3)。整个模型通过匹配和句子生成的联合优化进行训练(章节3.4)。表示的注意力(右上)是通过计算最终图像表示和每个区域特征之间的相关性来获得的(第4.5节)。

对于GRU不懂的可以参考论文笔记:GRU、Encoder-Decoder - 知乎 (zhihu.com)

实现的大概步骤:首先建立图像区域之间的连接,并使用图卷积网络进行推理,以生成具有语义关系的特征。然后,我们提出使用门(gate)和内存机制(memory mechanism)对这些关系增强的特征进行全局语义推理,选择判别信息并逐步生成整个场景的表示。 具体来说就是1:对于图像部分,作者先使用自上而下的注意力模型生成图像区域及其特征。2:VSRN在这些区域之间建立连接,并使用图卷积神经网络GCN进行推理,生成具有语义关系信息的特征即关系增强的特征。3:对于关系增强的特征进行全局语义推理,选择有区别的信息,过滤掉不重要的信息,生成最终的图像表示。4:通过图像-句子匹配和句子生成的联合优化来训练整个模型。


步骤一:使用自上而下的注意力模型生成图像区域及其特征。

        将图像中的一个区域或者对象进行编码记v_{i},则最终每个图像都可以用一组特征V={v_{1},...,v_{i}}表示。作者提到这种自上而下的注意力是由backbone为Resnet101,检测器为Faster RCNN模型实现的。它在视觉基因组数据集Visual Genomes (VG)上进行预训练。该模型被训练为预测实例类和属性类,而不是预测对象类,从而帮助学习具有丰富语义意义的特征表示。

        具体来说,实例类包括对象和难以识别的突出内容。例如,“毛茸茸的”属性和“建筑”、“草”和“天空”等属性。使用模型的最终输出,并使用IoU阈值0.7对每个类别进行非最大抑制NMS。然后作者设置一个置信度阈值0.3,选择所有类检测概率大于该阈值的图像区域。选出类检测置信度得分最高的前36个roi。对于每个选定的区域i,在平均池化层之后提取特征,得到2048维的f_{i}。然后应用一个全连接层将f_{i}转换为D维嵌入,使用以下公式:

        其中W_{f }为全连接层的权重。

步骤二:VSRN在这些区域之间建立连接,并使用图卷积神经网络GCN进行推理,生成具有语义关系信息的特征即关系增强的特征

        作者提出了一个区域关系推理模型,通过考虑图像区域之间的语义相关性来增强基于区域的表示。具体来说,作者测量编码空间中图像区域之间的成对亲和力(我个人理解为两个区域的关系强度),使用公式2构建它们的关系。由两种编码方式进行关系构建。

        然后得到一个全连通关系图Gr = (V, E),其中V为检测区域的集合,边集E用亲和矩阵R(K * K)描述。R由公式2计算每对区域的亲和边得到。

        接着应用图卷积网络(GCN)[18]对这个全连通图进行推理。其中W_{g }(D* D)是GCN的权重,W_{r}是残差网络的权重,R是亲和矩阵,v_{i}^{*}是增强后的矩阵。

步骤三:对于关系增强的特征进行全局语义推理,选择有区别的信息,过滤掉不重要的信息,生成最终的图像表示。

        这里关于GRU由隐藏状态,候选隐藏状态m_{i},更新门z_{i},重置门r_{i},前一个状态m_{i-1 },以及当前最终计算的状态m_{i}

        基于具有关系信息的区域特征,进一步进行全局语义推理,筛选出具有鉴别性的信息,过滤掉不重要的信息,得到对整个图像的最终表示。

        具体来说就是将增强后的区域特征序列V^{*}一个个的输入到GRUs中。在这个推理过程中,隐藏状态m_{i}会持续增长更新。更新gatez_{i}根据前一个状态m_{i-1 }和当前输入的特征序列,以确定单元更新其存储单元的次数(这句话不太懂)。更新门通过式4计算:

         新添加的内容有助于增加整个场景的描述,计算如下:(这里计算的我个人理解为是候选隐藏状态

        重置门r_{i}通过下式6计算:

        最后当前步骤对整个场景m_{i}的描述是在之前的描述m_{i-1 }候选隐藏状态m_{i}\widehat{}之间使用更新门z_{i}进行线性插值

        注:对于GRU:

步骤4:通过图像-句子匹配和句子生成的联合优化来训练整个模型

        这里主要是给了损失函数:

        这里的L_{M}是图像-文本匹配损失。L_{G}是图像生成文本的生成损失。

实验我就不说了,效果比之前的都好。

解释性

我们计算每个区域特征V∗= {V∗1,… v * k}, v * i∈RD,之间的内积相似性(与Eq. 8相同),以及最终的整幅图像表示I∈RD。然后我们将图像区域v *按与i的相关性降序排列,并根据其秩ri为每个v * i赋值si。分数由si = λ(k−rrat)2计算,其中k是区域总数,λ是用于强调高排名区域的参数。我们在实验中设置λ = 50。最后得到的注意力图(相似度图),将其所属的所有区域的注意力得分相加,得到每个像素位置的注意力得分。我们展示了每个图像的注意力地图,以及图像到文本(标题)检索和文本到图像(图像)检索的定性结果。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值