(AD) CFLOW-AD 논문 리뷰

임수민·2022년 7월 8일
0

Deep Learning

목록 보기
4/5

Normalizing Flow

Normalizing flow?
k+1 개의 z 변수들이 역변환 가능한 함수 f 들로 연결되어 있는 것

z 들의 확률 분포를 아래 사진과 같이 f 와 z 로 표현 할 수 있음

그렇다면 이 Normalizing flow 를 어떻게 Anomaly Detection 에서 활용할까?

현재 NF 는 CNN 과 함께 활용 되고 있다. CNN 을 통해 Image 에서 피쳐를 추출하고, 추출 된 feature 를 NF 의 입력값으로 넣어 Z 값과 매핑 될 수 있게 NF 를 훈련 하고 있다. CNN 을 활용함으로써 feature 의 공간 정보를 살릴 수 있게 되어 현재 NF SOTA 모델들에서는 CNN backbone network 를 사용하여 피쳐를 추출하고 있다.

CFLOW-AD

method
논문에서는 CFLOW-AD 가 Conditional Normalizing Flow 라고 하고 있다. 이것은 feature extract 과정에서 여러 pooling layer 에서 나온 피쳐와 피쳐의 positional encoding 정보를 사용하여 Normalizing flow 를 수행하는 Decoder 함수에 적용한다는 것이다.

positional encoding 은 https://hongl.tistory.com/231 <- 이 포스팅을 참조. positional encoding 을 적용하면 위치 정보를 담고 있는 백터가 생성이 될 것이다.
중간 레이어로부터도 feature 를 추출해서 사용(Feature Layer 별 embedding 을 추출)
Pixel wise 하게 Anomaly score 를 계산한다. => segmentation 가능

Metric

Image-AUROC : 픽셀 중 최대값을 선택하여 해당 이미지의 anomaly score 로 나타낸 후 계산

Pixel-AUROC : 각 픽셀별 anomaly score 와 ground truth 인 binary mask 를 통해 pixel 단위로 계산

AUPRO : bounding box 를 예측에 적용하여 AUROC 를 구하는 방법

최종 score 는 class 별 성능이 높게 나온 해상도를 기준으로 계산

** 추후 포스팅 보충 예정

profile
서비스에 도움이 되는 개발자

0개의 댓글