一、摘要

随着丰富的视觉表示和预训练语言模型的出现,视频字幕生成技术不断取得进步。尽管性能有所提升,但视频字幕模型仍易产生幻觉(hallucination),即生成与源材料脱节的高度病态描述。在视频字幕中,幻觉有两种类型:对象幻觉和动作幻觉。本研究没有致力于学习更好的视频表示,而是探讨了幻觉问题的根本原因,识别出三个主要因素:
(1) 从预训练模型中提取的视觉特征不足;
(2)在多模态融合过程中,源上下文和目标上下文的影响不当;
(3) 训练策略中的暴露偏差(exposure bias)。

为了缓解这些问题,我们提出了两种有效的解决方案:
(1) 在提取的视觉特征之上引入在多标签设置下训练的辅助头(auxiliary heads);
(2)添加上下文门(context gates),在融合过程中动态选择特征。

视频字幕的标准评估指标衡量的是与真实字幕的相似性,并不能充分捕捉对象和动作的相关性。为此,提出了一种新的指标COAHA(字幕对象和动作幻觉评估),用于评估幻觉程度。本文的方法在MSR-Video to Text (MSR-VTT) 和 Microsoft Research Video Description Corpus (MSVD) 数据集上取得了最先进的性能,特别是在CIDEr分数上有显著提升。

二、引言

  视频字幕是将视频转换为自然语言描述的任务,具有许多潜在应用,包括视频检索、人机界面、辅助视障人士等。基于编码器-解码器的序列到序列架构(最初为机器翻译提出)极大地推动了视频字幕技术的发展。预训练的视觉模型在编码器部分提取帧特征,解码器是一个条件语言模型。近期的研究改进主要集中在三个方面:更好的视觉特征提取、更好的外部预训练语言模型支持,以及更好的信息帧采样策略。
在这里插入图片描述

  尽管有所改进,但一个显著的问题仍然存在,即文献中称为幻觉的问题。与图像字幕不同,视频字幕中的幻觉有两种类型:对象幻觉(模型描述的视频中不存在的对象)和动作幻觉(模型描述的视频中未执行的动作)。
在这里插入图片描述

三、相关工作

1、视频字幕

  视频字幕的主要突破来自于基于编码器-解码器的序列到序列架构。尽管MP-LSTM首次应用了这种架构,但它未能捕捉帧之间的时间信息。S2VT[34]和SA-LSTM捕捉了帧之间的时间依赖关系。前者共享一个LSTM网络用于编码器和解码器,而后者使用注意力权重和3D HOG特征。近期的方法在SA-LSTM基础上进行了改进。例如,RecNet添加了基于解码器输出到视频特征构建的向后流动的重构损失。MARN使用外部存储器来捕捉与每个单词对应的各种视觉上下文。MARN和M3[39]都利用了运动和外观特征。然而,与MARN不同,M3使用异构存储器来建模长期的视觉-文本依赖关系。OA-BTG和STG-KD都使用对象特征以及外观和运动特征。OA-BTG利用显著对象的时间轨迹特征,而STG-KD使用时空图网络进行对象交互特征提取,并使用Transformer网络进行语言模型而非循环神经网络。ORG-TRL也使用对象交互特征,但与STG-KD不同,它利用外部语言模型来指导标准的循环神经网络语言模型。另一项研究专注于更好的采样策略以选择信息丰富的视频帧。PickNet基于奖励目标采样信息丰富的帧,而SGN使用部分解码信息来采样帧。尽管有所改进,但幻觉仍是现有模型中的主要问题。

