基于钉板分布稀疏变分自编码器的异常检测算法研究
2023-01-09陈华华陈哲
陈华华,陈哲
基于钉板分布稀疏变分自编码器的异常检测算法研究
陈华华,陈哲
(杭州电子科技大学通信工程学院,浙江 杭州 310018)
异常检测由于其广泛的应用一直是数据挖掘中一个重要的研究分支,它有助于研究人员获得重要的信息进而对数据做出更好的决策。提出了一种基于钉板分布稀疏变分自编码器的异常检测模型。首先,使用离散−连续混合模型钉板分布作为变分自编码器的先验,模拟隐变量所在空间的稀疏性,得到数据特征的稀疏表示;其次,以所提出的自编码器构建深度支持向量网络,对特征空间进行压缩,并采用最优超球体区分正常数据和异常数据;再次,以数据特征和超球体中心之间的欧氏距离完成异常检测;最后,在基准数据集MNIST(modifiednational institute of standards and technology database)和Fashion-MNIST上的实验评估表明,与现存的异常检测算法相比,本文所提出的算法具有更好的检测效果。
异常检测;变分自编码器;钉板分布;深度支持向量网络
0 引言
异常数据在统计上具有远离大多数数据点的特点[1],因此也被称为离群值。异常检测具有广泛的应用领域,如互联网金融[2]、网络入侵检测[3]、医疗图像辅助病症诊断[4]、工业设备运行监控[5]、智能安防[6]、自动驾驶[7]等。随着数据规模和维度的增长,研究有效的异常检测算法对众多领域而言具有重要的现实意义,一直是国内外学者研究的焦点。
早期异常检测方法通常采用基于特征空间中数据的局部密度来确定离群点,其中比较经典的方法是局部离群因子(local outlier factor,LOF)算法[8],该方法根据数据点与其邻域内数据点在可达距离、局部可达密度等因素计算局部离群因子从而判断数据是否异常,这种方法的缺点是算法复杂度较高。Liu等[9]提出了基于集成学习的孤立森林(isolation forest,IF)算法,利用二叉搜索树结构建立孤立样本,对样本点的孤立计算异常值,异常点由于数量少且具有与大部分样本的疏离性往往会被更早地孤立出来,但是该方法只能检测全局异常的情况,并且不适于特别高维的数据。
近年来,随着大数据技术的发展,数据的维度越来越高,而深度神经网络通过多层结构提取数据的特征表示,在大规模高维数据中越来越体现出其优于传统机器学习的良好性能。得益于深度学习的广泛应用和快速发展,越来越多的研究者利用深度网络进行异常检测。Erfani等[10]提出了一种混合模型,将无监督深度置信网络(deep belief network,DBN)训练为降维算法,将数据转换为低维特征集,并从DBN学到的特征中训练出单类支持向量机(one-class support vector machine,OC-SVM)。但是DBN采用贪婪算法逐层训练参数,可能导致解非全局最优,于是研究者开始转向采用自编码器和生成对抗网络等深度网络应用于异常检测。Li等[11]利用胶囊网络构建自编码器和分类器网络,根据预测概率和重建误差检测异常。Zimmerer等[12]提出了一种基于变分自编码器的异常检测方法,并使用模型内潜在表示偏差和重建误差进行异常检测。Inderjeet将6层自编码网络的第2、3层改用胶囊网络结构对数据进行编码,利用重建误差检测异常[13]。编码器可以将复杂的高维数据映射到低维,但是其潜在空间往往会产生许多不携带任何信息的潜在维度,导致获取捕捉观测数据复杂性的编码产生问题[14]。Schlegl等[15]提出一种深度卷积生成对抗网络获取医学图像的特征,并使用一种基于从图像空间到潜在空间映射的异常评分方案检测图像异常。但是,有学者指出在有较少异常数量的情况下深度生成模型的表现没有近邻等传统方法表现出色[16]。
目前大多数的异常检测算法通过深度神经网络从数据中提取特征,然后使用重建误差或概率等启发式方法检测异常。因此,设计从大规模数据中提取判别特征的深度网络是至关重要的。考虑到稀疏编码可以提高特征表示的质量,本文提出了一种基于稀疏变分自编码器的异常检测模型,该模型优化了钉板分布(spike and slab distribution)先验。钉板分布可以灵活地模拟[17]稀疏分布阵列,使它们适合于许多类型的数据,因为它由一个二进制分量和一个连续分量组成,通过将两个分量相乘产生一个随机变量,其值恰好为零或从控制连续分量的分布中得出。本文提出使用变分自编码器的钉板分布先验模拟数据潜在的存在或缺失,该模型将深度支持向量网络与钉板先验相结合,为异常检测提供了一个框架。
1 异常检测模型
1.1 钉板分布
1.2 稀疏变分自编码器
变分自编码器[19]采用变分推理解决模型优化问题,通过将自编码网络与概率统计结合,学习数据的特征分布,是目前深度学习领域的一种重要生成模型。变分自编码器通过优化目标函数的下界来达到训练模型的目的,它的目标函数变分下界为:
式(5)可进一步改写为:
变分下界由两项组成:第一项是先验项,它鼓励最小化编码分布和先验之间的KL差异;第二项是重建项,它在识别函数下最大化对数据可能性的期望。
本文引入钉板分布先验以增加隐变量的稀疏性,可以得到隐变量的先验概率密度:
与标准VAE(variational auto-encoder)相同,通过最大化变分下界来最大化样本的边缘概率分布,经过推导得到稀疏变分自编码器的变分下界为:
1.3 深度支持向量网络
受支持向量数据描述的启发,本文通过训练一个神经网络把网络输出拟合到最优超球体中,由于网络把输出紧密地映射到球体中,因此它能提取数据特征分布变化的共同因素。本文采用的深度支持向量网络目标函数为:
1.4 网络模型
本文提出的基于钉板分布稀疏变分自编码器的异常检测模型网络结构如图1所示。
1.5 异常检测
2 实验结果与分析
2.1 实验配置及数据集
为了验证方法的有效性,对方法进行了验证。采用的计算机配置和编程环境如下:Intel Core i5-7300HQ@2.50GHzCPU,内存为8 GB,Windows10系统下的python3.6编译器,编程环境为TensorFlow和Keras,编程语言为Python。
本文使用深度神经网络的常见参数[21]搭建稀疏变分自编码器,由5个全连接层组成,网络结构如图1所示。其中编码网络的网络维度是D-500-500-2000-H,解码网络是编码网络的镜像,网络维度是H-2000-500-500-D,D、H、500、2 000均是全连接层的节点数,其中是输入维数,本文中=784。
图1 异常检测模型网络结构
2.2评价标准
本文使用曲线下面积(area under curve,AUC)评估异常检测模型性能。AUC是受试者工作特征(receiver operating characteristic,ROC)曲线下的面积。ROC由混淆矩阵得到,二分类的混淆矩阵见表1。其中,真阳性(true positive,TP)表示真值和预测值均为正常的样例;假阴性(false negative,FN)表示预测值为异常的正常样例;假阳性(false positive,FP)表示预测值为正常的异常样例;真阴性(true negative,TN)表示真值与预测值均为异常的样例。
表1 二分类的混淆矩阵
根据混淆矩阵以及式(14)、式(15)计算出伪阳率(false positive rate,FPR)和真阳率(true positive rate,TPR)。改变式(13)中的阈值,可以得到模型在不同阈值下的FPR和TPR值,将伪阳率作为横坐标,真阳率作为纵坐标,即得ROC曲线。考虑到正常、异常样本数量存在分布不均的情况,不适宜以准确率作为指标评估模型,而AUC兼顾了模型对正常样本和异常样本的分类能力,因此本文采用AUC评估异常检测模型。
2.3 消融实验
(1)编码器编码和解码器解码实验
为了验证本文算法所得数据特征的稀疏性,本文搭建了稀疏变分自编码器,并使用MNIST数据集和Fashion-MNIST数据集进行训练。MNIST数据集部分结果如图2所示,Fashion-MNIST数据集部分结果如图3所示,可以看出,本文提出的稀疏变分自编码器能够对数据稀疏编码,实现了从图像数据到稀疏隐变量的映射;解码器对数据进行较好地重建,实现从稀疏隐变量到图像的重建。
(2)隐变量的维度对重构图像的影响
稀疏自编码器不仅将复杂的高维数据映射到低维,同时隐变量的稀疏性对维度是否携带信息进行了区分。不为0的维度携带了图像中的特征信息,为0的维度则不携带特征信息。改变隐变量中的非零元素,重建图像表现出不同的特性。例如,隐变量中非零维度值的变化对重建图像的影响如图4所示,图4(a)重建图像数字3的字体粗细发生改变,说明箭头标记的维度携带了字体粗细这一特性信息;图4(b)重建图像从平底鞋逐渐变为高跟鞋,说明箭头标记的维度携带了鞋底的形状信息;图4(c)重建图像从长袖逐渐变为短袖,说明箭头标记的维度携带了袖子的长度信息。
图2 MNIST数据集部分结果
图3 Fashion-MNIST数据集部分结果
图5 不同实验参数组合(H,)下的实验结果
2.4 异常检测实验
MNIST数据集在各种异常检测方法下的实验结果对比见表2,展示了本文算法与OC-SVM[24]、IF[9]、DCAE(deep convolutional auto-encoder)[25]、ANOGAN(anomaly detection with generative adversarial network)[15]等算法在MNIST数据集上的实验结果,加粗显示代表效果优于其他算法。可以看出,本文算法的平均AUC值较其他优秀的异常检测算法有显著的提高,表明本文算法在MNIST数据集中实现了较好的检测效果,能够进行有效的异常检测。
Fashion-MNIST数据集在各种异常检测方法下的实验结果对比见表3。可以看出,本文算法的平均AUC值较其他优秀的异常检测算法有显著的提高,这说明本文算法在Fashion-MNIST数据集中实现了较好的检测效果,能够进行有效的异常检测。
表2和表3的结果是模型由所有训练集样本参与训练、所有测试样本参与测试的结果。本文参照文献[26]的做法,由训练集中80%的正常样本作为训练样本,剩余的20%正常样本参与测试,并且从测试集中随机抽取异类测试样本,使其构成新的测试集的一半。在MNIST和Fashion-MNIST数据集上和GPND(generative probabilistic novelty detection)[26]、ALOCC DR(adversarially learned one-class classifier for discrimination and reconstruction)[27]、ALOCC D(adversarially learned one-class classifier for discrimination)[27]、AEC(auto-encoder)[28]和OCGAN(one-class generative adversarial network)[29]方法进行了比较,80%正常样本作为训练样本的模型实验结果对比见表4。可以看出,本文算法具有更佳检测效果。
表2 MNIST数据集在各种异常检测方法下的实验结果对比
表3 Fashion-MNIST数据集在各种异常检测方法下的实验结果对比
本文还参照文献[30]的做法,在Fashion- MNIST中,改变异常样本在测试集中的不同占比,与GPND和GradCon(gradient constraint)[30]进行了性能比较,Fashion-MNIST集中异常样本在测试集不同占比下的实验结果对比见表5。可以看出,测试集在不同异常样本的占比下,本文方法具有更好的检测效果。
表4 80%正常样本作为训练的模型实验结果对比
由表2~表5知,本文算法具有较好的异常检测效果,并优于当前的一些异常检测算法。
表5 Fashion-MNIST集中异常样本在测试集不同占比下的实验结果对比
3 结束语
本文提出了一种基于稀疏变分自编码器和深度支持向量网络的异常检测算法,使用钉板分布作为变分自编码器的先验,模拟隐变量所在空间的稀疏性,得到数据特征的稀疏表示,并利用稀疏变分自编码器构建深度支持向量网络对特征空间进行压缩,以最优超球体区分正常数据与异常数据。实验结果表明本文算法优于其他优秀方法,实现了较好的异常检测效果。未来的工作可以设计更加高效的网络结构,进一步地提升特征提取能力以提高异常检测的效果,从而适用于更多复杂场景下的异常检测。
[1] HAWKINS D M. Identification of outliers[M]. London: Chapman and Hall, 1980.
[2] SHENH D, KURSUN E. Label augmentation via time-based knowledge distillation for financial anomaly detection[EB]. 2021.
[3] TUFAN E, TEZCAN C, ACARTÜRK C. Anomaly-based intrusion detection by machine learning: acase study on probing attacks to an institutional network[J]. IEEE Access, 9: 50078-50092.
[4] TSCHUCHNIGM E, GADERMAYR M. Anomaly detection in medical imaging: amini review[EB]. 2021.
[5] CUI Y J, LIU Z X, LIAN S G. A survey on unsupervised industrial anomaly detection algorithms[EB]. 2022.
[6] PATRIKARD R, PARATE M. Anomaly detection using edge computing in video surveillance system: review[J]. International Journal of Multimedia Information Retrieval, 2021, 11: 85-110.
[7] BOGDOLL D, NITSCHE M, ZÖLLNERJ M. Anomaly detection in autonomous driving: asurvey[EB]. 2022.
[8] JÖRG SANDER. LOF: identifying density-based local outliers[J]. Acm Sigmod Record, 2000, 29(2):93-104.
[9] LIU F T, TING K M, ZHOU Z H. Isolation forest[C]//Proceedings of 2008 Eighth IEEE International Conference on Data Mining. Piscataway: IEEE Press, 2008: 413-422.
[10] ERFANI S M, RAJASEGARAR S, KARUNASEKERA S, et al. High-dimensional and large-scale anomaly detection using a linear one-class SVM with deep learning[J]. Pattern Recognition, 2016, 58: 121-134.
[11] LI X Y, KIRINGA I, YEAP T, et al. Exploring deep anomaly detection methods based on capsule net[C]//Advances in Artificial Intelligence. Switzerland: Springer, 2020: 375-387.
[12] ZIMMERER D, KOHL S A A, PETERSEN J, et al. Context-encoding variational autoencoder for unsupervised anomaly detection[EB]. 2018.
[13] SINGH I, HEMACHANDRA N. Anomaly detection using capsule networks for high-dimensional datasets[EB]. 2021.
[14] TONOLINI F, JENSEN B S. MURRAY S R. Variational sparse coding[EB]. 2019.
[15] SCHLEGL T, SEEBÖCK P, WALDSTEIN S M, et al. Unsupervised anomaly detection with generative adversarial networks to guide marker discovery[C]//Information Processing in Medical Imaging. Switzerland: Springer, 2017: 146-157.
[16] ŠKVÁRA V, PEVNÝ T, ŠMÍDL V. Are generative deep models for novelty detection truly better? [EB]. 2018.
[17] SHEIKH A S, SHELTON J A, LÜCKE J. A truncated EM approach for spike-and-slab sparse coding[J]. Journal of Machine Learning Research, 2012, 15: 2653-2687.
[18] COURVILLE A , BERGSTRA J , BENGIO Y. Unsupervised models of images by spike-and-slab RBMs[EB]. 2011.
[19] KINGMA D P, WELLING M. Auto-encoding variational Bayes[EB]. 2013.
[20] TAX D M J, DUIN R P W. Support vector data description[J]. Machine Learning, 2004, 54(1): 45-66.
[21] VAN DER MAATEN L. Learning a parametric embedding by preserving local structure[J]. Journal of Machine Learning Research, 2009, 5: 384-391.
[22] LECUN Y, BOTTOU L, BENGIO Y, et al. Gradient-based learning applied to document recognition[J]. Proceedings of the IEEE, 1998, 86(11): 2278-2324.
[23] XIAO H, RASUL K, VOLLGRAF R. Fashion-MNIST: a novel image dataset for benchmarking machine learning algorithms[EB]. 2017.
[24] MANEVITZ L M, YOUSEF M. One-class SVMs for document classification[J]. Journal of Machine Learning Research, 2001, 2(12): 139-154.
[25] MAKHZANI A, FREY B J. Winner-take-all autoencoders[C]// Proceedings of Advances in Neural Information Processing Systems(NIPS). Montreal: Neural Information Processing Systems Foundation, Inc. 2015: 2791-2799.
[26] PIDHORSKYI S, ALMOHSEN R, ADJEROH D A, et al. Generative probabilistic novelty detection with adversarial autoencoders[C]//Proceedings of Advances in Neural Information Processing Systems(NIPS). Montreal: Neural Information Processing Systems Foundation, Inc. 2018:6822-6833.
[27] SABOKROU M, KHALOOEI M, FATHY M, et al. Adversarially learned one-class classifier for novelty detection[C]//Proceedings of 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Piscataway: IEEE Press, 2018: 3379-3388.
[28] SAKURADA M, YAIRI T. Anomaly detection using autoencoders with nonlinear dimensionality reduction[C]//MLSDA'14: Proceedings of the MLSDA 2014 2nd Workshop on Machine Learning for Sensory Data Analysis. 2014: 4-11.
[29] PERERA P, NALLAPATI R, XIANG B. OCGAN: one-class novelty detection using GANs with constrained latent representations[C]//Proceedings of 2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR). Piscataway: IEEE Press, 2019: 2893-2901.
[30] KWON G, PRABHUSHANKAR M, TEMEL D, et al. Back-propagated gradient representations for anomaly detection[C]//Proceedings of the European Conference on Computer Vision (ECCV). Heidelberg: Springer, 2020: 206-226.
Research on anomaly detection algorithm based on sparse variational autoencoder using spike and slab prior
CHEN Huahua, CHEN Zhe
School of Communication Engineering, Hangzhou Dianzi University, Hangzhou 310018, China
Anomaly detection remains to be an essential and extensive research branch in data mining due to its widespread use in a wide range of applications. It helps researchers to obtain vital information and make better decisions about data by detecting abnormal data. Considering that sparse coding can get more powerful features and improve the performance of other tasks, an anomaly detection model based on sparse variational autoencoder was proposed. Firstly, the discrete mixed modelspike and slab distribution was used as the prior of variational autoencoder, simulated the sparsity of the space where the hidden variables were located, and obtained the sparse representation of data characteristics. Secondly, combined with the deep support vector network, the feature space was compressed, and the optimal hypersphere was found to discriminate normal data and abnormal data. And then, the abnormal fraction of the data was measured by the Euclidean distance from the data feature to the center of the hypersphere, and then the abnormal detection was carried out. Finally, the algorithm was evaluated on the benchmark datasets MNIST and Fashion-MNIST, and the experimental results show that the proposed algorithm achieves better effects than the state-of-the-art methods.
anomaly detection, variational autoencoder, spike and slab distribution, deep support vector network
TP393
A
10.11959/j.issn.1000−0801.2022238
2022−03−10;
2022−08−11
陈华华,iseealv@hdu.edu.cn
浙江省“领雁”研发攻关计划项目(No.2022C03065)
陈华华(1975− ),男,博士,杭州电子科技大学副教授,主要研究方向为数字图像处理、计算机视觉和模式识别。
陈哲(1995− ),男,杭州电子科技大学硕士生,主要研究方向为异常检测。
The “Leading Goose” Technologies Research and Development Program of Zhejiang Province (No.2022C03065)