Remembering history with convolutional LSTM for anomaly detection

论文地址链接

Abstract

  作者利用CNN来编码外观利用ConvLSTM通过记忆过去帧来编码运动信息再结合自编码器来学习正常样本的外观和运动模式。
  相比基于三维卷积自动编码器的异常检测(作者此处指3D卷积,认为16年Hasan那篇使用的是3d卷积,但Hasan使用的应该是二维卷积),作者的主要贡献在于提出了一个ConvLSTM自编码器框架,可以更好地分别对正常事件的外观变化和运动变化进行编码
  通过实验证明了方法的有效性

Conclusion

  通过使用利用CNN对每一帧进行编码,可以很好地对每一帧的内容进行表征,并利用ConvLSTM对运动信息进行表征。同时,ConvLSTM保留了空间信息,有助于重建当前帧和以前帧。在一个合成的的Moving-MNIST数据集上的实验表明,ConvLSTM-AE对外观和运动的变化具有鲁棒性。在所有真实数据集上的实验进一步表明,作者的模型大大优于卷积自动编码器。

  ps:对运动信息提取的探索,卷积LSTM的又一次使用尝试,模型结构相比于16年那篇是新的。

Introduction

  异常检测可以归结为以下两个子问题:i)如何表征外观和运动;Ii)如何建模外观或运动的变化。作者表示现有的许多动作识别工作表明,三维卷积不足以用于运动特征的描述(此处应是想与hasan做对比)
  作者的工作总结如下:i)提出了一个ConvLSTM-AE框架,对外观和外观(运动)的变化进行编码,用于异常检测;ii)在合成移动MNIST数据集上的实验表明,提出的ConvLSTM-AE可以很容易地检测到由运动或外观引起的异常。在真实数据集上的实验进一步验证了该异常检测框架的有效性。

Related work

  提到hasan那篇文章,预测视频中所有片段的异常。为了获得帧级的异常预测,需要对多个视频片段进行异常检测,并对每一帧进行异常程度插值,这一过程耗时较长。(此处提到了原文没提到的异常分数计算方法?)

Method

模型结构


  结构如上图首先使用CNN对每一帧的内容进行编码,然后将每一帧的编码特征输入到一个ConvLSTM中,由ConvLSTM记忆所有的历史帧。利用ConvLSTM的输出重建当前帧和前一帧。重构前一帧的目的是保证ConvLSTM能够记住历史帧中的信息。对于异常事件,随着外观或运动的变化,历史信息无法帮助重建当前帧。那么重建误差就会很高。因此,可以根据重构误差来判断是否发生异常。
目标函数(重构当前输入帧和过去一帧):

当t=1时,只重构当前帧。
  首先,将3个卷积层分别叠加128、256、512个特征图。这些卷积层对应的内核大小分别是7×7、5×5和3×3。对于所有卷积层,stride设置为2。然后将ConvNet的输出输入到ConvLSTM-AE中,ConvLSTM-AE的输出大小与其输入相同。在ConvLSTM-AE中,初始输出和初始内存对应的h0和c0设为0。对于基于DeconvNet的解码模块,我们翻转了ConvNet的架构,即从下到上对应层的特征数分别为256、128、1,内核大小为7×7,5×5和3×3 , stride设为2。零填充用于所有卷积和反卷积层。

###异常检测
  一旦模型经过训练,理论上,模型可以用于检测任意帧的测试视频的异常检测。然而,模型是用包含T帧的视频片段进行训练的。即使在测试阶段,模型仍然记住了前一帧中的信息,这可能对应于异常事件。因此,为了提高检测精度,作者每次只对包含连续T′帧T'帧T′帧的视频片段进行异常预测。换句话说,作者强制网络在每T帧中忘记所有的历史信息,以提高异常检测的精度。
当前输入为ItI_tIt​,对应的重构错误计算为:

归一化分数:

这里s(t)可以用来确定异常事件何时发生。对于普通时刻,s(t)对应一个更大的值。而对于异常事件,s(t)对应一个较小的值。

实验

  使用了hasan等人的数据增强策略,学习率0.01,AdaGrad优化器,batch为4,Xavier初始化。ReLU激活。输入大小为225X225.
  设定输入长度T为10,T′T'T′越大意味着记忆的信息越多。对于变化频繁的场景,我们可以使用小T′T'T′来证更高的精度。更具体地说,对于Ped1,Ped2,Avenue,T′T'T′固定为10。对于地铁入口和地铁出口,T′T'T′被设置为测试视频的长度,这意味着不需要刷新记忆,因为在地铁数据集中,几乎所有帧都对应于相同的背景。

Moving-MNIST Dataset测试

为了评估方法对分别由外观或运动引起的异常性能,在一个合成的Moving-MNIST数据集上部署实验。

作者解释对于运动convAE已经很高了所以作者方法提升不明显,而外观作者方法提升很大

异常数据集测试


此处作者给出的ConvAE的结果是作者根据该论文作者提供的代码跑出的结果,与原论文有较大差距
作者最终帧级别 AUC:
  ped1(0.755)
  ped2(0.881)
  Avenue(0.770)

