一,前言
主要是面向AVQA(audio visual question and answer)和AVC(audio visual caption)问题,方法自然是MLLMs(multimodal large language models),文章的出发点则是现有方法推理结果的二义性以及无法描述音视频中的特定事件。
本文方法:
- 1,设计了一个clue收集策略,用待推理问题在音视频中的clue来丰富LLM模型接受到的信息;
- 2,模型直接在混合多模态数据集上训练,本团队也整理了AVinstruct多模态数据集;
- 3,提出AI辅助的二义性DPO(direct preference optimization)算法,是消除二义性的重训练策略。
Cat: 音视频理解多模态模型框架
二,动机和主要贡献
MLLMs 擅长常识问答,学术问答,但在动态音视频中的人物仍具挑战性,难点在于训练时的大规模跨模态数据在进入LLM之前的对齐,因此也容易在推理的描述中产生二义性。
现有方法:最简单的方法就是直接建立文本与其他模态之间的关联,缺陷是会限制细节信息的获取。然后,当然可以使用交叉注意力机制,以向音频内容提问的方式解决多模态的对齐问题,但是实践中也存在具体视觉对象或者声音无法准确定位的问题。
2.1 本文动机
- 针对音视频与问题关联不够
常规的MLLMs模型是音视频各自提取特征之后链接到LLM模型,questions做文本特征提取后也链接到LLM模型来做推理,缺乏questions与音视频特征在底层的信息融合。 - 多模态与文本的对齐
多模态很难与文本对齐,因此在推理时免不了二义性问题,这也间接影响了音视频理解任务的准确性。
2.2 本文方法
- 聚合(aggregator)问题相关的关键提示(clue)
除了全局的音视频特征信息,本文设计了一个整合器,充分获取底层维度上问题的文本特征与音视频特征之间的交互,从而让LLM的推理能更聚焦问题相关的音视频信息。 - 混合音视频训练策略
本文模型的训练除了视频-文本和音频-文本对的数据,还使用了高质量的音视频指令数据,同时还维护了一个名为AVinstruct的数据集。 - MLLMs应对二义性的再训练
虽然是多模态训练,仍然难以处理复杂的二义性问题,本文将二义性看作模型推理优化问题,用AI辅助二义性关联的DPO策略。详细来说,就是将二义性的反馈视作负面反馈,理解为缺乏特定音视频对象的细节,本文会在训练过程中收集这些负面反馈,利用GPT重写为正面反馈,在多模态训练之后,应用ADPO算法来重训练重构的“负面->正面”的数据,因为在GPT重写之后会更细节的来进行正向描述。应用这个策略,CAT能迫使自己更关注不带二义性的反馈。
2.3 本文贡献
- 引入CAT这个novel的音视频语言模型,让问题更关注底层的音视频信息。整理并维护了AVinstruct音视频关联指令数据集。
- AI辅助下针对二义性的DPO策略,应用到MLLMs来克服带二义性描述特定音视频对象的问题。
- 在多个多模态数据集上评价CAT,实验证明了CAT的先进性,在基于视频的文本生成任务和zero-shot VQA任务上达到sota。
三,本文主要方法
3.1 三个分支
两个编码器:使用预训练的音频->文本和视频->文本的ImageBind模型
- 视频用帧的维度在时间上进行压缩以降低计算开销
- 这两个编码器之后都用两个线性映射层(projector)链接到LLM
关键提示聚合器
最简单就是用一个线性层来包含完整的视觉和音频信息,优势就是不用精简时空信息,但是这样也让LLM无法集中到特定内容,也不能稳定的描述视频。
本文构建了一个提示聚合器(clue aggregator)来挖掘问题相关的多模态信息。用包含多个不同transformer模块的感受器来提取足够的音视频详情,这个感受器包含自注意力、交叉注意力和FFN模块。
其中,$\mathbf{X}$是音频或者视频特征,$h_t$ 是文本特征,$\mathbf{XA}$ 是交叉注意力,$SA$ 是自注意力,音频和视频的编码器模型共享参数。
问题感受也相关的提示聚合器
视频编码器参数是冻结的,从视频中是以间隔帧的方式采样,三分钟的视频大概采样400~500帧,在问题相关的提示生成时,直接拓展多帧结果。
将问题的文本特征,音频-文本提示,视频-文本提示同时输入到Q-Former模型训练,之后通过projector映射到LLM。
3.2 多模态训练
第一阶段 音频和视频projector的特征对齐
- video-text Webvid 2.5M数据集训练视频projector,此时音频projector冻结
- audio-text WavCap 数据集训练音频projector,此时视频projector冻结
以上训练时,LLM模型,音频和视频的编码器模型也都是冻结的。
第二阶段 音视频联合指令微调
动态音视频数据对训练CAT来应用到AVQA任务,此类数据被收集在AVinstruct中。
- 带音频的视频数据来源:从YouTube和VGGSound中大量收集;
- QA数据来源:在闭合AVQA训练数据集(music scene 和real-world scene)中选择;
- 不同的子标题生成器(BLIP2和Whisper)用于生成视频描述;
- 用GPT概括人工书写的例子来概括为问题引导下的音视频描述;
第一阶段训练结束后,冻结音视频编码器和projector的参数,仅仅微调聚合器和关联的LoRA的参数,训练数据是100k视频指令和AVStruct数据集。预定义的prompt的结构是:
1 | USER:<system><Q></Q><video><audio><clues> Assistant: |
3.3 AI辅助关联二义性的ADPO
首先,用多样化的 prompts 让 MLLMs 生成简单的描述,但是这样的方法是非持续学习方式的,在多样化的动态音视频场景中难以得到准确的反馈,尤其在描述音视频中的特定对象时容易产生二义性。ADPO 就是用于让 MLLMs 复习并重学习其错误或者不当输出,分两步可达到这个目标。
收集二义性实例并改写
训练集 $\mathbf{D}_{train}$ 和 Cat 的输出 $\mathbf{D}_{des}$,用 GPT 和详细指令模板来检查 $\mathbf{D}_{des}$ 中每个输出的二义性,二义性就是检查 Cat 输出和原 label 之间的区别,差异较大定义为负向反馈。然后,用 GPT 来纠正这个负向反馈,原则就是生成的正向反馈详细、清晰的描述了视觉对象或者声音而没有重要信息的遗漏。
支持CAT关注正向反馈