2、自然语言生成中的幻觉问题

  Koehn等人指出了神经机器翻译中的六个挑战之一是幻觉问题。Müller等人和Wang等人将幻觉问题与暴露偏差联系起来。Wang等人使用最小风险训练(MRT)而非最大似然(MLE)来减少暴露偏差,并得出结论认为改进主要发生在领域偏移情况下。Lee等人声称在源扰动下NMT模型会产生幻觉。Tu等人使用上下文门来控制源和目标的影响,减少神经机器翻译中的幻觉。在图像字幕中,Anna等人讨论了对象幻觉,并提出了CHAIR指标来评估对象幻觉的程度。与神经机器翻译和图像字幕不同,由于输入数据的时空性质,视频字幕更为复杂。尽管最先进的视频字幕模型存在幻觉问题,但之前没有尝试解决视频字幕中的幻觉问题。

3、方法论

系统组件包括:
(1) 视觉编码器,负责从输入视频中提取不同的视觉特征;
(2)辅助头,用于减少因视觉特征不足而产生的幻觉;
(3)上下文门,用于在模态内和模态间融合过程中动态控制特征的重要性;
(4)解码器,是一个条件语言模型。
利用运行的视觉和语言记忆以及这些组件作为外部短期记忆。使用多标签辅助头损失和连贯损失以及标准的交叉熵损失进行训练。
在这里插入图片描述

(1)视觉编码器

  从给定的输入视频中,均匀采样N帧 { f i } i = 1 N \{f_i\}_{i=1}^N {fi}i=1N和片段 { c i } i = 1 N \{c_i\}_{i=1}^N {ci}i=1N,其中每个 c i c_i ci是围绕 f i f_i fi的帧序列。使用预训练的2D CNN φ a φ_a φa和3D CNN φ m φ_m φm分别提取外观特征 { a i } i = 1 N \{a_i\}_{i=1}^N {ai}i=1N和运动特征 { m i } i = 1 N \{m_i\}_{i=1}^N {mi}i=1N,其中 a i = φ a ( f i ) a_i = φ_a(f_i) ai=φa(fi) m i = φ m ( c i ) m_i = φ_m(c_i) mi=φm(ci)。除了外观和运动特征外,还使用预训练的对象检测模块 φ o φ_o φo提取对象特征 { o i } i = 1 N \{o_i\}_{i=1}^N {oi}i=1N,其中 o i = φ o ( f i ) o_i = φ_o(f_i) oi=φo(fi)。对于每帧,基于对象性阈值v提取显著对象,并平均这些显著对象的特征。外观特征 ( { a i } i = 1 N ) (\{a_i\}_{i=1}^N) ({ai}i=1N)和运动特征 ( { m i } i = 1 N ) (\{m_i\}_{i=1}^N) ({mi}i=1N)有助于理解视频的全局上下文和运动信息,而对象特征则 ( { o i } i = 1 N ) (\{o_i\}_{i=1}^N) ({oi}i=1N)更局部化,有助于理解细粒度信息。

(2)辅助头:类别、动作和对象

  与图像字幕不同,视频字幕中的帧序列使得训练特征提取模块在计算上非常密集。现有方法使用预训练模型提取不同的视觉特征,并将这些特征视为模型的输入。然而,预训练模型是在不同的数据分布上训练的,提取的特征不足,从而导致幻觉问题。假设对象和外观特征不足导致对象幻觉,而运动特征不足导致动作幻觉。在每种类型的视觉特征之上提出专门的分类头,并在多标签设置下进行训练。监督是通过利用现有字幕生成的,来自这些头的特征更合适且语义上更相关。在对象特征 { o i } i = 1 N \{o_i\}_{i=1}^N {oi}i=1N之上包括对象头 ψ O b j h ψ^h_{Obj} ψObjh,其中训练目标是预测输入视频字幕中存在的视觉对象。类似地,动作头 ψ A c t h ψ^h_{Act} ψActh应用于运动特征 { m i } i = 1 N \{m_i\}_{i=1}^N {mi}i=1N,以预测字幕中存在的动作。动作头和对象头的真实标签是使用自然语言处理文献中的命名实体识别和词性标注方法从字幕中提取的。为了完善外观特征 { a i } i = 1 N \{a_i\}_{i=1}^N {ai}i=1N,添加类别头 ψ C a t h ψ^h_{Cat} ψCath来预测视频类别,这在MSR-VTT数据集中可用,但在MSVD中不可用。我们使用了三个特定的目标,但这个框架可以应用于其他目标,例如在外观特征之上预测属性。最后,使用来自特定辅助头的特征 { a i r } i = 1 N \{a^r_i\}_{i=1}^N {air}i=1N { m i r } i = 1 N \{m^r_i\}_{i=1}^N {mir}i=1N { o i r } i = 1 N \{o^r_i\}_{i=1}^N {oir}i=1N作为模型的输入,其中 a i r = ψ C a t h ( a i ) a^r_i = ψ^h_{Cat}(a_i) air=ψCath(ai) m i r = ψ A c t h ( m i ) m^r_i = ψ^h_{Act}(m_i) mir=ψActh(mi) o i r = ψ O b j h ( o i ) o^r_i = ψ^h_{Obj}(o_i) oir=ψObjh(oi)
