Search
⛹️

[논문리뷰] Improving Reconstruction Autoencoder Out-of-Distribution Detection with Mahalanobis Distance

Created
3/7/2021, 12:26:24 PM
Tags
OOD
💡
논문 리뷰: Autoencoder 기반의 OOD 모델을 Mahalanobis Distance 를 이용해 향상시켜 보자!
이번 포스트에서 다룰 논문은 2018년도에 발표된 “Improving Reconstruction Autoencoder Out-of-Distribution Detection with Mahalanobis Distance” 입니다. Autoencoder 를 사용하는 OOD Detection 전략에서 성능을 향상시킬 수 있는 방법을 제안합니다.

요약

학습 셋에서 보지 못한 입력을 감지하는 Out-Of-Distribution(OOD) Detection 테스크를 Autoencoder를 이용해 해결하는 방법에 대해서 다루고 있습니다. Autoencoder는 입력 데이터를 원본 차원보다 작은 차원의 공간으로 압축시키고, 다시 원본 차원으로 복원시키는 과정을 통해서 유의미한 feature를 얻을 수 있도록 하는 비지도 학습 방법입니다. 이런 식으로 학습을 진행하게 되면 학습 데이터셋과 관련된 입력은 복원이 잘 될 테지만, 학습 데이터셋에서 보지 못한 다른 분포의 입력은 잘 복원하지 못할 것입니다. OOD 테스크에서는 Autoencoder의 이러한 특징을 이용해서 reconstruction error를 In-distribution의 입력인지 OOD 입력인지 구분하는 용도로 사용합니다. 본 논문에서는 Autoencoder 만을 이용해서 OOD 문제를 푸는 기존 연구에 한계점이 있음을 지적하고, 이를 보완하기 위해서 Mahalanobis Distance를 추가하여 기존의 한계점을 보완하는 방법을 제시합니다.

기존 연구

And and Cho, 2015 에서는 그냥 일반적인 autoencoder 를 사용하는 것 보다, Variational Autoencoder 를 사용하는 것이 OOD의 성능을 향상시킬 수 있음을 주장합니다. 하지만 이 방법은 In-Distribution 데이터셋이 정규분포를 따라야 한다는 가정이 필요로 하다는 문제점을 갖고 있습니다. (requires making aussumptions about the generating data distribution of the inlier class)
Lee et al.,2018 에서도 Mahalanobis Distance 방법을 사용해서 여러 OOD 데이터셋에서 SOTA 를 달성하였습니다. 하지만 Lee et al.,2018 는 Classification 모델에 추가적으로 Mahalanobis Distance 를 추가하는 방법을 사용하였는데, 우리는 특정 class가 주어진 입력인 경우에만 OOD를 찾을 수 있을 뿐 아니라 unsupervised setting 에서도 이 문제를 풀기 때문에 이와 차별점이 있다고 주장합니다.

문제점

본 논문에서 지적하는 문제점은 단순 AE의 reconstruction error 만으로는 충분한 성능의 OOD Detector 를 만들 수 없다는 것입니다. 위의 Figure 를 보면 이에 대한 예시를 확인할 수 있습니다. 학습된 AE로 부터 도출된 feature 들을 시각화 했을 때, 왼쪽 이미지 처럼 linear manifold에 포함되느냐 안되느냐에 따라서 OOD를 구분할 때, 위에 올려진 파랑색 점(데이터)를 ID로 가정한다면 몇몇 빨강색의 OOD 도 ID 셋으로 인식하는 에러를 확인할 수 있습니다. 또한 오른쪽과 같이 non-linear manifold 상에도 낮은 reconstruction error 를 갖는 OOD 데이터들이 ID manifold 상에 위치함을 볼 수 있습니다.
하지만 시각적으로 보았을 때 ID와 OOD 가 같은 manifold 상에 있음에도, ID는 일종의 클러스터를 형성하고 있고, OOD는 이 ID 클러스터와는 거리가 있음을 확인할 수 있습니다. 저자는 이 관찰을 바탕으로 OOD는 AE를 통해 낮은 reconstruction을 얻을 수는 있지만, OOD를 구분하는 manifold 내에서는 일종의 거리가 있다는 가정을 세웠습니다. 그리고 이 거리를 OOD 판단하는데 사용한다면 보다 좋은 성능에 모델을 만들 수 있을 것임을 생각하였습니다.

방법

먼저 기존의 Autoencoder 기반의 OOD 문제 풀이 방법과 동일하게, ID 데이터셋만을 이용해서 Autoencoder 를 학습합니다. 학습 방법은 기존 연구들과 동일하지만, inference 시에는 본 논문에서 제안하는 Mahalanobis Distance 가 추가됩니다.
이 Mahalanobis Distance는 AE의 bottleneck layer 를 통해서 압축된 입력 데이터의 feature vector 값과, 전체 학습 데이터셋의 feature vecotor의 평균을 사이의 거리를 계산합니다. 그리고 reconstruction error 에 셋의 Mahalanobis Distance 를 추가해 줍니다.
즉 학습 데이터셋의 분포와 입력 데이터의 차이를 명시적으로 넣어주는 방법을 사용한 것입니다. ID셋의 feature vector의 평균은 사전 분포로 알 수 있는 값이기 때문에, 추가적인 학습이나 objective 없이 단순히 reconstruction error에 더해줌으로써 OOD 성능을 향상할 수 있는 것입니다.

관련 연구 (+ 후속 연구)

Kamo et al., 2020에서는 본 포스트에서 리뷰한 논문을 인용하면서 Mahalanobis Distance 가 실제로 유의미한지 분석하고 검증하는 실험을 진행하였습니다. 결론적으로는 이 방법이 도움이 됨을 확인할 수 있었습니다. 또한 Liang et al., 2017(ODIN)에서 제안한 softmax distribution을 confidence score로 계산하는 방법을 Autoencoder의 reconstruction error와 동시에 사용하면 기존의 OOD 성능을 향상할 수 있었음을 주장합니다.