论文创新点
题目:Aligning First, Then Fusing: A Novel Weakly Supervised Multimodal Violence Detection Method
先对齐,再融合:一种新颖的弱监督多模态暴力检测方法
源码:https://github.com/xjpp2016/MAVD
论文创新点
- 新颖的多模态语义特征对齐方法:该论文提出了一种新颖的多模态语义特征对齐方法,通过利用暴力事件表示中模态间的固有差异,将局部、瞬态且信息较少的模态(如音频和光流)的语义特征稀疏映射到信息更丰富的RGB语义特征空间中。
- 动态迭代的模态特征匹配子空间(MFMS)搜索:论文提出了一种动态迭代的MFMS搜索方法,通过不断迭代找到最合适的非零特征匹配子空间,并基于该子空间对齐模态特定的事件表示。
- 基于对齐的多模态融合框架:该论文设计了一个基于对齐的多模态融合框架,包括单模态多实例学习(MIL)、多模态对齐、多模态融合和最终检测。
- 三元组损失增强异常样本的判别能力:论文引入了一种专门设计的三元组损失,用于增强融合特征对异常样本的判别能力。
摘要
弱监督暴力检测是指仅使用视频级标签训练模型以识别视频中暴力片段的技术。在这些方法中,多模态暴力检测(整合了音频和光流等模态)具有巨大的潜力。现有的方法主要关注设计多模态融合模型来解决模态差异。与此不同,作者提出了一种新颖的多模态语义特征对齐方法,利用暴力事件表示中模态间的固有差异,将局部、瞬态且信息较少的模态(如音频和光流)的语义特征稀疏映射到信息更丰富的RGB语义特征空间中。通过迭代过程,该方法找到合适的非零特征匹配子空间,并基于该子空间对齐模态特定的事件表示,从而在后续的模态融合阶段充分利用所有模态的信息。在此基础上,作者设计了一个新的弱监督暴力检测框架,包括单模态多实例学习(用于提取单模态语义特征)、多模态对齐、多模态融合和最终检测。在基准数据集上的实验结果表明,该方法在XD-Violence数据集上的平均精度(AP)达到了86.07%。
关键词
弱监督,多模态暴力检测,多模态对齐
3 方法
在本文中,作者提出了一种新颖的弱监督多模态VD框架,有效利用了RGB、音频和光流三种不同模态的信息。该框架包括单模态语义特征提取、多模态对齐和融合过程。整体架构如图2所示。下面,作者详细描述了方法。
单模态语义特征提取
作者的模态对齐是在语义特征层面上进行的。在对齐之前,必须从每个模态中提取与VD任务相关的语义特征。因此,该阶段旨在训练编码器,以提取每个模态在VD任务背景下最相关的语义特征。
每个模态的编码器以从预训练网络中提取的视觉或听觉特征作为输入(例如,RGB和光流使用I3D,音频使用VGGish)。、和分别表示RGB、光流和音频的预训练网络提取的特征。编码器的结构对每个模态都是相同的,唯一的区别是输入和输出特征的维度。编码器由一个1D卷积层和一个Transformer模块组成。
1D卷积层用于提取局部时间特征,并根据每个模态包含的信息量将不同模态的特征减少到不同的维度:
其中、和是不同模态的特征维度。根据每个模态包含的信息量,作者假设。
Transformer模块的每一层由全局和局部多头自注意力(GL-MHSA)和前馈网络(FFN)组成,旨在提取包含局部和全局信息的语义特征。GL-MHSA在全局注意力的基础上引入了局部时间掩码,使模型能够捕捉长程依赖和局部结构。这增强了模型在处理复杂序列数据时的表达能力。FFN进一步处理这些特征,提供非线性变换以提高模型的拟合能力,而层归一化(LN)则确保训练过程的稳定性。Transformer模块的第层可以表示为:
其中,表示第层的输入特征。通过所有Transformer层后,作者获得了每个模态的高级特征:、和。
为了确保这些高级特征与VD任务强相关,作者应用了一个回归层和MIL损失来进一步优化它们。回归层由三层MLP组成,生成每个时间步的异常分数:
MIL损失采用广泛采用的top-K策略:它对前K个异常分数取平均值,即,其中表示中的前K个分数。因此,每个模态的MIL损失可以描述为:
其中,是视频级标签。
多模态对齐
该阶段的目标是通过模态对齐增强与事件表示密切相关的模态特定特征,确保跨模态的语义一致性,并提高跨模态特征的互补性。
如第1节所述,作者的对齐基于MFMS的搜索,MFMS是主要模态语义特征空间中最能与次要模态在事件表示中相关的子空间。主要模态的选择基于以下分析:与RGB模态相比,音频捕捉的与暴力事件相关的声音特征通常是瞬时的且时间上局部的,这意味着音频语义特征在视觉语义特征空间中的投影应该是稀疏的。同样,光流模态与RGB相比,关注动态细节,而RGB包含更全面的信息;因此,其在RGB特征空间中的投影也应该是稀疏的。因此,作者将RGB视为主要模态,并在RGB模态的特征空间中识别两个MFMS——一个用于音频,一个用于光流。
在识别MFMS之前,作者固定RGB语义特征,并通过单独的投影层处理音频和光流语义特征,每个投影层由三个MLP层组成。这种方法的合理性在于,RGB作为主要模态,提供了主要的结构信息,而音频和光流作为补充模态,嵌入在该主要结构中以提供局部细节。因此,这两个模态需要主动与RGB模态对齐。投影层提供了一个额外的结构,建立在单模态语义特征提取模型的基础上,以促进这种主动对齐。音频和光流特征的投影过程可以描述为:
MFMS的搜索过程如算法1所示。首先,基于当前批次大小的信息计算主要和次要模态特征维度之间的相似性矩阵。然后,基于该相似性矩阵,识别主要模态高维空间中与次要模态低维空间中的特征维度对应的维度。在识别出对应的模态维度后,将次要模态的特征嵌入到主要模态的特征空间中,从而形成新的稀疏次要模态特征。这一过程可以简洁地表示为:
在获得稀疏音频和光流特征后,可以进行第一次对齐。该对齐过程通过最小化三个损失来实现,这些损失旨在减少三个模态之间的成对相似性:
其中,和之间的余弦相似性定义为:
在搜索MFMS并嵌入特征后,如图3所示,整个RGB特征空间被分为四个部分:RGB-音频-光流MFMS、RGB-音频MFMS、RGB-光流MFMS和纯RGB。这表明事件中的某些语义信息由所有三个模态共同表达,有些由RGB和音频或光流共同表达,有些仅由RGB模态表达。上述三个损失本质上将多个模态共同表达的特征拉近,增强了不同模态在表示同一事件时的关系。这最大化了共享信息,并帮助融合模型更好地理解和关联来自不同模态的互补信息,从而减少了冗余信息的影响。从另一个角度来看,这些损失仅将模态中最强相关的维度拉近,这有助于模型在训练迭代中找到最优的MFMS。
此外,作者对投影层后的音频特征和光流特征施加约束,以确保模态特征在时间序列中的对齐。这可以被视为对齐的第二阶段。
多模态融合与暴力检测
由于对齐后每个模态特征的可用性显著增强,该部分的模型结构相对简单。它包括一个用于融合模态特征的多模态编码器和一个用于计算最终异常分数的回归层。
多模态编码器的输入是新融合的特征,由每个模态的对齐特征拼接而成:
多模态编码器由一个线性层和一个时间卷积网络(TCN)块组成。线性层由两个MLP层组成,负责将模态特征加权融合为统一表示。TCN块用于在更高层次上进一步合并特征,捕捉时间依赖性和更抽象的模式。这一过程可以描述为:
有两个重要点需要进一步说明:1)不使用稀疏特征****和****:这些特征不够“紧凑”,可能会干扰融合模型。此外,在推理阶段使用它们会增加模型的复杂性。它们在模态对齐过程中已经完成了它们的角色。2)*使用TCN块而不是Transformer*:虽然Transformer更适合处理长程依赖,但在作者的框架中,单模态部分已经解决了长程依赖和全局特征提取问题。对齐阶段也考虑了模态的整个持续时间进行对齐。然而,在最终的融合阶段,作者不需要过多关注全局信息。相反,任务是输出帧级预测,这与局部特征更密切相关。此外,TCN在这种情况下更高效,因为它们减少了参数数量并提高了计算效率。
该阶段的回归层也由三个MLP层组成。回归层计算异常分数序列的过程可以表示为:
在这种情况下,MIL损失也采用top-K模式,可以简单地表示为:
此外,为了增强融合特征在异常样本中的判别能力,作者为该任务设计了一个三元组损失。基于视频级标签,批次中的所有异常分数序列和多模态融合特征被分为两类:正常和异常。
在三元组损失中,锚点定义为正常类中前k个异常分数对应的特征的平均值。正样本定义为异常类中最小k个异常分数对应的特征的平均值,而负样本定义为异常类中最大k个异常分数对应的特征的平均值。这种公式确保锚点(正常类)被拉近到正样本(异常类中最小的异常分数),同时与负样本(异常类中最大的异常分数)保持较大距离。
计算三元组损失的过程可以简单地表示为:
其中表示计算三元组损失的过程。
4 实验
如何学习大模型 AI ?
由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。
但是具体到个人,只能说是:
“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。
这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
第一阶段(10天):初阶应用
该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。
- 大模型 AI 能干什么?
- 大模型是怎样获得「智能」的?
- 用好 AI 的核心心法
- 大模型应用业务架构
- 大模型应用技术架构
- 代码示例:向 GPT-3.5 灌入新知识
- 提示工程的意义和核心思想
- Prompt 典型构成
- 指令调优方法论
- 思维链和思维树
- Prompt 攻击和防范
- …
第二阶段(30天):高阶应用
该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。
- 为什么要做 RAG
- 搭建一个简单的 ChatPDF
- 检索的基础概念
- 什么是向量表示(Embeddings)
- 向量数据库与向量检索
- 基于向量检索的 RAG
- 搭建 RAG 系统的扩展知识
- 混合检索与 RAG-Fusion 简介
- 向量模型本地部署
- …
第三阶段(30天):模型训练
恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。
到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?
- 为什么要做 RAG
- 什么是模型
- 什么是模型训练
- 求解器 & 损失函数简介
- 小实验2:手写一个简单的神经网络并训练它
- 什么是训练/预训练/微调/轻量化微调
- Transformer结构简介
- 轻量化微调
- 实验数据集的构建
- …
第四阶段(20天):商业闭环
对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。
- 硬件选型
- 带你了解全球大模型
- 使用国产大模型服务
- 搭建 OpenAI 代理
- 热身:基于阿里云 PAI 部署 Stable Diffusion
- 在本地计算机运行大模型
- 大模型的私有化部署
- 基于 vLLM 部署大模型
- 案例:如何优雅地在阿里云私有部署开源大模型
- 部署一套开源 LLM 项目
- 内容安全
- 互联网信息服务算法备案
- …
学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。
如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。