原文标题为:Weakly-supervised Video Anomaly Detection with Robust Temporal Feature Magnitude Learning
更新中……
摘要
问题描述
- 基于弱监督视频级别标签的异常检测是一个
多实例学习(MIL)
问题 - 目标是识别异常片段(每个视频由一包片段组成)
目前局限性
对正实例的识别在很大程度上会受到负实例的影响,尤其是在下面两种情况时更严重:
- 异常事件与正常事件仅有
轻微差异
时——特征幅度学习 - 没有考虑
时间依赖
关系时——MTN来学习时间特征
引入RTFM方法
RTFM:Robust Temporal Feature Magnitude learning,即鲁棒时序特征幅度学习
- 训练一个特征幅度学习函数,以有效地识别正实例(异常片段)
- 提升了多实例学习(MIL)方法对异常视频中负实例(正常片段)的鲁棒性。就是降低硬实例的干扰
创新点
采用了扩张卷积
和自注意力机制
- 扩张卷积有助于捕捉视频中的长时和短时时间依赖关系
- 自注意力机制通过选择性地关注重要的时间关系,提升了特征幅度学习的准确性
实验结果
证明了RTFM的有效性
- 在四个基准数据集(ShanghaiTech、UCF-Crime、XD-Violence和UCSD-Peds)上优于多个最先进的方法
- 提升了对微妙异常的区分能力,并改善了样本效率(就是提高了对数据的利用率)
一、引言
1.1 研究背景与目的
视频异常检测在自主监控中具有重要应用潜力,目的是识别异常事件发生的时间窗口,如欺凌、盗窃、暴力等。
1.2 方法比较
1.2.1 单类分类器
one-class classifiers (OCCs, also called unsupervised anomaly detection)
仅包含正常视频进行训练
1.2.2 弱监督设置
表现最佳,通过较少的人工注释以达到更好的异常分类
1.3 挑战与问题
弱监督异常检测的主要挑战之一是如何从标记为异常的整个视频中识别异常片段
- 异常视频中的大多数片段包含正常事件,使得少数异常片段的拟合变得困难
- 异常片段可能与正常片段差异很小,很难清晰分离开来
MIL方法通过平衡训练集来解决上述问题,即训练集中会包含相同数量的异常片段和正常片段
- 正常片段从正常视频中随机选
- 异常片段从异常视频中取分数最高的片段
部分解决了上述问题,但MIL引入了新问题,在忽略重要时间依赖关系的方法中尤为严重:
- 异常视频中
最高异常分数可能不来自异常片段
,这可能导致模型在训练过程中对异常事件的误判 - 从正常视频中随机选择的
正常片段可能相对容易拟合
,模型在学习过程中可能会倾向于优化这些样本的拟合,而忽略那些更具挑战性的、代表真实异常情况的样本 - 视频中存在多个异常片段时,可能
错失更有效的训练机会
(因为MIL方法只选择其中最高的作为代表) - 分类分数的使用提供了一个
弱训练信号
,不能很好的区分正常和异常片段
1.4 提出RTFM
1.4.1 理论基础
RTFM依赖于视频片段的时序特征幅度
- 低幅度特征表示正常片段
- 高幅度特征表示异常片段
RTFM方法受多示例学习(MIL)中的top-k实例
理论启发,但采取了不同的假设:假设异常片段的平均特征幅度大于正常片段,而不是依赖于异常和正常片段分类分数的明显差异。
时序特征幅度,举例来说:假设有一个视频监控系统来监控商场的偷窃行为,在视频异常检测中,每个视频片段都会提取一些视觉特征,比如颜色直方图、运动向量、光流等,时序特征幅度则指这些特征在时间轴上的强度或变化。
- 正常的视频片段通常包含相对平稳的颜色变化和运动模式,因此它们的时间特征幅度可能相对较低,表示这些特征在时间上的变化不大或者变化较为预测性。
- 异常的视频片段可能会显示出突然的颜色变化、不寻常的运动模式或者其他不寻常的视觉特征。这些异常片段的时间特征幅度可能会显著增加,因为它们在特征空间中的表达具有较大的强度或重要性。
1.4.2 RTFM的原理
如图1所示,当每个异常视频中有多个异常片段
,并且异常视频的平均片段特征幅度大
于正常视频的平均片段特征幅度时,基于特征幅度的top-k特征选择能够更好地区分异常视频和正常视频
图1:RTFM训练特征幅度学习函数。
在左图中:假设 μ = 3 \mu=3 μ=3表示异常视频中异常片段的数量,可以通过选择时间特征幅度最大的前 k ≤ µ k≤µ k≤µ个片段来最大化 Δ s c o r e ( X + , X − ) \Delta score(X^+, X^-) Δscore(X+,X−)(异常视频和正常视频之间得分差异的度量,得分是通过前 k 个片段的特征幅度均值计算得出的)
- X + X^+ X+表示异常视频
- X − X^- X−表示正常视频
- ∣ ∣ x + ∣ ∣ ||x^+|| ∣∣x+∣∣表示异常片段的时序特征幅度
- ∣ ∣ x − ∣ ∣ ||x^-|| ∣∣x−∣∣表示正常片段的时序特征幅度
在右图中: k ≈ µ k≈µ k≈µ时,即使存在一些具有大特征幅度的正常片段,RTFM可以更好地区分异常和正常视频
- k ∈ [ 1 , µ ] k \in [1, µ] k∈[1,µ]时, Δ s c o r e ( X + , X − ) \Delta score(X^+, X^-) Δscore(X+,X−) 随k增大
- k ∈ ( µ , ∞ ) k \in ( µ, \infty) k∈(µ,∞)时, Δ s c o r e ( X + , X − ) \Delta score(X^+, X^-) Δscore(X+,X−) 随k减少
实际应用中,RTFM方法通过在异常和正常视频中选择具有最大特征幅度的前 k 个片段特征,并确保它们之间有较大的间隔,这在理论上保证了能够最大程度地区分异常和正常视频的表示。然后,从异常和正常视频中选择的这些 top k 片段特征被用来训练一个片段分类器。这里是先训练让他保证有较大的间隔之后再训练分类器吗?是的,先通过MTN学习时间特征,然后进行特征幅度学习,这时就是让分数差最大,然后再去训练分类器。
1.4.3 结合PDC和TSA
为了在每个视频中无缝地整合长、短时时间依赖关系,RTFM结合了金字塔式扩张卷积(PDC - pyramid of dilated convolutions
)和时间自注意力模块(TSA - temporal self-attention)
- PDC用于捕捉视频中的长期时间依赖关系,通过不同扩张率的卷积核扩展感受野
- TSA用于处理短期时间依赖,允许模型在不同时间步之间建立自注意力机制
1.5 解决问题
- 可以
提高从异常视频中选择异常片段的概率
:由于假设异常片段具有较大的特征幅度,RTFM方法在从异常视频中选择异常片段时增加了其被选中的概率。特征幅度学习完之后,分数差变大了,异常片段的平均特征幅度更高了,所以更容易被选择 - 可以
提高训练的收敛性
:硬实例更难拟合。通过什么方法做到的?分数差变大意味着负实例的特征幅度变小,所以难拟合 - 可以
增加异常片段的数量
:RTFM方法允许从异常视频中选择更多的异常片段 - 利用
特征幅度进行正实例识别
更好:RTFM利用特征幅度来识别正实例提供了更强的学习信号,尤其对于特征幅度可能在训练过程中动态变化的异常片段,并且特征幅度学习与MIL异常分类可以联合优化,在特征表示空间和异常分类输出空间上实现异常片段和正常片段之间更大的分离边界。特征表示空间就是学习完时间特征并进行特征幅度学习后那个空间,异常分类输出空间就是最后分类器输出的那个
1.6 实验证明
我们在四个异常检测基准数据集上验证了RTFM:
- ShanghaiTech
- UCF-Crime
- XD-Violence
- UCSD-Peds
- 使用不同的预训练特征(C3D和I3D),RTFM在所有基准测试中都比当前的最优方法SOTAs好,相比多示例学习(MIL)
- RTFM显著提高了样本效率和对微小异常的区分能力
二、相关工作
- 与原始的多示例学习(MIL)表述相比,RTFM计算开销很小
- RTFM通过基于’L2范数的时间特征排名损失’统一了表示学习和异常分数学习,促进了正常和异常特征表示的更好分离?
三、RTFM方法
图2:RTFM方法。
1. 接收预训练好的特征矩阵 F ∈ R T × D \mathbf{F}\in \mathbb{R}^{T\times D} F∈RT×D,它来自一个包含 T T T 个片段的视频中,每个片段的特征维数为 D D D。
2. MTN模块捕获方段特征之间的长程和短程时间依赖关系,即得到时间特征矩阵 X = s θ ( F ) \mathbf{X}=s_\theta(\mathbf{F}) X=sθ(F)
3. 使用特征幅度学习,最大化异常和正常视频的可分性
4. 用从异常和正常视频中提取的特征幅度最大的前 k k k 个特征片段来训练片段分类器
RFTM使用弱标记视频训练来区分异常片段和正常片段
-
D
=
{
(
F
i
,
y
i
)
}
i
=
1
D
\mathcal{D}=\{( \mathrm{\mathbf{F}}_i, y_i) \}_{i=1}^{\mathcal D}
D={(Fi,yi)}i=1D 表示一组弱标记视频
- F ∈ F ⊂ R T × D \mathrm{\mathbf{F}}\in\mathcal{F}\subset\mathbb{R}^{T\times D} F∈F⊂RT×D 表示从 T T T个视频片段中预训练的 D D D维特征(C3D或I3D)
-
y
∈
Y
=
{
0
,
1
}
y\in\mathcal{Y}=\{0, 1\}
y∈Y={0,1} 表示视频即标注
- y i = 0 y_i=0 yi=0 表示正常视频
- y i = 1 y_i=1 yi=1 表示异常视频
-
r
θ
,
ϕ
(
F
)
=
f
ϕ
(
s
θ
(
F
)
)
r_{\theta, \phi}(\mathrm{\mathbf{F}})=f_\phi(s_\theta(\mathrm{\mathbf{F}}))
rθ,ϕ(F)=fϕ(sθ(F)) 表示RTFM模型
- 返回一个 T T T维特征 [ 0 , 1 ] T [0, 1]^T [0,1]T,表示将 T T T个视频片段分为正常和异常两类。这里指的是一个特征向量,长度为 T T T,每个元素值在 [ 0 , 1 ] [0, 1] [0,1]之间,代表每个片段为异常的概率吗?是的吧
该模型的训练包括端到端多尺度时间特征学习、特征幅度学习和RTFM支持的MIL分类器训练 的联合优化,损失函数如下:
-
s
θ
:
F
→
X
s_\theta:\mathcal{F\to X}
sθ:F→X 表示时间特征提取器
- X ⊂ R T × D \mathcal{X} \subset \mathbb{R}^{T \times D} X⊂RT×D 表示为一个视频的 T T T个片段提取到的 D D D维时间特征
- f ϕ : X → [ 0 , 1 ] T f_\phi:\mathcal{X \to}[0, 1]^T fϕ:X→[0,1]T 表示片段分类器(snippet classifier)
- ℓ s ( . ) \ell_s(.) ℓs(.) 表示一个损失函数,用于最大化正常视频和异常视频中前top-k片段特征之间的可分性。就是特征幅度学习的损失
- ℓ f ( . ) \ell_f(.) ℓf(.) 表示一个损失函数,用于训练片段分类器 f ϕ ( . ) f_\phi(.) fϕ(.)也使用正常和异常视频的top-k片段特征。就是片段分类器的损失
有点没明白的是, i , j = 1 i,j=1 i,j=1到 ∣ D ∣ \mathcal{|D|} ∣D∣是什么意思? ∣ D ∣ \mathcal{|D|} ∣D∣又代表什么意思?
3.1 RTFM的理论动机
Top-k MIL方法扩展了多示例学习(MIL)到一种环境,并假设分类器能够有效地将正样本和负样本分开:
- 正包中包含最少数量的正实例
- 负包中也包含一些正实例,但数量较少
我们的问题不同,负包中不含正实例,并不假设分类器能够有效地将正样本和负样本分开
-
X
=
s
θ
(
F
)
\mathrm{\mathbf{X}}=s_\theta(\mathrm{\mathbf{F}})
X=sθ(F) 表示从视频中提取的时间特征
- x t \mathrm{\mathbf{x}}_t xt 表示片段特征,为 X \mathrm{\mathbf{X}} X的第 t t t行
- x + ∼ P x + ( x ) \mathrm{\mathbf{x}}^+\sim P^+_x(\mathrm{\mathbf{x}}) x+∼Px+(x) 表示异常片段?
- x − ∼ P x − ( x ) \mathrm{\mathbf{x}}^-\sim P^-_x(\mathrm{\mathbf{x}}) x−∼Px−(x) 表示正常片段?
-
X
+
\mathrm{\mathbf{X}}^+
X+ 表示异常视频,共有
T
T
T个片段
- 从 P x + ( x ) P^+_x(\mathrm{\mathbf{x}}) Px+(x)中抽取 μ \mu μ个片段
- 从 P x − ( x ) P^-_x(\mathrm{\mathbf{x}}) Px−(x)中抽取 T − μ T-\mu T−μ个片段
-
X
−
\mathrm{\mathbf{X}}^-
X− 表示正常视频,共有
T
T
T个片段
- 从 P x − ( x ) P^-_x(\mathrm{\mathbf{x}}) Px−(x)中抽取 T 个 T个 T个
X \mathrm{\mathbf{X}} X不是表示时间特征?那么 x + \mathrm{\mathbf{x}}^+ x+和 x − \mathrm{\mathbf{x}}^- x−是表示的正常片段和异常片段的时间特征吗?
3.1.1 基于特征幅度的视频异常分类学习
定义了一个可以将视频和片段分类为正常或异常的函数,其使用片段的幅度(即使用L2范数计算特征幅度)来分类片段,假设正常片段的特征幅度小于异常片段的特征幅度,即
E
[
∣
∣
x
+
∣
∣
2
]
≥
E
[
∣
∣
x
−
∣
∣
2
]
\mathbb{E}[||\mathrm{\mathbf{x^+}}||_2] \geq \mathbb{E}[||\mathrm{\mathbf{x^-}}||_2]
E[∣∣x+∣∣2]≥E[∣∣x−∣∣2]。通过从
s
θ
(
F
)
s_\theta(\mathrm{\mathbf{F}})
sθ(F)中学习片段特征可以满足这一假设。使用基于视频中前top
k
k
k个片段平均特征幅度的优化方法来实现这一学习,定义如下:
- g θ , k ( . ) g_{\theta,k}(.) gθ,k(.) 是由 θ \theta θ参数化,表示它依赖 s θ ( . ) s_\theta(.) sθ(.)产生的 x t \mathrm{\mathbf{x}}_t xt。 g θ , k ( . ) g_{\theta,k}(.) gθ,k(.)的作用就是求一个视频中前top k k k个片段的平均特征幅度
-
Ω
k
(
X
)
\Omega_k(\mathrm{\mathbf{X}})
Ωk(X) 包含了来自
{
x
t
}
t
=
1
T
\{\mathrm{\mathbf{x}}_t \}^T_{t=1}
{xt}t=1T和
∣
Ω
k
(
X
)
∣
=
k
|\Omega_k(\mathrm{\mathbf{X}})|=k
∣Ωk(X)∣=k 的
k
k
k个片段的子集
- { x t } t = 1 T \{\mathrm{\mathbf{x}}_t \}^T_{t=1} {xt}t=1T 是视频中从第 t = 1 t=1 t=1个到第 T T T个片段的时间特征
- ∣ Ω k ( X ) ∣ = k |\Omega_k(\mathrm{\mathbf{X}})|=k ∣Ωk(X)∣=k 猜测是从 { x t } t = 1 T \{\mathrm{\mathbf{x}}_t \}^T_{t=1} {xt}t=1T中取 k k k个,一直找到哪 k k k个可以使得 g θ , k ( . ) g_{\theta,k}(.) gθ,k(.)最大
异常视频与正常视频的可分性( 即分数差
Δ
s
c
o
r
e
(
X
+
,
X
−
)
\Delta score(\mathrm{\mathbf{X}}^+, \mathrm{\mathbf{X}}^-)
Δscore(X+,X−) )定义如下:
- 这里只需要把正常视频和异常视频的时间特征传过来
3.1.2 定理3.1(正常和异常视频的预期可分离性)
3.1.2.1 异常片段的概率定义
来自
Ω
k
(
X
+
)
\Omega_k(\mathrm{\mathbf{X}}^+)
Ωk(X+)的片段是异常片段的概率定义为:
p
k
+
(
X
+
)
=
m
i
n
(
μ
,
k
)
k
+
ϵ
p_k^+(\mathrm{\mathbf{X}}^+)=\frac{min(\mu, k)}{k+\epsilon}
pk+(X+)=k+ϵmin(μ,k)
- ϵ > 0 \epsilon > 0 ϵ>0
来自
Ω
k
(
X
−
)
\Omega_k(\mathrm{\mathbf{X}}^-)
Ωk(X−)的片段是异常片段的概率定义为:
p
k
+
(
X
−
)
=
0
p_k^+(\mathrm{\mathbf{X}}^-)=0
pk+(X−)=0
- ϵ > 0 \epsilon > 0 ϵ>0
- 这个定义也就印证了之前提到的假设,负包中是不存在正实例的,所以概率直接为0
这个定义意味着,只要 k ≤ µ k≤µ k≤µ,就有可能在 Ω k ( X + ) \Omega_k(\mathrm{\mathbf{X}}^+) Ωk(X+)的前 k k k个片段中找到异常片段。因为此时 p k + ( X + ) p_k^+(\mathrm{\mathbf{X}}^+) pk+(X+)是接近于1的,当k大于μ时,概率就会越来越小
3.1.2.2 特征幅度假设
假设正常片段的特征幅度小于异常片段的特征幅度,即
E
[
∣
∣
x
+
∣
∣
2
]
≥
E
[
∣
∣
x
−
∣
∣
2
]
\mathbb{E}[||\mathrm{\mathbf{x^+}}||_2] \geq \mathbb{E}[||\mathrm{\mathbf{x^-}}||_2]
E[∣∣x+∣∣2]≥E[∣∣x−∣∣2]
-
X
+
\mathrm{\mathbf{X^+}}
X+有
μ
\mu
μ个正常片段,
T
−
μ
T-\mu
T−μ个异常片段
- μ ∈ [ 1 , T ] \mu \in [1, T] μ∈[1,T]
- X − \mathrm{\mathbf{X^-}} X−有 T T T个正常片段
3.1.2.3 定理
设 D θ , k ( . ) D_{\theta, k}(.) Dθ,k(.)为随机变量,从中可以得出可分离性分数 d θ , k d_{\theta, k} dθ,k
定理的第1部分表明:只要
k
≤
µ
k≤µ
k≤µ,在异常视频的前
k
k
k个片段中,随着
k
k
k增加(即使它包含一些负实例),异常视频与正常视频之间的可分离性趋于增加
定理的第2部分表明:当
k
>
μ
k>\mu
k>μ时,因为在正包和负包中都有大量的负样本,所以难以区分异常和正常的视频分数
如图1所示,其中
- s c o r e ( X ) = g θ , k ( X ) score(\mathrm{\mathbf{X}})=g_{\theta, k}(\mathrm{\mathbf{X}}) score(X)=gθ,k(X)
- Δ s c o r e ( X + , X − ) = d θ , k ( X + , X − ) \Delta score(\mathrm{\mathbf{X}}^+, \mathrm{\mathbf{X}}^-)=d_{\theta, k}(\mathrm{\mathbf{X}}^+, \mathrm{\mathbf{X}}^-) Δscore(X+,X−)=dθ,k(X+,X−)
- ϵ = 0.4 \epsilon=0.4 ϵ=0.4
3.1.2.4 定理核心
最大化异常和正常视频中前 k k k个时间特征片段的可分离性有助于分类
3.1.2.5 训练效果
利用前 k k k个特征片段进行训练可以更有效地区分异常和正常情况,因为:
- 异常视频中的前 k k k个样本通常是异常的
- 正常视频中的前 k k k个样本是最难训练的,即硬实例
3.1.2.6 优势
因为仅使用每个视频的前 k 个样本,因此在较少的训练样本下也能够实现高效优化
3.2 多尺度时间特征学习
受注意力技术的启发,多尺度时间网络(MTN - multi-scale temporal network)捕捉了多分辨率的局部时间依赖
以及视频片段之间的全局时间依赖
。
MTN采用时间域上的金字塔式扩张卷积来学习视频片段的多尺度表示
- 传统上扩张卷积在空间领域中被用来扩展感受野
- 这里是在时间维度上使用扩张卷积,以捕捉邻近视频片段之间的多尺度时间依赖关系
MTN从预计算的特征 F = [ f d ] d = 1 D \mathrm{\mathbf{F}}=[\mathrm{\mathbf{f}}_d]_{d=1}^D F=[fd]d=1D 中学习多尺度时间特征
- D D D 表示从 T T T个视频片段中预训练的 D D D维特征(C3D或I3D)
- f d ∈ R T \mathrm{\mathbf{f}}_d \in \mathbb{R}^T fd∈RT 表示 F \mathrm{\mathbf{F}} F 的第 d d d列,每1列的长度为 T T T(片段数)为什么要按列取而不是按行?
-
W
k
,
d
(
l
)
∈
R
W
\mathrm{\mathbf{W}}^{(l)}_{k, d} \in \mathbb{R}^W
Wk,d(l)∈RW 表示扩张卷积核
- k ∈ { 1 , … , D / 4 } k \in \{ 1, …, D/4 \} k∈{1,…,D/4}
- d ∈ { 1 , … , D } d \in \{ 1, …, D \} d∈{1,…,D}
- l ∈ { P D C 1 , P D C 2 , P D C 3 } l \in \{ \rm{PDC}_1, \rm{PDC}_2, \rm{PDC}_3 \} l∈{PDC1,PDC2,PDC3}
-
W
W
W 表示卷积核大小
- ∗ ( l ) *^{(l)} ∗(l) 表示以 l l l 为索引的扩张卷积运算
- f k ( l ) ∈ R T \mathrm{\mathbf{f}}_k^{(l)} \in \mathbb{R}^T fk(l)∈RT 表示在时间维度上应用扩张卷积后的输出特征。 T = D / 4 T=D/4 T=D/4吗?因为 W D / 4 × D W_{D/4 \times D} WD/4×D 与 f d \mathrm{\mathbf{f}}_d fd 相乘之后不就变为 1 × D / 4 1 \times D/4 1×D/4的了吗
- { P D C 1 , P D C 2 , P D C 3 } = { 1 , 2 , 4 } \{ \rm{PDC}_1, \rm{PDC}_2, \rm{PDC}_3 \}=\{1, 2, 4\} {PDC1,PDC2,PDC3}={1,2,4} 表示扩张系数
使用自注意力模块来实现视频片段之间的全局时间依赖关系
- 之前使用
图卷积网络(GCN)
来建模全局时间信息 - 这里重新构建了空间自注意技术,使其能够在时间维度上工作,并捕捉全局时间上下文
具体来说,最终生成一个注意力图 M ∈ R T × T \mathrm{\mathbf{M}} \in \mathbb{R}^{T \times T} M∈RT×T,用于估计视频片段之间的两两关联
- 使用
1
×
1
1 \times 1
1×1 卷积降低空间维度,从
F
∈
R
T
×
D
\mathrm{\mathbf{F}} \in \mathbb{R}^{T \times D}
F∈RT×D 到
F
(
c
)
∈
R
T
×
D
/
4
\mathrm{\mathbf{F}}^{(c)} \in \mathbb{R}^{T \times D/4}
F(c)∈RT×D/4
- F ( c ) = C o n v 1 × 1 ( F ) \mathrm{\mathbf{F}}^{(c)}=Conv_{1 \times 1}(\mathrm{\mathbf{F}}) F(c)=Conv1×1(F)
- 对
F
(
c
)
\mathrm{\mathbf{F}}^{(c)}
F(c) 应用3个单独的
1
×
1
1\times1
1×1 卷积得到
F
(
c
1
)
,
F
(
c
2
)
,
F
(
c
3
)
∈
R
T
×
D
/
4
\mathrm{\mathbf{F}}^{(c1)}, \mathrm{\mathbf{F}}^{(c2)}, \mathrm{\mathbf{F}}^{(c3)} \in \mathbb{R}^{T \times D/4}
F(c1),F(c2),F(c3)∈RT×D/4
- 即 F ( c i ) = C o n v 1 × 1 ( F ( c ) ) \mathrm{\mathbf{F}}^{(ci)}=Conv_{1 \times 1}(\mathrm{\mathbf{F}}^{(c)}) F(ci)=Conv1×1(F(c)) 对于 i ∈ { 1 , 2 , 3 } i \in \{1, 2, 3\} i∈{1,2,3} 他们三个一样吗?应该不一样的,因为卷积核的值可以不一样
- 最终得到的注意力图为 M = ( F ( c 1 ) ) ( F ( c 2 ) ) ⊤ \mathrm{\mathbf{M}}=(\mathrm{\mathbf{F}}^{(c1)})(\mathrm{\mathbf{F}}^{(c2)})^\top M=(F(c1))(F(c2))⊤
- F ( c 4 ) = C o n v 1 × 1 ( M F ( c 3 ) ) \mathrm{\mathbf{F}}^{(c4)}=Conv_{1 \times 1}(\mathrm{\mathbf{MF}}^{(c3)}) F(c4)=Conv1×1(MF(c3)) 这是干什么?那他们怎么串联起来的?
在最后的 1 × 1 1 × 1 1×1卷积层之后添加一个跳连接,如下:
MTN的输出
F
ˉ
=
[
F
(
l
)
]
l
∈
L
∈
R
T
×
D
\bar{\mathrm{\mathbf{F}}}=[\mathrm{\mathbf{F}}^{(l)}]_{l \in \mathcal{L}} \in \mathbb{R}^{T \times D}
Fˉ=[F(l)]l∈L∈RT×D 是由PDC和MTN模块的输出串联而成,其中包括
L
=
{
P
D
C
1
,
P
D
C
2
,
P
D
C
3
,
T
S
A
}
\mathcal{L}=\{\mathrm{PDC1}, \mathrm{PDC2}, \mathrm{PDC3}, \mathrm{TSA}\}
L={PDC1,PDC2,PDC3,TSA}
其实就是上面算出来的
F
(
l
)
=
[
f
k
]
d
=
1
D
\mathrm{\mathbf{F}}^{(l)}=[\mathrm{\mathbf{f}}_k]_{d=1}^D
F(l)=[fk]d=1D 和
F
(
T
S
A
)
\mathrm{\mathbf{F}}^{(\mathrm{TSA})}
F(TSA),不过有个疑问,
F
(
T
S
A
)
\mathrm{\mathbf{F}}^{(\mathrm{TSA})}
F(TSA)最终算出来好像不是
R
T
×
D
\mathbb{R}^{T\times D}
RT×D吧?
最终输出的时间特征表示是由原始特征 F \mathrm{\mathbf{F}} F 的跳连接组成,即 X = s θ ( F ) = F ˉ + F \mathrm{\mathbf{X}}=s_\theta(\mathrm{\mathbf{F}})=\bar{\mathrm{\mathbf{F}}}+\mathrm{\mathbf{F}} X=sθ(F)=Fˉ+F
- θ \theta θ 为本节中描述的所有卷积的权重
3.3 特征幅度学习
提出了损失函数 ℓ s ( . ) \ell_s(.) ℓs(.) 来建模 s θ ( F ) s_{\theta}(\mathrm{\mathbf{F}}) sθ(F),如下:
- 最小化正常视频中的前k个最大片段特征值
- 最大化异常视频中的前k个最大片段特征值
-
m
m
m 是提前定义好的边界
- 当分数差大于 m m m时,损失为0
- 当分数差小于 m m m时,分数差越小,损失越大
- X i = s θ ( F i ) \mathrm{\mathbf{X}}_i=s_\theta(\mathrm{\mathbf{F}}_i) Xi=sθ(Fi) 表示异常视频特征
- X j = s θ ( F j ) \mathrm{\mathbf{X}}_j=s_\theta(\mathrm{\mathbf{F}}_j) Xj=sθ(Fj) 表示正常视频特征
- d θ , k ( . ) d_{\theta, k}(.) dθ,k(.) 表示分数差
3.4 基于RTFM的片段分类器学习
使用了基于二元交叉熵的分类损失函数
ℓ
f
(
.
)
\ell_f(.)
ℓf(.) 来建模片段分类器,如下:
- Ω k ( X ) \Omega_k(\mathrm{\mathbf{X}}) Ωk(X) 是从 s θ ( F ) s_\theta(\mathrm{\mathbf{F}}) sθ(F) 中选择的具有最大 ℓ 2 \ell_2 ℓ2范数特征的 k k k个片段的集合
损失函数 ℓ f ( . ) \ell_f(.) ℓf(.) 中还有时间平滑性约束和稀疏性约束:
- ( f ϕ ( s θ ( f t ) ) − f ϕ ( s θ ( f t − 1 ) ) ) 2 (f_\phi(s_\theta(\mathrm{\mathbf{f}}_t))-f_\phi(s_\theta(\mathrm{\mathbf{f}}_{t-1})))^2 (fϕ(sθ(ft))−fϕ(sθ(ft−1)))2 表示时间平滑性约束,确保相邻片段具有类似的异常分数
- ∑ t = 1 T ∣ ∣ f ϕ ( s θ ( f t ) ) ∣ ∣ \sum_{t=1}^{T}||f_\phi(s_\theta(\mathrm{\mathbf{f}}_t))|| ∑t=1T∣∣fϕ(sθ(ft))∣∣ 表示稀疏性约束,施加异常事件在每个异常视频中是稀有的先验
四、实验
4.1 数据集和评估方法
在专为弱监督视频异常检测任务而创建四个多场景基准数据集
上进行评估
4.1.1 UCF-Crime
大规模数据集,包含来自真实世界街道和室内监控摄像头的1900个未剪辑视频,总时长128小时
- 数据集背景复杂多样
- 包含13类异常事件
- 训练集和测试集中正常和异常视频数量相同
- 1610个带有视频级标签的训练视频
- 290个带有帧级标签的测试视频
4.1.2 XD-Violence
是迄今为止公开的最大视频异常检测数据集,包含来自括真实电影、在线视频、体育直播、监控摄像头和CCTVs的4754个未剪辑视频,总时长超过217小时
- 训练集使用视频级标签
- 测试集使用帧级标签
4.1.3 ShanghaiTech
中等规模数据集,包含来自固定角度的街道视频监控的437个视频
- 有13个不同的背景场景
- 307个为正常视频
- 130个为异常视频
原始数据集是假设正常训练数据可用性的异常检测任务的常用基,所以它的训练数据集中没有标签,这里作者和Zhong等人使用了相同的过程,将原始数据集重组为弱监督训练集。我理解的是原来是只以正常视频为训练集,类似于哪种构建正常字典的吧。这里是如何重组的呢?我理解的是从原来的测试集中选择一部分异常视频,将他们放到训练集中,最终要使得训练集和测试集都覆盖了全部13个背景场景才行。
4.1.4 UCSD-Peds
小规模数据集,由两个子数据集(Ped1和Peds2)组成
- Ped1有70个视频
- Peds2有28个视频
随机选择6个异常视频和4个正常视频进入训练集,将剩余的视频作为测试集,就重组为了弱监督训练集。
4.1.5 评估方法
AUC
(ROC曲线下的帧级面积)作为所有数据集的评估方法,越大越好AP
(平均精度)作为XD-Violence数据集的评估方法,越大越好
4.2 实现细节
特征提取
- T = 32 T=32 T=32,即每个视频分成32个视频片段
- m = 100 , k = 3 m=100, k=3 m=100,k=3,每个实验都使用这个设置,这是(6)式中的,表示定义边界为100,取前3个特征幅度最大的片段
- 在
S
e
c
.
3
Sec.3
Sec.3 中提到的3个FC层(我怎么不记得在哪里提到的?)
- 分别有512、128、1个结点
- 每层后面跟一个ReLU
- 再跟一个dropout,并且dropout rate = 0.7
- 2048D特征提取自预训练的I3D的 m i x _ 5 c 层 mix\_5c层 mix_5c层
- 4096D特征提取自预训练的C3D的 f c _ 6 fc\_6 fc_6层
- 在MTN中,金字塔式的扩张率设置为1, 2, 4
- 每个扩张卷积分支使用了3 × 1的一维卷积(Conv1D)
- 3 × 1表示卷积核的大小为3,只在输入的一个维度上进行卷积操作(即沿着时间序列的维度)
- 在自注意力模块,使用1 × 1的一维卷积
RTFM使用Adam优化器以端到端方式训练
- 权重衰减为0.0005
- batch-size=64,每个小批量包括从32个随机选择的正常和异常视频中提取的样本
- epochs=50
- 学习率设置
- ShanghaiTech和UCF-Crime的 lr=0.001
- XD-Violence的 lr=0.0001
- 使用PyTorch实现
为了公平比较
- 使用与已发表的基线结果相同的骨干网络
- 采用与之前研究中相同的基准设置
4.3 关于上海科技的结果
- 即使与依赖更先进的特征提取器(如I3D-RGB和I3D Flow)的方法相比,性能也超过了5%,表明了
特征幅度学习方法的优势
- 比基于GCN的弱监督方法提升了11.7%,显示出MTN(多分辨率时间网络)模块在
捕捉时间依赖性方面的有效性
表1:在ShanghaiTech数据集上与SOTA的无/弱监督方法的对比。
4.4 关于UCF-Crime的结果
RTFM方法在UCF-Crime数据集上显著优于先前的无监督学习方法和弱监督方法,不论是在使用先进特征提取器还是传统特征上都取得了领先地位
表2:在SUCF-Crime数据集上与SOTA的无/弱监督方法的对比。
4.5 关于XD-Violence的结果
RTFM方法在XD-Violence数据集上有优势,无论是在无监督学习还是弱监督学习方法中,进一步验证了特征幅度学习方法在支持基于MIL的异常分类任务中的有效性
表3:在XD-Violence数据集上与SOTA的无/弱监督方法的对比。
4.6 关于UCSD-Peds的结果
RTFM方法在UCSD-Ped2数据集,无论是在TSN-Gray特征还是I3D-RGB特征下,都超过了先前的最先进方法
表4:在UCSD-Ped2数据集上与SOTA的弱监督方法的对比。
4.7 样本效率分析
在ShanghaiTech数据集上对训练中异常视频数量
的样本效率进行了调查,MIL方法作为基准,都使用相同的I3D特征,通过三次运行使用不同的随机种子计算得到平均AUC结果。
如图4所示,因为RTFM可以更好地识别异常视频中的正实例,因此,它可以比基于MIL的方法更有效地利用相同的训练数据
图4:AUC曲线随着训练数据集中异常视频数量的变化。
4.8 细微异常可辨别性
在UCF-Crime数据集上检测微妙异常事件的能力,通过研究每个单独异常类别的AUC性能
。模型在完整的训练数据上进行训练,以Sultani等人的方法作为基准,结果如图5所示。
- 在人类中心异常事件上表现出色,即使异常非常微妙,得益于RTFM方法
在理论上保证了正负实例之间良好的可分性
- 在虐待类别中效果较差,因为训练数据主要包含人类虐待事件,而测试视频中仅包含动物虐待事件
图5:在UCF-Crime数据集上关于每个类别的AUC。
4.9 消融实验
4.9.1 实现细节
- 利用I3D特征对ShanghaiTech和UCF-Crime进行消融实验
- 时间特征映射函数 s θ s_\theta sθ被分解为PDC(金字塔扩张卷积)和TSA(自注意力机制)
- FM表示特征幅度学习
- 基线模型将PDC和TSA替换为1×1卷积层,并采用原始MIL方法进行训练
4.9.2 实验结果
- PDC和TSA对整体性能有贡献,并且它们在捕捉长期和短期时间关系方面相辅相成
- 特征幅度学习显著改进了原始的MIL方法,使其能够更好地利用标记的异常视频数据
- 将PDC或TSA与FM结合可以进一步提升性能
表5:在上海科技和UCF-Crime上的消融实验。
4.9.3 理论假设验证
RTFM假设前k个异常特征片段的平均特征幅度大于正常片段的平均特征幅度
- 在UCF-Crime的测试集中发现异常视频的前k个片段的平均幅度为53.4,而正常视频的平均幅度为7.7,证明了在定理3.1中的假设是有效的,RTFM能够有效地增加正常和异常视频片段之间的可分性
- 此外,异常片段的平均分类得分为0.85,而正常片段为0.13,进一步证明了这一点
4.10 定性分析
- FM模块能够有效地对正常片段产生较小的特征幅度,并对异常片段产生较大的特征幅度
- 能够成功地确保在正常和异常片段的异常分数之间存在较大的间隔(即空白和粉色阴影区域)
- 能够在一个视频中检测到多个异常事件(例如,stealing079)
- 能够检测到微妙的异常(stealing和shoplifting等异常事件)
图3:RFTM在UCF-Crime和ShanghaiTech上的异常分数(蓝色)和特征幅度的值(橙色)。粉色区域表示真实发生异常的窗口。
五、结论
5.1 RTFM方法
提出了RTFM,使top- k k k MIL方法用于弱监督视频异常检测,它学习了一种时序特征幅度映射函数:
- 检测出稀有的异常片段
- 确保正常和异常片段之间存在较大的间隔(分数差)
5.2 改进
在两个主要方面改进了基于MIL的异常分类:
- RTFM使得模型学习到更具判别性的特征(特征幅度),提高了对微妙异常和硬实例的区分能力
- 更有效地利用异常数据(可以有多个异常)
这两个能力分别带来了比当前SOTA MIL方法更好的微妙异常区分能力和样本效率。