Discussion

  1. 主要想利用LSTM提取运动信息,其他时序模型的尝试?
  2. LSTM作用是利用历史信息,这样当重构的时候会利用到过去的帧,将序列的帧联系起来了,但是是否是针对运动信息?学习到的可能是提取运动信息的能力,那么对于正常事件和异常事件区分度在哪?作者说在测试阶段仍会记忆异常事件的上下帧信息所以要每T忘记所有历史,所以对于正常和异常事件区分度在哪?如果是只针对正常运动提取则可具有区分度,这与自编码器存在相似问题即是否存在区分度。
  3. 如何在提取特征的同时使得正异常具有区分性。
  4. 本文利用了动作识别论文Long Term Recurrent Convolutional Networks for Visual Recognition and Description同样的结构只是在lstm输出上加入了解码结构。

【论文精读】2017-ICME-Remembering history with convolutional LSTM for anomaly detection相关推荐

  1. 论文精读《OFT: Orthographic Feature Transform for Monocular 3D Object Detection》

    OFT: Orthographic Feature Transform for Monocular 3D Object Detection 文章目录 OFT: Orthographic Feature ...

  2. (论文笔记)An Attention Enhanced Graph Convolutional LSTM Network for Skeleton-Based Action Recognition

    An Attention Enhanced Graph Convolutional LSTM Network for Skeleton-Based Action Recognition 文章目录 An ...

  3. 【论文翻译】An Attention Enhanced Graph Convolutional LSTM Network for Skeleton-Based Action Recognition

    An Attention Enhanced Graph Convolutional LSTM Network for Skeleton-Based Action Recognition 基于骨架的注意 ...

  4. 【论文阅读】Siamese Neural Network Based Few-Shot Learning for Anomaly Detection in Industrial Cyber-Physi

    文章目录 Abstract 1. Introduction 2. Related Work 2.1 Anomaly Detection techniques for CPS 2.2 Few-Shot ...

  5. 论文精读:DenseNet:Densely Connected Convolutional Networks

    1.核心思想 最近的研究表明,如果在卷积网络的输入与输出之间添加短连接(shorter connections),那么可以使得网络变得更深.更准,并且可以更有效的训练.本文,我们围绕短连接思想,提出密 ...

  6. (深度学习论文精读总结)You Only Look Once: Unified, Real-Time Object Detection

    一.文献名字和作者 文献名:You Only Look Once: Unified, Real-Time Object Detection 作者名:Joseph Redmon,Santosh Divv ...

  7. 论文精读:Joint Multi-modal Aspect-Sentiment Analysis with Auxiliary Cross-modal Relation Detection

    1.JML方法 这篇2021EMNLP的论文首先定义了联合多模态方面集情感分析任务. 在给定数据样例D={(X_n,I_n,A_n,S_n)}n=1~N的情况下,X为长为k的单词序列,I是的图片.而联 ...

  8. 【论文合集】Awesome Anomaly Detection

    github:GitHub - bitzhangcy/Deep-Learning-Based-Anomaly-Detection Anomaly Detection: The process of d ...

  9. 【论文笔记】Catching Both Gray and Black Swans: Open-set Supervised Anomaly Detection*

    论文 论文题目:Catching Both Gray and Black Swans: Open-set Supervised Anomaly Detection* 收录:CVPR2022 论文地址: ...

最新文章

  1. linux filesystem_如何使用cgdb + qemu调试linux内核模块
  2. 虚拟机 克隆:完整克隆 模式
  3. 展开收起功能实现_Windows10自带的7大隐藏功能,个个都实用!
  4. 视频API的发展方向
  5. 夜来香——暗恋的滋味
  6. 移动端双Token免登录(附代码)
  7. java能写前端么_java程序员会写前端吗
  8. 浅析物联网及云计算技术在传统汽车检测线中的应用
  9. 计算机机器人比赛有哪些,RoboCup机器人世界杯赛有哪些项目?
  10. 数据流图转换为软件结构图
  11. 一文教你学会DIY串口线
  12. Kafka入门三:几种消费方式
  13. 解决 canvas隐藏后出现滚动条的问题
  14. 在本计算机无法启动用友通服务器,用友T3客户端提示用友通服务没有启动?
  15. 二、8.根据一个收件人列表,输出姓名:xxx 电话:xxx 收货地址:xxx姓名:xxx 电话:xxx 收货地址:xxx的格式.
  16. iPhone又被拼多多砍了,错过一天等一年?网友:别急,天天双11
  17. 个人站长之路,痛下决心换云服务器
  18. AnnaKournikova病毒源代码解析
  19. 2017.5.27测试 3. 逃避系统警察
  20. 欧洲杯竞猜|周末在家预测欧洲杯淘汰赛

热门文章

  1. 天工代码生成器标准版正式发布
  2. 个推推送Android问题检测
  3. 织梦模板dedecms文件名介绍与说明
  4. flutter ios打包_安卓开发者如何使用Flutter打包IOS应用
  5. css3实现圆形进度加载动画
  6. Go 打开文件,写入文件。
  7. Matlab diag的用法
  8. uva508 莫尔斯电码(Morse Mismatches)
  9. mysql threads create_mysql Threads_created 增长过快的解决
  10. delphi摄像头编程