[arXiv 2024] MLLM as Video Narrator: Mitigating Modality Imbalance in Video Moment Retrieval

안녕하세요, 이번 주도 Video Moment Retrieval task와 관련하여 리뷰를 작성해보겠습니다. 오늘 소개해드릴 논문은 올해 6월 arXiv에 게재된 <MLLM as Video Narrator: Mitigating Modality Imbalance in Video Moment Retrieval>이라는 제목을 가지고 있으며, 북경대의 Yang liu 교수님의 이름이 달려있어 처음엔 믿고 읽었던 논문입니다. NeurIPS 포맷이었는데, 읽을수록 그리 알찬 내용을 담고있진 못하다는 느낌이 들었습니다. 그래도 제가 연구하고자 하는 Moment Retrieval task를 다루며 Multi-modal LLM을 활용했다는 점에서 참고할만한 포인트들이 있다고 생각되어 리뷰로 옮기게 되었습니다.

리뷰 시작하겠습니다.

1. Introduction

Video Moment Retrieval (VMR)은 가공되지 않은 비디오(untrimmed video)에서 사용자가 입력하는 텍스트 쿼리에 의미론적으로 상응하는 구간을 예측하는 task입니다. VMR은 비디오와 텍스트 쿼리를 쌍으로 입력받아 상응 구간을 찾게 되는데, 이를 위해 모델은 각 모달 데이터에 대한 깊은 이해는 물론 두 모달 간 상호작용까지 잘 모델링할 수 있어야 합니다.

그러나 저자는, 학계에서 VMR을 위해 사용되는 데이터셋이 두 가지 측면에서 양질의 멀티모달 표현력 학습을 방해한다고 주장합니다. 첫번째는 semantics completeness, 두 번째는 divesity입니다.

그림 1

저자가 첫 번째 문제점으로 지적한 semantics completeness는 그림 1-(a)와 함께 설명드리겠습니다. 사실 이 문제점은 제가 최근에 작성했던 MESM 방법론 리뷰에도 나타나있는데요, 이를 풀어서 설명하자면 바로 너무나 풍부하고 다양한 정보를 담고 있는 비디오에 비해 텍스트 쿼리가 상대적으로 이러한 정보량을 담아내지 못한다는 것입니다. 두 모달리티 간 정보량의 불균형이 존재하고, 이러한 상태에서 학습을 바로 하는 것은 최적의 상호작용과는 거리가 멀다는 의미입니다.

이에 대해 좀 더 자세히 설명드리면, 그림 1-(a)에서 실제 GT 텍스트 쿼리에 상응하는 구간 중 의미론적으로 일치하는 영역은 전체 프레임이 아니라 프레임 공간축에 대한 일부인 초록색 박스에만 상응한다는 점입니다. 이러한 부분에서 두 모달리티 간 정보량의 차이가 발생하는 것이고, 이대로 align을 맞추게 되면 최적의 학습을 할 수 없다는 주장입니다.

그 뿐만 아니라, 실제 비디오에서 GT에 상응하는 구간은 일부인데, GT 구간이 아닌 곳에 대한 텍스트 쿼리는 데이터셋에 존재하지 않기 때문에 많은 샘플로 embedding space를 학습할 수 없다는 단점도 존재합니다. GT 구간이 아닌 영역에도 ‘mirror’, ‘standing in front of a bed’ 등의 컨텐츠가 많이 등장함에도 불구하고 말이죠. 두 번째로 diversity는, 데이터셋의 텍스트 쿼리의 단어 분포를 보면 대부분 등장하는 단어만 등장하기 때문에 새로운 분포의 텍스트 쿼리를 마주했을 땐 제대로 대응하지 못하는, 일반성이 부족한 상황이 온다는 이야기입니다.

위와 같은 두 가지 문제점에 대응하기 위해, 저자는 이미지, 텍스트를 입력받는 Multi-modal LLM (MLLM)을 활용합니다. 이제 MLLM이 무엇인지는 연구실의 모든 분들이 다 아실 것으로 생각되어 MLLM 자체에 대한 설명은 생략하겠습니다. 다만 이미지를 다루는 MLLM의 비디오(프레임 단위 연속적 입력) 정보 해석능력에 대해 설명드리면, 보통 한 프레임을 입력받고 해당 프레임 자체를 설명하는 능력은 굉장히 뛰어납니다. 그러나 VMR task를 그대로 MLLM에게 요청하면 시간적 정보는 잘 파악하지 못하기 때문에 제대로 수행하지 못합니다. 결론적으로 MLLM을 VMR에 그대로 사용하기엔 무리가 있고, MLLM으로부터 정보를 지원받아 효과적인 추가 학습을 하는 모듈이 필요한 상황인 것입니다.

이러한 이유로 저자는 MLLM을 활용하는 VMR 프레임워크 Text-Enhanced Alignment (TEA)를 제안합니다. MLLM을 통해 비디오의 GT 구간이 아닌 영역에서도 정제된 description을 추출하고, 이 description을 활용해 비디오 feature와 기존 GT 텍스트 쿼리를 enhance하는 모듈을 제안합니다. 자세한 내용은 방법론 부분에서 알아보겠습니다.

저자의 Contribution은 아래와 같습니다.

Contribution

(1) We formulate a novel paradigm called Text-enhanced Alignment (TEA) to mitigate the modality imbalance problem and enhance generalizable moment-text associations learning in VMR.

(2) We leverage an MLLM as a video narrator to construct structured textual narratives for videos. These narratives temporally aligned with videos, serving as enriched semantic bridges to aid cross-modal video-query alignment.

(3) TEA provides SOTA performances on various evaluations from two popular VMR benchmarks.

2. Methods

우선 notation을 먼저 정리하겠습니다. T 길이를 갖는 비디오는 V, 사용자가 입력하는 텍스트 쿼리는 Q라고 칭합니다. VMR의 목적은 V, Q 쌍을 입력받아 상응 구간 (\tau{}^{s}, \tau{}^{e})를 출력하는 것입니다.

앞서 설명드렸듯 두 모달 간 imbalance가 존재하는 상황에서 바로 align을 맞추면 최적의 학습을 하기 어렵기에 MLLM을 활용해 두 모달리티의 feature enhance 과정을 거칩니다. 우선 MLLM을 활용해 GT 상응 구간만이 아닌 비디오 전 구간에 걸쳐 text description (narrative)을 추출합니다. 다음으로 Video-narrative knowledge enhancement 모듈을 거치는데, 여기선 narrative를 활용해 더욱 구별력있는 비디오 feature를 만들어줍니다. 마지막으로 paragraph-query parallel interaction 모듈을 통해 기존 텍스트 쿼리의 다양성과 일반성을 높여주는 과정을 거칩니다.

사전학습된 모델로부터 비디오 V = \{s_{i}\}_{i=1}^{L_{v}}, 텍스트 Q = \{w_{i}\}_{i=1}^{L_{q}} feature를 추출합니다. 여기서 L_{v}, L_{q}는 각각 비디오 내 snippet의 개수와 문장 내 단어의 개수를 의미합니다.

그림 2

위 그림 2는 TEA의 전체 프레임워크를 보여줍니다. 그림 2 오른쪽에 앞서 설명드린 Video-Narrative Knwledge Enhancement 모듈과 Paragraph-Query Parallel Interaction 모듈이 존재하는 것을 볼 수 있습니다.

2.1 Temporally Structured Text Paragraph Construction

가장 먼저 MLLM으로부터 비디오 전 구간의 narrative를 추출하는 부분입니다. 비디오에서 L^{f}개의 프레임을 추출하고 프롬프트 P=”This is one image frame sampled from a video. Please caption this frame in two or three sentences, to describe this frame with some details but without any analysis.”를 함께 입력하여 각 프레임에 대한 narrative c_{i}를 획득합니다.

이후 아래 수식 (2)와 같이 비디오에서 얻은 모든 narrative를 concat해줍니다.

t는 timestamp를 의미합니다.

