안녕하세요, 오늘은 Meta의 새로운 논문 IMAGEBIND: One Embedding Space To Bind Them All를 읽고 설명해볼까 합니다. 이 논문은 무려 6가지의 Modalities - Image, Text, Audio, Depth, Thermal, and IMU를 한데 엮어 이해한 모델을 소개하고 있기 때문에 결과물의 수준이 많이 궁금해서 리뷰하도록 하겠습니다.
잡설이지만 요즘 구글, OpenAI, Meta 등의 글로벌 기업들은 하루가 멀다하고 새로운 연구들을 발표하기 때문에 대체 어떤 논문을 읽고 따라가야할까 고민이 많은 요즘입니다.
소개에 앞서 프로젝트 페이지를 공유드립니다.
Introduction
논문의 첫 문장에서 우리의 심금을 울리는 한마디를 합니다.
A single image can bind together many experiences – an image of a beach can remind us of the sound of waves, the texture of the sand, a breeze, or even inspire a poem.
한마디로 한장의 이미지를 통해서도 우리 인간은 참 많은 것을 인지하고 느끼고 상상할 수 있다는 말입니다. 개인적으로는 이미지로부터 소리를 상상하는 것은 가능해도, 소리를 예측하는 것은 가능한가 싶기는 하지만 일단 넘어가도록 하겠습니다.
본 논문의 모델 IMAGEBIND는 6가지 각 modalities를 하나의 representation space에서 표현하는 것이 목표입니다. 이러한 시도는 CLIP이 가장 유명한 연구 중 하나인데, 원래는 이미지와 텍스트는 각기 다른 space에 존재하기 때문에 서로 관계를 측정할 수가 없었습니다.
하지만 서로 엮어(Jointly) 학습을 시킴으로써 예를 들어 '키보드 텍스트 - 키보드 이미지' 간의 거리를 가깝게 만들 수 있게 되었습니다. 둘은 키보드라는 공통 요소를 갖고 있으니까요.
그렇듯 이 논문에서도 무려 6가지나 되는 modalities를 한데 모으는 시도를 했는데 그렇다고 굳이 하나의 대상에 대해 6가지 모두를 다 갖고 있을 필요는 없다고 합니다. 무슨 말이냐면
- 하나의 키보드 이미지에 대해, 그것의 텍스트(키보드), 소리, Depth, Thermal, IMU 모두를 갖출 필요는 없다는 뜻입니다.
- 대신 여러개의 pair를 활용하면 된다고 합니다
- 1번 키보드에 대해 (이미지, 텍스트)
- 2번 키보드에 대해 (이미지, 오디오)
- 3번 키보드는 (Depth, 텍스트)
- 4번 키보드는 (오디오, IMU) 등..
이런 식으로 많은 데이터를 모아 학습시키면 6가지 modalities를 같은 space에 표현할 수 있습니다.
기존의 비디오 분야 Everything at Once라는 논문에서 Triplet을 넘어 Combinatorial Loss를 설계하여 3가지의 modalities를 같은 space에 표현했던 시도가 떠오릅니다.
Methods
제안하는 모델 IMAGEBIND의 아이디어는 아래와 같습니다.
못보던 사이에 비디오가 추가됐군요. 이 과정을 들어가기 전에 앞서 알아야 할 내용이 2가지 있습니다.
- Aligning specific pairs of modalities: Contrastive Learning은 modalities의 통합 embedding space를 학습하는 가장 대표적인 방법입니다.
- Zero-shot image classification using text prompts: CLIP이 훌륭하게 해낸 내용입니다. 각 클래스 사진에 대해 정말 다양한 문장을 대응시켜 학습시켜 한번도 보지 못한 대상에 대해 알게 하는 방법입니다. 그런데 오디오나 다른 modalities에 대해서는 다양한 문장을 대응시키기 어려운데 어떻게 할까요?? IMAGEBIND에서는 그런 의존성을 해결했다고 합니다.
Binding Modalities with Images
이 부분이 핵심입니다. 모든 학습은 이미지를 기준으로 진행되는데요, 학습에는 \((\mathit{I}, \mathit{M})\) pair를 사용하며 여기서 \(\mathit{I}\)는 이미지, \(\mathit{M}\)은 이미지를 제외한 나머지 modalities입니다. 그 중에서도 가장 비중이 큰 것은 아무래도 (image, text) pair입니다. 데이터의 사이즈가 가장 크고 많은 연구들을 통해 성능이 이미 검증되었기 때문입니다.
방법은 매우 간단한데, 아래의 그림으로 설명하도록 하겠습니다.
여기서
- \(\mathit{I}_i\): \(i\)번째 데이터의 이미지
- \(\mathit{M}_i\): \(i\)번째 데이터의 다른 modality (여기서는 audio)
- \(\mathit{M}_j\): \(j\)번째 데이터의 다른 modality (\(i \neq j)\)
그래서 각 modality를 인코딩 하기 위한 네트워크 \(\mathit{f}\), \(\mathit{g}\)를 거쳐 얻는 embedding으로 InfoNCE를 계산하면 끝입니다.
$$L_{I, M} = -log\frac{\textup{exp}(\mathbf{q_{i}^{T}k_{i}}/\tau)}{\textup{exp}(\mathbf{q_{i}^{T}k_{i}}/\tau) + \sum_{j \neq i}\textup{exp}(\mathbf{q_{i}^{T}k_{j}}/\tau)}$$
여기서 포인트만 설명드리면,
- \(\tau\): softmax의 결과가 한쪽으로 극적으로 치우치게 하거나 또는 그것을 방지하기 위한 temperature입니다.
- 이것은 보통 1인데, 만약 한쪽으로 치우치지 않도록 했다면 그것은 \(i, j\)가 서로 다른 데이터이긴 하지만 어느정도 유사할 경우를 고려한다고도 이해할 수 있습니다. 똑같은 리트리버인데 서로 아예 다르다고 말하면 슬프니까요...
- 저 InfoNCE를 symmetric하게 설계했습니다 \(L_{I, M} + L_{M, I}\). 그 이유는,
- \(L_{I, M}\)에는 서로 다른 이미지를 멀어지게 하는 부분이 없고
- \(L_{M, I}\)에는 서로 다른 오디오(또는 다른 modality)를 멀어지게 하는 부분이 없기 때문입니다.
Emergent Alignment of Unseen Pairs of Modalities
만약 이미지가 포함되지 않은 서로 다른 modalities를 학습하면 어떨까요? (Video, IMU)처럼요.
논문에서는 굳이 그런 학습을 하지 않고, 이미지를 매개로 한 (Image, Video) / (Image, IMU)를 학습했을 때 알아서 (Video, IMU)가 잘 align 되었다고 합니다.
Results
이제 결과를 보겠습니다.
위의 결과는 각 modality의 분류를 텍스트로 했을 때의 성능을 말하고 있습니다. 무슨 말이냐면,
- 강아지 RGB 이미지가 있을 때 이것을 텍스트로 표현했을 때 정말 강아지라고 하는가
- 개소리 음원이 있으면 이것을 텍스트로 표현했을 때 정말 강아지라고 하는가
- 강아지가 포함된 depth 영상(?)이 있으면 이것도 텍스트로 표현했을 때 정말 강아지라고 하는가
정도로 이해하시면 되겠습니다.
6가지 Multi-modal training을 진행했음에도 성능이 상당히 좋다고 생각됩니다.
위의 결과는 Embedding space arithmetic입니다. 첫줄을 보면 '과일 사진(이미지)' + '새 울음소리(오디오)'를 더해 만든 embedding과 가장 가까운 이미지 embedding을 찾았을 때 대충 오른쪽에 있는 사진들이 나온다고 합니다. 나머지 줄에 있는 결과들도 쉽게 해석할 수 있습니다.
Conclusion
사실 이 논문은 아주 대단한 혁신이 담긴 논문은 아닙니다. 하지만 무려 6가지의 modalities를 하나의 embedding space로 놓는 것이 가능함을 보여줬다는 점에서 의미가 있다고 생각합니다.
마지막으로 데모 페이지를 소개합니다.
이렇게 다양한 modalities 사이에서 결과들을 볼 수 있습니다. 사용자 업로드는 지원하지 않지만 그래도 결과물을 이해하기엔 충분할 것 같습니다.
댓글