Suhee_Yoon-2_d8241add1.png Suhee Yoon 2024.01.29

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

LG AI연구원 Data Intelligence(DI) 랩은 “NeurIPS 2023 SyntheticData4ML Workshop”에서 “Diffusion-based Semantic-Discrepant Outlier Generation for Out-of-Distribution Detection”[1] 연구를 발표하였습니다. 또한, 연구자들과 함께 Out-of-Distribution Detection 성능 향상을 위한 다양한 Synthetic Outlier Generation 방법 및 이에 적합한 Detection 방법까지 함께 논의했습니다. 그 과정에서 얻은 중요한 인사이트들을 나누기 위해 LG AI연구원이 발표한 논문과, 함께 살펴보면 좋을 유의미한 논문들을 살펴보겠습니다.

 

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

 

Out-of-Distribution Detection

Out-of-Distribution (OOD) Detection은 주어진 새로운 Data Point가 기존 In-Distribution (ID)에 해당하는지 아닌지를 탐지하는 문제입니다. 오랜 세월 동안 OOD Detection은 의료 진단, 자율 주행, 예측 등 Real World의 다양한 응용 분야에서 사용되어 왔습니다. 특히, 여러 OOD Detection 방법론 중 Auxiliary OOD Dataset을 활용하는 Outlier Exposure (OE) 방법이 뛰어난 성능을 보이며 주목받고 있습니다. Auxiliary OOD Dataset은 ID와 OOD사이의 Discrepancy에 대한 추가적인 정보를 제공하며 OOD Detector 모델 성능 향상에 크게 기여합니다. 간단하지만 효과적인 성능 향상 덕분에, 최근 OE에 기반한 방법론 연구가 활발히 이루어지고 있습니다.

Diffusion-based Outlier Generation

Auxiliary OOD Dataset을 활용하는 OE 접근법에서 가장 중요하게 고려해야 하는 점은 Real World에서의 Outlier Dataset 획득 문제입니다. 특정 Data Point가 OOD인지 ID인지 판단하는 것은 많은 노동과 비용이 소요됩니다. 따라서, 위 문제를 완화하기 위해 최근 많은 연구자가 GAN, Diffusion과 같은 다양한 Generative AI 모델에 기반한 Synthetic Dataset 생성 방법론에 집중하고 있습니다. 하지만, 이전 연구들은 대부분 Blur한 이미지 결과물들을 생성해 내며 보다 정교한 OOD 이미지 생성에 실패하였습니다. 반면, 아래 소개해 드릴 두 논문은 모두 Diffusion 모델을 활용하여 성공적으로 Photo-realistic Outlier들을 생성해 냅니다. 두 논문에 대해 자세히 살펴보겠습니다.

 

1. Diffusion-based Semantic-Discrepant Outlier Generation for Out-of-Distribution Detection


그림 1. 제안 방법 전체 개요도[1]
(위 이미지)SD Outlier 생성, (아래 이미지) SD Outlier 기반의 OOD Detection

 

LG AI연구원이 발표한 이번 연구에서 Auxiliary OOD Dataset 생성에 중요한 두 가지 속성을 다음과 같이 정의하였습니다. (1) 생성된 Dataset은 충분히 ID에 가까워야 하고, (2) 동시에 명확하게 ID와 구분되는 Semantic 정보를 가져야 합니다. 다시 말해 Semantic 정보는 OOD이지만, 이와 무관한 Background와 같은 Nuisance 정보들을 유지할 경우 효과적인 OOD Dataset 역할을 할 수 있습니다. 본 연구에서는 이러한 속성을 갖는 Semantic-Discrepant (SD) Outlier 생성과 이를 활용한 새로운 OOD Detection 방법론을 제시합니다.

 

Semantic-Discrepant Outlier Generation



본 연구에서는 Label 정보가 없는 Unsupervised OOD Detection에 활용할 수 있는 SD Outlier 생성을 제안합니다. 이를 위해 최근 SOTA Clustering 성능을 보여주는 Self-supervised Clustering 방법론인 SCAN을 활용하여 Pseudo-label y~를 얻습니다 Din:={(x(i),y~(i) )}. Dout 생성을 위해서는 Conditional Diffusion 모델 중, 별도의 Classifier 없이 사용할 수 있는 간단하면서 효과적인 Classifier-Free Guidance Diffusion (CFG) 모델을 사용합니다. Din:={(x(i),y~(i) )}을 Input으로 넣고 위 Loss Function을 사용하여 Noise Prediction ϵθ이 최적화 되도록 Diffusion 모델을 Scratch에서부터 학습합니다.

 

 

