Weakly Supervised Audio-Visual Violence Detection 论文阅读

Weakly Supervised Audio-Visual Violence Detection 论文阅读

  • 摘要
  • III. METHODOLOGY
    • A. Multimodal Fusion
    • B. Relation Modeling Module
    • C. Training and Inference
  • IV. EXPERIMENTS
  • V. CONCLUSION
  • 阅读总结

文章信息:

在这里插入图片描述

发表于:IEEE TRANSACTIONS ON MULTIMEDIA 2022

摘要

由于近年来大量视频的涌现,视频中的暴力检测在实际应用中非常有前景。大多数以前的工作将暴力检测定义为简单的视频分类任务,并使用小规模数据集的单模态,例如,视觉信号。然而,这样的解决方案供给不足。为了缓解这个问题,我们研究了大规模音视频暴力数据上的弱监督暴力检测,并首次引入了两个互补的任务,即粗粒度暴力帧检测和细粒度暴力事件检测,将简单的暴力视频分类推进到帧级别的暴力事件定位,旨在准确地定位未经修剪的视频中的暴力事件。然后,我们提出了一种新颖的网络,将音视频数据作为输入,并包含三个并行分支来捕获视频片段之间的不同关系,并进一步集成特征,其中相似性分支和接近性分支分别使用相似性先验和接近性先验捕获长程依赖关系,评分分支动态捕获预测分数的接近程度。在粗粒度和细粒度任务中,我们的方法在两个公开数据集上均优于其他最先进的方法。此外,实验结果还显示了音视频输入和关系建模的积极效果。

III. METHODOLOGY

在本节中,我们首先介绍多模态融合以生成音视频融合特征(第III-A节),然后将融合特征输入到以下模型中以捕捉三种不同的关系(第III-B节)。接下来,我们介绍了用于训练和推断过程的客观函数(第III-C节)。最后,我们展示了我们模型的时间空间复杂性(第III-D节)。我们提出的方法总结在图1中。

在这里插入图片描述

图1. 我们提出方法的流程图。给定一个视频和相应的音频,首先使用特征提取器提取视觉和音频特征。然后将这些不同模态的特征融合以生成片段特征。RM 模块用于建模片段之间的三种不同关系,可用于离线检测,而在线检测器则用于在线检测,可以在没有未来内容的情况下检测暴力行为。我们的方法很灵活,因为它可以同时应用于粗粒度和细粒度的暴力检测任务。

A. Multimodal Fusion

考虑到我们有一个未修剪的视频 v v v 和相应的标签 y B y^B yB y y y,其中 y B ∈ { 0 , 1 } , y B = 1 y^B{\in}\{0,1\},y^B=1 yB{0,1},yB=1 表示 v v v 包含了暴力事件,而 y = { 0 , 1 } i = 1 M + 1 , M y=\{0,1\}_{i=1}^{M+1},M y={0,1}i=1M+1,M 是暴力类别的数量。我们使用现成的预训练网络作为特征提取器 F V F^V FV F A F^A FA,并通过滑动窗口机制提取视觉和音频特征矩阵 X V X^V XV X A X^A XA,其中 X V ∈ R T × d V X^V\in\mathbb{R}^{T\times d^V} XVRT×dV X A ∈ R T × d A X^A\in\mathbb{R}^{T\times d^A} XART×dA x i V ∈ R d V x_i^V\in\mathbb{R}^{d^V} xiVRdV x i A ∈ R d A x_i^A\in\mathbb{R}^{d^A} xiARdA 分别表示第 i i i 个片段的视觉和音频特征。 T T T 是视频 v v v 的长度, d V d^V dV d A d^A dA 分别是视觉和音频特征的维度。

然后我们将视觉和音频特征连接起来生成融合特征。更具体地说,我们首先将 X V X^V XV X A X^A XA 在通道上堆叠,然后将堆叠的特征送入两个堆叠的全连接(FC)层,每个层都有512和128个神经元。每个FC层后跟ReLU激活函数和dropout。我们得到融合特征,表示为 X F X^F XF,它是两个堆叠FC层的最终输出。

B. Relation Modeling Module