在这里插入图片描述

(3)上下文门:平衡模态内和模态间融合

  在现有的视频字幕框架中,特征融合有两种类型:模态内融合和模态间或多模态融合。在模态内融合中,不同的视觉(外观、运动和对象)特征被合并,因此一种特征可能主导其他重要特征。例如,运动特征可能主导外观和对象特征,导致对象幻觉;而对象和外观特征主导运动特征则导致动作幻觉。类似地,在解码器处的多模态融合中,主导的语言先验导致幻觉,而主导的源上下文导致不流畅的字幕。故添加两个单独的上下文门单元,分别用于模态内和模态间融合,以减轻幻觉。这些门负责动态选择每种类型特征的重要性。Tu等人之前在神经机器翻译中使用上下文门来平衡源和目标上下文。然而,与Tu等人不同,为模态内和模态间融合使用单独的门。此外,这个门不是依赖于解码器记忆,而是基于运行的视觉( M v M_v Mv)和语言( M l M_l Ml)记忆进行条件化,经验研究表明,使用单独的运行记忆比解码器记忆表现更好。一个可能的原因是解码器记忆被源和目标特征的混合以及嘈杂的LSTM门污染了。

在编码器处,合并后的视觉特征 v m , t v_{m,t} vm,t为:
v m , t = [ C G a E ◦ a t r ; C G m E ◦ m t r ; C G o E ◦ o t r ] ( 1 ) v_{m,t} = [CG^E_a ◦ a^r_t; CG^E_m ◦ m^r_t; CG^E_o ◦ o^r_t] (1) vm,t=[CGaEatr;CGmEmtr;CGoEotr]1
其中,
a t r = ∑ i = 1 N α i , t a i r , m t r = ∑ i = 1 N α i , t m i r , o t r = ∑ i = 1 N α i , t o i r ( 2 ) a^r_t = \sum\limits_{i=1}^N α_{i,t} a^r_i, m^r_t = \sum\limits_{i=1}^N α_{i,t} m^r_i, o^r_t = \sum\limits_{i=1}^N α_{i,t} o^r_i (2) atr=i=1Nαi,tair,mtr=i=1Nαi,tmir,otr=i=1Nαi,toir2
C G a / m / o E = f ( a t r , m t r , o t r , M v , M l ) ( 3 ) CG^E_{a/m/o} = f(a^r_t, m^r_t, o^r_t, M_v, M_l) (3) CGa/m/oE=f(atr,mtr,otr,Mv,Ml)3
C G a / m / o E CG^E_{a/m/o} CGa/m/oE是对应于外观、运动和对象特征的上下文门, α i , t α_{i,t} αi,t是注意力权重。共享了对象、运动和外观特征的注意力网络以进行正则化。

