论文阅读笔记—Exploring Visual Relationship for Image Captioning

前言

首先介绍论文中的几个概念:
1,Region-based CNN (R-CNN)
不是RNN,是基于区域的卷积神经网络。用于提取图像中比较突出的区域。
2,GCN
GCN的本质目的就是用来提取拓扑图的空间特征。图卷积的核心思想是利用『边的信息』对『节点信息』进行『聚合』从而生成新的『节点表示』
G(graph)和image/picture不一样。
CNN处理的图像或者视频数据中像素点(pixel)是排列成很整齐的矩阵

而Graph Convolutional Network中的Graph是指数学(图论)中的用顶点和边建立相应关系的拓扑图。

CNN的【平移不变性】在【非矩阵结构】数据上不适用。平移不变性(translation invariance):在用基础的分类结构比如给一只猫分类时,无论猫怎么扭曲、平移,最终识别出来的都是猫,输入怎么变形输出都不变这就是平移不变性,网络的层次越深这个特性会越明显。
参考如何理解 Graph Convolutional Network(GCN)?

3,编码解码。
Encoder和Decoder部分可以是任意的文字,语音,图像,视频数据,模型可以采用CNN,RNN,BiRNN、LSTM、GRU等等。所以基于Encoder-Decoder,我们可以设计出各种各样的应用算法。
“编码–》存储–》解码
所谓编码,就是将输入序列转化成一个固定长度的向量;解码,就是将之前生成的固定向量再转化成输出序列。
以机器翻译为例,编码的对象是中文,解码出的对象是英文。
在现在的深度学习领域当中,通常的做法是将输入的源Sequence编码到一个中间的context当中,这个context是一个特定长度的编码(可以理解为一个向量),然后再通过这个context还原成一个输出的目标Sequence。
encoder-decoder模型和注意力模型(Attention Model)

我们可以看到,无论生成Y几,中间语义是不变的,也就是说这个模型是“没有注意力的”。这个模型有几个很大的问题,它无法体现前几(一)个单词对当前单词的影响,整个句子X的语义被压缩成一个向量X,二是语义向量无法完全表示整个序列的信息,还有就是先输入的内容携带的信息会被后输入的信息稀释掉,或者说,被覆盖了。有attentionde 编解码,对于不同的输出,中间的语义是不同的。


本文使用GCN对图像的区域特征进行编码,使用具有注意力机制的两层LSTM解码成图像描述的句子。

一,介绍

通过论文名字(Exploring Visual Relationship for Image Captioning)可知,这篇论文主要是探索图像描述中的视觉关系。图像描述(Image Captioning)就是要生成描述图像的句子,视觉关系是指图片中的各个对象之间的关系。具体来说,首先是用Faster R-CNN来提取一系列图像中突出的图像区域。然后利用提取出来的图像区域进行构建空间图语义图。用GCN 在结构化的语义和空间图上的视觉关系进行上下文编码,得到这些学习后区域级别的关系感知的特征,然后分别送入一个独立的attention LSTM解码器用于句子生成。在推理阶段,是采用后期融合方案来线性融合两个解码器的结果。
如图 1(A)和(B)所示,通常利用卷积神经网络(CNN)或基于区域的 CNN(R-CNN)对图像进行编码,利用LSTM进行解码。没有充分研究和利用视觉关系,因为对象之间的相互关联或交互是描述图像的自然基础。图1(C),提出了一种新的图形卷积网络加上长期短期内存(GCN-LSTM)体系结构。 然后利用图卷积网络分别在结构化语义图和空间图中丰富具有视觉关系的区域表示(对提取的关系特征进行增强,不建立不相关的边,聚焦关系强一点的边)。

二,模型分析

2.1 问题提出

