안녕하세요, 이번 주 X-Review에서는 23년도 말 arXiv에 게재된 <LLM4VG: Large Language Models Evaluation for Video Grounding> 이라는 논문을 소개해드리겠습니다. 방법론 논문은 아니고, 현존하는 LLM과 Multi-modal LLM의 Video Grounding, 즉 Moment Retrieval 성능을 측정해보는 일종의 분석 리포트라고 생각하시면 됩니다. LLM과 관련된 블로그 글을 읽듯 편한 마음으로 읽어주시면 좋을 것 같습니다.
1. Introduction
최근 수년 간 전세계 거대 기업을 중심으로, 또는 세계적 대학의 거대 연구실을 중심으로 LLM이 굉장히 빠르게 발전하고 있다는 사실은 모두가 아실겁니다. 저번 주 제가 진행했던 세미나에서 소개드린 Multi-modal LLM (MLLM)도 하루가 멀다하고 빠르게 연구되고 있는데, LLM은 더더욱 빠르게 발전하고 있겠죠. LLM은 본래 목적인 자연어 처리 관련 downstream task를 넘어, 비전 도메인에서도 굉장히 많이 활용되고 있습니다. 실제로 저희 연구실 세미나에서 연구원분들이 소개해주시는 논문들만 봐도, 각자 분야의 downstream task를 수행할 때 LLM 또는 CLIP과 같은 foundation model을 사용하는 비전 도메인의 연구가 굉장히 많아졌음을 느낄 수 있습니다.
이제는 비전 도메인 중에서도 영상 분야를 넘어 비디오에도 LLM이 많이 등장하고 있는 추세입니다. 언어만을 다루는 LLM의 언어 처리 능력을 빌려 비디오 task를 수행하는 간접적인 방법론들도 많고, 아예 LLM이 비디오 입력을 받아 이해하도록 fine-tuning하여 MLLM을 만들고 비디오 task에 활용하는 방법론들도 많습니다. 최근 개발된 Video-Chat이나 Video-LLaMa와 같은 모델들이 후자에 속하는 것이죠.
본 논문은 비디오의 수많은 downstream task들 중에서도 LLM의 언어 처리 능력을 명시적으로 활용하면서 비디오의 시간적 정보까지 잘 이해해야하는 Video Grounding, 즉 Moment Retrieval task 성능을 측정해봅니다. LLM이 이렇게 가파른 발전 추세를 보이는 동안, 과연 비디오의 temporal 축에 대한 정밀한 이해가 필요한 Video Grounding task에 대한 능력은 어느정도인지 분석해보겠다는 것입니다.
이러한 분석을 위해 저자는 LLM4VG라는 전반적인 벤치마크 평가 시스템을 제안하고, 이를 활용해
- 비디오를 직접 입력으로 받는 MLLM (VidLLM)
- 사전학습된 Visual Model + 기존 LLM
을 평가하게 됩니다. 두 번째의 경우 비디오를 입력받을 수 없는 LLM 모델에게 비디오를 텍스트로 한 번 내리고 입력하여 task를 수행하는 것이겠죠. 이를 위해 caption으로 내릴지, VQA task를 활용할지와 관련하여 사전학습된 Visual model이 필요한 것이고, 또한 추출한 텍스트를 어떠한 형태의 prompt로 LLM에게 입력해줄지 고민하는 과정도 함께 보여준다고 합니다.
좀 더 세부적으로, 6개의 visual model(captioning, VQA 등 수행), 3개의 LLM, 3개의 prompting 방법론, 3개의 VidLLM(MLLM)을 가지고 실험을 하였다고 합니다. 추가적으로 이 실험들을 통해 8개의 experimental observation을 도출해내었다고 하니, 어떤 이야기인지 아래에서 들어보도록 하겠습니다.
저자들이 이야기하는 실험의 결론부터 좀 추려서 말씀드리자면,
- VidLLM들은 아직 만족스러운 Video Grounding을 수행하기에 많이 부족하다.
- 따라서 LLM을 VidLLM으로 fine-tuning 시 temporal 정보에 좀 더 집중할만한 방법론이 필요하다.
- Visual model + LLM이 단순 VidLLM보다 temporal boundary understanding 측면에서 좀 더 나은 성능을 보여준다.
- 그럼에도 성능을 향상하기 위한 더욱 fine-grained한 Visual model들을 개발하고 도입할 필요가 있다.
- 추출한 텍스트를 LLM에 입력하기 위한 prompting 기법을 잘 설계하는 것도 성능 향상에 도움이 된다.
사실 읽다보니 VidLLM이 단순 LLM보다 성능이 낮다는 점을 제외하고는 전부 다 직관적인 이야기들이네요. 우선 본 논문의 contribution을 정리하고, 메인 벤치마크 부분으로 넘어가보겠습니다.
Contribution
- We propose LLM4VG, the first comprehensive benchmark for evaluating LLMs on video grounding (VG) task.
- We develop an integration of task instruction of VG and visual description from different kinds of visual generators, including caption-based generators and VQA-based generators, which proves to be effective LLM prompts.
- We systematically evaluate and analyze the VG performance of different groups of video LLM models through combinations with different visual description models and promoting methods.
- We conclude fine-grained observations about LLMs’ performance on VG, which can serve as foundations for designing good video LLMs on VG.
2. The LLM4VG Benchmark
앞서 말씀드린대로 본 장에서는 기존 LLM들의 Video Grounding 능력을 평가합니다.
위 그림 1은 본 논문에서 수행한 벤치마크 실험을 간략하게 나타내고 있습니다. (VidLLM), (Visual Description Generator, Prompt Design, LLM) 이렇게 바꿔가며 평가를 진행하고, 아래에서 각 구성요소에 대해 자세히 설명드리도록 하겠습니다.
2.1 Video Grounding with VidLLMs
위 그림 2-(a)가 VidLLM (비디오-텍스트로 사전학습한, 비디오를 입력받을 수 있는 MLLM)을 활용한 Video Grounding 프레임워크입니다. 그림에서 알 수 있다시피 비디오와 Grounding을 수행하기 위한 Question Prompt를 입력하여 텍스트 쿼리에 상응하는 비디오의 구간을 반환받게 됩니다.
2.2 Video Grounding with Combination of LLMs and Visual Models
그림 2-(b)는 자연어만을 입력받을 수 있는 LLM을 활용한 Video Grounding 프레임워크입니다. 비디오를 직접 입력받을 수 없기 때문에 노란색으로 표시된 Visual description generator를 통해 비디오를 설명하는 텍스트로 내리는 중간 단계가 필요하며, 이 과정에서 점선으로 표시된 Exemplar prompt는 one-shot일 때만 입력하게 됩니다. Zero-shot일 때는 모델에게 어떠한 관련 정보도 주지 않고 바로 성능을 평가해야하니 비디오를 설명하는 텍스트와 Question Prompt를 입력하게 됩니다. 여기서부터 각 부분 요소들에 대한 설명을 상세히 드리겠습니다.
2.2.1 Visual Description Generator
자연어 텍스트만을 입력받는 LLM을 위해 비디오를 먼저 텍스트로 내려줍니다. 이를 위해 비디오에서 초당 1개의 프레임을 추출하여 사전학습된 Visual model에 입력합니다. 그럼 이 Visual model은 해당 이미지를 설명하는 텍스트를 출력할 것입니다. Notation으로 설명하자면, m초 짜리 비디오의 visual descriptor Des = \{(t_{1}, c_{1}), (t_{2}, c_{2}), (t_{m}, c_{m})\}가 되고, 이 때 t \sim{} T(\{1s, 2s, \cdots{}\})에 해당합니다. 아직 Visual description model에 대해 자세히 설명드리지 않았는데, 이는 caption-based 모델과 VQA-based로 나뉠 수 있습니다. 이 또한 아래에서 이어서 설명드리겠습니다.
Caption-based generator.
영상의 캡션을 만들어내기 위해, 다양한 image captioning 모델을 사용합니다. FC layer나 CNN, LSTM을 모델들과 Transformer 기반의 모델, 아니면 거대 MLLM인 Blip 모델 또한 사용하여 평가를 진행합니다. 결국 이러한 모델들은 초당 한 프레임씩을 입력받아 이에 대한 description c_{i}를 만들어내는 것입니다.
VQA-based generator.
기존의 image captioning 모델을 활용하여 생성한 캡션은 대부분 일반화 성능이 약하다고 합니다. 즉, 제대로된 키워드를 포함하지 못하는 경우가 많다는 것입니다. 저자는 이러한 부족함을 좀 보완해주고자 Blip의 Visual Question Answering (VQA) 능력을 빌려오게 됩니다.
먼저 ‘What is happening in the image‘를 caption description 질문으로 주어 t_{i} 프레임의 설명을 뽑아내게 됩니다. 이 시점에서 Blip의 VQA 능력을 빌려오게 되는데요, Blip에게 ‘Is it currently happening <query event> in the image.‘라는 질문을 다시 주어 얻은 답변을 기존 description과 병합하여 최종 Des를 만들어주게 됩니다.
2.2.2 Prompt Design
앞서 그림 2-(b)를 설명드릴 때 prompt에 대해 간단히 말씀드렸었는데, 여기서 그림을 다시 보며 더 자세히 알아보겠습니다. 우선 LLM에 입력되는 prompt는 3개의 파트로 구성되고, 각각은 Question prompt, Description Prompt, Exemplar prompt입니다.
Question prompt \textbf{Ques}는 실질적으로 Video Grounding을 수행해달라는 지시가 포함되어있는 문장입니다. 형태는 ‘Find the start time and end time of the query below from the video.’ 형태로 들어가게 되고 그림 2-(b) 오른쪽에서 보실 수 있다시피 찾고자하는 구간의 텍스트 쿼리도 함께 주어지게 됩니다. 다음으로 Description sequence \textbf{Des}는 visual description generator로 생성한 비디오의 캡션 초당 한 문장씩을 포함하고 있습니다. 앞서 준 Ques에서 지시받은 Video Grounding을 수행하려면 비디오 정보가 입력되어야겠죠. 마지막으로 Exemplar prompt \textbf{Exem}은 One-shot 세팅에서의 평가를 위해 저자들이 미리 생성해둔 prompt라고 생각하시면 됩니다.
한 가지 의아한 점이 보통 One-shot이라고 하면 샘플 하나로 모델이나 adapter를 학습시켜야 하는데, 여기서 따로 모델의 가중치를 갱신하는 과정은 보이지 않습니다. 개인적인 생각으로 One-shot이라기보단 Exem을 통해 한 가지의 정답 예시를 주고 추론을 수행하는 In-context learning이라고 표현하는 것이 더 적합할 것으로 보입니다.
최종적으로 입력되는 Prompt = [Exem, Des, Ques]로 아래 표 1과 같이 구성됩니다. 이 때 Zero-shot 성능을 측정한다면 Exem은 제외해주면 됩니다.
이제 실험 파트로 넘어가겠습니다.
3. Experiments
사실상 앞선 내용들은 결과 분석을 위한 기본 세팅들을 설명드린거였고, 여기서부터가 본격적으로 구성 요소들의 영향력을 알아볼 수 있는 실험 부분입니다. 참고로 데이터셋은 Video Grounding에서 많이 활용하는 Charades-STA 데이터셋 하나만 활용했다고 합니다. 저자가 이야기하는 Observation 중 생각해볼만한 내용들만 추려서 소개해드리겠습니다.
3.1 Main Results
표 2는 Visual model + LLM, 표 3은 VidLLM들의 Video Grounding 성능입니다. Recall@1, IoU=0.3이라는 평가지표는 예측과 GT 구간의 IoU가 0.3 이상일 때만 해당 예측을 True Positive로 가정하고, 이 때 가장 score가 높은 예측 구간 하나를 봤을 때의 Recall을 의미합니다.
Observation #1: VidLLM보다 Visual model + LLM의 성능이 더 좋음
전반적인 성능을 크게 보았을 때, 우선 표 3의 VidLLM들보다 표 2의 Visual model + LLM의 성능이 더 높은 것을 알 수 있습니다. 표 3을 보면 VidLLM들은 랜덤으로 구간을 만들어냈을 때보다 낮은 성능을 보이며 사실상 주어진 비디오-텍스트 쌍을 전혀 이해하지 못하고 있다고 볼 수 있습니다. 따라서 VidLLM 모델을 사전학습할 때 애초부터 비디오의 temporal 정보를 주입해줄 수 있는 학습 기법이 필요하다고 주장합니다.
좀 의아한 것이, 표 2의 성능이 표 3의 성능들보다 좋은 것은 맞지만 아직 랜덤의 성능과 동일하거나 일부 낮아 반대로 일반 LLM들은 비디오와 문장을 잘 이해하고 있냐 물었을 때 맞다고 하긴 어려울 것 같습니다… 그럼에도 저자는 LLM이 언어를 잘 이해하고 시간적 구조를 잘 파악하고 있다고 이야기합니다. 또한 많은 LLM들 중 GPT가 가장 좋은 성능을 보여주고 있네요. 다른 실험에서도 대부분 GPT가 가장 높은 성능을 보이고, 이를 따라가는 구글이나 메타의 모델들이 개발되고 있는 것으로 알고 있는데, 본 실험 결과에서도 그런 경향이 유지되고 있는 것을 볼 수 있습니다.
Observation #2: Visual description generators, LLM, prompt 디자인에 따라 성능 차이가 큼
표 2의 성능들을 통해 어떠한 captioning 모델을 사용할지, 어떠한 LLM을 사용하는지, 어떠한 prompt를 입력하는지에 따라 성능 차이가 큼을 확인할 수 있습니다. 예로 (Vicuna-7B, zero-shot prompt, Fc model)을 사용할 때에 비해 (GPT-3.5, one-shot with confidence judgement prompt, Blip (VQA))를 사용할 때의 성능은 25.83에서 33.87로 크게 향상하게 됩니다.
이쯤되면 궁금한것이 지금 살펴보고 있는 LLM 모델들의 성능 말고 기존 Video Grounding 모델들의 성능이 궁금하실텐데, 어떠한 backbone을 쓰는지에 따라 다르지만 현재 IoU=0.3에서 가장 높은 GPT 모델이 33.87인 반면 2020년도 모델도 40을 넘어가는 상황입니다. 성능이 굉장히 뒤떨어져있는 상태인데 이를 베이스라인 삼아 성능값을 향상시킬 여지가 그만큼 많이 남아있다고 이야기합니다. 참고로 2024년도 CVPR에 게재된 LLM을 Video Grounding에 맞게 fine-tuning 한 방법론은 IoU=0.3에서 55.3의 성능을 달성하였습니다. 확실히 LLM을 잘 fine-tuning한다면 성능을 올릴 여지가 남아있긴 하다고 생각됩니다.
3.2 Results with Different LLMs
위 표 4는 LLM 또는 MLLM 모델 별 가장 높은 성능을 정리해둔 표입니다.
Observation #3: LLM의 Video Grounding 능력은 모델의 scale 뿐만 아니라 긴 sequence의 Question Answering을 다룰 수 있는 능력에 비례함
가장 우선적으로 GPT-3.5가 다른 LLM인 Vicuna-7B나 Longchat-7B에 비해 성능이 더욱 높은 것을 알 수 있습니다. 이를 통해 파라미터 수가 많을수록 VG 능력이 향상된다고 볼 수 있습니다. 또한, VG를 위해 입력하는 prompt는 긴 경우 10,000개의 token으로 이루어지는데, Longchat-7B 모델이 long-context 데이터를 다루는데에 더 적합하기 때문에 Vicuna-7B 모델보다 더 높은 성능을 보인다고 이야기합니다.
3.3 Results with Different Visual Models
표 5는 Visual model에 따른 VG 최고 성능을 보여줍니다. CIDEr라는 지표는 영상 캡셔닝 성능을 나타낸다고 보시면 되고, 높을수록 캡셔닝을 잘한다라고 볼 수 있습니다.
Observation #4: Captioning 성능이 높다고 좋은 VG 성능을 보여주는 것은 아님
표 5를 보면 Blip과 같은 advanced model이 높은 CIDEr 성능을 보여주지만 IoU=0.3을 제외하고는 다른 방법론에 뒤지는 VG 성능을 보여주고 있습니다. 이를 통해 생성된 캡션의 품질이 좋다고해서 무조건 높은 VG 성능으로 이어진다고 볼 수 없다는 것이 저자의 의견입니다. 황순민 교수님께서 사람이 보기 좋은 입력이 모델에게도 가장 잘 동작할 것이라는 고정관념을 버려야한다고 말씀해주셨는데, 사실 모델별로 성능 차이가 크지 않아 명확하진 않지만 그와 같은 맥락의 고민을 하게 만드는 실험결과라고 생각됩니다.
3.4 Results with Different Prompting Methods
표 6은 어떠한 형태의 prompt를 줄 것인지에 따른 최고 성능입니다. One-shot은 아까 말씀드렸던 exemplar prompt를 사용하는 경우를 의미하고, Confidence judgment는 ‘judge whether the description sequence is suitable for the video grounding’ 라는 prompt를 함께 사용하여 LLM의 지식을 prompt로 조금 더 이끌어낸 세팅에 해당합니다.
앞서도 말씀드렸듯 저희가 학계에서 이야기하는 엄밀한 One-shot 세팅은 아닌 것 같은데, 어찌되었든 논문에서 정의한 Zero-shot과 One-shot 상황을 비교해보았을 때 정보를 더 준다고 성능이 오르는 것은 아니었다고 합니다. LLM에 In-context learning을 적용하면 성능이 꽤나 오른다고 알고 있었는데 비디오의 temporal 정보를 파악하는 능력이 거의 없어 예시로 준 example이 별 효과가 없었던 것으로 생각합니다. 예시를 보고 배울 수 있는 능력이 없었던 것이라고 생각되네요.
Observation #6: LLM에게 현재 추출한 캡션이 적절한지 물어보고 이를 학습에 활용하는 것이 VG 성능 향상에 효과적임
One-shot + Confidence judgment 방식의 prompt가 가장 높은 성능을 보여주고 있습니다. LLM에게 현재 추출한 캡션이 적절한지 물어보는 것인데, 이에 대한 대답을 함께 prompt로 주는 것이 단순 One-shot이나 Zero-shot에 비해 향상된 성능을 달성하도록 도와줬다는 이야기입니다.
3.5 Examples and Case Analysis
그림 3은 LLM을 통해 VG을 수행한 4가지 예시입니다. 이 중 (a), (b)는 성공한 경우, (c), (d)는 모델이 ‘Based on the given caption, it is not possible to determine the grounding time for the query‘와 같은 답변을 반환하며 Grounding에 실패한 경우입니다.
Observation #8: 실패 원인은 첫번째로 캡셔닝 모델이 애매한 캡션을 반환했기 때문이고, 두번째는 정보가 약할 경우 LLM의 reasoning 능력이 부족하기 때문
그림 3-(c)를 보면, 주어진 텍스트 쿼리에는 pillow라고 표현되어있지만 캡션에선 furniture라고 표현되어있습니다. 그렇다보니 모델이 pillow와 furniture 간 연관성을 찾지 못해 아예 구간을 예측하지 못하고 있는 상황입니다. 이는 LLM의 지식으로 자연스럽게 해결될 법한 문제라고 생각했는데 실제로는 두 단어 간의 reasoning을 하고 있지 못한 모습입니다.
그림 3-(d)는 캡셔닝 모델이 모호한 캡션을 만들어냈기에 LLM이 제대로된 예측을 하지 못하고 있는 예시인데, 마찬가지로 텍스트 쿼리에 주어진 dishes라는 단어와 캡션에서 언급된 kitchen, plate와 연결되지 못해 예측을 내뱉고 있지 못한 상황입니다. 이 예시도 마찬가지로 이 정도 reasoning은 당연히 가능할 것 같은데, 예측이 제대로 나오지 않았다는 점이 놀랍네요.
4. Conclusion
네.. 리뷰는 여기까지 작성하고 마치겠습니다. 아직 어떠한 저널이나 학회에 게재된 논문은 아니다보니 여러모로 부족한 점이 많다고 느껴지는 논문이었습니다. 본 논문에서 주장하는 결론들은 정말 참고용으로만 확인해두거나 나중에 유사한 맥락으로 실험 결과가 나온다면 백데이터로 들고있을만한 정보를 제공하는 논문이었다는 생각이 듭니다.
감사합니다.