이렇게 MLLM으로부터 narrative를 추출할 때, 비디오 자체의 frame rate나 사용하는 비디오 코덱에 따라 sampling rate가 달라질 수 있습니다. 그럼 비디오와 추출한 MLLM의 narrative가 시간적으로 align 되어있지 않을 수도 있겠죠. 따라서 저자는 아래 수식 (3)과 같이 의미론적인 align을 맞춰줍니다.

\mathcal{F}_{T}는 단어 레벨의 feature를 얻기 위한 text encoder입니다. 먼저 추출한 narrative c_{m} 각각을 평균(Sent())내어 문장 레벨의 feature로 만들어주고, 하나의 snippet이 이루는 구간 내 존재하는 모든 feature를 평균내어 해당 snippet의 feature를 만들어주는 것입니다. 이런식으로 모든 snippet의 feature를 엮으면 수식 (3)과 같이 temporally aligned structured paragraph feature C^{a}를 얻을 수 있습니다.

2.2 Video-Narrative Knowledge Enhancement

앞서 MLLM으로부터 narrative C^{a}를 얻었다면 본 모듈에서는 이를 활용해 비디오의 feature를 enhance합니다. 여기서도 대단한 점은 없고, 기존의 video snippet feature s_{i}와 앞서 추출한 snippet 단위의 narrative feature c_{i}를 hidden dim 축으로 concat한 뒤 MLP에 태우는 것입니다. 이는 아래 수식 (4)와 같습니다.

저자는 위 과정을 merge operation이라 부르고, s_{i}^{m}은 MLLM으로부터 추출한 narrative feature와 결합되었기 때문에 visual input에 존재하는 redundant하고 noisy한 정보의 영향력을 줄일 수 있다고 주장합니다. 이것이 보장되기 위해서는 MLLM으로부터 얻은 정보가 신뢰 가능해야하고 MLP의 학습 방향이 좀 명확해야겠죠. 뒤쪽에서 이러한 역할을 보장해주는 모듈이 있는지 살펴봐야 할 것 입니다.

이렇게 concat하고 MLP를 태운 뒤 다시 붙이면 merge 된 비디오 feature V^{m} = \{s_{i}^{m}\}_{i=1}^{L_{v}}를 얻을 수 있게 됩니다.

Merging operation을 마쳤다면 본격적으로 feature enhancement를 수행해줘야 합니다. 이게 뉴립스에 제출된 논문이라 그런것인진 모르겠는데, 별다른 연산이 아님에도 길게길게 풀어 작성된 경향이 있네요. 수학적인 내용은 전혀 나오지 않으니 편하게 보셔도 될 것 같습니다.

하나의 attention unit \mathcal{A}는 target sequence X^{t} \in{} \mathbb{R}^{L^{t} \times{} d}와 reference sequence X^{r} \in{} \mathbb{R}^{L^{r} \times{} d}를 입력받습니다. Target과 reference는 각각 visual, text feature가 한 번씩 번갈아가며 들어가게 됩니다. 이에 따른 \mathcal{A}(X^{t}, X^{r})은 아래 수식 (6)과 같습니다.

수식 (6)의 첫번째 행에서 \mathcal{R}은 두 모달 간 attention score를 뽑아내는 과정과 같고, 결국 이를 활용해 아래 행에서 cross-attention을 완성하는 형태와 동일합니다. 다음으로는 아래 수식 (7)과 같은 guided mechanism을 적용합니다.

현재 비디오 feature에 대한 2D Conv 연산을 의미합니다.

마지막으로 앞서 얻은 \hat{V}^{m}과 GT 텍스트 쿼리 Q에 대해 self-attention과 cross-attention을 한 번씩 수행해줍니다. 사실 이 부분은 오히려 수식이 자세히 나와있지 않고 말로만 설명되어있어 정확히 어떤 연산들이 적용되는 것인지 궁금하네요. 이는 아래 수식 (8)과 같습니다.

이와 같이 얻은 enhanced feature V^{e}, Q^{e}를 통해 snippet 단위의 상응 확률 (p_{v}^{s}, p_{v}^{e})를 추출해야합니다. 이 과정은 아래 수식 (10), (11)과 같습니다.