该图像描述系统可分为三个步骤:
(1)对于输入的图像,物体检测模块首先检测图像中包含的物体,并获得每个物体对应的区域级别的特征。然后,针对检测出来的多个物体,会构建出物体间的语义关系图和空间关系图;
(2)接着在基于图卷积网络的图像编码器模块中,图卷积网络会分别作用于物体间的语义关系图和空间关系图上,将两两物体间的语义关系和空间关系融入到对应物体的区域级别的特征,实现对物体区域级别特征的进一步编码(传统的GCN主要是在无向图上操作,新的GCN让GCN对边上的方向性和标签更敏感,在GCN中加了一个门控单元对不同对象之间的关系强弱进行度量,自动的聚焦于那些可能比较重要的边)。
(3)在获得了来自于语义关系图或者空间关系图上蕴含有物体间关系的区域级别特征后,我们将这一组编码后的物体区域级别特征输入基于LSTM的解码器模块,主要利用两层的长短时记忆网络来将输入的图像区域级别特征解码为对应的文本描述。

在这一小节中还说明了对于句子生成问题,通过最小化以下损失函数来制定

它是给定的检测到的对象V和构造的关系图g(这里的g表示语义图gsem或空间图gspa)的正确文本语句的负对数概率。
这里负对数概率通常用交叉熵损失来测量,这不可避免地导致训练和推理之间的评估差异。因此,为了通过修正这种差异来进一步推进我们的描述模型,我们可以直接使用预期的句子级奖励损失来优化LSTM。

下面几行是参考博客
这里说的不可避免地导致训练和推理之间的评估差异是指:
1、暴露偏差:我们的图像描述模型在训练时输入的都是来自真实的caption利用反向传播来最大程度增加下一个真实值的可能性;在测试时,生成的单词都是基于之前生成的单词,一旦有一个单词生成的不好,后面可能会跑偏。
2、序列模型通常用交叉熵损失函数进行训练,在测试时用的是metric如BLUE、METEOR、CIDER度量评估。

2.2 图像中物体之间的视觉关系

如图2,先让识别到的对象分别建立语义和空间关系,在进行图卷积GCN 处理。

一,语义对象关系。Semantic Object Relationship.


首先将输入的两个区域级特征vi(红色-主语)和vj(蓝色-宾语)分别通过嵌入层进行变换,包含Vi和Vj的盒子Vij也通过嵌入层进行变换。然后经过ROI pooling 化为同一尺寸,从pool5层提取特征,将这三个得到的特征向量拼接起来,再经过非线性映射,最后通过softmax做分类,预测N+1个概率值。(N:N种语义关系 1:没有语义关系),实际上是视觉关系分类器。
在训练这个分类器之后,可以使用它来构建语义图Gsem,v表示顶点区域对象, Esem表示顶点区域间的边的集合。

具体地说,我们首先将图像 I 中对象的检测到的 K 图像区域分组为 Kx(K-1)对象对(边有方向,而且两个相同的区域不会被分组)。接下来,我们用学习的视觉关系分类器计算每个对象对的所有(Nsem+1)关系类的概率分布。 如果非相关类的概率小于 0.5,则建立从主语的区域顶点到宾语的区域顶点的方向边,并将概率最大的关系类作为该边的标签。这意味着,非相关类概率大于0.5(也就是说两个对象不太相关)就不用建立边了。

二,空间对象关系。Spatial Object Relationship.

​语义图只展开对象之间固有的动作/相互作用,而使图像区域之间的空间关系不被利用。因此可以构建空间图。语义关系是定向的,空间关系是相互的。边和类别标签是依据交并比IOU进行建立和给出的,与两者之间的相对距离和角度相关。
按照下面的类别进行分类:

空间关系objecti–objectj来表示j相对于i的相对几何位置。​ 红色表示i,蓝色表示j,关系对表示的是j相对于i的关系。
​ 首先是两种特殊关系,如果区域vi完全包含vj或vi完全被vj覆盖,我们从vi到vj建立一条边,并将空间关系的标签设置为“inside”(类1)和“cover”(类2)。
​ 除了两种特殊情况以外,
如果IOU大于等于0.5,直接给定两者之间的edge,并分类为overlap(重叠)。
如果IOU的值小于0.5,φij(相对距离和对角线长度的比例)小于0.5时,主要是依据相对角度进行分类:
​ 相对角度:

​ 对于两个区域i和j,用坐标(xi,yi)和(xj,yi)表示区域的质心。然后根据距离公式:

来表示相对距离。
当IoU <0.5和φij>0.5 时,则二者不建立边。
以上,完成了空间关系的分类,并构建空间图。

