综述 | 生成式对抗网络异常检测
Posted 人工智能博士
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了综述 | 生成式对抗网络异常检测相关的知识,希望对你有一定的参考价值。
点上方人工智能算法与Python大数据获取更多干货
在右上方 ··· 设为星标 ★,第一时间获取资源
仅做学术分享,如有侵权,联系删除
转载于 :专知
摘要
异常检测是许多研究领域所面临的重要问题。探测并正确地将一些看不见的东西分类为异常是一个具有挑战性的问题,多年来已经通过许多不同的方式解决了这个问题。生成对抗网络(GANs)和对抗训练过程最近被用来面对这一任务,产生了显著的结果。在本文中,我们综述了主要的基于GAN的异常检测方法,并突出了它们的优缺点。在不同数据集上的实验结果的增加,以及使用GAN的异常检测的完整开源工具箱的公开发布。
引言
异常是数据中不符合正常行为的定义(Chandola et al., 2009)的模式。生成式对抗网络(GAN)和对抗训练框架(Goodfellow et al., 2014)已成功应用于真实世界数据复杂和高维分布的建模。这种GAN特性表明它们可以成功地用于异常检测,尽管它们的应用只是最近才被探索出来。使用GAN进行异常检测的任务是使用对抗性训练过程建模正常行为,并测量异常评分来检测异常(Schlegl等人,2017)。据我们所知,所有基于gan的异常检测方法都是基于对抗性特征学习思想(Donahue et al., 2016),其中提出了BiGAN架构。在最初的公式中,GAN框架学习了一个将样本从任意潜在分布(噪声之前)映射到数据的生成器,以及一个试图区分真实样本和生成样本的鉴别器。BiGAN架构扩展了原始的模拟,增加了逆映射的学习,将数据映射回潜在的表示。一个将输入数据映射到其潜在表示的学习函数和一个相反的函数(生成器)是使用GAN进行异常检测的基础。
论文组织如下。在第1节,我们介绍了GANs框架,并简要介绍了其最具创新性的扩展,即条件GAN和BiGAN,分别在第1.2节和第1.3节。第2节介绍了使用GAN进行异常检测的最新架构。在第3节中,我们对所有分析的架构进行了经验评估。最后,第四部分是结论和未来的研究方向.
GAN异常检测
基于GAN的异常检测是一个新兴的研究领域。Schlegl et al.(2017),这里称为AnoGAN,是第一个提出这一概念的人。Zenati等人(2018)提出了一种基于BIGAN的方法,这里称为EGBAD (Efficient GAN Based Anomaly Detection),其性能优于AnoGAN的执行时间。最近,Akcay等人(2018)提出了一种基于GAN +自编码器的方法,其性能超过了EGBAD。
AnoGAN
通过一个GAN的生成器G来学习正常数据的分布,测试时图像通过学习到的G找到它应该的正常图的样子,再通过对比来找到异常与否的情况。
训练阶段:
对抗训练,从一个噪声向量Z通过几层反卷积搭建的生成器G学习生成正常数据图像。
测试阶段:
随机采样一个高斯噪声向量z,想要通过已经训练好的G生成一幅和测试图像x对应的正常图像G(z)。G的参数是固定的,它只能生成落在正常数据分布的图像。但此时仍需进行训练,把z看成待更新的参数,通过比较G(z)和x的差异去更新,从而生成一个与x尽可能相似、理想对应的正常图像。
如果x是正常的图像,那么x和G(z)应该是一样的。
如果x异常,通过更新z,可以认为重建出了异常区域的理想的正常情况,这样两图一对比不仅仅可以认定异常情况,同时还可以找到异常区域。
EGBAD
高效基于GAN的异常检测(EGBAD) (Zenati et al., 2018)将BiGAN架构引入到异常检测领域。特别是,EGBAD试图利用Donahue等人(2016)和Dumoulin等人(2017)的工作来解决AnoGAN的缺点,该工作允许学习一个编码器E,能够在对抗性训练期间将输入样本映射到它们的潜在表示
GANomaly
GANomaly 以编码器-解码器-编码器设计模型,通过对比编码得到的潜在变量和重构编码得到的潜在变量差异,从而判断是否为异常样本。文章在无异常样本训练模型的情况下实现了异常检测,对于很多场景都有很强的实际应用意义。
GANomaly 模型框架是蛮清晰的,整个框架由三部分组成:
GE(x),GD(z) 统称为生成网络,可以看成是第一部分。这一部分由编码器 GE(x) 和解码器 GD(z) 构成,对于送入数据 x 经过编码器 GE(x) 得到潜在向量 z,z 经过解码器 GD(z) 得到 x 的重构数据 x̂ 。
模型的第二部分就是判别器 D,对于原始图像 x 判为真,重构图像 x̂ 判为假,从而不断优化重构图像与原始图像的差距,理想情况下重构图像与原始图像无异。
模型的第三部分是对重构图像 x̂ 再做编码的编码器 E(x̂) 得到重构图像编码的潜在变量 ẑ。
在训练阶段,整个模型均是通过正常样本做训练。也就是编码器 GE(x),解码器 GD(z) 和重构编码器 E(x̂),都是适用于正常样本的。
当模型在测试阶段接受到一个异常样本,此时模型的编码器,解码器将不适用于异常样本,此时得到的编码后潜在变量 z 和重构编码器得到的潜在变量 ẑ 的差距是大的。我们规定这个差距是一个分值,通过设定阈值 ϕ,一旦 A(x)>ϕ 模型就认定送入的样本 x 是异常数据。
---------♥---------
声明:本内容来源网络,版权属于原作者
图片来源网络,不代表本公众号立场。如有侵权,联系删除
AI博士私人微信,还有少量空位
点个在看支持一下吧
以上是关于综述 | 生成式对抗网络异常检测的主要内容,如果未能解决你的问题,请参考以下文章
Graph Anomaly Detection with Deep Learning——基于属性图的节点异常检测