다음으로는 본 연구의 주요 제안 방법인 Semantic-Discrepant Guidance입니다. 먼저 x Din에 원래 Timestep T보다 훨씬 적은 S만큼의 Noise를 추가하여 Nuisance가 아닌 Semantic 부분에 더 많은 Corruption 영향을 받은 이미지 xS를 얻습니다. xS를 다시 Denoising 할 때, 해당 이미지의 Pseudo-label y~이 아닌, 다른 Cluster Label을 Random으로 선택하여 진행하게 됩니다. 그 결과, Nuisance 부분은 대체로 유지되면서 주요 Semantic 정보가 없어지거나, 변형되어 있는 Realistic한 Outlier 이미지를 얻게 됩니다 DOut :={(x(i),y~(i) )}.

 

그림 2. CIFAR10 Dataset을 활용한 Outlier 예시[1]

 

그림 2에서 생성된 이미지들을 구체적으로 살펴보면, 자동차의 바퀴가 없어지거나 새의 다리가 2개에서 4개로 변하고, 강아지의 머리에 새의 부리가 생기는 등 배경은 대부분 유지되는 반면 주요 Semantic에는 다양한 Corruption이 일어나는 것을 확인할 수 있습니다.

 

OOD Detection with Semantic-Discrepant Outlier

 

 

SD Outlier을 활용한 OOD Detector 학습에는 총 세 가지 Term으로 이루어져 있는 위의 Loss를 사용합니다. 첫 번째 Term은 ID와 OOD를 구분하는 Binary Classification이고, 나머지 Term들은 ID, OOD 각각 Pseudo-label을 맞추는 Multi-class Classification입니다. 이때, Outlier의 경우 기존의 Semantic 정보가 많이 변형되었으므로 충분히 낮은 λ 값을 주어 학습에서의 영향을 감소시킵니다.

 

 

SD Outlier을 활용한 Scoring 방법으로 k Nearest Neighbours (kNNs)에 기반한 새로운 방법을 제안합니다. 기존의 Din만을 가지고 OOD Detection에 많이 활용되는 Distance-based Score에 추가로 SD Outlier, DOut,을 활용하는 Voting-based Score을 제시합니다. Voting-based Score 방법은 Data Point 기준으로 가까운 k개의 Training Point 중 SD Outlier의 비율을 나타냅니다.

 

그림 3. (ID) CIFAR10 OOD Detection AUROC(%) 성능 결과[1]

 

본 논문의 제안 방법을 CIFAR10 Dataset 기준으로 평가했을 때 결과는 그림 3과 같습니다. 특히, CIFAR10과 가장 유사한 Class 정보를 가진 CIFAR100을 OOD로 보았을 때의 성능 향상은 GT 성능 (98.2%) 과 유사할 정도로 주목할 만합니다.

 

Conclusion

LG AI연구원은 위 논문을 통해 Semantic-Discrepant Outlier Generation 방법과 함께 이를 활용한 OOD Detection Framework를 소개하였습니다. 연구의 핵심 아이디어는 Semantic-Discrepant Guidance라는 간단하지만 효과적인 방법을 통해 ID의 Nuisance를 유지하면서 Semantic Corruption이 일어난 Outlier를 성공적으로 생성하는 것입니다. 현재 LG AI연구원 DI 랩은 Stable Diffusion과 같은 Pre-trained Generative AI 모델을 활용하여 제안 방법의 적용 범위를 ImageNet과 같은 High-resolution Dataset으로 확장 중입니다. 이 방법은 Labeling 비용을 효율적으로 감소시키면서, Real World 산업에서도 효과적인 성능 향상에 크게 도움이 될 것으로 기대됩니다.

 

2. Dream the Impossible: Outlier Imagination with Diffusion Models