v表示顶点区域, Espa表示顶点区域间的边的集合。
疑问:为什么主语和宾语的范围一定要有重复的区域,没有重复的区域就没有关系了吗?(为什么当IoU <0.5和φij>0.5 时,二者不建立边。)

2.3 含视觉关系的视觉描述

有了语义和空间关系之后,用改进的GCN编码使每一个region特征其中赋予了视觉关系信息,进一步编码。

2.3.1,基于 GCN 的图像编码器。

传统的GCN主要是在无向图上操作,对每一个节点vi的所有邻域进行信息编码

它没有包含方向性或边缘标签的信息用于编码图像区域
所以对GCN进行更新

针对不同的方向和标签采用不同的转换矩阵,目的就是为了让GCN对方向性和标签敏感,但不是从所有连接的顶点均匀的积累信息,所以在GCN中加了一个门控单元对不同对象之间的关系强弱进行度量,自动的聚焦于那些可能比较重要的边。

ρ :表示激活函数relu
b :表示偏置
W :表示变换矩阵
N(vi):表vi的邻居集合,也包含自身vi
dir(vi,vj): 根据边的方向给出不同的W (w1表示vi到vj,w2表示vj到vi,w3表示vi到vi)
lab(vi,vj): 表示每条边的标签
gvi,vj: 表门控单元的尺度因子
σ : logistic sigmoid函数

这就是GCN编码的作用,让边对方向性更敏感,更关注重要的边。

2.3.2,注意 LSTM 句子解码器。

文中定义attention LSTM解码器,将上面经过GCN更新的特征输入到一个两层的带有attention机制的LSTM网络

​ 解码的结构如上图所示。
​ 解码器首先通过连接输入单词wt和第二层LSTM单元的上一个输出h2t−1以及平均池化的图像特征

这三者来收集最大上下文信息,然后将其作为第一层LSTM单元的输入。计算方式为:

Ws是输入单词的转换矩阵,
h1t表示第一层LSTM单元的输出,
f1是第一层lstm单元的更新函数。

然后在输出h1t的基础上,进行attention分布的计算:

Wa , Wf , Wh是转换矩阵。
λt :注意分布, λt,i表示第i个结点 (也可以说是区域)的注意概率。
将所有区域级特征与注意力加权,计算出所关注的图像特征

然后将加权后的特征和第一层LSTM单元的输出连接,经过第二层LSTM的单元,得到输出:

f2是第二层LSTM单元的更新函数。通过softmax层来预测下一个单词。然后循环往复,得到预测的句子。
注意:我们生成的语义图和空间图是分别送入一个单独的attention LSTM中进行训练。然后采用后期融合的方法把二个输出的预测值进行融合。

2.4 训练和参考

训练阶段,预先建立两种视觉图。每种图分别用于训练一个单独的GCN编码器和一个attentionLSTM的解码器。
​ 融合两种特征(语义图和空间图)的方案:

采用的晚期融合方案(c)优于其他两种早期融合方案(a,b)
在每一个time step,线性融合两个解码器的输出给出的预测单词分布,然后弹出拥有最大概率单词作为下一个time step的输入。
每一单词wi的融合概率按如下式子进行计算:

α是一个权衡参数,设为0.7 通过相关实验测得再0.7时性能最好。表示融合时语义占0.7的权重,空间图占0.3的权重。

三,结果


相关链接

GCN

上下文

encoder-decoder模型和注意力模型(Attention Model)

本文参考阅读笔记1

本文参考阅读笔记2

