CutPaste: Self-Supervised Learning for Anomaly Detection and Localization 리뷰

2022. 8. 20. 16:41Research/Anomaly Detection

728x90

Anomaly Detection Task에서 간단한 Pre-Taxt Task를 통해서 Self-Supervised Learning을 설계하고 이를 통해 좋은 성능을 얻고 있는 Cutpaste모델에 대해 리뷰해보려고 합니다.

Introduction

Anomaly Detection는 정상이미지에서 다른 패턴을 찾아내는 것을 목적으로 합니다. Anomaly Detection은 공정 이상 탐지, 의료 영상 분석, 비디오 감시 등에서 쓰이고 있습니다. 기존의 지도학습과는 다르게 Anomaly Detection은 고유의 문제점을 가지고 있습니다. 첫번째는 비정상 데이터를 많이 구할 수 없다는 것 입니다. 즉, 정상 데이터만을 활용하여 다양한 패턴의 비정상 데이터를 찾아내야한다는 것 입니다. 두번째는 정상 데이터와 비정상 데이터의 차이가 극히 미미할 수 있다는 것 입니다. 이러한 문제점들 때문에 전통적으로 Anomaly Detection 문제는 정상 데이터만을 활용하여 Semi-Supervised, Un-Supervised, One-Class Classification의 방식으로 문제를 처리합니다. 

비정상 데이터의 패턴을 사전에 알 수 없기 때문에 정상 데이터로부터 패턴을 학습한 후, 비정상 데이터를 찾아내도록 설계가 되는데, 이 경우 세밀한 비정상 패턴을 감지하지 못하는 문제가 있습니다. 

Anomaly Detection을 처리하기 위해 다양한 방법들이 제시되었지만, 이들은 의미론적인 비정상을 찾아내는데 초점을 맞추기 때문에 비정상 이미지의 세밀한 패턴을 찾아내지 못하는 한계를 가지고 있습니다. 

본 연구에서는 Cut-Paste라는 새로운 Augmentation을 Pre-Text Task로 설정하여 Self-Supervised Learning을 수행한 후, One-Class Classification Anomaly Detection을 수행하는 Framework를 제안합니다. Cut-Paste는 이미지의 임의의 부분을 잘라내어 임의의 부분에 붙이는 Augmentation으로 정의합니다. 본 연구의 Self-Supervised Learning은 Cut-Paste를 수행한 경우, 비정상으로 판단하고 붙이지 않은 경우 정상으로 판단하는 Pre-Text Task를 수행하게 됩니다. 

Self-Supervised Learning with Cut Paste

기하학적 변형이나 Constrative Learning을 통해 Self-Supervised Learning을 수행하는 경우, 의미적 문맥을 학습할 수 있지만, 지역적 비정상 패턴을 학습하지는 못한다고 추측하였고, 이를 해결하기 위해 새로운 Pre-Text Task를 제안하였습니다. Cut-Out은 널리 쓰이는 Augmentation방식으로 임의의 작은 사각형을 이미지에서 지우는 방법입니다. Cut-Out은 불변성을 강제하기 때문에 이미지의 특징을 학습하는 것에 좋은 방법입니다. 본 연구에서는 단순한 이미지의 특징을 배우는 것을 방지하기 위해 다양한 크기의 사각형과 Color jittering 그리고 임의의 이미지 위치에 사각형을 붙이는 작업을 추가하였습니다. Cut-Paste의 Self-Supervised Learning을 위한 오차함수는 아래의 식과 같습니다.

$\mathcal{L}_{CP}=\mathbb{E}_{x \in \mathcal{X}} \{ \mathbb{CE}(g(x),~0) + \mathbb{CE}(g(\rm{CP}(x)), 1) \}$

Figure from [1].

Computing Anomaly Score

One-Class Classifier에서 Anomaly Score를 계산하는 여러 방법이 있습니다. 본 연구에서는 Kernel Density Estimatior, Gaussian Density Estimator를 이용하여 Anomaly Score를 계산합니다. Non-Parametric Kernel Density Estimator의 방법도 있지만, 계산량이 많기 때문에 본 연구에서는 사용하지 않았습니다. 본 연구에서 사용한 Gaussian Density Estimator의 식은 다음과 같습니다.

$\rm{log}~p_{\rm{gde}}(x) \propto \{-\frac{1}{2}(f(x)-\mu)^{T}\Sigma^{-1}(f(x)-\mu) \} $

Related Work

Data Augmentation에는 여러가지 종류가 있을 수 있는데, 많이 사용되는 것은 Rotation, Translation, Flip등의 Geometric Transformation입니다. 이러한 Geometric Transformation은 의미론적 특징을 학습하는 것을 도와주기 때문에 CIFAR10이나 IMAGENET과 같은 Task에서는 성능의 향상을 보이지만  이미지의 국소적인 특징을 배워야하는 Task에서는 성능의 향상이 거의 없는 것을 알 수 있습니다.

Cutout, Random Erasing과 같은 Augmentation들은 Cut-Paste와 유사하지만 이들은 무작위 패턴으로 불규칙성을 주므로 Invariant Representation을 배우게 된다는 점이 Cut-Paste와 다릅니다. 또한 CutMix는 Cut-Paste와 Augmentation Operation은 유사하지만, Cut-Paste는 이미지의 라벨이 필요하지 않고, One-Class Classification에서 동작한다는 점에서 차이가 있습니다.