- Anomaly Detection 설명 – 정의, 특성, 활용 방안, 연구 흐름
- [One Class Classification 방식의 Anomaly Detection]
- [18′ ICML] Deep SVDD : Deep One-Class Classification
- [20′ ICLR] DEEP SEMI-SUPERVISED ANOMALY DETECTION (Deep SAD) 핵심 리뷰
- [20′ ACCV] Patch SVDD : Patch-level SVDD for Anomaly Detection and Segmentation
- [21′ ICLR] EXPLAINABLE DEEP ONE-CLASS CLASSIFICATION (FCDD) 핵심 리뷰
- [Reconstruction 방식의 Anomaly Detection]
- [17′ IPMI] AnoGAN : Unsupervised Anomaly Detection with Generative Adversarial Networks to Guide Marker Discovery
- [18′ ACCV] GANomaly : Semi-Supervised Anomaly Detection via Adversarial Training
- [20′ ECCV] Attention Guided Anomaly Localization in Images (CAVGA) 핵심 리뷰
- [21′ ICCV] Devide and Assemble : Learning Block-wise Memory for Unsupervised Anomaly Detection 핵심 리뷰
- [21′ ICCV] Learning Unsupervised Metaformer for Anomaly detection 핵심 리뷰
- [22′ CVPR] SSPCAB : Self-Supervised Predictive Convolutional Attentive Block for Anomaly Detection 핵심 리뷰
- [Pretrained Feature Matching 방식의 Anomaly Detection]
- [20′ Arxiv] SPADE : Sub-Image Anomaly Detection with Deep Pyramid Correspondences
- [20′ ICPR] Mahalanobis AD : Modeling the Distribution of Normal Data in Pre-Trained Deep Features for Anomaly Detection
- [21′ ICPR] PaDiM : a Patch Distribution Modeling Framework for Anomaly Detection and Localization
- [22′ CVPR] PatchCore : Towards Total Recall in Industrial Anomaly Detection
- [Normalizing Flow 방식의 Anomaly Detection]
- [20′ NIPS] Why Normalizing Flows Fail to Detect Out-of-Distribution Data 핵심 리뷰
- [21′ WACV] Same Same But DifferNet: Semi-Supervised Defect Detection with Normalizing Flows 핵심 리뷰
- [22′ WACV] CFLOW-AD: Real-Time Unsupervised Anomaly Detection with Localization via Conditional Normalizing Flows 핵심 리뷰
- [22′ WACV] Fully Convolutional Cross-Scale-Flows for Image-based Defect Detection (CS-Flow) 핵심 리뷰
- [21′ arxiv] FastFlow: Unsupervised Anomaly Detection and Localization via 2D Normalizing Flows 핵심 리뷰
- [Self Supervised Learning 방식의 Anomaly Detection]
- [18′ NIPS] Deep Anomaly Detection Using Geometric Transformations (GEOM) 핵심 리뷰
- [19′ NIPS] SSL-AD : Using Self-Supervised Learning Can Improve Model Robustness and Uncertainty 핵심 리뷰
- [20′ ICLR] CLASSIFICATION-BASED ANOMALY DETECTION FOR GENERAL DATA (GEOD) 핵심 리뷰
- [20′ NIPS] CSI: Novelty Detection via Contrastive Learning on Distributionally Shifted Instances
- [21′ ICLR] SSL-OCC : Learning and evaluating representations for deep one class classification 핵심 리뷰
- [21′ ICCV] Hierarchical Transformation AD : A Hierarchical Transformation-Discriminating Generative Model for Few Shot Anomaly Detection 핵심 리뷰
- [21′ ICLR] SSD: A UNIFIED FRAMEWORK FOR SELFSUPERVISED OUTLIER DETECTION 핵심 리뷰
- [Knowledge Distillation 방식의 Anomaly Detection]
- [20′ CVPR] Uninformed Students: Student–Teacher Anomaly Detection with Discriminative Latent Embeddings
- [21′ Arxiv] Student Teacher AD : Student-Teacher Feature Pyramid Matching for Unsupervised Anomaly Detection
- [21′ CVPR] Multiresolution Knowledge Distillation for Anomaly Detection
- [22′ CVPR] Reverse Distillation AD : Anomaly Detection via Reverse Distillation from One-Class Embedding
- [Synthetic Anomaly 방식의 Anomaly Detection]
- [21′ ICCV] DRAEM : A discriminatively trained reconstruction embedding for surface anomaly detection
- [21′ CVPR] CutPaste: Self-Supervised Learning for Anomaly Detection and Localization
내용 요약
Self Supervised Learning 방식의 Few Shot Anomaly Detection 방법론을 설명합니다. 다양한 Scale과 Transformation을 Patch 단위로 맞추도록 학습합니다. 그 결과 Few Shot Anomaly Detection에서 좋은 성능을 보입니다.
1. 들어가며
이번 글에서는 2021년 ICCV에 발표된 A Hierarchical Transformation-Discriminating Generative Model for Few Shot Anomaly Detection 논문을 리뷰합니다. 이 논문은 Hierarchical Transformation을 학습하는 Anomaly Detection이란 의미로 Hierarchical Transformation AD라고 부르겠습니다. Anomaly Detection에 관한 기본적인 내용은 Anomaly Detection에 관한 모든 것 글을 참고해주세요.
2. 제안 방법
제안하는 방법론은 아주 간단합니다.
2-1. Generator
먼저 이미지를 n개의 Scale로 나눕니다. 그리고 Generator는 input으로 받은 n-1번째 스케일 이미지에 대해 upscale하여 n번째 이미지를 생성합니다.
2-2. Discriminator
이렇게 Generator가 생성한 이미지는 M개의 Transformed 이미지로 변환됩니다. 이렇게 변환된 각각의 Transformed 이미지를 HxH개의 패치로 나누어 각 패치 별로 어떤 Transformation인지 맞추도록 학습합니다. 예를 들어 1번 Transformation을 한 이미지였다면 HxH개의 패치 모두는 Softmax output으로 1을 내보내도록 학습하는 겁니다. 이 방법론의 전제는 정상 이미지만을 학습할 거고, 못 본 이미지가 들어오면 어떤 Transformation인지 잘 못 맞출 것이라는 겁니다.
따라서 최종 Anomaly score는 Discriminator가 잘 못 맞출수록 불량이도록 (위의 C값이 작을수록 불량) 설정합니다.
2-3. 제안 방법의 의미
이번에는 제안 방법의 의미를 생각해보려고 합니다. 아래에서는 제안 방법의 Few Shot Anomaly Detection 성능을 살펴볼텐데요. 기존 SSL 방식의 AD들은 Few Shot 모델들이 아니었죠. 어떻게 Hierarchical Transformation AD는 Few Shot AD에서 좋은 성능을 보일 수 있었을까요?
이 질문의 답은 다양한 Scale과 Transformation을 Patch 단위로 학습했다는 것에 있습니다. 기존 방법들은 이미지당 몇개의 Transformation만을 학습했죠. 따라서 모델이 충분한 학습을 하려면 아주 많은 양의 이미지가 필요했습니다. 반면Hierarchical Transformation AD는 몇 장의 이미지만 사용하더라도 다양한 Scale / Transformation / Patch 를 사용하여 풍부한 Feature를 학습할 수 있었던 것이죠.
3. 실험 결과
이제 제안한 방법의 Few shot anomaly detection 성능을 보겠습니다.
3-1. 1/5/10 shot Anomaly detection 성능
Paris, CIFAR10, FashionMNIST, MNIST 데이터셋에 대해 1 shot / 5 shot / 10 shot으로 나눠 성능을 측정했습니다.
비교 방법론들은 다음과 같습니다.
- Patch SVDD : [ACCV 2020] Patch svdd: Patch-level svdd for anomaly detection and segmentation. In: Proceedings of the Asian Conference on Computer Vision
- DROC : [ICLR 2021] Learning and evaluating representations for deep one class classification
- DeepSVDD : [ICML 2018] Deep One-Class Classification
- GEOM : [NIPS 2018] Deep Anomaly Detection Using Geometric Transformations
- GEOD : [ICLR 2020] CLASSIFICATION-BASED ANOMALY DETECTION FOR GENERAL DATA