본문 바로가기

논문/Anomaly Detection

[리뷰] SimpleNet: A Simple Network for Image Anomaly Detection and Localization

SimpleNet 의 경우 Synthesizing-based method 와 Embedding based-method 두 가지 성격을 띄고 있다.

SimpleNet 이전의 Synthesizing method 들의 경우, 

real-world 의 anomaly와 다른 형태가 보이는 경우가 많았음.

DRAEM, CutPaste 의 생성 결과를 보면 인위적인 형태의 anomalous 정보를 넣은 것을 볼 수 있는데.

이런 것들이 문제가 될 것이라고 생각했음.

 

그래서 SimpleNet 의 경우에는 feature space에 Gaussian noise 를 더함으로써, 훨씬 real-world 에 존재할만한 synthesizing anomaly image 를 만들었다고 볼 수 있다.

 

또, 이 논문의 주요 포인트는 Feature Adaptor 라고 할 수 있겠다.

pre-trained CNN 의 경우 ImageNet 으로 주로 학습되어 있다보니, target Domain 의 image 들과 다른 데이터셋 분포를 갖고 있을 것임. 이를 해결하기 위해, Feature Adaptor를 도입하여 target domain 특징에 맞게 학습시킨다는 것.

Feature Adaptor의 경우 MLP 또는 fully-connected layer 형태로 구성이 되어 있음. 저자들의 실험에서는 1개의 fully-connected layer 구성이 가장 성능이 좋았다고 한다.

 

 

Feature adaptor 를 적용한 후, target domain 분포에 더 잘 맞추어진 모습을 볼 수 있다.

 

 

pseudo-code 를 보면 더 이해하기 쉬운데,

F(x) 의 경우 PatchCore 와 유사하게 진행되었고,

그 값에 Feature adaptor 를 적용하여 adpated features 를 생성한다.

그리고 가장 먼저 말한, feature space에 Gaussian Noise 를 첨가하여 anomaly 형태로 만드는 형태이고

 

loss 를 구한다. (Discriminator 라는 것을 추가해서 진행하긴 함.)

Discrinimator 는 normal, abnormal 을 판별하는 classifier 형태.

 

최종적으로 loss 에서는 Discriminator 와, Feature adaptor 를 학습하게 됨.

 

단순 MVTEC 성능으로만 본다면 PatchCore 와 큰 차이가 없다고 할 수 있으나,

real-world 에 들어갔을 때 SimpleNet 의 효과를 더 볼 수 있지 않을까 싶다.

 

최근에 RealNet 논문을 읽기 전에, SimpleNet 이 기억이 나서 간단하게 리뷰해보았다.

다음은 RealNet 을 리뷰해보면 좋겠군.