关注“
FightingCV
”公众号
回复“
AI
”即可获得超100G人工智能的
教程
论文题目:
Enhancing Multimodal Cooperation via Sample-level Modality Valuation
https://arxiv.org/pdf/2309.06255
代码链接:
https://github.com/GeWu-Lab/Valuate-and-Enhance-Multimodal-Cooperation
不平衡多模态学习问题(imbalanced multimodal learning problem)在近年已经引起了广泛关注。具体来说,在多模态学习中,往往采用联合训练的方式对各个模态同时进行学习。而模态间在特性、信息量等方面的差异导致在联合训练中,往往存在更易于学习的模态,模型对其的偏好主导了训练进程,导致其他模态未能被充分学习,抑制多模态学习的性能。
对于这一问题,近年来已经有许多研究者从优化、目标函数等方面给出了不同的解决方案(包括本实验室的论文:CVPR 2022
[1]
,ICASSP 2023
[2]
及
ICLR 2024
)。 在现有的方法中,往往从数据集整体的角度考虑这一问题,即对整个数据集而言,某个模态总是易学习、被模型所偏好的。
但在实际场景中,模态间的差异在样本间很可能不同。例如在图 1(a) 和 (b) 中,我们给出了两个同属于类别“motorcycling”的音视频样本。对于图 1(a) 的样本来说,摩托车较远,其视觉信息并不明显。而对于图 1(b) 的样本来说,其视觉信息为摩托车的近距影像,视觉信息明确且清晰。因此,可以想见,在对这两个样本的分类中,前者将主要依靠音频信息,而后者视觉信息明确,主要依赖视觉信息。
但在现有方法中,该样本级的模态差异并未被关注,也难以被观测。
如何评估并缓解这种细粒度的样本级模态差异是亟待解决的问题。因此,本文聚焦于多模态合作学习的新视角--样本级的模态评估与协同。
▲ 图1. 样本级模态差异示例
在本文中,我们首先
提出基于
夏普利值
(Shapley value)的细粒度模态差异评估方法,该方法能够在样本级别评估各个模态对于最终正确预测的贡献。
根据图 1(c) 所示,对于刚才提到的两个样本,其模态间对最终正确预测的贡献差异的确恰恰相反:即使是同一类别的样本,都可能会发生样本间模态贡献差异不同的现象。
此外,通过对数据集中所有样本某模态的贡献取均值,我们的方法依然也可以验证数据集级别上的模态差异。例如,根据图 1(d) 所示,在代表性多模态数据集(Kinetics Sounds 和 UCF-101)上,模态整体的差异明显存在。在 Kinectics Sounds 数据集上,音频模态在所有样本的平均贡献高于视觉模态。在 UCF-101 数据集上,RGB 模态在所有样本的平均贡献高于光流模态。
进一步的,为了更好评估细粒度模态间差异,我们
提出了整体均衡但存在样本级模态差异的 MM-Debiased 数据集。
该数据集有音频和视觉两个模态。根据图 1(d) 所示,在所有样本的贡献均值上,音频和视觉模态较为均衡。
在图 2 中,我们给出了现有不平衡学习方法在不同数据集上相对 Concatenation baseline 的效果增益。不出意外的是,虽然现有不平衡学习方法在典型多模态数据集,例如 Kinetics Sounds 上取得了增益,但在整体模态贡献均衡的 MM-Debiased 数据集上并未有效果的提升,甚至导致模型效果下降。
▲ 图2. 不平衡学习方法在不同数据集上相对Concatenation baseline的效果增益
因此,本文
提出了样本级采样方法,结合细粒度模态贡献差异评估的结果,通过针对性采样的策略,促进样本级模态差异的缓解。
具体来说,如图 3 所示,当两个模态合作完成预测时,通过评估我们发现,其中某个模态为低贡献模态,对正确预测并未作出足够贡献,说明多模态间合作存在不均衡,低贡献模态的学习需要针对性增强。
因此,我们通过针对性采样策略增强对低贡献模态的学习,从何使得模态贡献更加均衡,达到了更好的多模态合作效果。根据图 2 所示,我们的方法在典型多模态数据集 Kinetics Sounds 以及整体模态贡献均衡的 MM-Debiase 数据集上都取得了良好的效果。
▲ 图3. 评估并针对性增强低贡献学习,以达到更均衡的模态贡献及更好的模态间合作
细粒度模态贡献差异评估
本节介绍所提出的基于夏普利值(Shapley value)的细粒度模态差异评估方法。对
于
是
一个有
个模态的样本。其真实标签为
。
记
是
一个由样本
所有模态输入构成的有限
非空集合
。将多模态模型记做
。
假设
为由输入模态构成的集合,
。那么,当采用
作为输入时,多模态模型的预测标签记做
。函数
为多模态预测结果到其收益(benefits)之间的映射:
当预测正确时,收益为所输入模态集合中模态的个数。为了考虑某个模态在所有可能情况下的预测结果的收益,我们将所有模态可能的排列记做
。当模态个数为
时,
。对于样本
的模态的第
个模态,我们将其在某排列
中的前序模态 (predecessors) 记
做
,
即
。那么,该模态
在该排列
中的边际贡献记做:
边际贡献
度量了当引入模态
后,多模态预测的收益的变化量。对模态
在所有可能的排列
中的边际贡献取平均,得到其对样本
的贡献为:
需要注意的是,所有模态贡献的总
和
实
际上就是以所有模态作为输入时正确预测的收益。因此,对于以所有模态为输入的一般多模态模型来说,当一种模态的贡献增加时,其他模态的贡献也会相应减少。借助该细粒度模态贡献评估指标,我们就可以合理地观察每个样本中各个模态的贡献。
重采样增强策略
根据此前在不同数据集上对模态贡献的估计(如图 1 所示),多模态数据集中往往存在低贡献模态
,对多模态模型的预测贡献不足。根据本文分析,提升低贡献模态的判别性可以扩大其贡献。
因此,我们提出在训练过程中,有针对性地对各个样本的低贡献模态进行重采样,提升对低贡献模态的学习。具体来说,为了确保基本的辨别能力,我们首先对多模态模型进行几轮 warmup。而后,在每一个
epoch
之前进行一次细粒度模态贡献估计,观察各个样本中各个模态的贡献,进而在该 epoch 的训练中对低贡献模态的输入重新采样,最终有针对性地提高对低贡献模态的学习。
在本文中,我们提供了精细高效的样本级重采样方法和低耗但有效的模态级重采样方法。
经过细粒度模态贡献评估后,每个样本的低贡献模态
就能被很好地区分出来,我们就能在样本级对其学习进行促进。具体的重采样频数由当前epoch其贡献值
动态决定。具体来说,对于特定样本
,模态
的重采样频数为:
其中
为
单调递增函数
。对低贡献低模态的重采样频数与其贡献值成反比,即贡献值越低,重采样频数越高。在重新采样过程中,我们只采样低贡献模态,其他模态的输入会被置 0,以确保有针对性的学习。
模态级重采样
虽然样本级模态估值可以提供精细的单模态贡献,但当数据集规模相当大时,逐个样本进行贡献评估可能会产生较高的额外计算成本。因此,我们还提出了更高效的模态级方法来降低计算成本。如图 1(d) 所示,除了样本之间的贡献差异外,低贡献模态的现象也具有数据集级偏好。因此,我们提出了模态级再采样策略,即随机抽取训练样本的子集进行模态贡献估值来近似估计平均单模态贡献,以减少额外的计算成本。
具体来说,我们在训练集中随机抽取包含
个样本的子集,借此模态的平均贡献可以被近似估计。具有较低平均贡献的模态
可以被识别出来。而后,其他模态保持不变,在训练过程中以特定概率
对样本
中的模态
进行动态重新采样: