- 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
1. 들어가며
이번 글에서는 Synthetic Anomaly 방식의 Anomaly Detection 방법들을 살펴봅니다. 먼저 Synthetic Anomaly 방식의 큰 그림을 살펴보고요. 이어서 대표적인 방법들을 하나씩 간략하게 살펴보겠습니다. Anomaly Detection에 관한 기본적인 내용은 Anomaly Detection에 관한 모든 것 글을 참고해주세요.
2. 큰 그림
사실 Anomaly Detection의 어려움은 ‘Normal Data’만 학습할 수 있다는 전제에서 기인합니다. 다른 Task 들과 달리 단일 종류의 데이터를 학습한 뒤 학습 과정에서 본 적 없는 특성을 구분해내야 하기 때문이죠. 그렇다면 자연스럽게 ‘Anomaly를 만들어서라도 학습해주자’ 라는 생각이 드는데요. Synthetic Anomaly 방식들은 이러한 아이디어를 바탕으로 구현된 방법들입니다.
![[Synthetic Anomaly 방식의 Anomaly Detection] 1 image 44](https://ffighting.net/wp-content/uploads/2023/07/image-44-1024x711.png)
따라서 복잡한 Anomaly Detection 모델이 필요 없이 위와 같이 Image Classification 방식을 사용할 수 있습니다. 이때의 관건은 ‘Synthetic Anomaly를 얼마나 진짜 Anomaly와 비슷하게 만들어줄 수 있느냐’ 겠죠.
3. 대표적인 방법들
이런 아이디어를 구현한 대표적인 방법들을 살펴보겠습니다.
3-1. DRAEM
가장 먼저 DRAEM을 꼽을 수 있습니다. DRAEM의 전체 구조는 이렇습니다.
![[Synthetic Anomaly 방식의 Anomaly Detection] 2 image 45](https://ffighting.net/wp-content/uploads/2023/07/image-45-1024x280.png)
전체적인 구조는 Reconstruction 방식을 취하고 있는데요. 보통 Reconstruction 방식은 정상 이미지를 그대로 복원하도록 학습하죠. 반면 DRAEM에서는 정상 이미지로부터 합성한 Anomaly 이미지를 정상 이미지로 복원하도록 학습하는 모습을 볼 수 있습니다. 자세한 내용은 DRAEM 리뷰글을 참고해 주세요.
3-2. CutPaste
다음으로 살펴볼 논문은 CutPaste 입니다. 제목이 모든걸 말해주고 있는데요. 말 그대로 ‘자르고 붙이는’ 방법으로 Synthetic Anomal를 만들어주는 방법입니다.
![[Synthetic Anomaly 방식의 Anomaly Detection] 3 image 46](https://ffighting.net/wp-content/uploads/2023/07/image-46.png)
위의 그림처럼 정상 이미지로부터 CutPaste 방식으로 Anomaly를 만들어준 뒤 Classification을 학습합니다. 이렇게 학습하면 Normal Feature와 Anomal Feature 분포는 다음과 같을 겁니다.
![[Synthetic Anomaly 방식의 Anomaly Detection] 4 image 47](https://ffighting.net/wp-content/uploads/2023/07/image-47-1024x591.png)
이렇게 분포하고 있다면 Normal과 Anomal을 구분하기 수월하겠죠. 자세한 내용은 CutPaste 리뷰글을 참고해 주세요.