[21′ ICLR] EXPLAINABLE DEEP ONE-CLASS CLASSIFICATION (FCDD) 핵심 리뷰

This entry is part 6 of 40 in the series Anomaly Detection

내용 요약

Deep One-Class Classification 방식에 Fully Convolutional Network를 적용한 Anomaly Detection 방법론을 제안합니다. Transposed Convolution을 사용한 Heatmap을 이용하여 Explainable 한 모델을 제작합니다.

1. 들어가며

이번 글에서는 2021년 ICLR에 발표된 EXPLAINABLE DEEP ONE-CLASS CLASSIFICATION 논문을 리뷰합니다. 이 논문은 FCDD라고 불리며, 이번 글에서도 FCDD라고 지칭하겠습니다. Anomaly Detection에 관한 기본적인 내용은 Anomaly Detection에 관한 모든 것 글을 참고해주세요.

2. 제안 방법

바로 제안 방법을 살펴보겠습니다.

image 51
그림1. FCDD

2-1. Deep one class classification

FCDD는 큰 틀에서 봤을 때 one class classification 모델에 해당합니다. Normal feature들이 center c를 중심으로 hypersphere를 형성하도록 학습하는 방법입니다. 가장 대표적인 모델로는 Deep SVDD가 있습니다. loss는 다음과 같습니다.

loss-function
그림2. FCDD Loss Function
  • c : normal feature center (dim : d)
  • 𝜙 : neural network (output dim : d)
  • h : huber loss
huber-loss
그림3. Huber Loss

해석해보면 input data가 normal 일 때는 (y=0)의 output이 c가 나오고, 반대로 unnormal 일 때는 (y=1) 최대한 커지는 방향으로 학습함을 알 수 있습니다.

2-2. Fully convolutional architecture

이때 FCDD는 neural network로 fully convolutional network (FCN)을 사용합니다. FCN은 fully connected layer 없이 convolution 연산만으로 이루어진 모델입니다. FCN의 주요 특징 중 하나는 모든 연산이 convolution으로 이루어져 있기 때문에 spatial information이 보존된다는 것입니다.

2-3. Fully convolutional data description

이제 위의 loss 식을 FCN을 사용하여 다시 적으면 다음과 같습니다.

FCN-포함-loss-function
그림4. FCN 포함 Loss Function
  • 𝜙 : FCN (dim : c*h*w -> u*v)
  • A : huber loss
FCN-포함-huber-loss
그림5. FCN 포함 Huber Loss

이때 loss 자체가 normal data에 대해서는 A를 최소화하고 unnormal에 대해서는 A를 최대화하도록 학습했기 때문에 test단계에서는 A자체를 anomal score로 사용합니다. 이때 위의 loss를 학습하기 위해서는 anomal data가 필요합니다. Anomal data로는 ImageNet 같은 외부 데이터를 사용합니다. (outlier exposure)

2-4. Heatmap upsampling

이제 explainable 부분을 만들 차례입니다. FCDD를 통해 나온 feature map의 resolution은 u*v로, 기존의 h*w보다 작기 때문에 heatmap을 구하려면 upsampling이 필요합니다. 이를 위해서는 transposed convolution을 사용합니다.

heatmap-upsampling
그림6. Heatmap Upsampling

3. 실험 결과

다음은 이렇게 제안한 방법의 실험 결과를 살펴보겠습니다.

3-1. ImageNet, Fashion-MNIST, CIFAR10

먼저 ImageNet, Fashon-MNIST, CIFAR10 데이터셋의 anomaly detection 실험 결과입니다.

ImageNet-Fashion-MNIST-CIFAR10-결과
그림7. ImageNet / Fashion-MNIST / CIFAR10 실험 결과

비교 방법론들은 다음과 같습니다.

  • GEO : [NIPS 2018] Deep Anomaly Detection Using Geometric Transformations
  • Geo+ : [NIPS 2019] Using self-supervised learning can improve model robustness and uncertainty
  • DSVDD : Deep SVDD : [ICML 2018] Deep One-Class Classification
  • Deep SAD : [ICLR 2020] Deep semi-supervised anomaly detection

3-2. mvTec

다음은 mvTec 데이터셋에 대한 anomaly detection 실험 결과입니다.

mvTec-결과
그림8. mvTec 실험 결과

비교 방법론들은 다음과 같습니다.

  • AE-SS, AE-L2 : [CVPR 2019] MVTec AD— A Comprehensive Real-World Dataset for Unsupervised Anomaly Detection
  • AnoGAN : [IPMI 2017] Unsupervised Anomaly Detection with Generative Adversarial Networks to Guide Marker Discovery
  • CNNFD : [Sensors 2018] Anomaly detection in nanofibrous materials by CNN-based selfsimilarity
  • VEVAE : [CVPR 2020] Towards visually explaining variational autoencoders
  • SMAI : [BMVC 2020] Superpixel masking and inpainting for selfsupervised anomaly detection
  • GDR : [ICLR 2020] Iterative energy-based projection on a normal data manifold for anomaly localization
  • P-Net : [ECCV 2020] Encoding structure-texture relation with p-net for anomaly detection in retinal images

mvTec 데이터셋은 1번 실험의 데이터셋과는 달리 anomaly data가 normal data와 미세한 차이만 있습니다. 따라서 ImageNet 같은 데이터셋을 outlier exposure로 사용하는 건 적절하지 않습니다. 그래서 mvTec에 맞도록 synthetic anomaly를 만들어 사용했습니다.

mvtec-synthetic-anomaly
그림9 mvtec Synthetic Anomaly

방식은 confetti noise를 사용했습니다.

Series Navigation<< [20′ ACCV] Patch SVDD : Patch-level SVDD for Anomaly Detection and Segmentation[Reconstruction 방식의 Anomaly Detection] >>
0 0 votes
Article Rating
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x
Scroll to Top