본문 바로가기
  • 책상 밖 세상을 경험할 수 있는 Playground를 제공하고, 수동적 학습에서 창조의 삶으로의 전환을 위한 새로운 라이프 스타일을 제시합니다.
Computer Vision

[2024-1] 주서영 - A Baseline for Detecting Misclassified and Out-of-Distribution Examples in Neural Networks

by 영써 2024. 5. 12.

https://arxiv.org/pdf/1610.02136

  • Image Classification에 학습 시 한번도 보지 못한 데이터 분포에 대해서도 높은 신뢰도를 갖고 잘못된 예측을 할 수 있다.
  • 이처럼 모델의 학습 과정에서 고려되지 않는 데이터셋을 Out-of-Distribution이라고 하며 해당 논문은 OOD Detection하는 task를 처음으로 제시한 논문이다.
  • OOD detection에 대해 문제 정의와 평가 방법 등을 제시하였다.

Abstract

  • $\mathrm{Softmax}$ 의 Maximum을 confidence score를 임계값으로 사용하여 컴퓨터 비전, 자연처 처리, 자동 음성 인식 분야에서의 평가 방법을 제시하였다.
  • OOD Detection의 후속 연구에 대한 baseline 모델을 제시하였다.

1. Introduction

  • OOD는 현실에서 위험한 결과를 야기할 수 있다.
  • 예를 들어 딥러닝을 활용 의료 진단 과정에서 학습하지 않은 유형이라 판단하여 정상이라고 판단할 수 있다.
  • MNIST image에 random Gaussian nosie를 주입한 실험을 통해 $\mathrm{Softmax}$ distribution의 prediction probabiltiy가 confidence와 직접 일치하지 않음을 확인했다.
  • Examaple이 잘못 분류가 되었는지 아니면 학습 데이터와 다른 distribution에서 나온 건지 결정하는 방법을 제공한다.

2. Problem formulation and evaluation

  • 본 연구는 1. error와 success prediction 2. In-distribution과 Out-of- distribution detection 문제에 관심을 두고 있다.
    • error & success prediction : test에서 example을 정확하게 분류하는지 예측할 수 있는지
    • In-distribution & Out-of-distribution detection : test example이 traning data와 다른 distribution에서 나온 것인지 예측할 수 있는지
  • 위 문제를 Threshhold 값과 무관한 두 가지 평가 지표인 AUROC와 AUPR로 다뤘다.

  • AUROC
    • FPR과 TPR을 축으로 그린 ROC 그래프 아래의 넓이
    • AUROC는 positive example이 negative example 보다 더 큰 확률로 해석될 수 있어 데이터 불균형에 영향을 받는다.
  • AUPR
    • Recall과 Precision을 축으로 그린 PR 그래프 아래의 넓이
    • AUROC를 보완하기 위해 AUPR도 평가 지표로 같이 쓰인다.

3. Softmax prediction probability as a baseline

$$ \mathrm{Softmax}{(x_i)}=\frac{\exp(x_i)}{\sum_j{\exp(x_i)}} $$

  • Softmax는 multi-class classification의 출력층에서 사용되는 활성화 함수이다.
  • $e^x$로 인해 작은 값의 차이도 크게 구분할 수 있는데 이 때문에 잘못된 분류를 야기하게 된다.
  • 출력이 근소한 차이임에도 Softmax를 통과하게 되면 크게 벌어지게 된다.

  • Out-of-distribution이 Softmax 확률값이 비교적 낮은 것을 볼 수 있다.
  • Maximum Sofrmax Probability에 대한 Threshold 적용
    • Softmax 확률값 중 Maximum을 Threshold와 비교하여 Threshold보다 높으면 In-distribution이라 판단하여 classification을 진행하고 낮으면 Out-of-distribution이라고 판단하여 학습 데이터 내에 데이터가 없다고 판단한다.

3.1 Computer Vision

  • 컴퓨티 비전 분야 실험은 MNIST, CIFAR-10, CIFAR-100 등의 데이터셋을 사용하여 성능을 평가하였다.
  • Base와 비교하여 성능이 높은 것을 볼 수 있다.
    • Base 같은 경우는 Random Classifier의 결과로 AUROC에서 Random일때 0.5인 것을 생각하면 된다.
  • ‘Succ’correctly classified examples을 positive class로 취급한다.
  • ‘Err’incorrectly classified example을 positive class로 취급한다.
  • ‘Pred’는 이상값에 대한 maximum probabilty를 mean한 것이며 낮을 수록 이상값을 판단하기 쉽다.

  • Gaussian은 Gaussian noise를 추가한 것이 아닌 완전한 noise 이미지로 out-of-distribution 이미지이다.
  • SUN은 Scene Understanding으로 해당 데이터 셋도 Out-of-distribution 데이터셋이다.
  • Table 2는 In-Distribution과 Out-of-Distribution을 테스트 데이터로 둬 성능을 평가한 결과이다.
  • ‘In’은 in-distribution, correctly classified examples을 positivie으로 하고 predicted class에 대한 $\mathrm{Softmax}$probability를 metric으로 한다.
  • ‘Out’은 out-of-distribution examples을 positive로 하고 probability의 negative를 사용한다.