在解码器处,多模态特征 C t C_t Ct为:
C t = [ C G S D ◦ v m , t ; C G T D ◦ E ( y t − 1 ) ] ( 4 ) C_t = [CG^D_S ◦ v_{m,t}; CG^D_T ◦ E(y_{t-1})] (4) Ct=[CGSDvm,t;CGTDE(yt1)]4
其中,
C G S / T D = f ( v m , t , E ( y t − 1 ) , M v , M l ) ( 5 ) CG^D_{S/T} = f(v_{m,t}, E(y_{t-1}), M_v, M_l) (5) CGS/TD=f(vm,t,E(yt1),Mv,Ml)5
C G S / T D CG^D_{S/T} CGS/TD是对应于源和目标上下文的上下文门, E ( y t − 1 ) E(y_{t-1}) E(yt1)是前一个标记的嵌入特征。 f f f通过多层感知器(MLP)实现,[;]表示连接,◦表示哈达玛积。

(4) 解码器

  解码器是一个基于合并视觉和语言先验特征 C t C_t Ct的条件语言模型。由于LSTM网络在序列建模方面的卓越性能,故使用LSTM网络。在时间步 t t t生成句子时,LSTM的隐藏记忆可以表示为:
h t = L S T M ( C t , h t − 1 ) ( 6 ) h_t = LSTM(C_t, h_{t-1}) (6) ht=LSTM(Ct,ht1)6
其中 h t − 1 h_{t-1} ht1是前一时间步的隐藏记忆, C t C_t Ct是如公式(4)所示的合并多模态特征。尽管基于Transformer的模型在大多数自然语言处理基准测试中超越了LSTM,但在此次实践中,LSTM和Transformer模型的性能几乎相当。最后,通过全连接层后接softmax层生成词上的概率分布。
P ( y t ∣ V , y 1 , y 2 , . . . , y t − 1 ) = s o f t m a x ( V h h t + b h ) ( 7 ) P(y_t|V, y_1, y_2, ..., y_{t-1}) = softmax(V_h h_t + b_h) (7) P(ytV,y1,y2,...,yt1)=softmax(Vhht+bh)7
其中 V h V_h Vh b h b_h bh是可学习参数。

(5) 参数学习

除了标准的交叉熵损失外,实验模型还使用两个额外的损失进行训练:辅助头损失和连贯损失。

基于注意力的解码器: 负对数似然(或交叉熵)是视频字幕生成模型的标准目标函数。小批量数据的损失为:
L C E = − ∑ i = 1 B ∑ t = 1 T l o g p ( y t ∣ V , y 1 , y 2 , . . . , y t − 1 ; θ ) ( 8 ) L_{CE} = -\sum\limits_{i=1}^B \sum\limits_{t=1}^T log p(y_t|V, y_1, y_2, ..., y_{t-1}; θ) (8) LCE=i=1Bt=1Tlogp(ytV,y1,y2,...,yt1;θ)8
其中 θ θ θ是可学习参数, V V V是视频特征, y t y_t yt是长度为 T T T的句子中的第 t t t个词, B B B是小批量大小。

