Self-critical n-step Training for Image Captioning

本文聚焦图像描述的训练方法,指出传统方法存在exposure bias及训练与测试度量不一致的问题。提出advantage actor - critic algorithm估计per - token advantage,利用图像描述特性简化优势函数表达,使用n - step reformulated advantage function增加状态值均值、减小方差,还介绍了两种估计状态动作值函数的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Self-critical n-step Training for Image Captioning

原文地址

时间:2019 CVPR

Intro

image caption 传统训练方法有两个问题

  • exposure bias,训练的时候使用ground truth词,测试的时候使用自己预测的词,不一致的预测方法,可能导致错误累积,称为exposure bias
  • 训练时以交叉熵为损失函数,测试时使用metric度量,两者的不一致性

最近的研究表表明可以使用RL来直接优化metric,从而解决第二个问题

本文提出了advantage actor-critic algorithm来估计per-token advantage,且不引入有偏差的参数值估计

本文的贡献包括

  • 利用image caption的特性,我们发现了状态值函数和它之前的状态动作值函数的关系,从而简化了优势函数的表达形式
  • 在简化的优势函数上,我们使用了n-step reformulated advantage function 来逐渐增加状态值函数的绝对值的均值,并减小方差
  • 我们使用了两个rollout方法来估计状态动作值函数并进行self-critical训练

Methodology

使用交叉熵训练

a t ∈ A a_t\in A atA是序列中的词, T T T是序列长度, I I I是图片, I F I_F IF是图片特征,最小化交叉熵
在这里插入图片描述
其中 π \pi π是概率分布函数

使用策略梯度训练

问题形式化

  • 马尔科夫过程(MDP) { S , A , P , R , γ } \{S,A,P,R,\gamma\} {S,A,P,R,γ}
  • agent,captioning model
  • S S S,state space
  • A A A,action space,字典
  • P ( s t + 1 ∣ s t , a t ) P(s_{t+1}|s_t,a_t) P(st+1st,at)状态转移概率
  • R ( s t , a t ) R(s_t,a_t) R(st,at)是回报函数
  • γ ∈ ( 0 , 1 ] \gamma\in(0,1] γ(0,1]是衰减系数

agent选择一个action,就对应于生成一个token,从一个条件概率分布 π ( a ∣ s ) \pi(a|s) π(as)中,称为策略,策略梯度算法中,我们考虑被 θ \theta θ参数化的策略 π θ ( a ∣ s ) \pi_\theta(a|s) πθ(as),状态 s t ∈ S s_t\in S stS是图片特征 I F I_F IF和到目前为止的tokens/actions { a 0 , a 1 , a 2 , . . . , a t − 1 } \{a_0,a_1,a_2,...,a_{t-1}\} {a0,a1,a2,...,at1}
在这里插入图片描述
这个过程中,状态转移矩阵是确定的,因此
在这里插入图片描述
通常采取动作后,我们可以得到一个奖励值,但是在image caption问题中,奖励值只能在最终句子生成完时计算
在这里插入图片描述
状态值函数和状态动作值函数定义如下
在这里插入图片描述
强化学习的目的是通过估计策略梯度来最大化累积回报值 V π ( s 0 ) = E π [ ∑ t = 1 T γ t − 1 r t ] V^\pi(s_0)=E_\pi[\sum^T_{t=1}\gamma^{t-1}r_t] Vπ(s0)=Eπ[t=1Tγt1rt],策略梯度算法中,梯度为
在这里插入图片描述
其中 b b b可以是任意函数,只要它不依赖 a t a_t at,使用 V s t π V^\pi_{s_t} Vstπ作为baseline,就可以得到A2C算法
在这里插入图片描述
这个算法鼓励agent采用比平均动作好的动作,而抑制比平均动作差的动作

1-step reformulated advantage function,image caption是一个特殊的强化学习任务,它的状态转移矩阵是确定的,因此可以reformulate一些公式,首先
在这里插入图片描述
因为 P P P是确定的,所以
在这里插入图片描述
因为当 t &lt; = T t&lt;=T t<=T时, r t − 1 = 0 r_{t-1}=0 rt1=0所以
在这里插入图片描述
从而对于
在这里插入图片描述

在这里插入图片描述
因此每个状态动作值函数用它上一步的状态动作值函数作为baseline,因此称为1-step,这个方程鼓励更大的期望累积回报,抑制少的期望累积回报

