Show, Control and Tell: A Framework for Generating Controllable and Grounded Captions

Show, Control and Tell: A Framework for Generating Controllable and Grounded Captions

原文地址

时间:2019 CVPR

Intro

当前的多数Image caption模型缺少可控性(controllability)和可解释性(explainablity),这使得它与人类智能不同,因为人类能够选择各种描述图片的角度,并根据手头上的任务选择最合理的描述。本文提出了Show,Control and Tell,他可以根据控制信号(一个序列或者一个图片的区域集合)来进行多样的描述

本文的主要贡献

  • 提出了一个可通过外部信号控制的image captioning模型
  • 模型通过预测noun chunck序列来精确考虑句子的等级结构,同时考虑视觉和语言上的不同,在word level提供额外的grounding
  • 在diversity和caption quality上达到了Flick30k和COCO的SoTA水平

Approach

自然语言本身是分级的,在低层次上,一个句子可以想象为一个词的序列:在描述图片的情况下,我们可以区分visual words,它们是图片中出现的词(object attribute),textual words,图片中未直接体现的词,分析词在句法上的依赖性,我们可以发现更高的抽象,其中词可以组织成树的形状:在dependency tree里,每个词相互连接如图所示:
在这里插入图片描述
给一个dependency tree,名词可以和它们的修饰词分组在一起,形成none chunks,如上图,同一颜色框中就是一个none chunk,一个none chunk就基于图片中的一个区域,且图片也可以分成多个区域,每个对应一个none chunk

描述图片的方式可以由不同的chunk序列决定,因此caption根据考虑的区域而不同,因此我们设计一个模型,它接受序列或者图片区域集合作为控制输入。
在这里插入图片描述

Generating controllable captions

给定一个图片 I I I和一个序列集合 R = ( r 0 , r 1 , . . , r N ) R=(r_0,r_1,..,r_N) R=(r0,r1,..,rN)作为输入,我们的caption模型的目标是生成序列 y = ( y 0 , y 1 , . . . , y T ) y=(y_0,y_1,...,y_T) y=(y0,y1,...,yT),它能够描述 R R R中所有的区域,同时保证语言的流畅性。

我们的模型接受 I I I R R R为输入,其中R作为控制信号,然后预测两个输出分布,分别是word level和chunk level的句子表示:词的概率 p ( y t ∣ R , I ; θ ) p(y_t|R,I;\theta) p(ytR,I;θ),以及切换chunk的概率 p ( g t ∣ R , I ; θ ) p(g_t|R,I;\theta) p(gtR,I;θ),其中 g t g_t gt是bool的chunk-shifting门,生成的过程中,模型维持一个指向 r i r_i ri的指针,并且根据 g t g_t gt决定是否切在这里插入图片描述换到下一个位置

为了生成caption,我们使用了自适应attention的RNN,每一步中,模型根据 h t − 1 , r t , w t h_{t-1},r_t,w_t ht1,rt,wt计算 h t h_t ht,因此 h t = R N N ( w t , r t , h t − 1 ) h_t=RNN(w_t,r_t,h_{t-1}) ht=RNN(wt,rt,ht1),训练的时候 r t r_t rt w t w_t wt是ground-truth region set和word,测试的时候, w t w_t wt从模型输出的第一个分布中采样,选择的下一个region从模型输出的第二个分布中采样
在这里插入图片描述
chunk-shifting gate,LSTM首先计算一个chunk哨兵 s t c s^c_t stc
在这里插入图片描述
其中 m t m_t mt是cell memory,然后计 h t h_t ht和哨兵向量的兼容性,以及 h t h_t ht r t r_t rt的兼容性,通过单层神经网络来计算
在这里插入图片描述
shift chunk的概率计算为
在这里插入图片描述
Adaptive attention with visual sentinel,当chunk-shifting gate预测chunk的结束,就将生成的过程和控制信号R连接了起来,当 r t r_t rt被选中后,就需要第二个机制来在这个区域中区分visual和textual words,为此,我们建立了adaptive attention mechanism with a visual sentinel

visual sentinel和之前一样
在这里插入图片描述
然后生成attentive distribution
在这里插入图片描述
然后计算attention加权结果,context vector,作为网络的输入
在这里插入图片描述

Objective

损失函数由两个预测结果决定,一个是ground-truth预测结果,另一个是caption结果,使用交叉熵损失
在这里插入图片描述
根据之前的工作,我们在交叉熵上预训练了之后,使用强化学习继续优化,特别的是,我们使用self-critical sequence training 方法,
在这里插入图片描述
caption quality在与人类评判更一致的CIDEr-D上进行优化,alignment在基于Needlemen-Wunsch算法的score上进行优化

controllability through a set of detections

这里设计了一个网络对 R R R进行排序

Result

在这里插入图片描述

在这里插入图片描述

Conclusion

本文提出了Show,Control and Tell模型,引入控制信号来控制image caption的结果

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值