논문 링크 : https://arxiv.org/abs/2108.11941
해당 논문은 기존의 Out-of-Distribution Detection 실험의 benchmark dataset setting에 대한 문제점을 제기하며, 이를 개선한 새로운 데이터셋 환경을 제안한다. 또한 기존의 OOD detection 방법들이 해당 실험 환경에서 성능 저하가 일어나는 현상을 발견하여, 이를 개선하는 논문이다.
OOD detection 성능을 측정할 때, 일반적으로 사용하는 benchmark dataset을 사용하게 된다. 하지만, 이러한 데이터셋을 구성하는 과정에서 실제 OOD detection의 목표와는 불합리한 setting으로 측정을 수행하는데, 예를 들어 ID(in-distribution) dataset을 CIFAR-10, OOD(out-of-distribution) dataset을 Tiny-imagenet이라고 할 때, OOD dataset에도 ID dataset에 포함된 데이터와 의미론적으로 같은 개, 고양이 등이 있지만, 이를 OOD라고 간주하는 것이다. 따라서 논문에서는 이러한 문제점을 개선한 SC-OOD(Semantically coherent out-of-distribution detection) 데이터셋을 구성한다.
논문에서 제안한 SC-OOD dataset에서는 오른쪽 아래의 table과 같이 기존의 OOD detection 방법들의 성능저하가 일어나는 것을 관찰했다. 따라서 해당 논문에서는 이러한 데이터셋 환경에서도 성능저하가 일어나지 않는 방법을 제안하며, 해당 방법은 Outlier-Exposure dataset(사전에 OOD dataset을 노출)을 사용한다. 해당 OOD dataset은 practical하게 ID 데이터가 섞여있는 상황을 가정한다.
논문에서 제안하는 방법에 대한 전체 프레임워크는 위 슬라이드의 그림과 같다. Labeled set(ID dataset)과 Unlabeled set(ID+OOD dataset)을 encoder에 통과하여 출력된 feature에 대해 k개로 grouping 한다. 노란색 영역은 grouping된 k개의 group을 나타낸다. gropuing을 수행하고 나서 IDF(In-Distribution Filtering) 과정을 수행하는데, 위 슬라이드 아래의 설명과 같은 순서로 진행된다. 먼저, k개로 나누어진 그룹의 순도를 구하며, 순도는 k번째 그룹에 얼마나 label data가 섞여있는지를 나타내는 지표이다. 순도가 특정 threshold 값 이상을 가지면, 해당 그룹에 속한 unlabeled data는 해당 group에 대한 labeled data로 간주한다.
특정 순도 미만의 그룹은 OE data로 간주하여, ID data와 OE data에 대해서 일반적으로 사용하는 Cross entropy loss를 사용한다. 이는 ID data에 대해서는 해당 label에 대한 supervised learning을 수행, OE데이터는 출력 label이 uniform distribution을 가지도록 학습한다.
또한 위 슬라이드 그림의 아래의 노란색 Loss를 추가로 사용하는데, 해당 Loss는 해당 그룹에 속한 데이터가 몇번째 group에 속하는지에 대한 Loss이다. Group index를 one-hot vector로 하여, Cross entropy를 수행한다. 해당 Loss term을 추가하는 이유는 ID data에 대한 classification 성능을 높이기 위해 unlabeled data를 함께 이용하는 과정이라고 설명했다.
위 슬라이드의 왼쪽 아래는 SC-OOD Benchmark example을 보여준다. 테이블과 같이 CIFAR-10과 의미론적으로 겹치는 Tiny-imageNet class데이터에 대해서는 ID로 취급을 한다. 또한 테이블 오른쪽 그림과 같이, ID의 클레스가 이미지에 포함된 데이터들에 대해서는 직접 ID로 포함시키는 작업을 추가적으로 수행했다고 한다.
실험결과 오른쪽 아래 테이블과 같이 SC-Benchmark에 대해 제안된 방법이 기존의 방법의 성능을 개선하였음을 알 수 있다.
이상 논문 리뷰였습니다.