수식 (11)에서 attention score R을 추출하고 v2q, q2v attention score 또한 추출합니다. 이후에는 Hadamard product를 통해 concat한 feature끼리의 연산을 수행하고 FC layer를 태워 enhanced video feature를 다시 추출합니다. 이후엔 텍스트 쿼리 q와의 Conv1D 연산을 적용해 마지막 weighting을 위한 score를 뽑아냅니다. 마지막에는 LSTM을 통해 각 snippet의 시작, 끝 확률을 뽑아내게 됩니다. 여기서 Predictor는 기존의 방법론을 활용하였습니다.

대체 어떠한 이유로, 무슨 목적으로 모듈을 위와 같이 설계한 것인지 알기 어려웠습니다. 복잡한 것은 아니지만 다른 방법론을 차용했다면 그와의 차별점을 두는 것이 좋을 것 같은데 그러한 부분도 부각되어있지 않습니다.

2.3 Paragraph-Query Parallel Interaction

마지막 모듈은 비디오와 관계 없이 MLLM으로 추출한 narrative C와 GT 텍스트 쿼리 Q간의 모델링을 수행해줍니다. 본 모듈의 목적은 앞서 그림 1에서도 확인하였듯 너무나 적은 정보량만을 담고 있는 GT 텍스트 쿼리에 MLLM으로 뽑은 풍부한 정보량을 일부 주입해주기 위함입니다. 해당 목적을 위해 수행하는 연산은 두 feature간 cross-attention입니다.

이후 C를 비디오, Q를 enhanced text query feature라 두고 (p_{c}^{s}, p_{c}^{e})를 다시 추출합니다. C의 개수가 비디오의 snippet 개수와 동일하게 구성되어있기 때문에 이를 바탕으로 시작, 끝 지점을 예측해낼 수 있는 것입니다.

최종적인 (p^{s}, p^{e})는 아래 수식 (14)와 같이 얻을 수 있습니다.

앞서 진짜 비디오 feature를 활용해 얻은 timestamp와의 weighted sum을 통해 얻어주는 것입니다. 식에서 \alpha{}는 하이퍼파라미터입니다.

2.4 Model Training

위 수식 (15)의 loss \mathcal{L}_{vmr}은 GT로 제공된 시작, 끝 지점의 확률은 1로 올려주는 역할을 수행합니다.

다음으로 위 수식 (16)의 loss \mathcal{L}_{h}는 비디오의 foreground content를 highlight 해주는 역할을 수행합니다. 앞선 수식 (15)에서는 경계만을 학습했다면 아래 수식 (16)의 loss는 구간 내부 전체의 확률을 높여주는 역할을 수행합니다.

최종 loss는 \mathcal{L} = \mathcal{L}_{vmr} + \lambda{} \mathcal{L}_{h}입니다.

3. Experiments

벤치마크는 Charades-STA와 ActivityNet 데이터셋에 대해 실험을 진행합니다. 각 데이터셋의 통계량은 아래 표 1과 같습니다.

Implementation details

텍스트 쿼리의 feature는 GloVe로부터 얻어내고, 비디오의 경우 128프레임으로 downsample되었다고 합니다. 초 당 1개의 프레임을 MLLM에 입력하여 caption을 뽑아내고, 모델은 LLaVA-v1.5-13b를 사용했다고 합니다. 일반적인 세팅이 요즘 나오는 방법론들과는 경향이 좀 다른 모습입니다.

표 1, 2

표 2은 Charades-STA, 표 3은 ActivityNet Captions 데이터셋에 대한 벤치마크 성능입니다. 실제 23년도, 24년도에 MR을 수행하는 방법론들이 많은데, 아무래도 Highlight Detection을 같이 수행하는 방법론들이라 그런지 표에서 제외되어있는 모습입니다.

