【异常检测】DAGMM:结合深度自编码器器和GMM的端到端无监督网络(一):论文解读

论文来自于ICLR2018,思路非常有意思。花时间分别从模型原理和如何实现并使用它的角度整理出两篇博客。

论文链接

异常检测是区分样本集中的少量异常样本,一般有两个特点:

  • 异常样本很少,异常:正常分布很不均衡
  • 由于应用范围涵盖很多方面,往往很难获取标签,所以一般都是采用无监督和半监督的方式学习。

本质上,可以认为异常检测的一种思路是通过密度估计找到异常样本的过程,诸如一些传统的聚类算法如K-means,GMM可以被用来异常检测,但这些方法很难推广到高维和多变量数据上。

同时也有一些用深度AE网络做的异常检测,它的前提假设是异常样本在Encoder降维编码后很难再由Decoder重构出来,因为在一批训练数据中,大部分都是由正常样本训练出来的网络参数,异常样本的重构误差会比正常样本的大很多。
在论文中作者也做了相关实验,如下图:
在这里插入图片描述
上图中,横轴是应用自编码器将数据压缩到一维空间的坐标,纵轴是数据点的重构误差。图中蓝色点是正常数据点,红色是异常数据点。显然,从图中我们可以看出,右上角这部分异常数据点可以通过重构误差跟其他点区别开来,而左下角这部分异常点则可以在低维特征空间(论文中压缩到了一维)很明显的跟其他点区分开。这反应出这样一个信息:自编码器中间隐藏层特征(即压缩后的特征)和最后的重构误差对于识别异常都是有用的。这是也论文中关键一步的实验依据

从普遍意义上来说,对于高维数据的处理,传统方法分两步,先对高维数据进行降维,将原始数据映射到低维空间,然后在这个低维空间内做密度估计。这种方式存在的问题是:

  • 这两个步是相互独立的过程,高维数据降维后的表征很难保留足够多的关键信息。
  • 因为这两步是相互独立的,最终可能导致模型陷入局部最优的境地,试想降维过程完全独立于后面密度估计过程,并不知道为后面的密度估计过程保留哪些关键信息。

在DAGMM中,巧妙的将DAE的降维和密度估计过程结合在一起,进行端到端的联合训练。联合训练其实是借助了EM算法的思想,通过模型的多轮训练达到极大化似然函数的效果,而GMM的参数(即EM中E步所求的隐变量)则是通过DAE网络获得,二者结合在一起互相达到最优。DAGMM模型相比于其他SOTA算法在性能表现上相当惊艳了。

模型结构:

在这里插入图片描述
上图为DAGMM的整体网络结构,分两个子结构,左边部分为Compression network,是一个深度自编码网络,通过这个自编码我们可以得到输入x的低维表示 z_c,同时得到输入和重构输出的重构误差z_r。z_c和z_r拼接成z作为Estimation network的输入,经过多层神经网络的计算,得到的输出是一个softmax概率分布,代表各个高斯模型的权重概率,也就是来取代EM算法求解GMM中单高斯分布系数的分布。

关于重构误差,论文中采用的欧式距离、余弦相似度这两度量结合的方式计算重构误差。也就是实际上z是由[z_c, z_cosine, z_euclidean] concat得到。具体为啥采用这两种误差度量方法,附录中有讲到,作者做实验时发现,在原始维度为20维的数据集上,大部分异常样本在低维空间(论文中讲20维降低到1维)上与正常样本有明显的分离,但是存在部分异常样本隐藏在正常样本内,同时这些异常样本在原始的20维空间内,与正常样本又有明显的不同。于是作者计算了所有样本的L2重构误差(欧式距离)。

GMM参数计算:

在得到 N 个样本分别归属不同单高斯分布的概率之后,我们可以用来估计 GMM 的几个重要参数:均值、方差、协方差矩阵。这步跟常规的高斯混合模型的参数更新过程无异。
在这里插入图片描述
到这里我们可以看到,Compression network + Estimation network 的作用就是模拟 GMM 得到样本归属各个 component 的概率,这部分信息进而用来更新 GMM 的参数,计算得到似然函数E(z)。而似然函数E(z)是目标函数的一部分,通过优化目标函数,估计网络的参数也会得到更新。

目标函数:

在这里插入图片描述
在这里插入图片描述
第一项:自编码网络的重构误差
第二项:高斯混合模型的似然函数,可以方向更新自编码网络的参数,同时自编码网络又能更新GMM中的均值,协方差等。(为了统一朝着最小化loss的方向优化,在似然函数前添加了一个负号)
第三项:这项的作用是防止 GMM 中的协方差矩阵的对角线上的值变为 0 并最终导致矩阵不可逆。

在测试过程中,可以通过模型计算E(z)的值,我们希望值越小越好(似然函数前添加了负号),值越大,越有可能异常,我们可以根据训练集中的数据获得先验阈值,来判断预测样本是否发生异常。

参考:
[1]. 《Deep Autoencoding Gaussian Mixture Model for Unsupervised Anomaly Detection》.(https://openreview.net/pdf?id=BJJLHbb0-)
[2]. https://blog.csdn.net/Mr_tyting/article/details/100062313

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值