- 2024년 9월 27일 오전 9:47
- 조회수: 29514
INFORMATION
- 2024년 9월 27일
- 오전 10시 ~
- 온라인 비디오 시청 (YouTube)
TOPIC
On-Line Video
OVERVIEW
[2] Rui Huang, Andrew Geng, and Yixuan Li. On the importance of gradients for detecting distributional shifts in the wild. Advances in Neural Information Processing Systems, 34, 2021.
[3] Lin, Ziqian, Sreya Dutta Roy, and Yixuan Li. "Mood: Multi-level out-of-distribution detection." Proceedings of the IEEE/CVF conference on Computer Vision and Pattern Recognition. 2021.
[4] Wang, Haoqi, et al. "Vim: Out-of-distribution with virtual-logit matching." Proceedings of the IEEE/CVF conference on Computer Vision and Pattern Recognition. 2022.
발표자 후기
Out-of-distribution detection은 신뢰 가능한 인공지능 모델 구축을 위해 해결해야 하는 중요한 문제 중 하나이다. 실제로 매우 활발히 연구가 진행되는 분야이며, 여러 접근법을 통해 이 문제를 해결하기 위해 노력하고 있다. OOD detection에서 가장 핵심이 되는 부분은 ID와 OOD의 차이점이 두드러지는 부분을 발견하고 이를 활용하여 OOD score function을 정의하는 것이다. 이번 세미나에서는 지난 세미나에 이어서 여러 관점에서 ID와 OOD의 차이를 발견하고 이를 score function으로 정의하는 논문들을 소개하였다. 점점 AI 기술들이 현실 세계에 적용되어 가면서 OOD 탐지 문제 역시 중요해지고 있다. 이 세미나를 통해서 OOD 탐지에 대한 기본적인 개념과 방법론이 잘 전달되었으면 한다.
청취자 후기
OOD Detection에 대해 진행되었다. OOD Detection은 이미지 분류에서 보지 못한 Class가 들어왔을 때, Unknown으로 분류하고자 하는 목표를 갖는다. 소개한 방법론들의 특징은 아래와 같다.
1) ReAct: “OOD 발생 원인은 특정 Feature Map의 Overconfidence 때문이다.” 라는 것에서 출발한다. 일반적으로 OOD일 경우 Feature Map 값이 크기에, 큰 Feature Map에 대하여 Clipping해주는 방법을 적용한다. 이때 Clipping 기준은 ID 데이터 Feature Map의 90분위수 값을 활용한다. 개인적으로는 BatchNorm이 이러한 불안정한 Feature Map의 원인이라는 분석이 인상깊었다.
2) GradNorm: 예측 확률 분포와 Uniform 분포 간 KLD를 역전파한 Gradient로 OOD를 색출한다. 이때 간단하게 KLD를 쓰는 것보다, Gradient를 쓰는 이유는 Feature Space와 Output Space 정보를 모두 고려하기 위함이라고 주장한다.
3) ViM: Logit 정보를 갖고있는 정도와 ID와 분포 유사성을 고려한다. Logit 정보를 갖고있는 정도는 Column space와 각도를 통해 산출하고, ID와 분포 유사성은 Orthogonal Principal Space와 각도를 통해 산출한다. 이를 실제 모델에 구현하는 과정은 Feature Vector에 대해 산출한 후, Logit 정보를 바탕으로 이들을 정규화하고, Thresholding 하여 달성할 수 있었다.
4) MOOD: 특정 Feature Map만으로 OOD를 찾아내고자 한다. 각 데이터 별 Exit을 다르게 가져가며, 이때 데이터 별 Exit을 고려하기 위해 이미지 복잡도(이미지 용량)를 고려한다. 추가적으로, 각 Exit마다 Threshold를 다르게 설정해야 하는 문제를 가질 수 있지만, 개별 이미지 Score에서 각 Exit의 평균 Score를 빼줌으로써 해결하였다.
이번 세미나를 통해 OOD Detection에 대해 심도있게 볼 수 있었다. 본 논문을 봤다면 굉장히 어려웠을 것 같은데, 명쾌한 설명으로 쉽게 이해할 수 있었다. 대다수 연구들이 Score를 어떻게 정의하냐에 따라 성능이 크게 갈리는 것 같다. 향후 Semi-supervised Learning처럼 Thresholding이 필요한 분야 연구를 하게 된다면, 본 세미나가 큰 도움이 될 것 같다. 유익한 세미나를 준비해준 임새린 연구원님께 고맙다는 말을 전하며 세미나 후기를 마친다.
이번 세미나는 이미지 OOD Detection에 대해 진행되었다. 현실 세계에서는 항상 모델이 학습한 class만 존재하지는 않기 때문에 이 분야도 매우 중요한 분야라고 할 수 있다.
먼저 ReACT는 feature map의 overconfidence 현상을 방지하기 위해 제안 되었다. Feature vector 딴에서 rectifying과정을 통해 max logit 값을 조정하여 overconfidence를 방지하게 된다. Rectifying하는 threshold는 ID 데이터에서의 90%로 잡았고 이에 관한 ablation 실험 또한 진행하였다. Classifier와 제일 근접한 마지막 layer에서의 ID 와 OOD 데이터의 feature 분포 차이가 가장 크다는 것을 시각화를 통해 보여준 것도 흥미로운 해석이었다.
GradNorm은 KL divergence의 gradient를 통해 feature space 및 output space의 정보를 모두 적절히 활용할 수 있도록 하였다. 이 부분에서는 친절히 미분 과정을 설명해주어 이해하기 용이했다.
Vim은 주성분 공간을 활용하여 residual을 계산하였고 이를 ID class에 대한 logit 값과의 스케일을 맞춰준다. 그 후 OOD class에 대한 threshold를 설정하고 OOD logit 값이 해당 threshold보다 크면 OOD class로 분류하도록 하였다. 다만 앞선 방법론인 GradNorm에 대한 설명이 논문에서 related works에는 있지만 비교를 따로 하지 않은 것이 의문이었다. (논문을 자세히 읽어보지는 않아서 한 번 읽어 볼 필요가 있는 것 같다.)
마지막으로 MOOD는 각 데이터셋의 이미지 복잡도를 이미지 용량을 통해 정량화하여 최적의 exit를 할당하였다. 또한, 각 layer들의 adjusted energy score를 통해 global한 threshold를 사용하였다. Dynamic exit를 통해 MOOD는 연산적인 측면에서도 큰 기여점을 가져갈 수 있었다.
본 세미나를 통해 OOD에 대해 접해볼 수 있었다. 상세한 수식 설명과, 선형 대수의 기초적인 부분도 리마인드 해주어 전반적인 내용들을 이해하기 용이했다. 첫 연구로 이상치 탐지에서 이상치 스코어의 dynamic threshold에 대해 진행했었는데, 이 분야에서도 threshold를 적절한 값으로, 혹은 dynamic하게 적용할 수 있다면, 이러한 부분도 큰 연구 방향이 될 수 있을 것 같다. 좋은 세미나를 준비하느라 고생한 새린이형에게 고맙다는 말을 전하며, 본 세미나 후기를 마친다.
Semantic Distribution Shift 상황에서 OOD 데이터를 탐지하는 세미나로 지난 새린이형 세미나의 후속작이다. 시작하기에 앞서 이전 세미나의 내용에서 이어지는 내용이라 다시 훑어보고 듣느라 이해하는데 조금 오래 걸렸다. 다룬 논문은 총 4개로 ReAct, GradNorm, ViM, MOOD 순으로 진행되었다.
ReAct - 이전 세미나에서 다뤘던 ODIN, Mahalnobis, Energy Score 등의 기타 다른 OOD 방법론에 상호보완적으로 적용할 수 있는 방법론으로써, Feature Activation을 Rectifying하여 OOD 데이터의 Overconfidence를 낮추는 기법이다. 모델에 상관없이, 그리고 적용하는 OOD 스코어 기법에 상관없이 일관된 성능 향상을 보여주었으며, 독립적인 방법론이라기보다는 이전 방법론들을 고도화할 수 있는 첨가물 같은 느낌이다.
GradNorm - Uniform Distribution과 Logit Distribution의 KL Divergence에 대한 Gradient를 통해 OOD 스코어를 구하는 방법론이다. OOD일수록 Confidence가 낮아 Uniform Distribution과 비슷할 것이라는 가설이 기저에 깔려있다. KL Divergence만 쓰면 될 것을 굳이 Gradient까지 구해야하나? 라는 생각이 들었을 때 바로 다음 장에 그에 대한 이유로써 수식과 증명이 나와서 좋았다.
ViM - 선형대수 때 배워서 가물가물한 Null Space와 Column Space등이 나왔다. 처음에는 당연한거 아닌가라고 듣고 있다가, NuSA에서 이를 기반으로 OOD Score를 구하는 과정을 보고 놀랐다. NuSA에서 ViM으로 바뀌는 핵심은 Feature Space가 아니라 Principal Space에서 구하는 것인데, 완벽히 이해하려면 NuSA를 정독하고 다시 들어야할 것 같다.
MOOD - 다른 방법론들이 OOD Score를 구하는 아이디어들에 초점을 둔 논문이라면, MOOD는 효율성 측면에서 접근한 논문이다. MOOD는 중간 모델을 끝까지 forwarding하지 않고, 중간 단계에서 OOD Detection을 할 수 있게한 방법론으로써, Exit의 판단 기준은 이미지 압축 정도에 기반한 데이터 복잡도에 기반한다.
질 좋은 세미나를 만드느라 고생한 새린이형에게 감사의 말을 전한다.
최근 개인연구 때문에 OOD generalization 논문을 많이 찾아 읽고 있는데, 이번 새린님이 준비하신 세미나에서 OOD란 semantic shift가 일어난 상황으로 특정된다. 사실 개인연구는 covariate shift와 관련된 것들인데, 이렇게 'OOD' 단어가 혼용되는 만큼 이 개념을 인트로에서 명확하게 짚으주신 점이 좋았다. 특정 분야에서 사용되는 용어와 개념을 명확히 짚어주는 세미나는 어쩐지 믿고 듣게 된다. 그리고 세미나의 흐름을 어떻게 끌고 갈 것인지에 대한 부분에서도 좋은 참고자료가 될 것 같다.
1. 인트로를 들으면서, 딥러닝 학습 시 어떤 요인이 ood 데이터에 대해서 overconfidence한 경향을 보이게끔 할까?라는 질문이 들었다. 그리고 이 의문이 첫 번째 논문 ReAct에서 바로 해결될 수 있어서 너무 좋았다. ReAct라는 논문은 (이미지 분류 문제에서 CNN을 사용한다는 가정 하에) 마지막 block의 feature map activation으로 confidence의 고저가 결정된다는 사실을 고려할 때, ID와 OOD 샘플의 feature map을 분석하는 것으로 연구를 시작한다. 이때 주목할 만한 점은 ID 데이터는 모든 feature map의 통계량이 일정한 반면, OOD 데이터는 특정 feature map의 통계량이 커지는 (과활성화) 현상을 발견했다는 것이다. 이를 통해 ReAct는 과활성화된 값을 threshold로 조정하여 잘라내어 OOD의 overconfidence를 완화할 수 있음을 실험적으로 보여준다. 개인적으로는 이렇게 유의미한 EDA를 통해 연구 방법론에 대한 동기를 직접적으로 밝히는 연구들을 좋아해서 관심있게 들었다.
1-1. 다음으로 든 질문은 과활성화는 왜 일어날까?에 대한 것이었는데, 이 역시도 세미나에서 잘 다루어주었고, 논문 저자들은 이를 BN의 통계량 때문이라 언급한다. 즉, ID 데이터의 통계량과 OOD의 통계량이 다른데, 우리는 ID의 것을 사용해 BN을 수행하니, feature map 패턴이 달라진다는 것이다.
1-2. 더불어, (ReAct도 물론 그러하지만) well-calibrated 모델을 구축해내는 것도 ood detection을 위한 하나의 좋은 방법이 될 것 같다는 생각이 들었다.
2. OOD detection 방법론의 핵심 골자는 'OOD를 판별할 수 있는 정량화된 기준', 즉 ood score를 만들어내는 데 있다고 이해했다. GradNorm은 이 score로서 gradient의 p-norm (논문에서는 L1-norm을 쓴 모양이다)을 이용하는 연구다. 보다 구체적으로는 예측 확률 분포 p와 uniform distribution (u) 간의 KL div.에 대한 gradient를 이용한다.
2-1. 가정은 ID data가 OOD data보다는 uniform distribution과의 KL-div 차이가 크다는 데 있는데 (즉 OOD는 p의 entropy가 높을 것이라는 가정), 이는 ReAct에서 지적했듯 OOD임에도 모델이 과대확신을 하는 overconfidence 경향 때문에 naive한 접근법이지 않을까? 하는 우려가 들었다.
2-2. 더불어, 왜 단순히 KL-div.를 쓰지 않고 복잡하게 graident norm을 사용하는가?에 대한 질문이 자연스럽게 들었는데, 해당 부분은 새린님이 KL(u||p)의 gradient가 어떻게 계산되는지 전개까지 해주시고, gradient 내에는 feature space와 output space의 정보가 함께 종합되어 있으므로 output space만을 고려하는 KL보다는 더 풍부한 정보를 나타낼 수 있음을 증명해주신 부분이 참 좋았다. (+덧붙여 관련한 실험 결과도 보니 더욱 납득이 갔다)
3. Vim이라는 방법론을 들을 때 인상 깊었던 것은, OOD detection을 위한 방법론 (e.g., feature space 기반, logit space 기반, softmax prob. 기반) 별로 장단점이 있으며, 이것이 OOD 데이터의 특성에 따라서 성능을 가르는 요소가 된다는 점을 짚었던 점이다.
3-1. 선행연구 NuSA는 linear classifier 파라미터 w의 col. space가 logit 정보를 대변할 수 있음을 밝혔고, 이에 나아가 Vim은 주성분 공간을 통해서 ID 데이터 분포에서 얼마나 벗어나는지(주성분 공간과 직교하는 orthogonal space와의 차이)를 함께 고려한다. 즉, feature space와 logit space를 종합적으로 고려한 것이다.
3-2. 단순히 기존 방법론들의 장점을 잘 합쳐 놓은 것이 아닐까 싶지만, 수학적 증명을 통해 방법론의 당위성을 잘 증명해 놓았던 점에서 설득력이 높은 연구였다. 좋은 근본 연구를 위해서는 역시 선형대수가 중요하다는 것을 다시 한 번 느낄 수 있었다..
4. 마지막 연구인 MOOD는 OOD score를 직접적으로 개발한 연구라기 보다는 문제 상황을 조금 바꾸어서 <쉬운 OOD는 쉽게 탐지하자>는 목적을 가지고 효율적인 탐지에 주목한 연구이다. 이미지의 용량을 데이터의 복잡도로 치환해서 다룬다는 아이디어가 좋았고, adjusted energy score를 개발한 지점이 흥미로웠다. 단순한 학습 테크닉의 일종이라 하더라도, 이런 기술들도 머리를 싸매지 않으면 나오지 않는 것이니 유사한 문제를 풀 때 가져다 활용해볼 수 있을 듯 하다.
Part 1부터 Part 2까지 OOD detection의 흐름을 막힘 없이 짚어낸 고퀼 세미나를 들을 수 있어서 참 좋았다. 새린님 다음 세미나도 기대된다.
이미지 분석에서의 OOD detection에 관한 세미나를 청취하였다. 총 4가지의 OOD detection 알고리즘에 대해 자세히 알아갈 수 있었고, 각 방법론별 중요 내용은 아래와 같다.
1. Yiyou et al. (2021)은 CNN의 last feature map의 활성화 정도에 따라 ID 데이터와 OOD 데이터를 어느정도 구분할 수 있음을 실험적으로 밝혀냈다. 저자들은 이에 대한 주요 이유로 batch normalization 통계량을 내세웠으며, 결과론적으로는 OOD 데이터에 대한 feature map 활성도가 ID 데이터에 대한 활성도보다 주로 큰 경향을 나타내고 있음을 밝혀냈다. 이러한 경향은 OOD 데이터에 대한 overconfidence 경향을 만들어주기 때문에, 이에 대한 해결책으로 모델 feature map의 활성화 정도를 어느정도 clipping할 것을 제시하였다. 제시 이후에, 기존 OOD score들을 활용해보니 많은 성능 향상이 존재하였다.
2. Rui et al. (2021)은 분류기의 예측 확률 분포와 uniform 분포 사이의 KL divergence를 산출한 뒤, 이에 대한 gradient norm을 계산하여 OOD detection을 수행하였다. 해당 gradient norm이 유의미한 OOD detection score로서 어떻게 그리고 왜 활용될 수 있는지 분석한 논문이었다. 개인적으로는, last parameter에 대한 gradient norm만으로도 유의미한 분석이 될 수 있음을 보이는 실험 결과가 인상 깊었다.
3.Wang et al. (2022)은 feature space에 대해 주성분 분석을 수행하고, 해당 주성분 space에 대한 직교여공간을 형성한 뒤, 해당 공간에 대한 projection을 진행하여 획득한 벡터의 길이를 통해 OOD score를 정의하였다(특징 벡터 공간으로부터 얼마나 멀리 떨어져있는지를 근사한 값으로 이해할 수 있다). 해당 score에 대한 일부 전처리를 수행하여 최종적으로 OOD detection을 수행한다.
4. Lin et al. (2022)은 본인이 평소에 잘 모르던 분야(adaptive inference networks, AIN)에서의 OOD detection 방법을 제시하였다. OOD detection을 수행하는 원리 자체는 기존 energy score를 활용하는 것이었다. 본 논문의 저자들은 해당 방법을 어떻게 AIN 모델 내에서 활용할 수 있을지 연구하였다. AIN 모델 자체에 대해서는 참 인상 깊었는데, 머리 속 어딘가에 잘 적립해두어야 겠다.