最直接的模拟环境的方法就是使用Monte Carlo 轨迹 { ( s t , a t , r t ) } t = 1 T \{(s_t,a_t,r_t)\}^T_{t=1} {(st,at,rt)}t=1T,采样自多项分布,从而策略梯度为
在这里插入图片描述
其中 Q Q Q Q ^ \hat{Q} Q^的经验估计

n-step reformulated function,之前的两个方法,第一个方差较大,第二个会引入估计误差,因此我们使用n-step reformulated advantage function,使用n-step的优势函数
在这里插入图片描述
随着n的增加,per-token的优势逐渐损失了,直到 n = T n=T n=T,得到一个sequence level的损失

估计状态动作值函数,这里有两种估计方法,使用K Monte Carlo rollouts,或者使用inference algorithm,

K K K Monte Carlo rollouts中,我们以序列 { s t , a t } \{s_t,a_t\} {st,at}为起始采样 K K K个连续序列来得到 { a t + 1 , a t + 2 , . . . , a T } \{a_{t+1},a_{t+2},...,a_T\} {at+1,at+2,...,aT},利用多项分布来采样,当 γ = 1 \gamma=1 γ=1时,状态动作值函数可计算为 K K K个回报函数的均值
在这里插入图片描述
在max-probability rollout中,我们采样一个序列来得到 { a t + 1 , a t + 2 , . . . , a T } \{a_{t+1},a_{t+2},...,a_T\} {at+1,at+2,...,aT},然后得到
在这里插入图片描述

Results

在这里插入图片描述
在这里插入图片描述

结论

本文reformulate了image caption的优势函数,并提出了n-step的优势函数

### 回答1: 自我批评序列训练是一种用于图像字幕生成的技术。它通过在训练期间对生成的字幕进行自我批评,以改进模型的性能。该方法使用了一种称为“自我注意力”的技术,它允许模型在生成字幕时关注先前生成的单词,从而提高生成的质量。自我批评序列训练已被证明是一种有效的技术,可以在各种图像字幕生成任务中提高模型的性能。 ### 回答2: Self-critical sequence training(SCST)是一种图像标注模型的训练方法,它通过对模型输出的错误进行自我评估来提高图像标注的精度。SCST是一种监督式学习方法,它通过与基础模型进行有针对性的反馈,来提高模型的输出结果。 在SCST中,模型首先生成一个单词序列,然后通过自我评估方法计算序列的损失函数。模型会将自己生成的序列与参考答案进行比较,并根据两者之间的差异来调整自己的参数。如果模型生成的序列与参考答案相似度高,则可以认为模型输出的结果是正确的,模型会将该序列的损失函数作为最终的目标值进行优化。 SCST的另一个优点是它可以生成更加准确的图像标注。在传统的图像标注方法中,模型在标注一张图片时会依靠之前标注的其他图片的信息,但是这种方法的精度往往会受到前一个标注结果的影响。而SCST在每个输入图像上独立进行标注,每一步只考虑当前序列的损失函数,从而减少标注过程中的误差。 总的来说,SCST是一种有效的图像标注训练方法,它能够通过自我评估来优化模型,同时生成更加准确的图像标注。 ### 回答3: “自我批评顺序训练”是一种用于图像描述的深度学习技术。该技术的主要目的是提高用计算机生成图像描述的质量和准确性。 在传统的图像描述方法中,计算机通过“编码-解码”系统生成描述。首先将图像输入编码器,然后将编码结果传入解码器,最后给出相应的描述。但是这种方法很难准确地给出正确的图像描述,特别是对于长句描述来说。 为了解决这个问题,研究人员提出了自我批评顺序训练技术,该技术的基本思想是通过与人工生成描述的对比来训练模型。具体来说,这个技术包括三个关键步骤: 1. 生成描述。计算机将图像输入到编码器,然后用解码器生成一个最初的描述并提交给人工审核。 2. 人工批评。人工将计算机生成的描述与自己生成的描述进行比较,然后给出分数。 3. 重新训练。计算机接收到人工评分后,采取相应的操作来调整自己的模型。然后再进行描述生成,直到达到最终的分数为止。 通过这种方法训练的计算机模型,可以显著提高图像描述的准确度和质量。在使用这种技术进行研究时,研究人员还发现,自我批评顺序训练能减少过拟合现象的发生。因为它强制计算机与人类对比,从而避免了学习到过多的训练数据和模型参数。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值