본 연구에서는 ID Dataset의 Label이 존재할 때, Pre-trained Text-to-Image 모델인 Stable Diffusion을 활용하여 Outlier를 생성합니다. 이때, ID의 경우 Text-conditioned Latent Space에 Class 정보를 활용하여 Text Prompt를 쉽게 Mapping 할 수 있는 반면, Outlier의 Text Prompt를 찾는 것은 쉽지 않다고 주장합니다. 따라서, 본 논문에서는 ID의 분포 중 Long-tail에 해당하는 부분에 집중하여 해당 지점을 기준으로 다양한 Outlier를 생성하는 방법을 제안합니다.

 

그림 4. 제안 방법 개요도[2]

 

Learning the Text-Conditioned Latent Space

 



그림 5. Classifier 학습 수 Text-conditioned Visual Latent Space TSNE[2]

 

본 연구의 핵심 아이디어는 Text-conditioned Visual Latent Space inDin의 이미지 Embedding과 Token Embedding T(y)을 Mapping 시키는 것에서 시작됩니다. 별도의 Classifier를 활용하여 각각의 이미지 Embedding이 Class Label에 해당하는 Token Embedding에 높은 Probability를 가지도록 아래의 Loss Function을 학습시킵니다. 학습 후에는 그림 5와 같이 각각의 Token Embedding에 이미지들이 잘 Mapping 되어 있는 것을 확인할 수 있습니다.

 

Outlier Imagination via Text-Conditioned Latent

Text-conditioned Visual Latent Space in에서 새로운 Outlier Token을 선택하고 Diffusion Model을 활용하여 Pixel-space에서의 Photo-realistic한 Outlier를 생성합니다. ID Embedding의 Low-likelihood인 부분을 기준으로 새로운 Outlier Token v를 도출합니다. 먼저 Training Dataset =(z1,z2,,zn )에서 모두 k Nearest Neighbours (kNNs)을 계산하여 kNNs거리가 큰 부분을 Boundary ID Point로 정합니다. 각 Boundary ID Point zi를 중심으로 Covariance σ2 만큼 떨어진 곳에서 v 를 Sampling 합니다. σ2I:v N(z1,σ2I).

 

Pixel-space에서의 Outlier 이미지를 얻기 위해 Outlier Embedding v를 Diffusion 모델을 활용하여 Decoding 합니다.

 

 

생성된 Synthetic Outlier들은 Classification 모델을 Regularizing 하는 역할로 사용됩니다. 아래 Loss Function의 첫 번째 Term은 ID Dataset의 Label을 Multi-class Classification 하는 역할을 하며, 두 번째 Term은 Boundary ID Point들과 생성된 Outlier들을 Binary Classification 하는 역할을 합니다. OOD Detection 시에는 두 번째 Term의 Score를 활용합니다.

 

 

본 연구의 제안 방법은 아래 그림 6의 수도 코드에서 다시 한번 확인해 볼 수 있습니다.

 

그림 6. 본 연구의 제안 방법[2]

 

제안 방법 성능 검증을 위해 ImageNet-100 Dataset을 ID로 두고 다양한 OOD Dataset에서의 결과를 비교해 보았습니다. 기존의 Outlier Synthesis 방법들인 GAN, VOS, NPOS를 활용한 방법들보다 우수한 성능을 보였습니다. 생성된 Outlier 이미지들을 보면, Covariance σ2를 너무 작게 설정할 경우 zi와 Label이 같은 ID 이미지가, 너무 크게 설정할 경우 zi와 Label이 다른 ID 이미지가 생성될 수 있으므로, σ2를 적절히 잘 선택해야 하는 것이 본 논문에서 주목해야 할 부분입니다.

 

그림 7. (ID) ImageNet-100 OOD Detection 성능 결과[2]

 

그림 8. Covariance 별로 생성된 Outlier 이미지 예시[2]

 

Conclusion

본 연구에서는 Photo-realistic한 Outlier Generation을 위해, Visual-text Conditioned Latent Space 정보와 Diffusion Model을 활용하는 DREAM-OOD Framework를 제안하였습니다. 먼저, Visual-text Conditioned Latent Space에서 Low-likelihood Area를 기준으로 Outlier Token을 선별하고 이를 Stable Diffusion을 활용하여 Pixel-level로 변환하였습니다. 제안 방법은 ID 정보를 활용하여 다양한 Outlier 생성이 가능한 장점이 있는 반면, Outlier Sampling에 필요한 Hyper-parameter에 민감한 점은 더 Robust하게 개선할 필요가 있습니다. 또한, Visual-text Conditioned Latent Space에서의 Distance와 실제 Pixel-level Distance가 서로 상응하지 않을 수도 있습니다. 해당 문제는 최근 발표된 대부분의 Diffusion-based Outlier Generation 연구에서 공통적으로 나타납니다.

 

