论文链接:https://arxiv.org/pdf/1903.07256.pdf

TL;DR

文章中对于视频的异常检测提出了一种优化的方法,基于feature similarity和temporal consistency,利用GCN构建一个Label Noise Cleaner来产生Snippet-level Anomaly Labels从而接着重新训练模型,以此来提高模型的精度。整体属于一个弱监督学习的方法,可以优化模型。

Contributions

  • We formulate the problem of anomaly detection with weak labels as a supervised learning task under noise annotations, and put forward an alternate training framework to optimize the action classifier.
  • We propose a GCN to clean noise labels. To the best of our knowledge, it is the first work to apply a GCN to correct label noise in the area of video analytics.

Algorithm/Model

文章的整体思路如下图所示:

主要分为两步:

  1. Classification Stage:
    输入Video Snippets和Video-level Label,训练好的Action Classifier将输出每个Snippets的异常概率。
  2. Cleaning Stage:
    第一步产生的label可能不太准确,为了解决这个问题,文章中提出了基于GCN的Label Noise Cleaner来清理噪声label产生Snippet-level Anomaly Labels重新训练Action Classifier。

先看下cleaner训练过程图:

包含以下两个重要的模块:

  1. Feature Similarity Graph Module
    利用snippets之间的相似性构图:

A(i,j)F=exp(XiXjmax(XiX))\mathbf{A}_{(i, j)}^{\mathbf{F}}=\exp \left(\mathbf{X}_{i} \cdot \mathbf{X}_{j}-\max \left(\mathbf{X}_{i} \cdot \mathbf{X}\right)\right)

  1. Temporal Consistency Graph Module
    考虑snippets之间的时间一致性:

AT(i,j)=k(i,j)=exp(ij)\mathbf{A}^{\mathbf{T}}(i, j)=k(i, j)=\exp (-\|i-j\|)

至于GCN,文中只使用了一层结构:

A^F=D~F12A~FD~F12\widehat{\mathbf{A}}^{\mathrm{F}}=\widetilde{\mathbf{D}}^{\mathrm{F}-\frac{1}{2}} \widetilde{\mathbf{A}}^{\mathrm{F}} \widetilde{\mathbf{D}}^{\mathrm{F}-\frac{1}{2}}

A~F=AF+In\widetilde{\mathbf{A}}^{\mathbf{F}}=\mathbf{A}^{\mathbf{F}}+\mathbf{I}_{\mathbf{n}}

HF=σ(A^FXW)\mathbf{H}^{\mathbf{F}}=\sigma\left(\widehat{\mathbf{A}}^{\mathbf{F}} \mathbf{X} \mathbf{W}\right)

定义损失函数:L=LD+LI\mathcal{L}=\mathcal{L}_{D}+\mathcal{L}_{I}
第一部分表示high-confidence snippets的cross-entropy如下:

LD=1HiH[y~ilnpi+(1y~i)ln(1pi)]\mathcal{L}_{D}=-\frac{1}{|H|} \sum_{i \in H}\left[\widetilde{y}_{i} \ln p_{i}+\left(1-\widetilde{y}_{i}\right) \ln \left(1-p_{i}\right)\right]

第二部分表示时序限制:

LI=1Ni=1Npipi\mathcal{L}_{I}=\frac{1}{N} \sum_{i=1}^{N}\left|p_{i}-\overline{p}_{i}\right|

Experiment Detail

在不同的数据集下测试效果:

Thoughts

文中的想法可以借鉴,但是在log中不好构造时序图。而且顶点的特征不好刻画。

联系作者