GANomaly

GANomaly: Semi-Supervised Anomaly Detection via Adversarial Training

  1. 动机

    • Anomaly detection
      • highly biased towards one class (normal)
      • insufficient sample size of the other class (abnormal)
    • semi-supervised learning
      • detecting the unknown/unseen anomaly case
      • trained on normal samples
      • tested on normal and abnormal samples
    • encoder-decoder-encoder
      • minimizing the distance between the images
      • and the latent vectors
      • a larger distance metric
  2. 论点

    • supervised approaches heavily depend on large, labeled datasets
    • Generative Adversarial Networks (GAN) have emerged as a leading methodology across both unsupervised and semi-supervised problems
    • reconstruction-based anomaly techniques
      • Overall prior work strongly supports the hypothesis that the use of autoencoders and GAN
  3. 方法

    • GAN
      • unsupervised
      • to generate realistic images
      • compete
        • generator tries to generate an image, decoder- alike network, map input to latent space
        • discriminator decides whether the generated image is a real or a fake, classical classification architecture, reading an input image, and determining its validity
    • Adversarial Auto-Encoders (AAE)

      • encoder + decoder
      • reconstruction: maps the input to latent space and remaps back to input data space
      • train autoencoders with adversarial setting
    • inverse mapping

      • with the additional use of an encoder, a vanilla GAN network is capable of learning inverse mapping
    • model

      • learns both the normal data distribution and minimizes the output anomaly score
      • two encoder, one decoder, a discriminator
      • encoder
        • convolutional layers followed by batch-norm and leaky ReLU() activation
        • compress to a vector z
      • decoder
        • convolutional transpose layers, ReLU() activation and batch-norm
        • a tanh layer at the end
      • 2nd encoder
        • with the same architectural
        • but different parametrization
      • discriminator
        • DCGAN discriminator
      • Adversarial Loss
        • 不是基于GAN的traditional 0/1 ouput
        • 而是选了一个中间层,计算real/fake(reconstructed)的L2 distance
      • Contextual Loss
        • L1 yields less blurry results than L2
        • 计算输入图像和重建图像的L1 distance
      • Encoder Loss
        • an additional encoder loss to minimize the distance of the bottleneck features
        • 计算两个高维向量的L2 distance
        • 在测试的时候用它来scoring the abnormality