我们首先回顾神经网络中的长程依赖建模[28],它可以用公式表示如下:

在这里插入图片描述
与常规的卷积层的主要区别在于聚合操作,它汇总来自全局范围(长程依赖)而不是局部区域的信息。

相似度分支的实现:我们通过特征相似性先验设计了相似性关系矩阵,从视频理解的GCN中获得启发。相似性关系如下所示:
在这里插入图片描述
其中, A s ∈ R T × T A^s\in\mathbb{R}^{T\times T} AsRT×T A i j S A_{ij}^S AijS衡量第 i i i个和第 j j j个特征之间的特征相似度。 值得注意的是,在公式(2)中,大小为 T × ( d V + d A ) T{\times}(d^V{+}d^A) T×(dV+dA) X X X表示原始特征的串联,以利用原始的先验知识。 g g g是归一化函数,函数 f f f用于计算一对特征的余弦相似度,其定义如下:
在这里插入图片描述
在公式(3)中的相似性被限制在(0, 1]的范围内,然后使用阈值机制来过滤掉更不相似的成对弱关系,并加强更相似成对的关系。阈值机制如下所示:
在这里插入图片描述
其中τ是阈值,其位于0和1之间。

之后,使用归一化函数 g g g来确保A的每行之和为1,这里我们采用softmax作为 g g g,如图所示:
在这里插入图片描述
遵循GCN范例,我们如下引入相似性层,
在这里插入图片描述
这样的操作旨在基于全局范围内特征的加权和来计算位置响应,而不是基于局部邻居。W是用于转换特征空间的可学习权重。

接近性分支的实现:虽然相似性分支可以捕捉长程依赖性,但它直接计算任意两个位置之间的相似性,并忽视了位置距离。位置信息在视频中也起着至关重要的作用,例如,时间事件检测。在这项工作中,我们在接近性先验之上设计了另一个关系矩阵,如下所示:
在这里插入图片描述
这里第 i i i个和第 j j j个特征之间的接近性关系仅与它们相对时间位置有关,其中 γ \gamma γ π \pi π是超参数,用于控制距离关系的影响范围。这样的设置确保了位置越接近,关系越高;否则,关系越小。

类似地,邻近层如下所示,
在这里插入图片描述
评分分支的实现:如上所述,用于暴力检测的前瞻性算法旨在进行离线检测,例如,互联网录像机,以及在线检测,例如,监控系统。然而,以上 RM 模块的在线检测受到一个主要障碍的阻碍:RM 模块通过整个视频获取长程依赖性。为了解决这一困境,我们提出了一个在线检测器,它将先前的视频片段作为输入,而不是整个视频,以在 RM 模块的指导下生成粗粒度和细粒度的预测。具体来说,两个堆叠的全连接(FC)层后跟 ReLU 和两个并行分类器构成了在线检测器。一个分类器是在线粗粒度分类器,即,一个具有时间上大小为5的卷积核,步长为1,填充为4的因果卷积层,在时间上滑动卷积滤波器。该分类器的输出是形状为 T T T 的粗粒度暴力激活,表示为 C O C C^{OC} COC。另一个分类器是在线细粒度分类器,它包括两个 1D 卷积层。第一层是一个因果层,卷积核大小为5,然后是 ReLU,第二层将特征投影到 M + 1 M+1 M+1 维空间,以获得细粒度暴力激活,表示为 C O F C^{OF} COF

这个操作引入了一个额外的分支,称为评分分支,它依赖于 C O C C^{OC} COC。评分分支旨在计算一个位置响应,作为所有位置特征的加权和,其中权重依赖于预测分数 C O C C^{OC} COC 的接近程度。与相似性和接近性分支的关系矩阵不同,评分分支的关系矩阵在每次迭代中动态更新。具体来说,评分分支的关系矩阵设计如下:
在这里插入图片描述
其中, s s s 是 Sigmoid 函数, ρ \rho ρ 是 Sigmoid 的一种变体,其作用是基于预测分数的接近程度来转换成对关系。如果一对之间的分数接近(在本文中,0.5 是预定义的阈值),则增加这对之间的关系;否则,减少。Softmax 也用于归一化。