论文阅读笔记—Exploring Visual Relationship for Image Captioning相关推荐

  1. 【SOD论文阅读笔记】Visual Saliency Transformer

    [SOD论文阅读笔记]Visual Saliency Transformer 一.摘要 Motivation: Method: Experimental results 二.Introduction ...

  2. 论文阅读笔记:《Visual Abstraction and Exploration of Multi-class Scatterplots》

    文章目录 前言 一.简介 二.主要技术介绍 2.1 散点图常用技术 2.2 点密度估计 2.3 保留特征的点重采样 2.4 保留一致性的分层抽样 2.5 抽象可视化 2.5.1 点颜色 2.5.2 点 ...

  3. 论文阅读笔记--Deep Visual Saliency on Stereoscopic Images

    文章完整信息: 标题:Deep Visual Saliency on Stereoscopic Images 作者:Anh-Duc Nguyen ; Jongyoo Kim ; Heeseok Oh ...

  4. Visual Attribute Transfer through Deep Image Analogy论文阅读笔记

    Visual Attribute Transfer through Deep Image Analogy论文阅读笔记 介绍 论文提出了一种新的两张图片直接进行视觉属性迁移的方法.该方法针对的是两张具有 ...

  5. Dynamic MDETR: A Dynamic Multimodal Transformer Decoder for Visual Grounding 论文阅读笔记

    Dynamic MDETR: A Dynamic Multimodal Transformer Decoder for Visual Grounding 论文阅读笔记 一.Abstract 二.引言 ...

  6. Small Object Detection using Context and Attention(论文阅读笔记)

    Small Object Detection using Context and Attention 论文阅读笔记 出处:2021 International Conference on Artifi ...

  7. PolyFormer: Referring Image Segmentation as Sequential Polygon Generation 论文阅读笔记

    PolyFormer: Referring Image Segmentation as Sequential Polygon Generation 论文阅读笔记 一.Abstract 二.引言 三.相 ...

  8. 语音情感识别领域-论文阅读笔记1:融合语音和文字的句段级别情感识别技术

    语音情感识别领域-论文阅读笔记1 Fusion Techniques for Utterance-Level Emotion Recognition Combining Speech and Tran ...

  9. Finging tiny faces论文阅读笔记

    <Finding Tiny Faces>论文阅读笔记 基础知识 CNN(卷积神经网络) Resnet(深度残差学习网络) NMS(非极大值抑制) 论文翻译(粗翻) 摘要 介绍 Multi- ...

  10. 《Improved Techniques for Training GANs》-论文阅读笔记

    <Improved Techniques for Training GANs>-论文阅读笔记 文章目录 <Improved Techniques for Training GANs& ...

最新文章

  1. a和a数值大小 计算机,Java求s=a+aa+aaa+aaaa+aa...a的值
  2. 软考网络规划设计师论文考察要点
  3. java的知识点23——泛型Generics、Collection接口、List特点和常用方法、 ArrayList特点和底层实现
  4. python网络通信框架_Python运维-Socket网络编程 (1)
  5. 一个线性几何不等式猜想
  6. python什么模块动态调用链接库_python 动态调用模块、类、方法(django项目)
  7. selenium实现登录百度(自动识别简单验证码)
  8. JQuery常用方法一览【转】
  9. [转]利用处理程序错误攻击(下)
  10. 怎样稳稳获得年化高收益
  11. 跨境电商热之下推ShopExpress,微盟靠什么出海寻新增量?
  12. win10下装黑苹果双系统_小米笔记本pro黑苹果Win10双系统
  13. LVDS,接口,时序讲解,非常好的文章
  14. 利用openpyxl在Excel文件中批量复制模板表格
  15. python 生成带有alpha 通道的视频
  16. 西弗勒斯·斯内普 ---混血王子
  17. 软件定制开发怎么收费
  18. office2020与2016版的不同_office2019和2016区别|Office2019新功能
  19. 打条码软件怎样测试到纸张大小,条码标签纸规格有哪些?如何在打印机上设置打印尺寸?...
  20. TI Sitara系列AM4376/AM4379 ARM Cortex-A9高性能低功耗处理器设计的工业级核心板

热门文章

  1. Linux-3.10-x86_64 内核配置选项简介
  2. 市场上十块钱买一个随身WiFi使用技术手段,插卡流量不限速不限量?
  3. GRE词汇统计大全(二)
  4. 基于ASP.NET的网络购物系统设计与实现
  5. 32*32的booth算法的乘法器
  6. 如何将一个mp3文件平均分割成三个?
  7. 一次ARP***的处理过程
  8. ARPR软件破解带密码rar格式文件
  9. AJAX的使用方式及教程
  10. 用文本挖掘剖析近5万首《全唐诗》