辅助头: 辅助头在多标签设置下进行训练。对于所有三个头,使用基于sigmoid激活的二元交叉熵损失。总辅助损失为:
L A H = λ C L A H C + λ A L A H A + λ O L A H O ( 9 ) L_{AH} = λ_C L^C_{AH} + λ_A L^A_{AH} + λ_O L^O_{AH} (9) LAH=λCLAHC+λALAHA+λOLAHO9
其中 λ C λ_C λC λ A λ_A λA λ O λ_O λO是对应于类别头损失 L A H C L^C_{AH} LAHC、动作头损失 L A H A L^A_{AH} LAHA和对象头损失 L A H O L^O_{AH} LAHO的超参数。每个损失计算如下:
L A H C = Υ ( Y C , ψ C a t h ( a j j = 1 N ) ) , L A H A = Υ ( Y A , ψ A c t h ( m j j = 1 N ) ) , L A H O = Υ ( Y O , ψ O b j h ( o j j = 1 N ) ) ( 10 ) L^C_{AH} = Υ(Y^C, ψ^h_{Cat}({a_j}^N_{j=1})) , L^A_{AH} = Υ(Y^A, ψ^h_{Act}({m_j}^N_{j=1})) , L^O_{AH} = Υ(Y^O, ψ^h_{Obj}({o_j}^N_{j=1})) (10) LAHC=Υ(YC,ψCath(ajj=1N)),LAHA=Υ(YA,ψActh(mjj=1N)),LAHO=Υ(YO,ψObjh(ojj=1N))10
其中, Υ ( y , p ) = ∑ i = 1 B ∑ m = 1 M [ y i , m l o g p i , m + ( 1 − y i , m ) l o g ( 1 − p i , m ) ] ( 10 ) Υ(y, p) = \sum\limits_{i=1}^B \sum\limits_{m=1}^M [y_{i,m} log p_{i,m} + (1 - y_{i,m}) log(1 - p_{i,m})] (10) Υ(y,p)=i=1Bm=1M[yi,mlogpi,m+(1yi,m)log(1pi,m)]10
Y C Y_C YC Y A Y_A YA Y O Y_O YO是给定小批量数据( B B B)的类别、动作和对象真实标签。

连贯损失: 视频中的连续帧高度重复。因此,连续帧的编码应相似。故应用连贯损失来限制连续帧的嵌入相似。连贯损失之前已用于正则化注意力权重,但与 Pei等人的不同,本次实验对外观、运动和对象特征都应用了连贯损失。小批量数据的总连贯损失为:
L C L = λ f c l L C L a + λ m c l L C L m + λ o c l L C L o + λ a c l L C L α ( 11 ) L_{CL} = λ_{fcl} L^a_{CL} + λ_{mcl} L^m_{CL} + λ_{ocl} L^o_{CL} + λ_{acl} L^α_{CL} (11) LCL=λfclLCLa+λmclLCLm+λoclLCLo+λaclLCLα11
其中 λ f c l λ_{fcl} λfcl λ m c l λ_{mcl} λmcl λ o c l λ_{ocl} λocl λ a c l λ_{acl} λacl是对应于外观连贯损失 L C L a L^a_{CL} LCLa、运动连贯损失 L C L m L^m_{CL} LCLm、对象连贯损失 L C L o L^o_{CL} LCLo和注意力连贯损失 L C L α L^\alpha_{CL} LCLα的超参数。

各个连贯损失计算如下: L C L a = ϕ ( a i r ) , L C L m = ϕ ( m i r ) , L C L o = ϕ ( o i r ) , L C L α = ϕ ( α i ) L^a_{CL} = \phi (a^r_i) ,L^m_{CL} = \phi(m^r_i),L^o_{CL} = \phi(o^r_i),L^\alpha_{CL} = \phi(\alpha_i) LCLa=ϕ(air),LCLm=ϕ(mir),LCLo=ϕ(oir),LCLα=ϕ(αi)
其中, ϕ ( f ) = ∑ i = 1 B ∑ t = 1 T ∑ n = 2 N ∣ f n , t ( i ) − f n − 1 , t ( i ) ∣ ( 12 ) \phi(f) = \sum\limits_{i=1}^B \sum\limits_{t=1}^T \sum\limits^N_{n=2} |f^{(i)}_{n,t} - f^{(i)}_{n-1,t}| (12) ϕ(f)=i=1Bt=1Tn=2Nfn,t(i)fn1,t(i)12
且模型的整体损失函数为:
L = L C E + L A H + L C L ( 13 ) L = L_{CE} + L_{AH} + L_{CL} (13) L=LCE+LAH+LCL13

(6)COAHA 指标

  为了衡量幻觉的程度,本文提出了COAHA(Caption Object and Action Hallucination Assessment)指标。该指标是针对每个实例定义的,计算公式如下:
C O A H A = O H + A H ( 14 ) COAHA =OH+AH (14) COAHA=OH+AH14
其中,
O H = ∑ h i ∈ H O d h i T , A H = ∑ a i ∈ H A d a i T ( 15 ) OH=\frac{\sum_{h_i \in H_O}d_{h_i}}{T},AH=\frac{\sum_{a_i \in H_A}d_{a_i}}{T}(15) OH=ThiHOdhi,AH=TaiHAdai15
   O H OH OH用于衡量物体幻觉的程度, A H AH AH用于衡量动作幻觉的程度。T是平均真实字幕长度, H O H_O HO H A H_A HA分别是视频中提到的物体和动作的集合。 H O H_O HO是幻觉物体的集合, H A H_A HA是幻觉动作的集合。 d h i d_{h_i} dhi衡量当前幻觉物体与 H O H_O HO中所有物体的平均语义距离。类似地, d a i d_{a_i} dai衡量幻觉动作的平均语义差异。 d h i d_{h_i} dhi H O H_O HO
​的基数越高,OH的值就越高,AH的情况也是如此。因此,如果幻觉物体或动作是同义词,那么语义距离会很小,从而导致幻觉值较低。最后,再取OH和AH的和。采用与辅助头部分相同的方法,从每个视频的真实字幕中提取物体和动作列表。使用预训练的Fasttext嵌入模型来测量语义距离( d h i d_{h_i} dhi d a i d_{a_i} dai)。数学上,
d h i = 1 N O ∑ w i ∈ N O ϑ ( w i , h i ) ( 16 ) d_{h_i} = \frac{1}{N_O}\sum\limits_{w_i \in N_O} \vartheta(w_i,h_i)(16) dhi=NO1wiNOϑ(wi,hi)16
其中, ϑ \vartheta ϑ为Fasttext嵌入上的余弦相似度。 d a i d_{a_i} dai的计算公式类似。

四、实验结果

  在两个最流行的基准数据集MSVD和MSR-VTT上评估了提出的模型。为了与最先进的(SOTA)结果进行比较,我们使用了四种最流行的指标:CIDEr、METEOR、ROUGE-L和BLEU-4。

1、数据集

MSVD: Microsoft Video Description(MSVD)数据集包含1970个开放域的单活动视频,每个视频由Amazon Mechanical Turk生成的40个字幕描述。为了公平比较,遵循了标准分割,即1200个视频用于训练,100个用于验证,670个用于测试。
MSR-VTT: MSR Video-to-Text(MSR-VTT)数据集是一个大规模的基准数据集,包含10,000个视频和20个类别。每个视频平均有20秒的长度,并配有20个字幕。遵循标准基准分割,即6513个用于训练,497个用于验证,2990个用于测试。

2、实验内容

特征提取与解码: 均匀地从每个视频中采样28帧,并截断长度超过30个单词的句子。使用在Imagenet上预训练的ViTL提取每帧的1024维外观特征。对于2048维的运动特征,使用C3D结合ResNeXt-101,并在Kinetic-400数据集上预训练。为了提取物体特征,应用了带有ResNet-101和FPN骨干网络的Faster-RCNN,并在MSCOCO上预训练。外观、运动和物体特征在送入下一阶段之前被嵌入到512维。在解码器LSTM中,使用隐藏层大小为512,词嵌入大小固定为512。词汇表由至少出现5次的单词构建。在测试时,使用贪婪解码生成句子。

辅助头和上下文门相关细节: 运行视觉和语言记忆的大小设置为512。使用预训练了transformers的Spacy模块从真实字幕中提取物体和动作。还使用了Porter Stemmer来处理单词的词根形式。最后,为了测量单词之间的语义距离,使用了Gensim中的预训练Fasttext模型。

其他细节: 使用Adam优化器,固定学习率为1e-4,梯度裁剪值为5。模型训练了900个epoch,批量大小为100。连贯损失权重
λ f c l λ _{fcl} λfcl λ m c l λ _{mcl} λmcl λ o c l λ _{ocl} λocl λ a c l λ _{acl} λacl。分别设置为0.01、0.1、0.01和0.1。所有实验均在单个Titan X GPU上进行。

