Paper review/Anomaly Detection

A Unified Model for Multi-class Anomaly Detection (NIPS'22)

언킴 2023. 4. 25. 19:13
반응형
 

Contents

    기존 연구의 경우 이상치 탐지(Anomaly Detection)를 수행할 때 각각의 클래스 별로 별도의 모델을 생성하는 문제점이 존재했다[Figure 1]. 본 연구는 이상치 탐지에 있어 별도의 모델을 구축하는 것이 아니라, 통합된 모델을 구축한다는 것이 핵심이다. 실험 결과, 본 연구에서 제안하는 UniAD 기법의 성능이 우수한 것을 확인하였다. 

     

    기존 연구에서 사용되는 CNN, MLP, Transformer 등과 같은 기법은 클래스를 모두 합쳐서 학습하는 경우 이상치 마저도 잘 복구해서 이상치가 어떤 것인지 제대로 발견하지 못한다는 문제가 존재한다[Figure 2]. 본 연구에서는 이를 해결하기 위해 모델을 Neighbor masked attention, Layer-wise query decoder 그리고 Feature jittering strategy으로 구성하였으며, 각 모듈이 어떤 역할을 수행하는 지 알아보자.

     

     

     

    Neighbor masked attention

    Transformer와 같은 구조를 사용하는 경우 클래스를 통합했을 때 "Identical shortcut"이 발생하여 성능이 저하되기 때문에, 이를 방지하기 위해 Neighbor Masked Attention (NMA)를 도입하였다[Figure 5]

     

    Layer-wise Query Decoder

    Layer-wise Query Decoder (LQD)에서는 [Figure 3]과 같이 이전 단계의 Output과 Query를 계산하고 Skip-Connection을 사용하였다. LQD를 통해 Reconstructed Token을 도출한다.

     

    Feature Jittering

    Feature Jittering은 Denoising Auto-Encoder (DAE)를 참고하여 섭동(Perturbation)을 Feature Token에 더해주는 방식이다. 

    \[ D ~ N (\mu = 0, \sigma^2 = ( \alpha \frac{||f_{tok}||_2}{C} )^2 ) \]

    $f_{tok} \in \mathbb{R}^C$는 가우시안 분포로부터 샘플링된 Disturbance를 의미한다. 

     

     

    Implementation Details

    Feature Extration을 하기 위해 ImageNet으로 사전학습된 EfficientNet-b4 기법을 사용하였다. 그런 다음 Linear Projection을 수행하여 입력 차원 $C_{org}$을 보다 작은 $C$로 정사영한 후 다시 복원하여 $f_{rec}$을 생성한다.

    \[ \mathcal{L} = \frac{1}{H \times W} || f_{org} - f_{rec} ||^2_2 \]

    $f_{org}$는 실제 이미지의 feature map을 의미한다. 이때는 MSE Loss를 사용하고, Anomaly Localization은 L2 norm을 사용하여 아래와 같이 계산한다.

    \[ s = ||f_{org} - f_{rec} ||_2 \in \mathbb{R}^{H \times W} \]

     

     

    Experiments

    실험 결과는 본 연구의 결과가 가장 좋거나 두 번째 정도의 성능을 보여주는 것을 확인할 수 있다.

     

     

    본 논문에서 제안하는 UniAD의 경우 LWQ, NMA, FJ 총 3가지의 모듈로 구성되어 있다. 각 모듈을 제거했을 때 어떠한 성능 변화가 존재하는지에 대한 실험은 [Table 5]에서 확인할 수 있다.