68Sanghyu_Yoon_bc53a1cc1.png Sanghyu Yoon 2024.01.29

[NeurIPS 2023] Out-of-Distribution Detection via Synthetic Outlier Generation (2편)

앞선 1편에서는 LG AI연구원 DI(Data Intelligence) 랩이 NeurIPS 2023 Workshop에서 발표한 “Diffusion-based Semantic-Discrepant Outlier Generation for Out-of-Distribution Detection” 연구를 소개했습니다. 이번 2편에서는 이외에도 주목할 만한 Outlier Generation 관련 주목할 만한 논문들을 소개해 드리고자 합니다. OOD(Out-of-Distribution) Data는 실제로 볼 수 없기 때문에, Outlier Generation을 위해 OOD를 제대로 정의하는 것은 매우 중요합니다. 이번 2편의 포스팅에서 다룰 논문은 각각 Text Domain 과 Image Latent Domain에서 OOD를 정의하는 방식을 보여주고 있습니다. 지금부터 각 논문에 대해 자세히 살펴보겠습니다.

 

▶ Out-of-Distribution Detection via Synthetic Outlier Generation 시리즈
ㆍ 1편 Data Intelligence Lab 윤수희 님 (Link)
ㆍ 2편 Data Intelligence Lab 윤상휴 님 (본 글)

 

1. On the Powerfulness of Textual Outlier Exposure for Visual OOD Detection[1]

본 연구는 Visual OOD Detection의 성능을 향상시키기 위해 Textual Outlier Exposure을 처음으로 시도했다는 점에서 주목할 만합니다. 기존의 Outlier Exposure의 경우 Single-modal Data를 처리하는 Neural Network 특성 때문에 Image Domain의 Visual Outlier에만 의존했습니다. 하지만 OOD에 대한 명시적인 지식 없이 Visual Auxiliary Dataset을 활용하는 것은 큰 폭의 성능 편차를 겪을 수밖에 없고 Time-consumption도 큽니다. 이를 극복하기 위해 저자는 Large-language Model (LLM)을 활용하여 3-Verbosity Levels (Word, Description, Caption)로 Textual Outlier를 생성하고 CLIP과 같은 Multi-Modal Network 기반 Textual Outlier Exposure Framework를 제안합니다.


그림 1. Textual Outlier Exposure의 개요도[1]


전반적인 Detection Framework는 그림 1과 같습니다. 저자는 Large-scale의 Vision-language Model인 CLIP[2]을 Backbone 모델로 활용합니다. CLIP은 Modality의 Gap을 줄이도록 Joint 하게 학습되었기 때문에 Visual이 아닌 Textual Outlier의 Embedding이 Image Domain의 Detector를 Regularize 하는 것을 가능하게 합니다. 해당 방법론에서는 CLIP Encoder를 Freeze 하고 그 위에 Linear Classifier를 쌓아 ID Sample과 Textual Outlier를 Discrimination 하는 Classifier를 학습하고, 평가 시에는 기존 OOD Detection과 동일하게 실제 Image Domain OOD Dataset을 사용합니다. Testing Phase의 Score로는 Energy Score를 활용합니다.


Generating Textual Outliers in Three Types

 

그림 2. Level별 Textual Outlier 생성 방법[1]


Visual Outlier와 다르게 Textual Outlier는 Single-word부터 Verbose Description까지 다양한 형태를 띨 수 있습니다. 3가지 Level에 따른 Textual Outlier Generation 방법은 그림 2로 간략히 살펴볼 수 있습니다. 각 Level의 Design을 구체적으로 소개하겠습니다.

첫 번째 방법은 Word-level Textual Outlier입니다. 가장 직관적으로 생각할 수 있는 방식인 “A Photo of {Word}”의 형태로 Textual Outlier를 Design 하는 것을 말합니다. ID Data와 근접할수록 Informative 하기 때문에 해당 Word를 찾기 위해 Image-based Text Retrieval을 수행합니다. ID Dataset의 Text Retrieval Set을 생성한 후, Cosine Similarity로 Top k to k+δ만 Filtering 하여 명시적으로 ID Class Label들을 제거합니다.

두 번째 방법은 Description-level Textual Outlier입니다. 저자는 Large language model (LLM) 중 GPT-3[3]를 활용하여 Description을 생성합니다. GPT-3를 통해 Class Name에 대한 Prompt를 주어 Description을 얻고 이 중 Class Label을 제외해 Textual Outlier로 사용하였습니다.