类似地,评分层如下所示:
在这里插入图片描述
其中 X 0 O ( = X 0 S = X 0 P ) = X F \begin{aligned}X_0^O(=X_0^S=X_0^P)=X^F\end{aligned} X0O(=X0S=X0P)=XF

C. Training and Inference

我们设计了两个类似于在线检测器的并行分类器,将特征映射到两个不同的空间。具体来说,我们简单地使用一个 FC 层作为粗粒度分类器,将串联表示投影到类别空间,其中这个 FC 层的输出大小为 1。粗粒度的暴力激活 C C ∈ R T C^C{\in}\mathbb{R}^T CCRT 可以表示如下:
在这里插入图片描述
其中 ∥ \| 表示连接操作。类似地,我们引入了细粒度分类器,它将串联表示投影到 M + 1 M+1 M+1 维空间。细粒度的暴力激活可以表示如下:

在这里插入图片描述
由于我们只有视频级别的真实标签,我们需要获得视频级别的预测。在此之后,计算视频级别预测和真实标签之间的差异。遵循 MIL [6],[38] 的原则,我们使用时间维度上的 Top-K 激活的平均值而不是整个激活来计算粗粒度置信度 p O C , p C p^{OC},p^C pOC,pC 和细粒度置信度 p O F , p F p^{OF},p^F pOF,pF。具体地,预测的置信度可以计算如下:
在这里插入图片描述
其中 C m a x C^{max} Cmax 是前 K K K 大的激活值,而 K K K 的定义如下:
在这里插入图片描述
粗粒度分类损失是预测的粗粒度置信度 p C ( o r O C ) p^{C(orOC)} pC(orOC) 和真实标签 y B y^{B} yB 之间的二元交叉熵,如下所示:
在这里插入图片描述
细粒度分类损失是基于交叉熵的,我们首先使用softmax得到概率质量函数,定义如下:
在这里插入图片描述
那么,细粒度分类定义为:
在这里插入图片描述
由于一个视频可能包含多个暴力事件,因此我们在这里对 y 进行 L1 归一化得到 y ˉ \bar{y} yˉ。此外,还利用知识蒸馏损失来鼓励在线检测器的输出逼近 RM 模块的输出,具体如下所示:

在这里插入图片描述
其中函数σ为softmax。最后,将上述损失加起来计算总损失,如下所示:
在这里插入图片描述
推断:对于粗粒度暴力帧检测,我们使用 Sigmoid 函数对粗粒度暴力激活 C C C^C CC C O C C^{OC} COC 进行归一化,并计算离线和在线粗粒度暴力置信度,限制在 [0,1] 的范围内,因为我们的模型可以选择离线或在线方式来检测暴力事件,以满足不同的需求。值得注意的是,在在线推断中,RM 模块被移除,只有在线检测器起作用。对于细粒度暴力事件检测,我们遵循之前的工作[39],使用阈值策略来预测暴力事件。在测试时给定一个暴力视频,我们首先丢弃细粒度置信度低于某个阈值(本文中使用0.0)的暴力类别。然后,对于剩余的每个类别,我们沿着时间轴应用一个阈值来获取暴力片段。预测的暴力片段的得分是其最高帧激活和相应类别激活的加权和。

IV. EXPERIMENTS

在这里插入图片描述

V. CONCLUSION

在本文中,我们研究了大规模暴力数据上的弱监督音视频暴力检测。我们引入了两个互补的任务,一个是粗粒度暴力帧检测,重点是在帧级别上区分,另一个是细粒度暴力事件检测,考虑了预测的暴力事件的类别和连续性。然后,我们提出了一种通用方法,明确地建模了视频片段之间的关系,并学习了强大的音视频表示。大量实验证明,

  1. 多模态显著提高了性能;
  2. 明确地利用关系非常有效;
  3. 我们的方法在两个不同的任务上表现良好,而且多任务学习在我们的方法中是有效的。

阅读总结

这篇文章的Not only Look, but also Listen: Learning Multimodal Violence Detection under Weak Supervision 拓展工作。

主要是增加了一个细粒度的分支。
两篇文章在XD-Violence上的结果都是一样的吗?
左边是这篇文章的,右边是之前的那篇文章。

