논문 링크 : https://arxiv.org/abs/2006.16228
BackGroud
기존 연구들의 한계점을 살펴보자.
- 모달리티 간의 관계를 충분히 고려하지 않음
- 이전 연구들은 종종 시각, 음향, 언어 등의 다중 모달 데이터를 독립적으로 처리하거나 제한적인 방식으로만 고려하여 모달리티 간의 복잡한 상호작용을 충분히 반영하지 못했다.
- 성능 제한
- 기존 다중 모달 학습 방법은 종종 성능이 한정되거나 일부 모달리티에 치우친 결과를 얻는 경우가 있었으며, 다양한 모달리티 간의 상호작용을 고려한 효과적인 표현 학습이 부족했다.
- 모달리티 간의 특성 미고려
- 기존 연구들은 종종 시각, 음향, 언어 등의 모달리티 간의 특성과 세부적인 차이를 고려하지 않고 일반적인 방식으로 다루어서 세밀한 표현을 유지하기 어려웠다.
위와 같은 상황 속에서 해당 논문에서 제시한 MMV와 기존 연구와의 차별점은 아래와 같다 :
- 다중 모달 데이터의 상호작용 고려
- 이 연구는 시각, 음향, 언어 등 다양한 모달리티 간의 상호작용을 고려하여 효과적인 표현 학습을 목표로 한다. 기존 연구들보다 모달리티 간의 관계를 더 깊이 파악하고 이를 반영하는 방법을 제시.
- 자기 지도 학습을 통한 효율적인 표현 학습: 본 연구는 자기 지도 학습을 활용하여 레이블이 없는 데이터에서 효과적인 표현을 학습하는 방법을 제안합니다. 이를 통해 데이터의 내재된 구조를 활용하여 다중 모달 데이터의 표현을 개선합니다.
- 정적 이미지 처리를 위한 새로운 접근 방식: 이 연구는 MMV 비디오 네트워크가 정적 이미지를 효율적으로 처리할 수 있는 방법을 제시합니다. 기존에는 주로 동적 비디오 데이터에 중점을 두었던 반면, 이 연구는 정적 이미지에 대한 처리 방법을 새롭게 제안합니다.
- 다양한 하류 작업에서 우수한 성능 입증: 본 연구는 학습된 표현이 다양한 이미지, 비디오, 오디오 및 비디오-텍스트 하류 작업에서 우수한 성능을 보여주며, 이를 통해 다중 모달 데이터의 효과적인 표현을 입증합니다.
이러한 차별점들을 통해 이 연구는 기존 연구들과 비교하여 보다 효과적이고 다양한 모달리티 간의 상호작용을 고려한 다중 모달 학습 방법을 제안하고 있다.
Approach
self supervised multimodal versatile networks 논문은 비디오에서 자연스럽게 존재하는 세 가지 모달리티(시각, 청각, 언어)를 이용하여 자기 지도 학습을 통해 표현을 학습하는 방법론을 제안하였다.
MMV: MultiModal Versatile Networks
모달리티 공간 구성
모달리티 공간 구성은 각 모달리티(visual, audio, text)를 벡터 공간에 임베딩하여 간단한 내적 연산을 통해 모달리티 간의 유사성을 측정하는 구조를 의미한다.
MMV: MultiModal Versatile Networks에서는 다음과 같은 방식으로 모달리티 공간을 구성하였다.
각 모달리티의 임베딩
- 각 모달리티가 사용하는 인코더는 다음과 같다
비디오 | TSM |
오디오 | WaveNet |
텍스트 | BERT |
>각 인코더는 입력 모달리티를 임베딩 벡터로 변환한다.
- 각 모달리티(시각, 음향, 언어)는 해당 모달리티의 특성을 가장 잘 표현할 수 있는 벡터 공간에 임베딩된다. 이를 통해 각 모달리티의 특징을 보다 명확하게 표현할 수 있다.
내적 연산을 통한 유사성 측정
- 각 모달리티가 벡터로 표현되면, 간단한 내적 연산을 통해 모달리티 간의 유사성을 측정한다. 예를 들어, 두 벡터 간의 내적 값이 클수록 해당 모달리티 간의 유사성이 높다고 볼 수 있다.
모달리티 간의 상호작용
- 각 모달리티가 벡터 공간에 임베딩되어 있기 때문에, 다양한 모달리티 간의 상호작용이 가능해진다. 이를 통해 시각적 정보, 음향적 정보, 언어적 정보 등을 효과적으로 결합하여 다중 모달 데이터를 표현하고 이해할 수 있다.
모달리티 임베딩 그래프
해당 논문에서는 3가지 모달리티를 다루기 때문에, 서로 다른 상호 관계를 가진 모달리티 공간을 여러개 구상할 수 있으며, 이를 모달리티 임베딩 그래프라고 한다.
중요한 점은 텍스트 데이터는 ASR을 사용하여 오디오에서 직접 얻기 때문에 오디오-텍스트 공간을 구성한다거나 또는 이 두 모달리티 간의 직접적인 loss 구성하지 않는다는 것이다.
왜냐하면 ASR을 학습하는 것이 목표가 아니라 "자동차"와 같은 단어를 해당 개체와 연관된 소리(예를 들어 엔진에서 발생하는 소리)와 연관시키는 것을 학습해야 하기 때문이다.
이를 위해서 해당 논문에선 모델이 common visual background 덕분에 원하는 link를 암묵적으로 학습할 수 있다고 가정한다. 이에 해당 논문에서는 3가지 모달리티 임베딩 그래프를 고려하였다.
Option I: Shared space
- 모든 모달리티가 하나의 공유 벡터 공간에 임베딩됨
- 모든 모달리티 간의 직접적인 비교가 가능
- 각 모달리티가 동일한 공간에 투영되어 있음
- visual, text, audio 모달리티가 공통된 벡터 공간을 공유하며 상호작용
- 모든 모달리티 임베딩이 같은 공간에 있기 때문에, 모달리티 간의 탐색이 용이하다는 장점이 있지만, 같은 공간에 있어서 modality-specific하지 않다는 단점이 있다.
Option II: disjoint space
- 두개씩 짝을 지어 하나의 공간에 임베딩 됨
- V-A , V-T
- visual 모달리티에 대한 f_v(x_v)에서 나온 두 개의 projection head가 각각 S_va와 S_vt 으로 매핑
- modality-specificity 가능
- 모달리티 간의 탐색이 어렵다. (text to audio)
Option III: Fine and coarse spaces (FAC)
- 비전, 오디오, 텍스트와 같은 다양한 모달리티 간의 관계를 모델링하고자 하는 목적을 가지고 있음
- video와 audio는 granuality 측면에서 서로 다른 언어적 도메인을 가지고 있으며, 이에 두가지 임베딩 공간을 제안
- vision과 audio를 fine-grained space(S_va)에서 비교하고, 텍스트는 낮은 차원의 coarse-grained space(S_vat)에서 비교하는 방식을 제안
- 이는 비전과 오디오의 세밀한 특성을 고려하면서, 텍스트는 더 일반적인 관점에서 처리함으로써 모달리티 간의 차이를 적절히 다루는 방법이라고 말할 수 있다.
- 또한, FAC 방법을 사용하면 vison representaion을 S_va로 투영하여 오디오와 비교할 수 있다.
- 동시에 vision representation은 낮은 차원의 공간 S_vat로 투영되어 텍스트와도 비교할 수 있다.
- 이를 통해 세밀한 비전-오디오 관계와 일반적인 비전-텍스트 관계를 모두 고려할 수 있다
⇒ 이러한 옵션들을 통해 MMV 네트워크는 다양한 모달리티 간의 관계를 모델링하고, 각 모달리티의 특성을 존중하면서도 효과적인 다중 모달 데이터 표현을 학습한다.
⇒ 이는 각 모달리티의 특성을 존중하고 유사성을 측정하기 위한 기반을 제공한다.
💡 text와의 공간이 아닌, audio와 visual 공간을 따로 만든 이유는?
- 시각과 음향의 관련성(예를 들어, 영상에서 특정 사물이 등장할 때 해당 사물에 대응하는 소리가 함께 들릴 수 있다거나 등등)
- 이러한 관련성을 고려하여 시각과 음향 모달리티를 공유하는 벡터 공간을 만들어 상호작용을 모델링 하기 위함
- 시각과 음향은 많은 경우에 서로 관련이 있을 수 있음.
- 시각과 음향은 자연스럽게 상호작용하고 유사성을 갖는 경우가 많기 때문에, 이 두 모달리티를 공유하는 벡터 공간을 만들어 시각과 음향 간의 관계를 강조하는 것이 중요하다고 판단하여 이를 통해 시각과 음향 정보를 효과적으로 결합하여 다중 모달 데이터를 처리
- Text의 특성
- Text는 보다 추상적이고 의미론적인 정보를 담고 있으며, 시각과 음향과는 다른 방식으로 처리되어야 한다. 따라서, 시각-음향 공간과 별도의 text 공간을 만들어 각 모달리티의 특성을 존중하고 효과적으로 모델링할 수 있
- Text 모달리티는 시각과 음향과는 다른 특성을 가짐.
이러한 이유로 시각-음향 공간을 중심으로 모델을 설계하고, text와의 공간을 따로 만들지 않은 것으로 보인다.
Self-Supervised Learning & Multimodal contrastive loss
어떻게 하면 다양한 모달리티 간의 임베딩 그래프를 통합하고, 이러한 그래프를 사용하여 backbone model 및projection heads를 훈련시킬 수 있을까?
그리고 이 과정에서 인터넷에서 쉽게 얻을 수 있는 대량의 비디오를 활용하기 위해 어떻게 하면 수동으로 annoation을 달지 않을 수 있을까?
위 2가지 질문에 대한 해답으로 MMV 모델에서는 self-supervised learning을 채택하였다.
self-supervised learning은 두 모달리티 간을 정렬하는 것을 목표로 하는데, 여기서는 visual-audio 또는 visual-text의 모달리티 쌍을 align하지만, audio-text 쌍은 align하지 않는다.
훈련 데이터로 사용되는 positive pair은 동일한 비디오에서 두 스트림을 샘플링하여 만드는 반면 negative pair의 경우 다른 비디오에서 스트림을 샘플링하여 만든다. N개의 비디오 샘플로 이루어진 미니배치가 있다고 할 때, 이로부터 N개의 positive pair과 N^2 - N개의 negative pair이 생성된다.
positive pair와 negative pair가 주어진 경우, 공동 임베딩 공간에서 positive pair들끼리는 유사하게 만들고 반대로 negative pair들끼리는 해당 공간에서 유사하지 않게 만들기 위해 contrastive loss을 사용한다.
즉, 주어진 비디오 x에 대해 multimodal contrastive loss를 최소화하는 방향으로 훈련한다.
Multimodal contrastive loss는 다음과 같은 요소로 구성된다 :
- Positive Training Pairs: 두 모달리티 간의 유사한 쌍을 형성. 예를 들어, 동일한 비디오에서 추출된 시각-음향 쌍이 유사한 쌍이 될 수 있다.
- Negative Training Pairs: 두 모달리티 간의 유사하지 않은 쌍을 형성. 이는 서로 다른 비디오에서 추출된 모달리티 쌍이 될 수 있다.
- Contrastive Loss Function: Positive 쌍은 유사성을 최대화하고, Negative 쌍은 유사성을 최소화하는 방향으로 손실을 최소화하는 방향으로 모델을 학습. 이를 통해 서로 다른 모달리티 간의 관계를 학습하고 모델을 향상시킨다.
- 모달리티 간의 Dot Product 계산: 각 모달리티의 임베딩 벡터 간의 유사성을 계산하기 위해 Dot Product를 사용. 이를 통해 모달리티 간의 유사성을 측정하고 Contrastive Loss를 계산한다.
이러한 Multimodal contrastive loss를 통해 다중 모달리티 데이터에서 서로 다른 모달리티 간의 관계를 학습하고, 각 모달리티 간의 유사성을 효과적으로 모델링할 수 있다. 이를 통해 다중 모달 데이터의 풍부한 정보를 활용하여 모델의 성능을 향상시킬 수 있다.
Video to image network deflation
Deflation이란 비디오와 이미지 간의 변환을 가능하게 하는 과정이다. 즉, 다시 말해 deflation은 비디오 인코더의 출력을 이미지 인코더의 입력으로 변환하는 방법이다.
일반적으로 비디오 데이터를 처리하는 네트워크는 시간적인 특성을 고려하여 설계되어 있다. 이러한 네트워크를 이미지 데이터를 처리할 수 있는 형태로 변환하기 위해서는 네트워크의 구조나 파라미터를 조정해야 한다.
즉 , 비디오-이미지 equivalence를 위해서는 축소된 비디오 네트워크의 출력이 단일 이미지에 적용된 원래 비디오 네트워크를 통해 얻은 출력과 동일해야 한다는 것이다. 이를 위해서는 네트워크를 시간 차원에서 축소하는 것으로 간단하게 해결 될 수 있다.
여기서 고려되고 있는 두 종류의 비디오 네트워크의 경우, deflation은 다음과 같은 작업을 수행한다.
- 3D 컨볼루션 기반의 비디오 처리 네트워크의 경우
- 시간 축을 고려하는 3D 필터를 2D 필터로 변환
- TSM(Temporal Shift Module) 네트워크의 경우
- 채널 이동을 중지하여 이미지용 ResNet50와 같은 표준적인 구조로 변환하는 등의 작업이 이루어진다.
비디오 인코더는 TSM 아키텍처를 사용하므로, 입력으로 N개의 프레임을 받아 N개의 특징 맵을 출력한다. 이 특징 맵들은 공간적으로 평균을 내어 하나의 특징 벡터로 압축된다. 이 특징 벡터는 이미지 인코더의 입력으로 사용될 수 있다.
이미지 인코더는 ResNet 아키텍처를 사용하므로, 입력으로 하나의 이미지를 받아 하나의 특징 맵을 출력한다. 이 특징 맵은 비디오 인코더의 특징 벡터와 동일한 차원을 가지도록 조정이 되며, 이렇게 하면 비디오와 이미지 간의 표현을 공유할 수 있을 뿐만 아니라 비디오로 학습된 MMV를 이미지 관련 작업에 적용할 수도 있다.
이 과정을 통해 비디오 처리에 사용되는 네트워크를 이미지 데이터를 처리할 수 있는 형태로 변환함으로써, 이미지 데이터에 대한 다양한 작업을 수행할 수 있게 됬으며, 이를 통해 MMV 모델은 비디오 데이터와 이미지 데이터 간의 변환을 효율적으로 처리할 수 있게 되며, 다양한 다운스트림 작업에 적용할 수 있는 유연성을 제공할 수 있다.
Experiments
MMV의 표현력과 다양성을 평가하기 위해 여러 가지 다운스트림 작업에 적용한 결과를 보여준다.
아래 표를 살펴보자!
데이터셋으로는 Howto100m과 AudioSet를 사용했다.
HowTo100M은 비디오 클립과 비디오 내레이션을 텍스트로 가지고 있으며, AudioSet은 다양한 오디오 트랙(음악 악기, 동물 또는 기계적인 소리와 같은 다양한 오디오 트랙)을 가지고 있지만 텍스트 정보가 누락되어있다.
세 가지 모달리티(VAT)를 사용하여 학습한 네트워크는 각 모달리티의 쌍만(VA, VT) 사용한 네트워크보다 뚜렷하게 높은 성능을 보이고 있다.
HowTo100M과 AudioSet를 결합한 경우에 대해 살펴보면..
먼저, Table 1a와 비교하면 AudioSet을 HowTo100M과 결합하면 HMDB51, UCF101 및 ESC-50에서 성능이 향상됨을 관찰할 수 있다.
이는 네트워크가 모달리티의 상호 보완성을 활용하여 더 나은 표현을 학습할 수 있으며 데이터의 이질적인 소스(텍스트가 없는 AudioSet)를 처리할 수 있는 장점을 보여준다.
두 번째로, 세 가지 모달리티를 통합하는 다양한 전략은 모두 좋은 표현을 얻지만, FAC방법이 UCF101, HMDB51 및 MSRVTT에서 우세하며 ESC-50에서 좋은 결과를 얻고 YC2에서 두 번째로 좋은 결과를 얻는 것으로 나타났다. 이 결과는 각 모달리티의 특이성을 고려해야 한다는 직관과 일치하다.
'📜 Paper > Multi-Modal' 카테고리의 다른 글
IMAGEBIND: One Embedding Space To Bind Them All (0) | 2024.02.12 |
---|---|
CLIP : Learning Transferable Visual Models From Natural Language Supervision (0) | 2024.02.08 |