《Memorizing Normality to Detect Anomaly: Memory-augmented Deep Autoencoder for Unsupervi》--阅读笔记-ICCV

Authors

Dong Gong, Lingqiao Liu, Vuong Le, Budhaditya Saha,Moussa Reda Mansour, Svetha Venkatesh, Anton van den Hengel

Motivation

  • 无监督的异常检测是在仅给出正常数据示例的情况下学习正常轮廓,然后将不符合正常轮廓的样本识别为异常,但是这个工作是非常困难的因为缺少人为的监督。
  • 当数据点位于高维空间(视频)中时,问题变得更加棘手,因为对高维数据进行建模非常困难。
  • 虽然AE的提出用于解决这类问题(在无监督的环境中对高维数据建模),也就是:在正常数据中训练后得到模型,然后将异常数据输入模型,异常数据会出现较大的重建误差而不能重建,正常数据重建误差小可以得到重建数据。但是,有时AE也存在问题(AE can “generalize” so well that it can also reconstruct the abnormal inputs well.)。

Contribution

  • 使用了存储模块来扩展深度AE,以内存增强的自动编码器,即MemAE
  • 通过attention based memory addressing的存储模块效果优秀
  •  使用可微分的硬收缩算子(differentiable hard shrinkage operator)来引起内存寻址权重的稀疏性(sparsity of the memory addressing weights),隐式的促使memory中的要素想要查询的要查询要素的特征空间中接近( implicitly encourage the memory items to be close to the query in the feature space.)

Methods

MemAE 组成部分有三个:编码器(用于编码输入,生成查询),解码器(用于重建reconstruction)和记忆(内存,内存寻址)模块,网络结构如图

给定输入后,编码器首先获得输入的编码。 通过使用编码好的representation作为query,存储模块通过基于注意力的寻址运算符检索存储器中最相关的项目,然后将这些项目传递给解码器以进行重构。 在训练过程中,对编码器和解码器进行优化,以最大程度地减少重构误差。 存储器内容被同时更新以记录编码的正常数据的原型元素。 给定一个测试样本,该模型仅使用记录在存储器中的有限数量的正常模式执行重构。 结果,重建趋于接近正常样本,导致正常样本的重建误差较小,而异常情况的误差较大,这将被用作检测异常的判据。简单地说,一个输入图像并不直接经过encoder-decoder,而是利用encoder得到的潜在空间检索memory中最相关的项,这些项随后被整合并进入decoder。

上图转自https://blog.csdn.net/sinat_37145472/article/details/98869328

Encoder Decoder

编码器的作用是提供latent domain,编码完的特征表示就用来当做查询,在memory中检索相关的item。论文中作者使用encoder当做query generator;decoder用memory当做输入,进行重建样本。

,表示encoder将input编码到latent domain, 表示的是decoder将重建成,其中encoder部分有,;decoder部分有重建成是encoder和decoder的参数。在memAE中,用于检索相关的memory item,是检索完的item,在传统中的AE有,但是这篇文章文章的创新点就在这里。作者使用,来检测latent domain下的reconstruction quality,

Memory Module with Attention-based Sparse Addressing

memory记作,用于记录正常训练数据中的原型正常模式prototypical normal patterns,它包含了N个C纬度的vector,表示中第i行,每个表示memory item,那么寻址过程即为表示i of 

Attention for Memory Addressing

,d是用来计算余弦距离similarity。该操作是将z映射到memory,转换成w。

Hard Shrinkage for Sparse Addressing

一些异常可能仍然有机会通过memory items的复杂组合(也就是稠密的)很好地重建。为了缓解这个问题,作者采用了hard shrinkage operator来提高的稀疏性。进行了类似Relu的Hard Shrinkage约束,其实就是超过阈值才保留,不超过阈值就是0,,然而这并不容易进行backward,因此作者结合ReLU进行了修改是ReLU,是个正数(small positive scalar),,在shrinkage之后,重新还原到与潜在空间(latent representation)相同的维度。

稀疏寻址使得模型用较少但更相关的存储项来学习数据的representation,从而导致在内存中学习更多的信息表示。 w的稀疏性还可以缓解以下问题:可以通过密集的寻址权重很好地重构异常样本。 与其它稀疏表示方法相比,该方法通过一次有效的前向运算而不是迭代更新来获得所需的稀疏w。

Training

重建误差:

表示训练样本,表示重建样本。进一步的促进的稀疏性,又因为大于0,且1范数和为1,因此使用最小化entropy来促进。,综合重建误差和最小化entropy得到最终的loss function 

Experiment

下图为memory里学到的东西

下图为测试

 

  • 7
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值