在这里插入图片描述
怎么说网络和损失都是变化了一些的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/822596.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Redis 神秘大陆】006 灾备方案

六、Redis 灾备方案 6.1 存储方案 6.1.1 基础对比 RDB持久化AOF持久化原理周期性fork子进程生成持久化文件每次写入记录命令日志文件类型二进制dump快照文件文本appendonly日志文件触发条件默认超过300s间隔且有1s内超过1kb数据变更永久性每秒fsync一次文件位置配置文件中指…

政安晨:【深度学习神经网络基础】(十)—— 反向传播网络中计算输出节点增量与计算剩余节点增量

目录 简述 二次误差函数 交叉熵误差函数 计算剩余节点增量 政安晨的个人主页:政安晨 欢迎 👍点赞✍评论⭐收藏 收录专栏: 政安晨的机器学习笔记 希望政安晨的博客能够对您有所裨益,如有不足之处,欢迎在评论区提出指正&#xf…

刷穿力扣006-剑指offer一数组——02寻找目标值-二维数组

刷穿力扣006-剑指offer<一>数组——02寻找目标值-二维数组 基本面试题都是我带大家刷的力扣热题100和剑指offer的75道题&#xff0c;建议刷两遍&#xff01;&#xff08;ps:想找工作实习的同学&#xff0c;文末有面试八股和简历模板&#xff09; 题目&#xff1a; 语言…

计算机网络 TCP/IP体系 物理层

一. TCP/IP体系 物理层 1.1 物理层的基本概念 物理层作为TCP/IP网络模型的最低层&#xff0c;负责直接与传输介质交互&#xff0c;实现比特流的传输。 要完成物理层的主要任务&#xff0c;需要确定以下特性&#xff1a; 机械特性&#xff1a;物理层的机械特性主要涉及网络…

【Altium Designer 20 笔记】PCB层

Top Overlay & Bottom Overlay (顶部丝印层和底部丝印层)&#xff1a; 用于标记元件、连接和其他重要信息。丝印层是 PCB 表面的一层&#xff0c;上面印上文字、图标或标记。 Top Solder & Bottom Solder (顶部阻焊层和底部阻焊层)&#xff1a; 阻焊层、开窗层、绿油层…

Jackson 2.x 系列【25】Spring Boot 集成之起步依赖、自动配置

有道无术&#xff0c;术尚可求&#xff0c;有术无道&#xff0c;止于术。 本系列Jackson 版本 2.17.0 本系列Spring Boot 版本 3.2.4 源码地址&#xff1a;https://gitee.com/pearl-organization/study-jaskson-demo 文章目录 1. 前言2. 起步依赖3. 自动配置3.1 JacksonPrope…

K8S认证工程师(CKA)考试速通经验分享(含答案)

昨天参加了Linux Foundation推出的Certified Kubernetes Administrator(CKA)考试&#xff0c;今天收到邮件通知通过啦&#xff5e;分数是93/100分 证书这个样子 ➡️随着应用现代化成为IT/互联网行业大趋势&#xff0c;企业的系统架构逐渐向微服务、容器化转型&#xff0c;好处…

spring03:bean的自动装配

spring03&#xff1a;bean的自动装配 文章目录 spring03&#xff1a;bean的自动装配前言&#xff1a;一、 在xml中显示的配置&#xff1a;分析&#xff1a; People类&#xff1a;Cat类&#xff1a;Dog类&#xff1a;1. 在xml中显示的配置&#xff1a; 二、 隐式的自动装配bean【…

量子密钥分发系统设计与实现(一):系统基本架构讨论

经过一段时间讨论&#xff0c;我们了解到量子密钥分发设备是当前量子保密通信系统的基础。从本文开始&#xff0c;我将开启量子密钥分发系统设计与实现系列&#xff0c;详细讨论量子密钥分发设备如何从0到1的搭建。 1.QKD系统总体讨论 QKD系统的核心功能就是为通信双方提供理论…

聊聊最近两星期的学习吧!