Discussion

NeurIPS 2023에서 발표된 Diffusion-based Outlier Generation 방법에 관한 논문 두 편을 자세히 살펴보았습니다. 최근 GPT-3, Stable Diffusion과 같은 Generative AI 기반 모델이 뛰어난 성능을 보이며, OOD Detection 적용 연구가 활발히 이루어지고 있습니다. Generation AI 기반 모델들이 Image, Speech, Text, Semantic 등 다양한 Source Dataset을 활용할 수 있다는 점에서 Outlier Generation 연구도 지속 확장되고 있습니다. 또한, 해당 Source Dataset들을 활용할 때 공통된 문제점들이 나타나는데, 이를 개선하는 연구 방향도 앞으로 주목할 만합니다.

LG AI 연구원은 NeurIPS 2023을 비롯해 세계적인 인공지능 학회에서 지속적으로 좋은 연구 성과를 발표하고 있습니다. LG AI Day, LG Booth, TechTalk 등 다양한 활동을 통해 현업 종사자, 연구자들과 최신 연구 트렌드에 대해 소통하고 네트워킹도 이어가고 있습니다. 특히 LG AI연구원의 DI 랩은 앞에서 다룬 바와 같이, Pre-trained Generative AI 모델을 활용하여 다양한 방향으로 연구 범위를 확장하고 있습니다. Real World에서 필요로 하는 다양한 문제들을 직접 정의하고 풀어나감으로써, 응용 연구 분야의 기술 발전을 선도해 나가고, 장기적으로는 AI 기술을 통해 실제 산업 현장에서 의미 있는 변화들과 파급력 있는 가치를 창출해 내는 데 기여하겠습니다.

 

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

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

참고

[1] Suhee Yoon, Sanghyu Yoon, et al. Diffusion-based Semantic-Discrepant Outlier Generation for Out-of-Distribution Detection. (NeurIPS 2023, Synthetic4ML Workshop)

[2] Du, Xuefeng, et al. Dream the impossible: Outlier imagination with diffusion models. (NeurIPS 2023) Zhang, Jingyang, et al. OpenOOD v1. 5: Enhanced Benchmark for Out-of-Distribution Detection. arXiv preprint arXiv:2306.09301, 2023.

[3] Jonathan Ho, Ajay Jain, and Pieter Abbeel. Denoising diffusion probabilistic models, 2020. Niv Cohen, Ron Abutbul, and Yedid Hoshen. Out-of-distribution detection without class labels. In European Conference on Computer Vision, pages 101-117. Springer, 2022.

[4] Dan Hendrycks and Kevin Gimpel. A baseline for detecting misclassified and out-of-distribution examples in neural networks. In International Conference on Learning Representations, 2017.

[5] Dan Hendrycks, Mantas Mazeika, and Thomas Dietterich. Deep anomaly detection with outlier exposure. In International Conference on Machine Learning, 2019.

[6] Jingyang Zhang, Nathan Inkawhich, Randolph Linderman, Yiran Chen, and Hai Li. Mixture outlier exposure: Towards out-of-distribution detection in fine-grained environments. In IEEE/CVF Winter Conference on Applications of Computer Vision, page 5531-5540, 2023.

[7] Qing Yu and Kiyoharu Aizawa. Unsupervised out-of-distribution detection by maximum classifier discrepancy. In IEEE/CVF international conference on computer vision, pages 9518-9526, 2019.

[8] Konstantin Kirchheim and Frank Ortmeier. On outlier exposure with generative models. In NeurIPS ML Safety Workshop, 2022.

[9] Wouter Van Gansbeke, Simon Vandenhende, Stamatios Georgoulis, Marc Proesmans, and Luc Van Gool. Scan: Learning to classify images without labels. In European conference on computer vision, pages 268-285. Springer, 2020.

[10] Du, Xuefeng, et al. Vos: Learning what you don't know by virtual outlier synthesis. arXiv preprint arXiv:2202.01197, 2022.