创新点
token-aware contrastive loss
主要是解决不同模态融合后缺少细粒度的对齐
通过考虑单词的语法类来计算,由于传统的对比学习通常在对文本中的所有单词和视频中的帧进行聚合后计算loss(如图中L1或L3)
标记感知的对比损失仅使用一个词的子集计算,该词的语法类属于一个预定义的集合(例如,名词和动词),这迫使单个token和与视频对齐(L2)
cascade sampling method
为训练多模态融合层寻找一小组hard negative examples,
理想状态下,对于一个包含k个视频-文本对的batch,是使用剩下的k-1个视频或者文本作为negative,但是这样计算量太大了
传统的方式是随机采样一小个子集negative pairs
Framework:
Video encoding module:
使用pretrained models提取视频特征,例如:2D CNN,使用线性层将video encoder的特征映射到和self attention layer相同的维度
Language encoding module:
使用pretrained tokenizer and BERT来获得文本特征,并添加了【cls】和【sep】在一个未处理过的句子的开始和结尾,在训练期间,language encoder会被更新以适应特定文本域
Multi-modal fusion module:
TACo:
将得到视频特征X=x1, x2,…,xk取平均值得到𝑋
使用文本特征的【cls】作为𝑌
sentence-level contrastive loss
token-level contrastive loss
使用划分的token of interest子集中的token和每个视频帧计算相似度,并将token和每个帧相似度的最大值作为最终对齐分数
Token of interest
作者选择动词和名词作为target,因为他们更具体
作者又使用了inverse document frequency (idf) 对每个token赋予不同的权重,更高的idf意味着它在语料库中更独特,因此在计算token-level对比损失时更有分量
contrastive loss:
计算token-aware contrastive loss,我们将单个模态所得到的特征输入到多模态融合层中使得它们有更多的交互,并使用最终输出得到的【CLS】来计算损失
Cascade hard negative sampling.
由于在融合层,KxK个对之间计算相似度将会导致非常大的计算量
而传统的采用随机抽取负样本是次优的
因此作者提出了一种级联采样方式
具体来说,将Eq.3中得到的相似度和Eq.2中得到的相似度求和作为匹配分数,然后选择前K’个对齐的negative视频或者文本,将他们输入到多模态融合层中,
通过这种策略,可以有效地在不增加额外成本的情况下,即使的选择difficult negative samples。
Objective
Token-level 的权重默认是0.5
Experiments