Recurrent fusion network for image captioning.
ECCV 2018.
W. Jiang, L. Ma, Y.-G. Jiang, W. Liu, and T. Zhang.
问题
现有的基于该框架的模型仅采用了一个cnn,仅从一个特定的角度描述图像内容。因此,不能全面理解输入图像的语义,不能生成更好的描述。
思路
从多个cnn编码器中提取不同的表示,更丰富、更全面,信息互补。然后融合,传入decoder。(RFNet)。
融合过程利用encoder输出之间的交互,为decoder生成紧凑而有信息的表示。
方法
Recurrent Fusion Network (RFNet)
1.encoder。有m个CNN。每个CNN都对图像进行表示,记为A,它由km个区域组成。
融合,包括两个阶段。输出隐藏状态作为思维向量,阶段1I以M个表示作为输入,生成M个思维向量,聚合为一个,作为阶段2的思维向量。
①阶段1
包含M个组件,为了捕获组件之间的交互,每个组件都需要知道所有组件在上一个时间步骤中生成了什么(Ht)。
由第m个组件生成的思维向量集合记为(T1是阶段1的时间步数):
②阶段2
初始化隐藏状态和记忆单元(这里取平均值)。
在每一个时间步中,对第一阶段产生的M个思维向量执行注意机制,形成上下文向量为:
状态更新为:
收集融合阶段II的隐藏状态,形成思维向量集记为(T2是阶段2的时间步数):
阶段2组合并压缩阶段1的输出,只生成一组思维向量,因此可以为解码器提供更多的信息。
decoder,解码器将融合过程产生的信息翻译成自然句。初始隐藏状态和存储单元直接继承自融合阶段2的最后一步。
总结
循环融合网络(RFNet),利用多个图像表示的互补信息来进行图像标题。在RFNet中,编码器和解码器之间有一个循环的融合过程。这种循环融合过程分为两个阶段,每一阶段都可以看作是一个特殊的RNN。第一阶段,通过吸收其他图像表征的互补信息,将每个图像表征压缩成一组思维向量;第二阶段,生成的思维向量集合被压缩成另一组思维向量,作为解码器注意模块的输入。
2022-02-17
by littleoo