3.2 Natural language processing

  • NLP 분야에서의 다양한 task에서도 성능을 평가하였다.

3.2.1 NLP - Sentiment classification

  • IMDB 데이터셋을 사용하여 영화 리뷰와 고객 리뷰 이진 감정 분류 성능을 평가하였다.

  • correctly와 incorrectly 분류 example 간 차이가 있음을 알 수 있다.

3.2.2 NLP - Text categorization

  • 뉴스 그룹과 Reuters 뉴스 데이터셋의 주제를 분류하는 성능을 평가하였다.
  • 뉴스 그룹 데이터에는 2만개의 문서가 포함된 20개의 서로 다른 주제가 있다.
  • Reuters 52 데이터셋에는 52개의 뉴스 주제와 9천개가 넘는 뉴스 기사가 있다.

  • 20개 뉴스그룹에서 5개 뉴스그룹 주제, Reuters 8에서 2개 뉴스 주제, Reuters 52에서 12개 뉴스 주제를 제외하고 학습했다.
  • Table 5에서 해당 오류를 감지하는 것을 알 수 있다.

  • Table 6에서도 분포를 벗어난 대상을 감지할 수 있음을 알 수 있다.

3.2.3 NLP - Part-of-speech tagging

  • Wall Street Journal과 Twitter 데이터를 사용하여 텍스트의 품사를 tagging하고 분류하는 성능을 평가하였다.

  • Weblog 데이터는 Twitter보다 더 WSJ에 가깝기 때문에 OOD detection이 어렵다.
  • Weblog보다 Twitter에서 나온 단어의 경우 더 쉽게 detection을 할 수 있음을 알 수 있다.

3.3 Automatic speech recognition

  • TIMIT 오디오와 Aurora-2 데이터셋을 사용하여 음성 인식에서도 성능을 평가하였다.
  • 실제 소음과 중국어 음성 말뭉치 THCHS-30 데이터셋을 테스트로 사용하였다.

4. Abnormality detection with auxiliary decoders

  • $\mathrm{Softmax}$ 임계값에 더해 보조 디코더(auxiliary decoder)를 사용하여 데이터를 더 감지할 수 있도록 했다.

  • 위의 normal classifier와 아래의 입력을 재구성하는 보조 디코더(auxiliary decoder)를 학습한다.
  • 보라색 레이어를 고정시키고 in-distribution data로 먼저 학습시킨다.
  • Out-of distribution data와 In-distribution data를 빨간색 레이어를 통해 학습시켜 해당 data가 OOD이면 0, in-distribution이면 1로 분류하는 task를 수행한다.
  • 결과적으로 noise는 abnoramly class에 clean은 normal class에 속하게 되었다.

4.1 TIMIT

  • TIMIT 데이터셋을 사용

  • abnormality module을 사용하는 것이 정확도를 심각하게 저하시키지 않더라도 분포를 벗어난 examples을 잘 감지하는 것을 볼 수 있다.

4.2 MNIST

  • MNIST 데이터셋을 사용

  • MNIST에서는 향상된 것을 볼 수 있다.

5. Discussion and future work

  • abnormality module을 제시하였다.
  • intra-class variance를 활용하여 똑같이 예측된 class에서 example 사이의 거리고 abnormally high하다면 OOD라고 할 수 있다.
  • RNN도 OOD에 대한 example에 대해 abnormal을 판단할 수 있다.
  • detection에 대해 known-unknwon인지 unknown-unknown인지 세분화(fine-grained) 할 수 있다.

6. Conclusion

  • 다양한 아키텍처와 데이터셋에서 detection을 위한 $\mathrm{Softmax}$ prediction probability baseline을 제시하였다.
  • abnormality module을 제시하여 향후 연구 가능성을 보였다.

[참고]

https://blog.munhou.com/2022/12/01/DetectingOut-of-Distribution Samples with Knn/

https://www.youtube.com/watch?v=ER2kSptX61A