Deep Learning For Anomaly Detection:A Survey阅读笔记
文章目录
- Deep Learning For Anomaly Detection:A Survey阅读笔记
- Abstract
- 1、Introduction
- 2、What are anomalies?
- 3、What are novelties?
- 4、Motivation and Challenges: Deep anomaly detection techniques
- 5、Related Work
- 6、Our Contributions
- 7、Organization
- 8、Different aspects of deep learning-based anomaly detection
- 9、Applications of Deep Anomaly Detection
- 9.1 Intrusion Detection
- 9.2 Fraud Detection
- 9.3 Malware Detection
- 9.4 Medical Anomaly Detection
- 9.5 Deep learning for Anomaly detection in Social Networks
- 9.6 Log Anomaly Detection
- 9.7 Internet of things (IoT) Big Data Anomaly Detection
- 9.8 Industrial Anomalies Detection
- 9.9 Anomaly Detection in Time Series
- 9.10 Video Surveillance
- 10、Deep Anomaly Detection (DAD) Models
- 11 Deep neural network architectures for locating anomalies
- 12 Relative Strengths and Weakness : Deep Anomaly Detection Methods
- 13 Conclusion
Abstract
对最先进的异常检测技术进行了分类,每个类别概述了基本的检测技术及其变体,同时提出了优势和局限性,讨论了计算复杂度。
1、Introduction
深度学习通过学习网络的嵌入来表示数据
2、What are anomalies?
3、What are novelties?
4、Motivation and Challenges: Deep anomaly detection techniques
数据量大,传统方法困难。
5、Related Work
6、Our Contributions
7、Organization
8、Different aspects of deep learning-based anomaly detection
8.1、Nature of Input Data
输入数据分为顺序数据(sequential)和非顺序数据(no-sequential)
在数据挖掘中使用的网络层数是由输入数据的维度驱动的,更深的网络在高维数据上产生更好的性能。
8.2 、Based on Availability of labels
标签,由于异常是非常罕见的,因此很难获得它们的标签。同时,异常行为可能随着时间的推移而发生变化。
深度异常检测(DAD)模型可以根据标签的可用性程度大致分为三类:1. 有监督的深度异常检测;2. 半监督的深度异常检测;3. 无监督的深层异常检测。
8.2.1、Supervised deep anomaly detection
有监督的深度异常检测包括使用正常和异常数据实例的标签来训练深度有监督的二进制或多类分类器。
由于缺乏带有标签的训练样本,不如半监督或无监督方法受欢迎。
8.2.2、Semi-supervised deep anomaly detection
正常实例的标签比异常的更容易获得,所以半监督被更广泛采用。
在异常检测中使用深度自动编码器的一种常见方式是在没有异常的数据样本上以半监督方式训练它们。在训练样本充足的情况下,对于正常情况,正常类自动编码器对异常事件的重建误差较低
8.2.3、Unsupervised deep anomaly detection
无监督深度异常检测技术仅基于数据实例的内在属性来检测异常值。
自动编码器是所有无监督DAD模型的核心。这些模型假设正常实例比异常数据实例更普遍,异常数据实例失败会导致高误报率。
8.3、Based on the training objective
引入两种新的基于训练目标的深度异常检测技术:1)深度混合模型(DHM)。2)一类神经网络(OC-NN)。
8.3.1、Deep Hybrid Models(DHM)
用于异常检测的深度混合模型主要使用深度神经网络自动编码器作为特征提取器,在自动编码器的隐藏表示中学习的特征被输入到传统的异常检测算法,例如一类SVM (OC-SVM)来检测异常值(Andrews等人[2016a])。
8.3.2、One-class neural Networks(OC-NN)
该方法开辟了新的领域:隐藏层中的数据表示是由基于对象的神经网络目标驱动的,因此是为异常检测定制的。
8.4 Type of Anomaly
异常可以大致分为三种类型:点异常、背景异常和集体异常。深度异常检测(DAD)方法已被证明能够成功检测所有三种类型的异常。
8.4.1、Point Anomalies
点异常通常表示随机发生的不规则或偏差,可能没有特定的解释。
8.4.2、Contextual Anomaly Detection
上下文异常也称为条件异常,是在特定上下文中可以被视为异常的数据实例。通过考虑上下文和行为特征来识别上下文异常。通常使用的上下文特征是时间和空间。
8.4.3、Collective or Group Anomaly Detection
个体数据点的异常集合被称为集合或组异常,其中每个孤立的个体点表现为正常数据实例,而在一个组中观察到的个体点表现出异常特征。
8.5、Output of DAD Techniques
通常,异常检测方法产生的输出要么是异常分数,要么是二进制标签。
8.5.1、Anomaly Score
异常分数描述了每个数据点的异常程度。
可以根据异常分数对数据实例进行排序,并且选择特定于领域的阈值(通常称为决策分数)来识别异常。
8.5.2、Labels
比异常分数多一步,通过排序,和阈值对齐标记数据实例。
9、Applications of Deep Anomaly Detection
9.1 Intrusion Detection
入侵检测(略)
9.2 Fraud Detection
欺诈检测(略)
9.3 Malware Detection
恶意软件检测(略)
9.4 Medical Anomaly Detection
医疗异常检测(略)
9.5 Deep learning for Anomaly detection in Social Networks
社交网络中异常检测的深度学习(略)
9.6 Log Anomaly Detection
日志异常检测(略)
9.7 Internet of things (IoT) Big Data Anomaly Detection
物联网大数据异常检测(略)
9.8 Industrial Anomalies Detection
工业异常检测(略)
9.9 Anomaly Detection in Time Series
时序中的异常检测(略)
9.9.1 Uni-variate time series deep anomaly detection
单变量时间序列深度异常检测
repository2提供并维护了一元和多元时间序列数据基准异常检测算法的行业标准工具和数据集列表(基于深度学习和非深度学习)。
repository2https://github.com/rob-med/awesome-TS-anomaly-detection
表16说明了用于单变量时间序列数据中异常检测的各种深度架构。
9.9.2 Multi-variate time series deep anomaly detection
多变量时间序列深度异常检测
基于RNN和LSTM的方法3在检测多变量时间序列数据集中的可解释异常方面表现良好。
DeepAD是Buda等人[2018]提出的基于深度学习的多元时间序列异常检测通用框架。
表17说明了多变量时间序列数据中用于异常检测的各种深度架构。
9.10 Video Surveillance
视频监控(略)
10、Deep Anomaly Detection (DAD) Models
10.1 Supervised deep anomaly detection
有监督较无监督性能更优。但由于缺乏可用的有标签的训练数据,因此不如半监督或者无监督方法受欢迎。
假设:深度监督学习方法依赖于分离数据类,而非监督技术侧重于解释和理解数据的特征。
一般来说,基于监督深度学习的异常检测分类方案有两个子网络,一个是特征提取网络,另一个是分类网络。
**计算复杂性:**基于技术的深度监督异常检测方法的计算复杂性取决于输入数据维数和使用反向传播算法训练的隐藏层的数量。
优点:
- 模型精度高
- 基于分类模式,测试阶段速度快
缺点:
- 需要精确的标签
- 如果特征空间高度复杂和非线性,无法将正常数据与异常数据分开
10.2 Semi-supervised deep anomaly detection
半监督,假设只有正常数据一类有标签,半监督模型如表20所示:
优点:
- 半监督学习模式下的生成对抗网络(GANs)有很大的前景。
10.3 Hybrid deep anomaly detection
在深度混合模型中,在深度模型中学习的代表性特征被输入到传统算法中,如单类径向基函数、支持向量机(SVM)分类器。
模型如表21所示:
10.4 One-class neural networks (OC-NN) for anomaly detection
用于异常检测的一类神经网络(略)
10.5 Unsupervised Deep Anomaly Detection
无监督机器学习是基础机器学习研究和工业应用中的一个重要研究领域。
自动编码器是用于异常检测的基本无监督深度架构
假设:
- 在潜在空间中,正常数据的区域和异常数据的区域可以分开
- 数据集中大部分都是正常实例
- 无监督异常检测算法根据数据集的内在属性(如距离或密度)生成数据实例的异常值分数。
优点:
- 学习固有的数据特征,将正常数据与异常数据分开。可以识别数据中的共性
- 不需要打标签
缺点:
- 在复杂高维空间中学习数据的共性通常很有挑战
- 使用自动编码器时,选择合适的压缩程度,即降维,通常是一个超参数,需要调整以获得最佳结果。
- 对噪声数据敏感
10.6 Miscellaneous Techniques
杂项技术(略)
11 Deep neural network architectures for locating anomalies
11.1 Deep Neural Networks (DNN)
11.2 Spatio Temporal Networks (STN)
时空网络由深度神经结构组成,结合了神经网络和时空结构来提取时空特征。时间特征(通过对近时间点之间的相关性进行建模)、空间特征(通过本地CNN对本地空间相关性进行建模)被证明在检测异常值方面是有效的(Lee等人[2018],SZEKéR[2014],聂等人[2018],Dereszynski和Dietrich[2011])。
11.3 Sum-Product Networks (SPN)
和积网络
11.4 Word2vec Models
Word2vec是一组用于产生单词嵌入的深度神经网络模型(Mikolov等人[2013])。这些模型能够捕捉数据实例中的顺序关系,例如句子、时间序列数据。
11.5 Generative Models
生成模型旨在学习精确的数据分布
两种最常见和最有效的生成方法是变分自动编码器(VAE)(金马和韦林25 [2013])和生成对抗网络(甘)(古德费勒等人[2014a,b])
GAN体系结构的一种变体,称为对抗式自动编码器(AAE) ( Makhzani等人[2015]),它使用对抗式训练将任意先验强加于在自动编码器的隐藏层中学习的潜在代码,也可以有效地学习输入分布
11.6 Convolutional Neural Networks
对基于CNN的异常检测框架的评估目前仍然是一个活跃的研究领域(Kwon等人[2018])。
11.7 Sequence Models
递归神经网络(RNNs)(威廉姆斯[1989])被显示为捕捉时间序列数据的特征。
RNNs的局限性在于,它们不能捕捉时间步长增加时的上下文,为了解决这个问题,引入了长短期记忆(Hochreiter和Schmidhuber [1997])网络,它们是一种特殊类型的RNNs,由存储单元组成,可以存储关于先前时间步长的信息。门控循环单元(Cho等人[2014]) (GRU)类似于LSTMs,但使用一组门来控制信息流,而不是单独的存储单元
11.8 Autoencoders
当仅在正常数据实例上训练自动编码器时(这在异常检测任务中占大多数),自动编码器不能重构异常数据样本,因此产生大的重构误差。产生高残差的数据样本被认为是异常值。
自动编码器体系结构的选择取决于数据的性质,卷积网络是图像数据集的首选,而基于长短期记忆()的模型往往会为序列数据产生良好的结果。将卷积层和LSTM层相结合来重建输入图像的努力被证明在检测数据中的异常方面是有效的。组合模型的使用,如门控递归单元自动编码器(-AE)、卷积神经网络自动编码器(-AE)、长短期记忆()自动编码器(-AE),消除了准备手工制作特征的需要,并便于在异常检测任务中使用预处理最少的原始数据。