- 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. 들어가며
이번 글에서는 Knowledge Distillation 방식의 Anomaly Detection에 대해 설명합니다. 먼저 Knowledge Distillation 방식의 큰 그림을 살펴보고요. 이어서 대표적인 방법들을 하나씩 간략하게 살펴보겠습니다. Anomaly Detection에 관한 기본적인 내용은 Anomaly Detection에 관한 모든 것 글을 참고해주세요.
2. 큰 그림
먼저 Knowledge Distillation을 Anomaly Detection에 사용하는 방식의 큰 그림을 살펴보겠습니다. Distillation이란 ‘증류’ 라는 뜻인데요. 따라서 Knowledge Distillation이란 지식을 증류한다는 의미입니다. 딥러닝에서는 보통 큰 네트워크의 정보를 작은 네트워크에 전달해주는 방법을 의미하죠.
Knowledge Distillation 방법을 Anomaly Detection에 적용하면 어떤 이점이 있을까요? Teacher 네트워크는 대용량 데이터셋을 학습한 모델이죠. 반면 Student 네트워크는 Anomaly Detection Task에 해당하는 데이터셋만 학습한 모델입니다. 따라서 이 둘은 지식의 양이 다르겠죠. 특히 Student 입장에서 학습단계에서 못 본 이미지에 대한 반응이 크게 다를겁니다. 이 차이를 이용하는 겁니다. 이렇게요.
Normal 이미지에 대해서는 Teacher와 Student의 반응이 비슷할거고요. Anomal 이미지에 대해서는 Teacher와 Student의 반응이 크게 다를겁니다. 따라서 이 두 네트워크의 반응 차이를 기준으로 Normal과 Anomal을 판단해주자는 것이죠.
3. 대표적인 방법들
그럼 이번엔 Knowledge Distillation 방법을 사용하는 대표적인 Anomaly Detection 모델들을 살펴보겠습니다.
3-1. Uninformed Students
최초의 대표적인 모델로 Uninformed Students를 들 수 있습니다. 이 논문은 2020년 CVPR에 발표된 Uninformed Students: Student–Teacher Anomaly Detection with Discriminative Latent Embeddings 라는 논문인데요. 편의상 Uninformed Students라고 부르겠습니다. Uninformed Students에서는 Students라는 이름이 알려주듯이 여러개의 Student 네트워크를 사용합니다.
이렇게 Anomaly Detection Task 데이터셋으로 학습한 M개의 Student 네트워크를 만들어주는 것이죠. 이제 테스트 단계에서는 Teacher와 Student 네트워크 반응의 차이를 봐야겠죠?
Uninformed Students에서는 위 그림과 같이 그 차이를 봅니다. M개의 Student 네트워크 반응이 중앙으로부터 얼마나 넓게 분포하는지, Teacher 네트워크 반응과는 얼마나 멀리 떨어져 있는지를 보는 것이죠. 자세한 내용은 Uninformed Students 리뷰글을 참고해 주세요.
3-2. Student Teacher AD
다음으로 살펴볼 논문은 2021년 발표된 Student-Teacher Feature Pyramid Matching for Unsupervised Anomaly Detection 라는 논문입니다. 편의상 Student Teacher AD라고 부를게요. Student Teacher AD에서는 하나의 Teacher 네트워크와 하나의 Student 네트워크가 사용됩니다. 그리고 이 둘 반응의 차이를 Multi Scale로 측정하죠. 이렇게요.
이렇게 단순한 방법으로도 좋은 성능을 낼 수 있었습니다. 자세한 내용은 Student Teacher AD 리뷰글을 참고해 주세요.
3-3. Multi Resolution AD
다음은 2021년 CVPR에 발표된 Multiresolution Knowledge Distillation for Anomaly Detection 입니다. 편의상 Multi Resolution AD라고 부를게요. 보통 Teacher와 Student 네트워크는 동일한 구조를 사용하는데요. Multi Resolution AD에서는 이 때문에 성능이 저하된다고 주장합니다. 따라서 Teacher 보다 더 작은 용량의 Student 네트워크를 사용하죠.
자세한 내용은 Multi Resolution AD 리뷰글을 참고해 주세요.
3-4. Reverse Distillation AD
다음은 2022년 CVPR에 발표된 Anomaly Detection via Reverse Distillation from One-Class Embedding 논문입니다. 편의상 Reverse Distillation AD 라고 부를게요. Reverse Distillation AD는 Knowledge Distillation 방식에 Reconstruction 방식의 장점을 결합한 방법입니다.
위 그림의 b를 보면 일반적인 Knowledge Distillation과 달리 원래 방향에서뿐만 아니라 압축 정보로부터도 정보를 전달받는 모습을 볼 수 있습니다. 자세한 내용은 Reverse Distillation AD 리뷰글을 참고해 주세요.