3、定量实验结果

  为了证明方法的有效性,将模型的性能与最先进的模型进行了比较。定量结果如表所示,该模型在性能上显著优于其他方法,特别是在CIDEr指标上。CIDEr是专门为字幕任务设计的,比其他指标更接近人类判断。与OA-BTG和ORG-TRL相比,此模型在BLEU-4分数上有所落后,该指标更适合机器翻译评估。此外,ORG-TRL和OA-BTG分别利用了物体交互和物体轨迹特征,而本模型为了简化仅使用了平均局部物体特征。
在这里插入图片描述

4、消融研究

进行了定量评估以调查提出的组件的有效性。从基础解码器开始,逐步增加辅助头和上下文门。
在这里插入图片描述

5、上下文门的验证

  为了验证上下文门有助于动态选择特征的重要性,展示了多模态融合期间上下文门的值。结果显示,在生成视觉物体词时,源上下文门的值较高。相反,在生成非视觉词时,目标上下文门的值较高。
在这里插入图片描述

6、曝光偏差对幻觉的影响

  在机器翻译中,已经证明暴露偏差主要在领域转移时影响性能。为了验证在相同领域情况下暴露偏差是否不影响幻觉,展示了不同训练策略下的模型置信度和COAHA值。尽管计划采样和教师强制旨在减轻暴露偏差,但它们对幻觉的影响并不显著。
在这里插入图片描述

7、COAHA的作用

  为了展示提出的指标的语义重要性,计算不同语义扰动字幕的OH(物体幻觉)、AH(动作幻觉)和COAHA值,
在这里插入图片描述

8、定性实验结果

  将模型生成的字幕与Pei等人的模型生成的字幕进行了比较。可以看出,本模型更不容易产生幻觉,并且能更好地识别视频中的物体和动作。
在这里插入图片描述

五、结论

  这项工作表明,幻觉是视频字幕中的一个重要问题,并指出了现有框架中三个主要的幻觉来源。提出了两种稳健且直接的策略来减轻幻觉问题。通过应用这些解决方案,在两个流行的基准数据集上取得了新的最先进性能,特别是在CIDEr分数上有显著提升。此外,实验结果还表明,在相同领域情况下,暴露偏差不是一个重要问题。最后,又提出了一个新的指标来衡量幻觉率,这是标准指标无法捕捉的。定性和定量实验结果均表明,本模型在克服视频字幕中的幻觉问题方面是有效的。

六、作者实验内容

1、训练参数确定

(1)设置不同的epoch,比较模型的性能,得到合适的模型训练epoch为900。
(2)修改 λ f c l λ _{fcl} λfcl λ m c l λ _{mcl} λmcl λ o c l λ _{ocl} λocl λ a c l λ _{acl} λacl的值,得到更佳的系数。

2、模型更新

(1)采用的预训练模型有动作识别、物体识别和语言分析模型,不过作者仅换用了不同的物体识别预训练模型,得到更好的实验结果。

七、作者的总结和理解

1、为什么要用辅助头,它又是如何工作的?

因为用于提取视觉特征的预训练模型可能来自不同的数据集,所以视觉特征可能不足,导致幻觉。辅助头的核心作用是通过任务特定的监督信号,将预训练的视觉特征转化为与字幕生成强相关的语义特征,从而解决特征分布不匹配和幻觉问题。其本质是一种特征适配机制,利用多任务学习(分类+生成)提升视觉特征的质量,最终改善生成字幕的准确性和语义一致性。

(1) 输入:预训练的视觉特征

