Structured Energy Based Models for Anomaly Detection论文阅读


 本文是一篇基于Deep Structured Energy方法来进行异常检测的文章,该模型的主要特点是其可以通用到各种类型的dataset
上面,包括spatial data(音频序列),static data(特定的输入向量),sequential data(图像等)。该模型的训练算法是基于一种score matching算法,其是通过EBM网络连接了一个autoencoder来替代比较繁琐,计算量较大的复杂采样方法。本文提出了两套异常处理的检测准则——energy score和reconstruction error来作为误差评分标准。我们将主要从行文逻辑,算法理论,模型应用三个方面来对这篇文章进行梳理。

逻辑

 异常检测问题的核心是如何找到一个模型分布,比较有效地模拟数据自然产生的过程。从而来分辨我们所需要检测的样本是异常的概率。
 比起基础的PCA等传统算法,学术界更加倾向于使用深度学习的算法来进行异常检测,因为深度神经网络能够抽象出更多的特征。但是深度学习网络在异常检测方面还存在着如下的一些问题:
(1)如何利用一个深度学习模型有效地模拟数据的产生过程。
(2)如何构造一个模型能够比较广泛地应用于各种类型的数据(static data,sequential data,spatial data)
(3)如何构造一个比较高效的训练算法让其能够更好的应用。
(4)如何选择一个统计推理准则应用于异常检测。
 比较早提出的深度学习模型是EMBs模型,该模型应用了一种负对数概率 p ( x ; θ ) = e − E ( x ; θ ) Z ( θ ) p(x;\theta)=\frac{e^{-E(x;\theta)}}{Z(\theta)} p(x;θ)=Z(θ)eE(x;θ)来作为网络的能量来进行概率密度估计,但是EMBs的缺点一方面是 Z ( θ ) = ∫ x e − E ( x ; θ ) Z(\theta)=\int_x e^{-E(x;\theta)} Z(θ)=xeE(x;θ)是很难求的,其只能通过MCMC(蒙特卡洛马尔科夫采样方法,如吉布斯采样法)来进行求解。另一方面,提出的EMBs还不太成熟,对于不同的数据类型其要构造不同的算法和网络,比较复杂。
 后续有许多改进算法的提出,比如score matching算法,简化了用MLE 进行优化的计算部分。还有使用了VAE(变分编码器算法),相对于蒙特卡洛估计方法,VAE模型的计算更加简单一些,其只需要用简单的SGD模型来进行参数优化。

算法理论

EBMs

 EBMs算法已经在上面简单介绍过,其能量表述形式为: p ( x ; θ ) = e − E ( x ; θ ) Z ( θ ) p(x;\theta)=\frac{e^{-E(x;\theta)}}{Z(\theta)} p(x;θ)=Z(θ)eE(x;θ)

RBM算法

 RBM算法采用了如下的能量表达形式: E ( x ; θ ) = 1 2 ∥ x − b ′ ∥ 2 2 − ∑ j = 1 K g ( W j T x + b j ) (1) E(x;\theta)=\frac{1}{2} \|x-b^{'}\|_2^2-\sum_{j=1}^Kg(W_j^Tx+b_j) \tag{1} E(x;θ)=21xb22j=1Kg(WjTx+bj)(1)
其将W和b作为网络训练参数,利用多个RBM网络的组合可能能够获得比较好的训练效果,但是相比而言,RBM神经网络依然比deterministic neural network更加困难一些。

Denoising Autoencoders and Score Matching算法

 比较典型的Autoencoders优化如下算式:
∑ i = 1 N ∥ x i − f ( x i ; θ ) ∥ 2 2 (2) \sum_{i=1}^N \|x_i-f(x_i;\theta)\|_2^2\tag{2} i=1Nxif(xi;θ)22(2)
其中 f ( ; θ ) f(;\theta) f(;θ)是个reconstruction function
还有一种比较有趣的版本是:
∑ i = 1 N E ϵ ∥ x i − f ( x i + ϵ ; θ ) ∥ 2 2 (3) \sum_{i=1}^NE_{\epsilon}\|x_i-f(x_i+\epsilon;\theta)\|_2^2\tag{3} i=1NEϵxif(xi+ϵ;θ)22(3)
这里给输入样本添加了一个高斯扰动。( ϵ ∼ N ( 0 , σ 2 I ) ) \epsilon\sim N(0,\sigma^2I)) ϵN(0,σ2I))
DAE方法和RBM方法是有联系的,对RBM算法使用score matching算法进行估计,SM算法是MLE算法的一种替代,MLE是直接最大化样本的似然概率,而SM算法则是对如下误差函数进行最小化:
J ( θ ) = 1 2 ∫ x p x ( x ) ∥ ψ ( x ; θ ) − ψ x ( x ) ∥ 2 2 d x (4) J(\theta)=\frac{1}{2}\int_x p_x(x)\| \psi(x;\theta)-\psi_x(x)\|_2^2dx\tag{4} J(θ)=21xpx(x)ψ(x;θ)ψx(x)22dx(4)
其中 p x ( x ) p_x(x) <

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值