ALAD

Adversarially Learned Anomaly Detection

IEEE ICDM 2018
paper
code

研究动机(主要解决的问题)

1、developing effective methods for complex and high-dimensional data remains a challenge

对复杂的高维的数据难处理

2、The need to solve an optimization problem for every test example makes this method impractical on large datasets or for real-time applications

优点:effective, but also efficient at test time.

框架方法

在这里插入图片描述

Loss & Anomaly Score

loss
V ( D x z , D x x , D z z , E , G ) = V ( D x z , E , G ) + V ( D x x , E , G ) + V ( D z z , E , G ) \begin{array}{l}{V\left(D_{x z}, D_{x x}, D_{z z}, E, G\right) = \quad V\left(D_{x z}, E, G\right)+V\left(D_{x x}, E, G\right)+V\left(D_{z z}, E, G\right)}\end{array} V(Dxz,Dxx,Dzz,E,G)=V(Dxz,E,G)+V(Dxx,E,G)+V(Dzz,E,G)

Anomaly Score
A ( x ) = ∥ f x x ( x , x ) − f x x ( x , G ( E ( x ) ) ) ∥ 1 A(x)=\left\|f_{x x}(x, x)-f_{x x}(x, G(E(x)))\right\|_{1} A(x)=fxx(x,x)fxx(x,G(E(x)))1

A(x) 表示D的置信度,样本是都被很好的encoder或者reconstructed by generator。值越大表示越异常。

实验

数据集:

  1. KDDCup99
  2. Arrhythmia

参数设置:

KDDCup99 :20%的异常

Arrhythmia :15%的异常

use 80% of the whole official dataset for training and keep the remaining 20% as our test set.

We further remove 25% from the training set for a validation set and discard anomalous samples from both training and validation sets (thus setting up a novelty detection task).

评价方法:

Precision, Recall, F1 score

baselines:

  1. One Class Support Vector Machines (OC-SVM)

    Support vector method for novelty detection 1999

  2. Isolation Forests (IF)

    Isolation forest 2008

  3. Deep Structured Energy Based Models (DSEBM)

    Deep structured energy based models for anomaly detection 2016

  4. Deep Autoencoding Gaussian Mixture Model (DAGMM)

    Deep autoencoding gaussian mixture model for unsupervised anomaly detection 2018

  5. AnoGAN

    Unsupervised anomaly detection with generative adversarial networks to guide marker discovery 2017

实验结果
在这里插入图片描述

总结

我们提出了一种基于GAN的异常检测方法ALAD,它在训练期间从数据空间到潜在空间学习编码器,使得它在测试时比单独发布的GAN方法更有效。 此外,我们还采用了额外的鉴别器来改进编码器,以及已经发现可以稳定GAN训练的频谱归一化。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这个错误通常是由于 Vue.js 的版本过低所导致的。在 Vue.js 2.5.0 之前的版本中,Vue.js 在服务器渲染时会检查 `$isServer` 属性来判断当前是否处于服务器环境,但是该属性在客户端渲染时是 `null`,因此会导致该错误。 这个错误出现在 Element UI 中,可能是由于你使用了 Element UI 的服务器端渲染功能,而在客户端渲染时出现了 `$isServer` 属性为 `null` 的情况所导致的。如果你使用 Element UI 的服务端渲染功能,应该在服务器端生成 HTML、CSS 和 JavaScript,然后将其发送到客户端。在客户端,Vue.js 将接管应用程序并进行客户端渲染。 在使用 Vue.js 服务器端渲染时,如果你使用了类似于 `process.browser` 或 `$isServer` 的代码来检查是否在客户端运行,就会出现这种错误。因为在客户端渲染时,这些变量是 `undefined`,而不是 `null`。因此,你应该使用 `typeof window !== 'undefined'` 来检查是否在客户端运行,而不是使用 `$isServer` 属性。 如果你不需要使用服务器端渲染,可以在 `nuxt.config.js` 中将 `ssr` 属性设置为 `false` 来禁用服务器端渲染: ```javascript export default { // ... render: { ssr: false } } ``` 这将禁用服务器端渲染,并在客户端进行渲染,从而解决该问题。但是需要注意的是,这可能会影响你的应用性能和 SEO。如果你需要服务器端渲染,你可以升级 Vue.js 和 Element UI,并使用上述的方法来避免使用 `$isServer` 属性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值