본문 바로가기
카테고리 없음

[논문리뷰] Calibrating Multimodal Learning

by 3분 19초전 2023. 10. 28.

 

 

최근 인공지능 학회중 하나인 ICML 2023 에 발표된 Calibrating Multimodal Learning 에 대해 리뷰해보겠다. 논문 제목 Calibrating Multimodal Learning에서 예상할 수 있듯이 본 논문에서는 Multimodal model을 Calibration 하는 학습 방법을 제시한다. Calibration이라는 개념을 이해하기 위해서는 Multimodal model learning이 무엇인지 알아야 되고 calibration 을 하는데 사용되는 confidence에 대한 개념부터 알아야 한다. multimodal model의 개념과 confidence의 개념에 대해 먼저 알아보고 그다음에 본 논문의 아이디어에 대해 알아보자.

Calibrating Multimodal Learning 을 이해하기 위해 필요한 개념

이 논문에서는 classification 을 위한 multimodal model에 대해서만 다루고 있다는 것에 유념하며 이 글을 읽으면 이해하는데 도움이 될 것이다. 

Multimodal classification model 개념 및 기호 정리

$\mathbf{D} = \{ \{x_i^m\}_{m=1}^M , y_i\}_{i=1}^N$을 학습에 사용될 데이터 셋이라고 하자.

여기서 $x_i^m$은 $i$번째 sample의 $m$ 번째 modality 입력을 의미한다.

$y_i \in \{1,2,..,K\}$는 $i$번 째 sample 의 class label이다.

$\mathbf{S} \subset \{1,2,...,M\}$을 M개의 multimodal index set의 부분집합이라고 하자.

그러면 $x^{\mathbf{S}}$는 $\mathbf{S}$가 표시하는 modality에 대응되는 벡터만을 모아둔 set이 된다.

예를들어 $\mathbf{S} = \{ 1, 3\} $이라면 $x^{(\mathbf{S})} = \{ x^1, x^3 \}$는 1번째와 3번째 모달리티에 대응되는 feature만 모아둔 set이 된다.

특히 모든 모달리티 M개를 표현하는 index set은 $\mathbf{M} = \{1,2,3,...M\}$라고 표시한다.

Multimodal classification model 은 $f$라고 표시하고 $x^{(\mathbf{M})}$가 어느 class label을 갖는지 예측하는 역할을 한다.

$z = f(x^{(\mathbf{M})})$는 $K$차원의 벡터가 나오고 이것을 이용해서 $x^{(\mathbf{M})}$가 각각의 $k \in \{ 1,2,...,K\}$에 class에 속할 확률을 추정한다. 

$$ \hat{p}_k = e^{z_k} / \sum_{k} e^{z_k}$$

여기서 $\hat{y} = argmax_k \hat{p}_k$는 $f$가 예측한 $x^{(\mathbf{M})}$의 class label이라고 한다.

확신정도 Confidence 정리

위에서 정의된 $\hat{p}_k$를 이용하여 모델 $f$의 $x^{(\mathbf{M})}$에 대한 confidence 를 $Conf(x^{(\mathbf{M})})=max_k \hat{p}_k$라고 정의한다.

이것을 해석하자면 모델이 $f$이 $x^{(\mathbf{M})}$가 $\hat{y}$ 라는 class일것이라고 예측하였을 때, 이 예측에 대하여 $f$가 가지고 있는 확신의 정도를 confidence라고 얘기하고 있다.

Calibrating Multimodal Learning 에서 제시하는 아이디어

위에서 Confidence라는 개념에 대해 알게되었다. $M$개의 모달리티 중 몇개의 모달리티를 제외하고 $f$의 입력으로 넣는다면 confidence는 어떻게 될까? 이 논문에서는 입력으로 사용하는 모달리티의 갯수를 줄인다면 confidence가  작아져야 한다고 주장한다. 모달리티가 많다는 것은 그만큼 다양한 측면을 보고 결정하는 것이라 생각할 수 있다. 모달리티의 갯수가 작아진다는 것은 관찰할 수 있는 정보가 줄어든다고 해석할 수 있다. 모달리티가 줄어들면 확인할 수 잇는 정보의 양이 작아지므로  분류모델 $f$이 확신하는 정도인 confidence가 줄어드는 것이 정상일 것이다. 이것을 정리하자면 $ \mathbf{T} \subset \mathbf{S} $라면 $Conf(x^{(\mathbf{T})}) < Conf(x^{(\mathbf{S})}$이어야 한다는 의미이다. 그런데 이 논문에서는 기존의 멀티모달 방법들이 $Conf(x^{(\mathbf{T})}) < Conf(x^{(\mathbf{S})}$이 성립하지 않다는 것을 보여준다. 모달리티가 제거 되었는데 Confidence가 작아진다는 것은 분류모델 $f$가 제거된 모달리티에 의존하고 있다는 것을 암시한다고 주장한다. 특정 모달리티 말고 여러 모달리티에 대해서 정보를 충분히 추출한다면 $Conf(x^{(\mathbf{T})}) < Conf(x^{(\mathbf{S})})$이 성립해야 한다고 주장한다. 이 논문에서는 $Conf(x^{(\mathbf{T})}) < Conf(x^{(\mathbf{S})}$이 되는 방향으로 학습을 해야한다고 주장한다.

Calibrating Multimodal Learning 학습을 위한 loss

앞서 말했듯이 $Conf(x^{(\mathbf{T})}) > Conf(x^{(\mathbf{S})}$라는 것은 제거된 모달리티에 너무 의존한다는 것을 의미한다고 볼 수 있다. 특정모달리티에 의존하지 않기 위해  $Conf(x^{(\mathbf{T})}) < Conf(x^{(\mathbf{S})}$ 가 되도록 아래와 같은 loss term을 추가해야 한다고 주장한다.

$$L_{CML} = ReLU( $Conf(x^\mathbf{T}) - Conf(x^\mathbf{S})$$

Detail한 설명이 더 필요하지만 이 loss를 이용한다면 분류모델이 다양한 모달리티를 확인할 수 있도록 하는 규제(regularization) 효과를 얻을 수 있다고 한다. 이 논문의 핵심아이디어인 loss를 소개하면서 이논문에 대한 소개를 마치겠고 마지막으로 나의 아이디어를 제시해본다.

Calibrating Multimodal Learning 개선 아이디어

이 논문에서는 사용하는 모달리티가 줄어들수록 멀티모달 모델 $f$가 확신하는 정도인 confidence가 줄어야 한다고 주장한다. confidence는 모델이 참값이라고 추정한 클래스에 대한 수치만 갖고 있지 다른 클래스에 대해서는 알 수가 없다. 모든 클래스에 대해 멀티모달 모델이 어떻게 생각하는지를 알기 위해서는 confidence보다는 softmax값의 Entropy를 보는 것이 더 합리적일 것이라 생각한다. 엔트로피는 불확실함의 평균이라는 개념인데, feature를 더많이 쓸수록 (사용하는 모달리티)가 많아 질수록 엔트로피는 줄어들것이라고 생각한다. 따라서 모달리티를 줄였을 때 엔트로피가 커지게끔 유도하는 학습 방법을 고려해도 되겠다.