표 2에서 MESM 방법론은 데이터셋의 한 비디오에 대해 주어져있는 텍스트 쿼리를 모두 활용한다는 이유로 회색 표시되어있습니다. Fair comparison이 아니라는 것인데, MLLM 모델을 활용하는 본 저자의 방법론이 오히려 추가 정보를 활용하는 측면에서 타 방법론들보다 훨씬 더 많은 연산량과 정보량을 요구한다고 생각합니다.

아무튼 성능을 보았을 때, CD, CG split은 원본 데이터셋의 편향을 줄여 모델의 일반성을 확인해볼 수 있는 지표라고 생각하시면 되는데, 오리지날 Charades, ActivityNet에 대한 성능이 없어 아쉽네요. 기존 방법론들보다 엄청나게 큰 성능향상 폭을 보여주고있진 않습니다. MLLM을 활용하는 모델 치고는 성능 향상폭이 적다고 볼 수 있습니다.

표 5

위 표 5는 어떠한 MLLM을 활용했는지에 대한 ablation 성능입니다. LLaVa를 사용하더라도 모델의 파라미터 개수에 대해 성능 차이가 있을지 보여줬으면 좋았을 것 같은데 우선 BLIP 모델을 통해 caption을 추출했을 때보다 LLaVa를 썼을 때의 성능이 더 좋다는 점을 알 수 있었습니다.

나머지 실험은 전부 하이퍼파라미터에 대한 ablation 실험이라 정성적 결과 보고 리뷰 마무리하도록 하겠습니다.

그림 5

주어진 비디오에 대한 텍스트 쿼리는 ‘another person walks in holding another book’입니다. 베이스라인 모델의 경우 텍스트 쿼리에서 언급된 ‘another person’과 ‘another book’에 대한 reasoning을 아예 하지 못해 틀린 예측을 하고 있는데, MLLM 모델을 통해 context를 파악할 수 있게 된 TEA 모델은 올바른 예측을 하고 있는 모습입니다.

4. Conclusion

여러모로 아쉬움이 많이 느껴지는 논문이지만, MLLM을 어떻게 활용할 수 있는지에 대해 한 가지 방법을 보여준 논문이라 생각합니다. 요즘 MLLM을 활용하는 방법론들과 기존 방법론들 간 Fair comparison에 대해 개인적으로 궁금한 것이 많은데, 이번 논문을 통해서는 아직 제대로된 해답을 얻기 힘들었습니다. 제 연구에 참고하기보단 그냥 이 정도의 논문도 있다는 점을 알고 넘어갈 수 있을 것 같습니다.

리뷰 마치겠습니다.

Author: 김 현우

1 thought on “[arXiv 2024] MLLM as Video Narrator: Mitigating Modality Imbalance in Video Moment Retrieval

  1. 안녕하세요. 좋은 리뷰 감사합니다.

    요즘 MLLM에 관심이 많이 생기고 그 중에 Video를 다루는 MLLM에 관심이 많이 생겨 리뷰를 읽게 되었습니다. VMR 데이터셋에 어떤 문제가 있고 이를 MLLM으로 해결해보자 라는 컨셉이 좋은 논문인 것 같다는 생각을 하였습니다. 궁금한 점이 MLLM을 통과하고 나온 text에 대해서 textual encoder를 사용하고 VMR 데이터셋의 query에도 textual encoder를 사용하는데 이는 동일한 encoder인 GloVe를 사용한 거겠죠?
    다음으로 내용적인 부분에서 질문이 있는데 Video-Narrative Knowledge Enhancement와 Paragraph-Query Parallel Interaction가 이 논문에서 제일 노벨티가 강한 부분이라 생각하였는데, 저는 video-paragraph knowledge merge 만으로도 충분히 MLLM의 풍부한 정보를 잘 반영한다고 생각하였는데 굳이 또 Paragraph-Query Parallel Interaction을 해주는 것이 잘 이해가 가지 않았습니다. 정확히는 Paragraph-Query Parallel Interaction에서 MLLM으로 뽑은 풍부한 정보량을 query에 주입하는 것이 잘 이해가 가지 않는것 같습니다… 이와 관련하여 설명해주신다면 감사하겠습니다!

    감사합니다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 항목은 *(으)로 표시합니다