마지막으로 세 번째 방법은 Caption-level Textual Outlier입니다. Image Captioning을 활용하여 ID Visual Cue로부터 Caption을 얻으면 복잡한 Visual Semantic에 대한 풍부한 표현을 얻을 수 있습니다. ID Sample과 너무 가까우면 오히려 방해가 되기 때문에, Captioning Set을 BLIP-2[4]를 통해 얻은 후 Mahalanobis Distance를 통해 ID와 가까운 샘플을 Filtering 했습니다.

저자는 ImageNet-1K Benchmark에서 기존 Advanced Visual Outlier Exposure Method 들과 비교해서 Outperform 하는 성능을 보여주었습니다. 또한 제안한 3가지 방법 중 가장 좋은 성능을 보인 Caption-level Textual Outlier을 통해, Text에 대한 Description을 얻는 것보다 Visual Element를 Incorporate 하면 더 다양하고 풍부한 Linguistic Semantic을 얻을 수 있다고 설명했습니다.

 

그림 3. Textual Outlier과 Visual Outlier Exposure 성능 비교[1]

 

Conclusion

Textual Outlier가 Visual Outlier에 비해 적은 Computational Cost로 더 좋은 성능을 낼 수 있다는 점 뿐만 아니라, 설명이 가능하다는 점에서도 큰 장점이 있습니다. 해당 장점을 살려 생성한 Outlier에 대해서도 다양하게 분석해 볼 필요가 있습니다. 본 논문은 Textual Outlier를 Image OOD Detection에 도입하는 첫 시도임에도 좋은 성능을 보이는 것으로 볼 때, Prompt Engineering 등을 통해 고도화한다면 더 효과적인 Textual Outlier를 생성할 수 있을 것으로 보입니다. Multimodal Network가 Text뿐 아니라 다른 Modality로의 확장 가능성도 기대할 수 있어 보이며, ID와 가까운 샘플이 생성되었을 때 Filtering 방식이 Heuristic 하다는 한계점을 극복할 수 있는 연구도 필요할 것입니다.

 

2. Out-of-distribution Detection Learning with Unreliable Out-of-distribution Sources[5]

본 논문은 Outlier Generation 기반 OOD Detection 연구들에서 간과하고 있지만 중요한 문제인 “Mistaken OOD Generation”을 다루고 있습니다. 만약 생성한 Outlier가 여전히 ID와 동일한 Semantic을 가질 경우, Predictor가 ID와 OOD Data를 혼동하여 오히려 Detection 성능의 저하가 발생할 수 있습니다.

 

그림 4. (a) Mistaken OOD 예시, (b) Mistaken OOD 활용 비율에 따른 성능 하락[5]

 

저자는 Reliable 한 OOD Data를 만드는 것은 어렵다고 말하며, 대신에 Unreliable 한 OOD의 부정적 영향을 완화하도록 Predictor를 학습시키는 Auxiliary Task를 제안합니다. 저자는 Generated Data를 모두 OOD로 보는 것이 아니라 Auxiliary ID Data와 Auxiliary OOD Data로 나눌 수 있다고 말합니다. 이를 바탕으로 아래 2가지 조건을 만족하도록 Auxiliary Task를 설계하고자 했습니다.

  1. C1. Auxiliary ID Part와 OOD Part의 Distribution는 Overlap 없이 Separation 되어야 한다.

  1. C1. Auxiliary OOD Detection Task는 Real OOD Detection Task로 Transferable 해야 한다.


저자가 제안하는 Auxiliary Task-based OOD Learning (ATOL)는 GAN을 기반으로 하는 Generation Based Outlier Exposure 방법으로 C1, C2를 만족시키도록 하는Two-stage Learning Scheme을 갖습니다. Two-stage에 대해서 아래 섹션에서 각각 나눠 설명하도록 하겠습니다.

 

Crafting the Auxiliary Task

C1 을 만족하기 위해 Generated ID, OOD가 Complex Data Space에서 Disjoint해야 하지만 이를 실현하기 어렵기 때문에 저자는 GAN Generator G의 Low-dimensional Latent Space에서 Manual하게 Distribution을 Craft 합니다. 먼저 Latent ID Data의 Latent Noise Distribution이 Mixture of Gaussian (MoG)를 따른다고 가정합니다. 그리고 Latent OOD Data는 High MoG Density Region을 제외한 Uniform Distribution을 따른다고 가정합니다. 하지만 Latent 상에서 Disjoint라고 해도 Generator로 Input Space로 돌렸을 때 Disjoint 함을 보장할 수 없습니다. 그래서 저자는 Distance Preservation을 위해 다음과 같은 Generator Regularization Loss를 제안합니다.

 

 

해당 Loss는 Latent Space와 Data Space에서의 Distance Correlation을 크게 하여, Latent Space에서 Distance가 가까운 샘플들이 Data Space에서도 가까운 Distance를 가지도록 Regularize 합니다.

 

Applying the Auxiliary Task

C2 는 Auxiliary와 Real ID Data의 Distribution이 Align 되어야 Auxiliary ID와 OOD를 OE 하는 것이 Real OOD Detection에서 효과를 보인다고 말하고 있습니다. 저자는 VHL[6]에서 제안된 Supervised Contrastive Learning 을 활용하여 Auxiliary와 Real ID Data를 Align 하기를 제안합니다. Auxiliary ID Data를 위한 Alignment Loss는 다음과 같습니다.

 

 

해당 Loss는 Auxiliary와 Real ID의 같은 Class는 Pull하고 다른 Class는 Push하여 Auxiliary와 Real ID의 Semantic이 Mapping되는 역할을 합니다. ID Alignment Loss를 포함하여 ATOL의 Predictor를 학습하는 전체 알고리즘을 요약하면 다음과 같습니다.

 

그림 5. Auxiliary Task OOD Learning (ATOL)의 전체 학습 알고리즘[5]

 

ATOL은 다양한 OOD Benchmarks에 대하여 다른 Generation-based OOD Detection Method들을 큰 폭으로 압도하는 결과를 보여주었습니다. 또한 CIFAR-10에서 t-SNE를 통해 Embedding Distribution을 보면 기존 Mistaken OOD Generation에 비해 Real ID와 Auxiliary OOD가 Overlap되어 Mapping된 샘플들이 현저히 줄어든 것을 확인할 수 있습니다. 이를 통해 ATOL이 Predictor가 Reliable 한 OOD로부터 학습되었고, 그러므로 강력한 Flexibility와 Generality를 가짐을 확인할 수 있습니다.

 

그림 6. ATOL의 Generation-Based OOD Detection 방법론 성능 비교 및 T-SNE 시각화[5]

 

Conclusion

ATOL은 Generated Data를 ID와 OOD로 나누어 Latent Space에서 Disjoint 한 Distribution을 가정하는 부분에서 발생하는 제약 및 Hyperparameter들이 많다는 점에서 한계가 있습니다. 하지만 기존 Outlier Generation의 고질적인 문제인 ID와 OOD 사이의 Boundary를 정하는 것이 어렵기 때문에 ID 같은 모호한 샘플이 생성되는 문제를 해결하고자 했다는 점이 인상 깊었습니다. 또한 Latent Space에서 Image Space 사이의 Alignment는 Latent Space에서 Distance Based로 Image Generation 하는 연구들에 다양하게 적용될 수 있을 것 같습니다.

 

Discussion

총 2편의 시리즈를 통해, LG AI연구원 DI 랩이 NeurIPS 2023 Workshop에서 발표한 “Diffusion-based Semantic-Discrepant Outlier Generation for Out-of-Distribution Detection” 연구와 NeurIPS 2023에 소개된 다양한 Outlier generation 기반 OOD Detection 논문들을 살펴보았습니다. Outlier Generation을 활용한 OOD Detection에 대한 연구는 다양한 Modal로의 확장, 그리고 Auxiliary OOD의 Definition에 대한 논의로 이어질 것으로 예상됩니다. LG AI연구원 DI 랩은 Pre-trained Generative AI 모델을 활용하여 제안 방법의 적용 범위를 확장하는 방향으로 연구를 진행하고 있으며, 응용 연구 분야의 기술 발전에 집중하고 있습니다. Unseen Data 혹은 Abnormal Data를 기존의 In-distribution Data와 잘 구별해 내는 문제는 Real World에서도 많이 발생하기 때문에 LG AI연구원도 관련하여 실제 상황에 맞는 세팅을 고민하고 이를 해결하기 위한 연구를 지속해 나갈 것입니다.

 

▶ Diffusion-based Semantic-Discrepant Outlier Generation for Out-of-Distribution Detection (Link)

▶ NeurIPS 2023 Research Blog 시리즈가 궁금하다면? (Link)

참고

[1] Park, Sangha, et al. On the Powerfulness of Textual Outlier Exposure for Visual OoD Detection (NeurIPS 2023)

[2] Radford, Alec, et al. Learning transferable visual models from natural language supervision (ICML 2021)

[3] Brown, Tom, et al. Language models are few-shot learners (NeurIPS 2020)

[4] Li, Junnan, et al. Blip-2: Bootstrapping language-image pre-training with frozen image encoders and large language models (Preprint 2023)

[5] Zheng, Haotian, et al. Out-of-distribution Detection Learning with Unreliable Out-of-distribution Sources (NeurIPS 2023)

[6] Tang, Zhenheng, et al. Virtual homogeneity learning: Defending against data heterogeneity in federated learning (ICML 2022)