안녕하세요! 이번에도 멀티모달 분야의 논문을 가져와봤습니다. 이번에는 따끈따근한 CVPR 2024 논문을 가져와봤는데요. 논문이 참신하면서도 높은 성능을 달성하여서 꼼꼼히 보고자 리뷰로 작성하게 되었습니다. 그럼 리뷰 시작합니다!
<Introduction>
멀티모달 학습 방법은 다양한 모달리티에 걸친 풍부한 multimodal knowledge를 완전히 통합하는데 어려움을 겪는 경우가 많고, 그 핵심 요인은 본 논문에서는 modality laziness 때문이라고 주장하는데요. 멀티모달 representation 학습에서 일부 모달리티는 다른 모달리티보다 우세한데, 모델은 이러한 우세한 모달리티에 최적화를 먼저 진행하고 다른 모달리티는 무시하는 경향이 있어 최고의 성능을 끌어내기 어렵습니다. 이는 수집된 멀티모달 데이터가 서로 잘 얽혀 있지 않거나 데이터 크기가 다양한 경우가 많기 때문인데요.
최근 연구에서는 최적화 과정에서 dominating modality와 subordinate modality의 영향력의 균형을 맞추기 위해서 몇 가지 연구가 진행되었는데요. 하지만 이러한 방법은 여러 모달리티별 인코더를 동시에 업데이트하기 위해 여러 모달리티의 공동으로 최적화가 필요하기 때문에 하위 모달리티에 대한 적응이 어느정도 저하되어 전반적인 멀티모달 성능이 제한됩니다. 이와는 대조적으로 본 논문에서는 alternating unimodal learning으로 분해하여 개념적으로 다른 방식으로 이 문제를 해결하고자 하였고, 이를 위해 Multimodal Learning with Alternating Unimodal Adaptation (MLA)이라는 방식을 제안합니다. MLA의 핵심 아이디어는 각 모달리티의 인코더를 교대로 최적화하면서 동시에 모달 간 정보를 통합하는 것입니다.
구체적으로, Figure 1에서 볼 수 있듯이, 본 논문의 접근 방식에서 각 모달리티의 예측 기능에는 모달리티별 인코더와 모든 모달리티에 걸쳐 공유되는 head가 포함됩니다. alternating unimodal learning에서는 각 모달리티에 대한 예측 함수가 교대로 최적화되어 모달리티 간 간섭을 제거합니다. 동시에 shared head는 모달리티 간에 지속적으로 최족화되어 기본적으로 모달리티 간 정보를 포착합니다. 그러나 이 최적화 과정에서 head가 새로운 모달리티를 만나면 다른 모달리티에서 이전에 학습한 정보를 잃기 쉬운데, 이를 modality forgetting이라고 합니다. 이 문제를 해결하기 위해 shared head에 gradient modification 방법을 적용하여 모달리티 간 gradient 방향의 직교화를 수행합니다. 모달리티별 인코더와 shared head를 학습한 후에는 test-time dynamic modality fusion 방법론을 추가로 제안합니다. 예측에 기여하는 여러 모달리티 간에는 정보 격차가 존재하므로 각 모달리티의 중요도를 평가하고 이 평가를 사용하여 각 모달리티에 생성된 예측에 weight를 할당합니다. 각 모달리티의 중요성을 측정하는 방법은 해당 모달리타와 관련된 예측에서 관찰되는 uncertainty을 측정하여 구합니다. 이 방법은 한 모달리티의 예측에서 uncertainty가 높을 수록 잘못된 예측을 생성하기 쉽다는 가설에 기반합니다.
위의 내용을 정리하면, 멀티모달 학습에서 alternating unimodal optimization을 도입한 MLA 입니다. 이 접근 방식은 각 모달리티 내에서 상대적으로 독립적인 최적화를 가능하게 할 뿐만 아리라 모달 간 상호 작용도 보존합니다. 또한 MLA는 학습 과정에서 완전한 모달리티와 missing된 모달리티가 모두 포함된 상황에서도 호환됩니다.
<method>
<Multimodal Learning with Alternating Uni-modal Adaptation>
이 파트에서는 본 논문의 저자들이 modality laziness issue를 해결하기 위한 방법인 Multimodal Learning with Alternative Unimodal Adaptation (MLA)를 소개하고자 하는데요. MLA는 Figure 1과 같이 멀티모달 데이터에 대한 기존의 joint training 방식을 번갈아 가며 학습하는 uni-modal training framework의 관점에서 재구성하는 것을 목표로 합니다. 구체적으로 trining phase (Figure 1(a))에서 shared head를 사용하여 모달 간 정보를 유지하면서 각 모달에 대한 인코더를 번갈아 학습하는 방식입니다. 또한 shared head가 이전에 학습한 모달리티 정보를 잊어버리는 것을 방지하기 위해 gradient forgetting mechanism을 사용합니다. inference 가 과정에서 각 모달리티에 대한 예측의 uncertainty를 평가하여 멀티모달 정보를 융합하는 방식입니다. (Figure1(b) 참고). 다음으로, 세 가지 핵심 단계인 alternating uni-modal learning, learning cross-modal information without modality forgetting, test-time dynamic modality fusion을 소개하고자 합니다.
<1. Alternating Unimodal Learning>
앞의 내용을 정리하면 이렇습니다. multimodal learning 상황에서, modality laziness라는 현상은 다른 모달과 함께 학습할 때 정보가 적은 모달을 적절히 최적화하지 못해 결과적으로 최적의 fusion 성능이 떨어지기 때문에 발생합니다. 이 문제를 해결하기 위해 본 논문의 저자는 alternating unimodal learning paradigm 즉, 교대식 단일 모달 학습 패러다임을 제안합니다. 여기에서는 각 모달리티가 독립적인 최적화 과정을 거치므로 모달리티 간 간섭을 제거하여 각 모달리티가 더 유익한 모달리티에 가려지지 않고 최대한의 잠재력을 발휘할 수 있습니다.
M개의 모달리티로 학습하는 문제가 있다고 가정해보겠습니다. 여기서 m번쨰 모달리티의 데이터셋은 $\mathcal{D}_m = (X_m,Y_m)=\{x_{m,k},y_{m,k}\}^{N_{m}}_{k=1}$으로 표현할 수 있습니다. $N_m$은 m의 예제 수를 나타내며, 각 모달리티는 $f_m=g◦h_m$로 공식화된 predictive function으로 연결됩니다. 여기서 $h_m$은 모달리티별 인코더 역할을 하고 함수 g는 모든 모달리티에서 공유되는 head를 나타냅니다. 총 training step이 T라면, 다음과 같이 time step t에서 입력 모달리티 $m_t$를 결정합니다.
각 training step t에서 해당 단일 모달리티 데이터 $D_{m_t}$내의 training example에 대한 predictive risk $L_t$를 최소화하여 멀티모달 모델을 반복적으로 최적화합니다.
여기서 $θ_{m_t},ϕ$는 인코더 $h_{m_t}$, shared head g의 learnable parameter를 나타냅니다. 따라서 MLA는 멀티모달 모델이 dominant한 모달리티 정보만 학습하는 것(즉, modality laziness)을 방지하면서 사용 가능한 모든 모달리티를 풍부하게 표현할 수 있습니다. 또한, MLA는 학습 단계에서 pair를 이루는 멀티모달 데이터가 필요하지 않으므로 missing된 모달리티를 사용한 학습과 같이 modality laziness이 극심한 상황에서도 자연스럽게 적합하다는 점도 주목할 점입니다.
<2.Learning Cross-Modal Information without Modality Forgetting>
멀티모달 학습에서 modality laziness를 방지하기 위해 각 모달에 대한 최적화 과정을 분리하는 것 외에도 모달 간 상호 작용 정보를 캡쳐하는 것도 중요한데요. 각 모달리티에 대한 최적화 프로세스를 분리한 멀티모달 학습은 modality laziness를 완화할 수 있지만 주의할 점이 있습니다. 여러 모달리티 representation을 유지하는 것외에도 모달리티 간의 상호작용을 캡쳐할 수 있어야 합니다. 식(2)에서 모든 모달리티에 걸쳐 shared head g를 이용하여 프로세스 전반에 걸쳐 모달 간 상호 작용을 포착할 수 있도록 합니다. 하지만 이러한 순차적 최적화 프로세스는 새로문 문제를 가져올 수 있는데요. head g는 새로운 모달리티를 학슴할 때 이전에 학습한 모딜리티의 정보를 잊어버리기 쉬운데, 이를 modality forgetting이라고 합니다. 이 문제는 cross-modal information learning의 효율성을 크게 떨어뜨릴 수 있습니다.
논문의 저자는 orthogonal weight modification(직교 가중치 수정)에서 영감을 얻어 새로운 모달리티 학습을 시작하기 전에 shared head g의 파라미터 ϕ의 gradient를 수정하기 위해 각 iteration t에 gradient modification matrix $P_t$를 도입하여 modality forgetting을 해결합니다. 이 gradient modification은 파라미터 업데이트 방향이 이전 모달리티에서 인코딩된 feature에 의해 확장된 평면에 직교하도록 보장하는데요. 따라서 한 모달리티에 gradient을 적용해도 이전 모달리티에 대한 간섭을 최소화할 수 있습니다. 구체적으로 iteration t동안 shared head g의 파라미터 ϕ의 최적화 프로세스는 다음과 같습니다.
여기서 $\mathcal{L}_t$는 식(2)에서 정의한 것과 같습니다
gradient modification matrix $P_t$를 얻기 위해, 논문의 저자는 Recursive Least Square algorithm을 사용하였습니다. 구체적으로 인코더의 평균 output을 다음과 같이 정의합니다.
s는 인코더의 output 차원을 나타낸다고 가정합니다. 각 iteration t에서 해당 modification matrix $P_t \in \mathbb{R}^{s\times{s}}$는 다음과 같이 구할 수 있습니다.
여기서 α는 분모가 0이 되지 않도록 사용된 미리 정의한 하이퍼파라미터 입니다. modification matrix는 학습 전에는 identity matrix로 초기화 됩니다. shared head g에 대한 weight 업데이트 방향을 보정하기 위해 gradient orthogonalization process를 도입합으로써 연속된 모달리티 간의 간섭을 완화하고 모달 간 정보를 보다 효과적으로 포착할 수 있습니다.
<3. Test-Time Dynamic Modality Fusion>
학습 과정에서 모달리티별 인코더와 shared head를 학습한 후에는 inference time 동안 예측을 위해 멀티모달 정보를 효과적으로 통합하는 방법에 중점을 둡니다. 이러한 멀티모달 fusion을 달성하기 위해 각 모달리티 예측에 weight를 부여하는 combination을 사용합니다. 구체적으로 M개의 모달리티가 주어진 test example $(x_r,y_r)$에 대해 다음과 같이 예측을 계산합니다.
여기서 $λ_{m,r}$은 test example r의 label을 예측할 떄의 모달리티 m의 중요성을 나타냅니다. 파라미터 $θ^_m, ϕ^_m$은 각각 인코더 $h_m$, shared head g와 관련된 최적화된 값입니다.
modality importance coefficient $λ_m$의 값을 결정하기 위해 MLA는 한 모달리티의 한 모달리티의 prediction uncertainty가 높을 수록 잘못된 예측을 할 가능성이 높다는 가설 하에 수행됩니다. 따라서 각 모달리티의 중요성을 측정하기 위해 prediction uncertainty를 지표로 사용합니다. 모든 모달티리는 dominanting한지 subordinate한지에 관계없이 강한 uncertainty를 반영할 수 있습니다. 구체적으로 다음과 같이 개별 모달리티의 output에 대한 entropy를 사용하여 uncertainty $e_{m,r}$을 평가하는 것으로 시작합니다.
여기서 Softmax()는 output logits를 probability $p_{m,r}$로 변환합니다. entropy $e_{m,r}$이 높을수록 예측에 대한 신뢰도가 낮아져 fusion 과정에서 importance weight가 작아집니다. 이를 기반으로 모달리티 m에 대한 importance weight를 다음과 같이 계산합니다.
각 모달리티와 관련된 predictive uncertainty을 명시적으로 고려하는 test-time dynamic fusion mechanism을 도입함으로써 MLA는 모달리티별 정보의 불균형이 있는 상황을 보다 효과적으로 처리하여 멀티모달 fusion의 효과를 향상시킵니다. 전체 학습 및 추론 파이프라인은 Algorithm 1에서 확인할 수 있습니다.
<Experiments>
논문에서 사용한 데이터셋은 5개인데요. CREMA-D와 Kinetic-Sound(KS)는 audio-video 데이터셋입니다. Food-101과 MVSA는 image-text 데이터셋입니다. 또한, IEMOCAP 데이터셋을 사용하였는데요. IEMOCAP은 audio-image-text 데이터셋 입니다.
베이스라인의 경우, (1) 기존의 멀티모달 fusion 방법인 summation (SUM), concatnation (Concat), late fusion이, (2) modulation기반 fusion 방법인 FiLM, BiLinear Gated (BiGated), (3)modality-laziness를 해결하기 위한 방법인 OGM-GE, QMF을 사용하여 비교하였습니다.
Table 1을 통해, single modality만 사용한 결과와 모든 모달리티를 사용한 결과를 확인할 수 있습니다. Table 1결과를 통해 몇 가지 주요 insight를 확인할 수 있는데요. 이는 아래와 같습니다.
- late fusion을 제외한 대부분의 기존 fusion 및 modulation기반 방법론들은 modality lazines 문제에 직면한 것을 확인할 수 있습니다. 이는 우수한 모달리티의 성능과 열등한 모달리티 성능 간의 수많은 데이터셋에서 눈에 띄는 성능 격차로 입증할 수 있습니다.
- late fusion 방식은 각 모달리티의 인코더를 해당 uni-modal 데이터에 대해서만 학습시킴으로써 modality laziness를 해결합니다. 그러나 late fusion은 modality laziness를 어느 정도 완화하시만 모든 모달리티의 정보를 통합할 떄 만족스러운 성능을 제공하기에는 부족합니다. 이러한 한계는 주로 cross-modal information을 효과적으로 포착하지 못하기 때문에 발생합니다
- OGM-GE와 QMF 모두 modality laziness를 줄이고 멀티모달 성능을 어느정도 향샹시키는데 기여합니다, 하지만 모달리티 간의 격차를 완전히 해소하지 못하는 모습을 보입니다.
- 대신 MLA는 모든 상황에서 다른 모든 방법보다 일관되게 우수한 성능을 보인 것을 확인할 수 있습니다. 이는 각 모달리티의 정보를 활용하고 cross-modal knowledge를 포착함으로써 modality laziness를 효과적으로 해결하고 멀티모달 학습 성과를 향상시킨 것을 입증합니다.
Table 2에서는 모달리티 missing rate에 따른 성능을 확인할 수 있습니다.
- 모든 방법론이 모달리티 missing rate가 높아짐에 따라 성능이 저하가 나타났습니다. 본 논문의 저자는 Table 1에서 결과에서도 멀티모달 정보를 사용하는 것이 단일 모달리티 정보만 사용하는 것보다 성능이 우수한 것으로 확인된 것처럼 모든 모달리티 데이터를 사용하는 것이 부분적인 모달리티 데이터만 사용하는 것보다 성능이 향상되는 경향이 있기 때문에 예상했던 결과라고 합니다.
- MLA는 일반적인 방법(late fusion 및 QMF)과 missing modality를 해결하기 위해 특별히 고안된 방법(예를 들어 MMIN)을 포함한 모든 missing rate에서 다른 baseline보다 일관되게 우수한 성능을 보였습니다. 이러한 결과는 modality missing 학습이라는 극단적인 상황에서도 modality laziness 문제를 해결하는데 있어 MLA가 효과적이라는 점을 강조하는데요. 이는 single-modal 학습과 test-time dynamic modality fusion 메커니즘을 번갈아 사용하는 것이 효과적이라는 것을 강조합니다.
<Ablation study>
ablation study는 Table 3를 통해 확인할 수 있습니다. alternative unimodal learning framework에서 head weight를 수정하면 단일 모달리티 정보만 사용할 떄와 멀티모달 정보를 사용할 때의 성능이 모두 향상되는 것을 확인할 수 있는데요. 이러한 개선은 modality forgetting을 완하하면서 corss-modal information을 더 잘 통합할 수 있어 single-modal, multi-modal 프로세스 모두에 도움되기 때문입니다. 또한, test-time dynamic fusion을 사용하며면 멀티모달 학습 프로세스를 크게 발전시킬 있습니다. 최종적으로 두 방법을 모두 융합하여 사용함으로써 최고 성능을 발휘할 수 있습니다.
<Analysis of Modality Gap>
논문을 보면서 흥미로웠던 Figure가 바로 Figure3인데요. 이전 멀티모달 논문에서는 이러한 피규어를 본 적이 없어 신선하였습니다. 멀티모달 학습에는 서로 다른 모달리티 정보가 임베딩 공간 내에서 완전히 분리된 두 영역에 위치하는 modality gap이 존재하는데요. 이 modality gap은 모델 성능과 상관관계를 나타내며, 이를 늘리면 멀티모달 학습의 성능을 어느정도 향상시킬 수 있다고 합니다. MLA로 인한 성능 향상을 이해하기 위해 Food101 데이터셋의 test, vision modality의 gap을 시각화하면 Figure 3을 그릴 수 있는데요. (a) concatnation과 (b) MLA와 비교하면 MLA를 사용했을 때 modality gap이 더 커지며, 이는 서로 다른 모달리티를 더 잘 구분할 수 있음을 나타낸다고 합니다.
이렇게 리뷰를 마쳤는데요. 간단한 방법론으로 참신하게 성능을 이끌어 낸 것 같아 읽으면서 감탄사가 나왔던 논문이었던 것 같습니다. 여러 실험도 진행하였고 그것을 증명하기 위해서 여러 실험 및 시각화 자료를 넣은 것을 보면서 역시 CVPR 이랬던것 같습니다. 이제 마루리하도록 하겠습니다. 읽어주셔서 감사합니다.
안녕하세요.
Video grounding task도 결국은 비디오와 text의 결합인데, 아직 모달 간의 alignment에 집중하고 있지 본 연구처럼 모달 간의 관계나 학습 중 gradient 등에 대해서는 고려하지 않는 것 같습니다. 그러한 관점에서 기존의 베이스라인으로 삼아진듯한 late fusion 방식은 각 모달리티를 어떻게 합치나요? 방법론이 하나일 것 같지는 않지만, 대표적으로 활용되는 메소드가 있는지 궁금합니다.
또한 그림 3의 설명에서 이야기해주셨듯 두 모달의 거리가 멀어져 구분이 잘 될수록 성능이 높아지는 이유는 무엇인가요? 머릿속으로는 하나의 샘플에 대한 여러 모달의 feature가 동일한 위치로 임베딩되어야 할 것 같은데, 그러한 관계와 상관 없이 모달에 따라 멀리 임베딩되는 것이 좋다고 하는 이유가 궁금합니다.
안녕하세요 김주연 연구원님 좋은 리뷰 감사합니다.
Alternative unimodal learning을 보면 여러 모달리티를 어떤 순서로 학습시키는지에 따라 성능이 달라질 것 같은에 해당 논문에서는 어떤 기준으로 모달리티 순서를 결정하였는지 궁금합니다.
그리고 [표1]의 실험에서 MLA를 제외한 방법들은 late fusion방식을 사용하였다고 하셨는데 이때 동일한 구조의 head를 통해 학습된 결과인가요?
또한 [표3]에 대해 질문이 있는데요, 서로 연결된 vision feature과 text feature는 동일한 sample을 나타내고 있는 것인가요? 또한 해당 실험 결과는 modality gap과 모델 성능간의 상관 관계를 나타낸다고 하셨는데, modality gap이 커짐으로써 서로 다른 모달리티 간의 구분력이 증가한다는 것은 확인했으나 이에 대해 저자들이 추가적으로 분석한 것은 없었는지 궁금합니다.
안녕하세요 주연님 좋은 리뷰 감사합니다.
modality laziness를 해결하기 위하여 모달리티를 교대로 최적화를 한다고 언급해주셨는데, 교대로 최적화를 할때에도 어떤 모달리티를 먼저 최적화시키는 지에 따라 성능이 달라질 것으로 예상이 되는데 논문에서는 이에 대한 언급이 있었는지 궁금합니다.
감사합니다.