今天是4月14号。 自从我3月份回到学校之后&#xff0c;我每天都有记录自己的学习时长。今天晚上&#xff0c;我在复盘我自己学习时长的时候&#xff0c;我发现&#xff0c;在整个四月份&#xff0c;我平均每天的有效学习时长只有6h&#xff0c;而且到今天为止&#xff0c;整个四…

Python基于循环神经网络的情感分类系统设计与实现,附源码

博主介绍&#xff1a;✌IT徐师兄、7年大厂程序员经历。全网粉丝15W、csdn博客专家、掘金/华为云//InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专栏推荐订阅&#x1f447;&#x1f3…

spring02:DI(依赖注入)

spring02&#xff1a;DI&#xff08;依赖注入&#xff09; 文章目录 spring02&#xff1a;DI&#xff08;依赖注入&#xff09;前言&#xff1a;一、构造器注入&#xff08;constructor&#xff09;二、set注入&#xff1a;分析&#xff1a; 1. Student类&#xff1a;2. Addres…

编程入门(二)【计算机基础三】

读者大大们好呀&#xff01;&#xff01;!☀️☀️☀️ &#x1f525; 欢迎来到我的博客 &#x1f440;期待大大的关注哦❗️❗️❗️ &#x1f680;欢迎收看我的主页文章➡️寻至善的主页 文章目录 前言五、常用软件的相关介绍六、操作系统的相关介绍七、Window11系统的基本操…

vue3 源码解析(7)— diff 算法源码的实现

前言 vue3 采用的 diff 算法名为快速 diff 算法&#xff0c;整个 diff 的过程分为以下5个阶段完成。 处理前置节点处理后置节点处理仅有新增节点处理仅有删除节点处理其他情况&#xff08;新增 / 卸载 / 移动&#xff09; 这里我们先定义新旧两个节点列表&#xff0c;接下来…

数据结构速成--栈

由于是速成专题&#xff0c;因此内容不会十分全面&#xff0c;只会涵盖考试重点&#xff0c;各学校课程要求不同 &#xff0c;大家可以按照考纲复习&#xff0c;不全面的内容&#xff0c;可以看一下小编主页数据结构初阶的内容&#xff0c;找到对应专题详细学习一下。 目录 一…

JavaWeb--前端--03Vue入门

Vue入门 1 Vue概述2 快速入门3 Vue指令3.1 v-bind和v-model3.2 v-on3.3 v-if和v-show3.4 v-for3.5 案例 4 生命周期 1 Vue概述 个完整的html页面包括了视图和数据&#xff0c;数据是通过请求 从后台获取的&#xff0c;那么意味着我们需要将后台获取到的数据呈现到页面上&#…

OSPF - 链路状态路由协议

IGP 外部网关路由协议&#xff1a; OSPF &#xff0c; IS-IS EGP 内部网关路由协议&#xff1a; BGP 协议算法&#xff1a; 距离矢量路由协议 链路状态路由协议 lsdb:链路状态数据库 - 存放lsa的地址 RIP&#xff1a;有方向的矢量&#xff0c;距离矢量路由协议&#xf…

PHP-extract变量覆盖

[题目信息]&#xff1a; 题目名称题目难度PHP-extract变量覆盖1 [题目考点]&#xff1a; 变量覆盖指的是用我们自定义的参数值替换程序原有的变量值&#xff0c;一般变量覆盖漏洞需要结合程序的其它功能来实现完整的攻击。 经常导致变量覆盖漏洞场景有&#xff1a;$$&#x…

最前沿・量子退火建模方法(2) : Domain wall encoding讲解和python实现

前言 上篇讲的subQUBO属于方法论&#xff0c;这次讲个通过编码量子比特的方式&#xff0c;同样的约束条件&#xff0c;不同的编码&#xff0c;所需的量子比特数是不同的。有的编码方式&#xff0c;很节省量子比特。比如&#xff0c;这次要讲的Domain wall encoding。 一、Doma…

Vue.js前端开发零基础教学(六)

学习目标 了解什么是路由&#xff0c;能够说出前端后端路由的原理 掌握多种路由的使用方法&#xff0c;能够实现路由的不同功能 掌握Vue Router的安装及基本使用方法 5.1 初始路由 提到路由&#xff08;Route),一般我们会联想到网络中常见的路由器&#xff08;Router),…