辅助头的输入是预训练模型提取的原始视觉特征:
对象特征 { o i } i = 1 N \{o_i\}_{i=1}^N {oi}i=1N:由2D CNN(如ResNet)或目标检测模型(如Faster R-CNN)提取,表示视频帧中的静态物体(如“猫”“车”)。
运动特征 { m i } i = 1 N \{m_i\}_{i=1}^N {mi}i=1N:由3D CNN(如I3D)或光流模型提取,表示帧间的动态动作(如“跑步”“跳跃”)。
外观特征 { a i } i = 1 N \{a_i\}_{i=1}^N {ai}i=1N :由2D CNN的全局特征或视频分类模型提取,表示视频的整体风格或场景(如“体育”“室内”)。
问题:这些特征来自预训练任务(如图像分类、动作识别),可能与字幕生成的语义需求不匹配(例如,预训练模型可能关注“猫”的纹理,但字幕需要“猫在追球”的动作描述)。

(2)辅助头的结构:特征→分类概率

每个辅助头是一个轻量级分类器(通常为全连接层+Softmax),将视觉特征映射到特定任务的标签空间:对象头
ψ O b j h ψ^h_{Obj} ψObjh
输入:对象特征 { o i } i = 1 N \{o_i\}_{i=1}^N {oi}i=1N
输出:字幕中可能出现的对象类别概率(如“猫”“狗”“人”)。
标签:从字幕中通过命名实体识别(NER)提取的对象名称。

(3)训练:多标签分类损失

辅助头通过多标签分类任务进行监督学习,优化目标是最小化预测概率与真实标签的交叉熵损失。

(4)输出:重构后的语义特征

辅助头的输出是分类概率分布,而非原始特征:
o i r o^r_i oir:对象级别的语义信息(如“猫:0.9, 狗:0.1”)。
m i r m^r_i mir:动作级别的语义信息(如“跑步:0.8, 跳跃:0.2”)。
a i r a^r_i air:类别级别的语义信息(如“体育:0.7, 音乐:0.3”)。
这些重构后的特征 会作为下游字幕生成模型的输入,替代原始特征。

2、设置两个上下文门单元的意义

(1)上下文门的作用

1) 解决模态内融合的幻觉问题
问题:在合并视觉特征(外观、运动、对象)时,某一类特征可能主导其他特征。例如:
运动特征主导:生成字幕时忽略对象(如“跑步”但未提及“人”)。
对象/外观特征主导:忽略动作(如“猫”但未描述“跳跃”)。
上下文门的作用:动态分配权重,确保所有视觉特征按需贡献信息。例如:
当视频中动作显著时,提升运动特征的权重;
当对象是关键信息时,提升对象特征的权重。
2)解决模态间融合的流畅性与准确性问题
问题:在解码器(语言模型)处融合视觉和语言特征时:
语言先验主导:生成通用但无关的描述(如“一个人在走路”而非“孩子在跑步”)。
源上下文主导:生成碎片化或不连贯的字幕(如重复或缺失语法结构)。
上下文门的作用:平衡视觉上下文(源)和语言先验(目标)的贡献,确保生成的字幕既准确又流畅。
3) 优势
动态性:根据输入内容实时调整权重,而非固定规则。
解耦性:通过独立的门控制模态内和模态间融合,避免相互干扰。
鲁棒性:减少对解码器记忆的依赖,避免噪声(如LSTM单元的不稳定性)影响融合质量。

(2)上下文门的工作原理

1)模态内门(Intra-modal Gate):
输入:视觉特征(外观 a i a_i ai、运动 m i m_i mi、对象 o i o_i oi
输出:各视觉特征按权重 α t \alpha_t αt合并的视觉特征。
2)模态间门(Inter-modal Gate):
输入:视觉特征(融合后的)和语言特征(解码器状态 h t h_t ht)。
输出:经多层感知机后的多模态特征。
条件:基于视觉运行记忆( M v M_v Mv),即历史视觉特征的聚合,基于语言运行记忆( M l M_l Ml),即历史语言特征的聚合。

模态内门是控制多个特征之间的权重平衡,而模态间门则是控制多个特征之间的连接合理性。

参考文献

1、原文地址:Thinking Hallucination for Video Captioning

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