AI바라기의 인공지능
논문리뷰 : MoReVQA: Exploring Modular Reasoning Models for Video Question Answering 본문
논문리뷰 : MoReVQA: Exploring Modular Reasoning Models for Video Question Answering
AI바라기 2025. 5. 20. 13:32
MoReVQA: Exploring Modular Reasoning Models for Video Question Answering
용어 설명 (Terminology)
- MoReVQA (Modular Reasoning for Video Question Answering): 본 논문에서 제안하는 다단계 모듈러 추론 VideoQA 시스템.
- JCEF (Just Caption Every Frame): 본 논문에서 제안하는 단순하지만 강력한 VideoQA baseline. 비디오의 모든 프레임을 VLM으로 captioning하고, 이 caption들과 질문을 LLM에 입력하여 답변을 생성.
- ViperGPT(+): 기존의 대표적인 single-stage modular VideoQA 시스템. 본 논문에서는 이를 개선/재구현하여 ViperGPT+로 비교.
- VideoQA (Video Question Answering): 비디오와 관련된 질문에 답하는 task.
- Event parsing (이벤트 파싱): MoReVQA의 첫 번째 단계. 입력 질문을 분석하여 시간적 단서, 관계, 하위 질문 유형 등을 파악.
- Grounding (그라운딩): MoReVQA의 두 번째 단계. 파싱된 이벤트를 비디오의 특정 시간적/공간적 영역에 연결(localize).
- Reasoning (추론): MoReVQA의 세 번째 단계. 그라운딩된 정보와 전반적인 비디오 문맥을 바탕으로 최종 답변을 도출.
- External memory (외부 메모리): 각 단계의 중간 출력과 상태를 저장하고 공유하는 시스템.
- VLM (Vision-Language Model): 이미지/비디오와 텍스트를 함께 이해하고 처리하는 pre-trained model (e.g., PALI-3).
- LLM (Large Language Model): 방대한 텍스트 데이터로 pre-trained 된 모델 (e.g., PaLM-2).
- Few-shot prompting: LLM에게 몇 가지 예시(demonstrations)와 함께 query를 제공하여 원하는 작업을 수행하도록 유도하는 방식.
- Training-free: 모델의 가중치를 업데이트하는 추가적인 training 과정이 없음. Pre-trained 모델을 그대로 사용.
- Modular reasoning (모듈러 추론): 복잡한 문제를 여러 개의 독립적인 모듈(sub-tasks)로 나누어 해결하는 방식.
- Single-stage planning: 전체 실행 계획(program)을 시각 정보 없이, 한 번의 LLM 추론으로 생성하는 방식.
- Multi-stage planning: 계획 수립을 여러 단계로 나누고, 각 단계에서 중간 결과를 활용하여 다음 계획을 세우는 방식.
- API (Application Programming Interface): 특정 기능을 수행하도록 미리 정의된 함수 또는 명령어 집합. LLM이 이 API를 호출하는 코드를 생성.
- OE (Open-Ended): 정해진 답변 후보 없이 자유롭게 답변을 생성하는 VideoQA.
- MC (Multiple Choice): 주어진 보기 중에서 정답을 고르는 VideoQA.
Purpose of the Paper
- 기존 한계 극복:
- End-to-end models: Black-box 특성으로 인해 해석이 어렵고, compositional generalization 및 long-term temporal reasoning에 약점.
- 기존 Modular/Programmatic approaches (e.g., ViperGPT): Interpretable하지만, 시각 정보 없이 single-stage로 전체 실행 계획(program)을 생성하므로, 복잡한 VideoQA에서 brittle behavior를 보이고 일반화 성능이 떨어짐.
- 새로운 접근 방식 제시:
- 본 논문은 **JCEF (Just Caption Every Frame)**라는 간단한 baseline을 통해 기존 single-stage modular 방법들의 취약점을 먼저 보임 (JCEF가 ViperGPT+보다 우수).
- 이후, 이러한 한계를 극복하기 위해 MoReVQA라는 multi-stage, modular reasoning framework를 제안. 이는 event parsing, grounding, reasoning의 3단계로 task 복잡도를 분해하고, 각 단계의 중간 결과를 external memory에 저장/활용하여 보다 robust하고 interpretable한 VideoQA를 수행.
- 모든 단계는 pre-trained LLM/VLM의 few-shot prompting을 통해 training-free로 작동.
Key Contributions & Novelty
- Contribution 1: JCEF (Just Caption Every Frame) baseline 제안.
- Novelty: 단순한 VLM captioning과 LLM 조합만으로도 기존 single-stage programmatic approach (ViperGPT+)를 능가함을 보여, single-stage planning의 실질적인 한계를 정량적으로 입증.
- Contribution 2: MoReVQA framework 제안: training-free, multi-stage (event parsing → grounding → reasoning) modular system.
- Novelty: VideoQA task를 3가지 핵심 sub-task로 명시적으로 분해하고, 각 단계가 LLM few-shot prompting과 API call을 통해 작동하며 external memory로 정보를 공유하는 새로운 multi-stage planning 아키텍처를 제시. 특히, video content에 grounding하는 단계를 명시적으로 포함하여 ambiguity를 해소하고 reasoning의 정확도를 높임.
- Contribution 3: 다양한 VideoQA benchmark에서 training-free SOTA 달성.
- Novelty: 추가적인 fine-tuning 없이도 기존 SOTA 방법들(일부 fine-tuned 모델 포함)을 능가하는 성능을 보여, decomposed multi-stage reasoning의 효과를 입증.
- Contribution 4: 각 단계별 interpretable intermediate outputs 생성.
- Novelty: End-to-end 모델의 black-box 문제를 해결하고, single-stage program보다 더 세분화되고 grounded된 추론 과정을 제공하여 시스템의 행동을 이해하고 디버깅하기 용이하게 만듦.
Experimental Highlights
- Datasets: NExT-QA (MC), iVQA (OE), EgoSchema (MC, long videos), ActivityNet-QA (OE, long videos).
- Key Baselines: ViperGPT+ (본 논문에서 재구현 및 개선), JCEF (본 논문 제안), LLM-only.
- Core Models: VLM으로 PALI-3 (5B), LLM으로 PaLM-2 사용.
- Result 1: JCEF의 강력한 성능 (Table 1)
- JCEF가 모든 데이터셋에서 ViperGPT+를 능가.
- NExT-QA: JCEF (66.7%) vs. ViperGPT+ (64.0%)
- iVQA: JCEF (56.9%) vs. ViperGPT+ (46.6%)
- JCEF가 모든 데이터셋에서 ViperGPT+를 능가.
- Result 2: MoReVQA의 우수성 (Table 1)
- MoReVQA가 JCEF 및 ViperGPT+를 포함한 모든 baseline을 능가.
- NExT-QA: MoReVQA (69.2%)
- iVQA: MoReVQA (60.9%)
- EgoSchema: MoReVQA (51.7%)
- ActivityNet-QA: MoReVQA (45.3%)
- MoReVQA가 JCEF 및 ViperGPT+를 포함한 모든 baseline을 능가.
- Result 3: Ablation Study (Table 2)
- MoReVQA의 각 stage (event parsing, grounding, reasoning)가 최종 성능에 긍정적으로 기여함을 보임. 모든 stage를 사용했을 때 (✓ ✓ ✓) 성능이 가장 높음.
- 예: NExT-QA에서 full MoReVQA (69.2%) vs. JCEF-like (event parsing X, grounding X, reasoning ✓ : 66.7%)
- MoReVQA의 각 stage (event parsing, grounding, reasoning)가 최종 성능에 긍정적으로 기여함을 보임. 모든 stage를 사용했을 때 (✓ ✓ ✓) 성능이 가장 높음.
- Result 4: SOTA 달성 (Table 3)
- MoReVQA는 4개 주요 VideoQA benchmark에서 기존 training-free 방법들을 큰 차이로 능가하며, 일부 fine-tuned SOTA 모델과 경쟁하거나 이를 넘어서는 성능을 달성.
- iVQA: MoReVQA (60.9%) vs. InstructBLIP (FlanT5XXL, fine-tuned, 53.8%)
- EgoSchema: MoReVQA (51.7%) vs. JCEF (50.0%) (이전 연구들과의 격차 큼)
- MoReVQA는 4개 주요 VideoQA benchmark에서 기존 training-free 방법들을 큰 차이로 능가하며, 일부 fine-tuned SOTA 모델과 경쟁하거나 이를 넘어서는 성능을 달성.
- Extensions:
- Grounded VideoQA (NEXT-GQA): SOTA SeViLa (trained) 대비 우수한 training-free 성능 (MoReVQA: 37.8 mIoP / 39.6 Acc@GQA).
- Paragraph Captioning (ActivityNet-Para): Fine-tuned SOTA Vid2Seq와 유사한 training-free 성능 (MoReVQA: 28.2 CIDEr vs. Vid2Seq: 28.0 CIDEr).
Limitations and Future Work
- Limitations:
- Foundation Model 의존성: MoReVQA의 성능은 기반이 되는 LLM과 VLM의 능력에 크게 좌우됨. Prompt engineering이 여전히 중요하며, 데이터셋/task별로 섬세한 조정이 필요할 수 있음.
- 모듈 통합의 복잡성: 각 단계가 분해되어 있지만, 전체 시스템을 구성하고 API를 관리하는 것은 여전히 복잡할 수 있으며, stage 간 오류 전파(error propagation) 가능성이 존재.
- (Supplement 언급 기반) 잠재적 오용: 구조화된 추론에도 불구하고, 기반 LLM이 편향되거나 유해한 내용을 생성할 경우, 그 영향이 시스템 전체로 퍼질 수 있음.
- Future Work:
- 모듈 강건성 및 일반화 향상: 각 모듈의 견고함과 일반화 성능을 더욱 개선하고, stage 간 더 정교한 memory/feedback 메커니즘 연구.
- Prompt Engineering 의존도 감소: 각 stage 내에서 prompt 전략을 meta-learning 하거나, 보다 자동화된 program synthesis 방법을 탐구하여 세심하게 제작된 few-shot prompt에 대한 의존도를 줄이는 연구.
- 동적 Stage 구성: 질문의 복잡도에 따라 stage를 동적으로 선택하거나 더 세분화된 분해(decomposition)를 탐색하는 연구.
Overall Summary
MoReVQA 논문은 기존 single-stage modular VideoQA 방법론의 취약점을 지적하며, 이를 극복하기 위한 새로운 multi-stage, training-free modular reasoning framework를 제안한다. Event parsing, grounding, reasoning의 3단계로 문제를 분해하고 external memory를 통해 정보를 공유함으로써, 복잡한 비디오 이해 task에서 interpretable하면서도 SOTA 수준의 성능을 달성했다. 이 연구는 VideoQA 분야에서 decomposed reasoning의 중요성을 강조하며, 향후 training-free 방식의 발전 가능성을 제시했다는 점에서 의의가 크다.
쉬운 설명 (Easy Explanation)
MoReVQA는 비디오를 보고 질문에 답하는 "똑똑한 AI 비서팀"과 같습니다. 한 명의 비서(기존 single-stage)가 모든 계획을 한 번에 짜려고 하면 실수하기 쉽지만, MoReVQA팀은 일을 나눠서 합니다:
- "질문 분석가" (Event Parser): 먼저 질문을 꼼꼼히 읽고 "언제쯤 일어난 일이지?", "무엇과 무엇의 관계를 묻는 거지?" 같은 핵심 단서들을 찾아냅니다.
- "현장 탐정" (Grounding Stage): 분석가가 찾은 단서를 가지고 비디오를 보면서 "아! 이 장면에서 그 일이 있었구나!" 하고 정확한 시간과 위치를 찾아냅니다.
- "종합 해결사" (Reasoning Stage): 탐정이 찾아낸 비디오 장면과 질문 분석가의 정보를 종합하고, 필요하면 "이 장면에서 고양이는 뭘 하고 있었지?" 같은 구체적인 추가 질문들을 스스로 만들어서 답을 찾은 뒤, 최종 답변을 내놓습니다.
이렇게 단계별로, 실제 비디오 내용을 확인하며(grounding) 문제를 풀기 때문에 더 정확하고, 각 단계에서 뭘 했는지 알 수 있어서(interpretable) 믿을 수 있습니다.
Abstract
이 논문은 분해된 다단계, 모듈식 reasoning 프레임워크를 통해 video question answering (videoQA) 작업을 다룹니다. 이전의 모듈식 방법들은 visual 콘텐츠에 기반하지 않은 단일 planning 단계에서 가능성을 보여주었습니다. 그러나 간단하고 효과적인 baseline을 통해 이러한 시스템이 실제 까다로운 videoQA 설정에서 불안정한 동작을 유발할 수 있음을 발견했습니다. 따라서 기존의 단일 단계 planning 방법과 달리, 우리는 event parser, grounding 단계, 그리고 외부 메모리와 함께 최종 reasoning 단계로 구성된 다단계 시스템을 제안합니다. 모든 단계는 training이 필요 없으며, large models의 few-shot prompting을 사용하여 수행되어 각 단계에서 해석 가능한 중간 output을 생성합니다. 기본 planning 및 작업 복잡성을 분해함으로써, 우리 방법인 MoReVQA는 표준 videoQA 벤치마크(NExT-QA, iVQA, EgoSchema, ActivityNet-QA)에서 이전 연구를 개선하여 state-of-the-art 결과를 달성하고, 관련 작업(grounded videoQA, paragraph captioning)으로 확장됩니다.
1. Introduction
video question answering (videoQA)과 같은 video understanding 작업을 해결하기 위한 주된 접근 방식은 오랫동안 end-to-end networks였습니다. 그러나 이러한 방법의 주요 과제는 black-box 특성으로, 해석 가능성과 compositional generalization이 부족하다는 점입니다. 특히 video의 경우, 중요한 요구 기능은 다양한 시간적 규모에서 event를 이해하는 능력인데, 이는 일반적으로 몇 개의 frame만 보는 기존 end-to-end vision-language models (VLMs)에게는 어려운 과제입니다. 이로 인해 최근에는 이러한 문제를 해결하기 위해 modular 또는 programmatic 접근 방식에 대한 관심이 높아졌으며, 특히 인상적인 reasoning 및 planning 능력을 보여준 large language models (LLMs)의 성공을 활용하고 있습니다. 이러한 방법들은 code를 생성할 수 있는 LLM을 사용하여 symbolic programs를 생성합니다. 이는 해석 가능하며 (독립적인 visual 또는 language processing modules를 활용하여) 직접 실행할 수 있습니다. 이러한 방법의 장점은 training-free, compositional하며, few-shot vision 및 language 작업에서 인상적인 performance를 달성한다는 것입니다.
이 논문에서는 특히 videoQA (다양한 video domain, 길이 및 question 유형을 대표하는 4개의 datasets에 걸쳐) 및 단일 단계 modular frameworks (예: ViperGPT)의 경우에 대해 이러한 방법의 performance를 더 자세히 분석합니다. 우리는 large, state-of-the-art end-to-end networks (LLMs 및 VLMs)를 modules로 사용하는 최근 modular 접근 방식이 상당한 가능성을 보여주었지만, 동일한 기본 models을 기반으로 하는 Just Caption Every Frame (JCEF)이라고 부르는 간단한 Socratic baseline이 실제로 이러한 이전 접근 방식을 상당한 차이로 능가할 수 있음을 발견했습니다. 이름에서 알 수 있듯이, JCEF는 large vision-language model (VLM)을 사용하여 video의 모든 frame을 단순히 captioning한 다음, 모든 captions와 question을 LLM에 공급하여 answer를 생성합니다 (그림 1(i) 및 그림 2). 우리는 이 baseline이 이전 연구를 능가하는 이유가 이러한 modular frameworks (그림 1(b))가 video에 기반하지 않은 단일 planning 단계로 구성되어 있기 때문이라고 가정합니다 (즉, 실행될 전체 program 또는 단계 집합이 language prompt만으로 단일 단계에서 직접 결정됨). 따라서 실제로는 단일 단계 planner가 video에서 다양한 questions에 답하는 데 필요한 복잡한 조합의 넓은 공간으로 prompted되어야 합니다. JCEF의 performance는 인상적이지만, 각 frame에 대한 captions는 일반적이고 question에 특화되지 않기 때문에 (그림 2) 앞서 언급한 modular 접근 방식보다 해석 가능성이 떨어집니다.
본 연구에서는 이러한 한계를 해결하기 위해 video question answering을 위한 분해되고, modular하며, 다단계적인 접근 방식을 제안합니다 (그림 1(ii) 및 그림 3). 우리의 방법은 세 가지 주요 planning 및 execution 단계로 구성됩니다: (1) question의 events를 명시적으로 분해하는 event parsing, (2) 추가적인 tool 사용이 필요한 video 내 해당 시간 영역을 식별하는 grounding (모든 단일 frame을 자세히 처리할 필요가 없도록 함), 그리고 (3) 구성된 modules/APIs의 outputs과 공유 메모리를 고려한 후 최종 answer를 제공하는 reasoning. 이러한 단일 단계 planning의 분해는 videoQA 및 관련 video-language reasoning 작업을 위한 자연스러운 하위 작업에서 동기를 부여받았습니다. 모든 단계는 training-free이며, 외부 읽기/쓰기 메모리와 함께 기성 modules의 few-shot 또는 zero-shot prompting을 포함합니다 (단일 단계 planning 방법의 API 동작과 일치). 이 메모리는 상태를 유지하고 더 유연한 설계를 가능하게 합니다. 우리는 우리의 방법을 Modular Reasoning for Video Question Answering (MoReVQA)라고 부르며, JCEF 및 기타 주요 단일 단계 modular baselines를 능가하는 동시에 grounded되고 해석 가능한 planning 및 execution 추적을 제공함을 보여줍니다.
우리의 주요 기여는 다음과 같이 요약됩니다: (1) 기존의 단일 단계 code-generation frameworks는 modular하고 해석 가능하지만, 일반화 가능한 VideoQA의 복잡성에는 반드시 적합하지 않으며, 해당 tool 구성 요소의 하위 집합(예: large VLM 및 LLM)을 사용하여 우리가 제안하는 간단한 baseline에 의해 성능이 저하될 수 있음을 발견했습니다. (2) 우리는 기본 planning 하위 작업을 효과적으로 분해하여 이 문제를 완화하는 다단계 modular reasoning system (MoReVQA)을 설계했습니다. (3) 우리는 training-free (zero-shot/few-shot) 방법 전반에 걸쳐 네 가지 표준 videoQA 벤치마크(NExT-QA, iVQA, EgoSchema 및 ActivityNet-QA)에서 state-of-the-art 결과를 달성했으며, 어떤 경우에는 완전히 finetuned된 이전 연구보다 성능이 뛰어납니다. 또한 grounded videoQA (NExT-GQA) 및 paragraph captioning (ActivityNet-Para)으로 확장하여 강력한 performance를 보여줍니다.
1. Introduction 정리노트 (AI 연구자용)
핵심 문제 제기:
- 기존 end-to-end 방식 VideoQA model들은 black-box 특성으로 인해 해석 가능성 및 compositional generalization이 부족하며, 특히 긴 video의 다양한 시간적 scale에서 event 이해에 어려움.
- 최근 large language models (LLMs)을 활용한 modular/programmatic 접근 방식이 등장했으나, 단일 planning 단계(single-stage planning)는 visual content와 ungrounded될 수 있어 복잡한 VideoQA에서 불안정한 성능을 보임.
본 논문의 주요 발견 및 제안:
- JCEF (Just Caption Every Frame) Baseline의 강력한 성능:
- 단순히 모든 frame을 large vision-language model (VLM)으로 captioning하고, 이를 question과 함께 LLM에 입력하여 답을 얻는 Socratic baseline인 JCEF가 기존 single-stage modular frameworks (예: ViperGPT)보다 우수한 성능을 보임.
- 이는 기존 single-stage planner가 video 내용과 관계없이 language prompt만으로 전체 program을 생성하려 할 때 발생하는 문제점을 시사함 (즉, video에 ungrounded된 planning).
- MoReVQA (Modular Reasoning for Video Question Answering) 제안:
- JCEF의 한계(해석 가능성 부족, question-specific하지 않은 generic captions)와 기존 single-stage modular 방식의 한계를 극복하기 위해, 분해된(decomposed), modular, 다단계(multi-stage) reasoning framework 제안.
- 3가지 주요 planning 및 execution 단계:
- Event Parsing: Question 내 events를 명시적으로 분해.
- Grounding: Video 내에서 추가적인 tool 사용이 필요한 관련 시간적 영역(temporal regions) 식별 (모든 frame을 처리할 필요성 감소).
- Reasoning: 구성된 modules/APIs의 output과 공유 외부 메모리(external read/write memory)를 고려하여 최종 answer 도출.
- 특징:
- 모든 단계가 training-free (few-shot 또는 zero-shot prompting 활용).
- 각 단계에서 해석 가능한 중간 output 생성.
- 외부 메모리를 통해 상태 유지 및 유연한 설계 가능.
- VideoQA의 자연스러운 하위 작업(sub-tasks)에 기반한 분해.
주요 기여 (Contributions):
- 기존 single-stage code-generation frameworks가 VideoQA의 복잡성에 부적합할 수 있으며, 본 논문이 제안한 간단한 JCEF baseline (VLM, LLM 등 일부 tool component 사용)에 의해 성능이 뒤처질 수 있음을 보임.
- Planning sub-tasks를 효과적으로 분해하여 문제를 완화하는 다단계 modular reasoning system (MoReVQA) 설계.
- 4개의 표준 VideoQA 벤치마크 (NExT-QA, iVQA, EgoSchema, ActivityNet-QA)에서 training-free (zero-shot/few-shot) 방법 중 state-of-the-art 달성, 일부 경우 fully-finedtuned 이전 연구보다 우수한 성능.
- Grounded videoQA (NExT-GQA) 및 paragraph captioning (ActivityNet-Para) 작업으로의 확장 가능성 및 강력한 performance 입증.
쉬운 설명 :
Video를 보고 질문에 답하는 것을 video question answering (VideoQA)라고 합니다. 예를 들어 "영상 속 남자가 무엇을 마셨나요?" 같은 질문에 답하는 기술이죠.
예전에는 컴퓨터가 마치 마법 상자처럼 답을 내놓는 end-to-end 방식을 많이 썼어요. 하지만 이 방식은 왜 그런 답이 나왔는지 알기 어렵고, 영상이 길어지면 중요한 장면을 놓치기도 했습니다.
그래서 최근에는 large language models (LLMs)이라는 똑똑한 AI를 사용해서, 문제를 해결하기 위한 계획(program)을 짜는 modular 방식이 나왔습니다. 이건 좀 더 이해하기 쉽지만, 가끔 영상 내용을 제대로 보지도 않고 계획부터 세우는 바람에 엉뚱한 답을 내놓기도 했습니다. 이 논문에서는 이런 방식보다 오히려 "영상의 모든 장면에 설명을 달고(captioning), 그 설명들과 질문을 함께 AI에게 줘서 답을 얻는" 간단한 방법(JCEF)이 더 잘할 때도 있다는 것을 발견했습니다.
그래서 이 논문은 더 좋은 방법을 제안합니다. 바로 MoReVQA라는 것인데요, 문제를 한 번에 풀려고 하지 않고 여러 단계로 나눠서 차근차근 해결하는 방식입니다.
- Event Parsing: 먼저 질문을 잘 이해하고 질문 속 사건(event)들을 파악합니다.
- Grounding: 그 다음, 영상에서 그 사건과 관련된 중요한 부분(시간)을 찾아냅니다. 모든 장면을 다 볼 필요 없이 중요한 부분만 골라보는 거죠.
- Reasoning: 마지막으로, 찾아낸 정보들을 종합해서 최종 답을 만들어냅니다.
이렇게 하니, AI가 특별한 training 없이도 답을 더 잘 찾고, 왜 그런 답이 나왔는지 과정도 알 수 있게 되었습니다. 다른 비슷한 VideoQA 문제나 영상 내용을 요약하는 작업에도 잘 활용될 수 있다고 합니다.
2. Related Work
VideoQA.
Video Question-Answering (videoQA)는 multimodal video understanding 시스템이 video에 대해 reason하는 능력을 평가하기 위한 핵심 작업입니다. 최근 benchmarks는 temporal questions, 더 긴 videos, 그리고 instructional 및 egocentric videos와 같은 domain에서의 reasoning을 평가하는 방향으로 나아가고 있습니다. 우리는 NExT-QA, iVQA, EgoSchema, ActivityNet-QA라는 네 가지 다양하고 대표적인 videoQA 작업에 대해 우리의 modular 접근 방식을 평가합니다.
End-to-end Models for VideoQA.
최근 LLMs의 성공은 vision과 text data를 함께 이해하는 multimodal models의 폭발적인 증가로 이어졌습니다. 많은 연구들이 frozen image encoders를 LLM textual embedding space에 mapping합니다: 예를 들어, Flamingo는 Perceiver resampler를 통해, 또는 BLIP2와 Video-LLaMa는 audio/vision을 위한 Q-formers를 통해 이를 수행합니다. GIT2와 PALI는 image captioning을 위해 trained된 간단한 encoder-decoder style architectures를 사용하며, MV-GPT는 video captioning을 위해 native video backbone을 finetunes합니다. 비록 generative (captioning) objective로 trained되었지만, 이러한 models은 question을 prefix로 사용하는 auto-regressive generation으로 간주되는 일반적인 vision-language 작업에서 강력한 결과를 달성합니다. InstructBLIP, MiniGPT-4, VideoBLIP과 같은 최근 연구들은 강력한 instruction tuning을 통해 zero-shot 결과를 향상시킵니다. 그러나 일반적으로 end-to-end methods는 해석하기 어려울 수 있습니다. 특히 videos의 경우, end-to-end models의 메모리 한계로 인해 상당한 downsampling이 필요합니다: 예를 들어, 큰 strides로 몇 개의 frames를 temporally sampling하거나, 각 frame을 단일 token으로 spatially subsampling하는 방식입니다. 이러한 models은 또한 각 frame을 동일한 중요도로 처리하는 경향이 있습니다. 이러한 연구들과 달리, 우리 model은 더 자세히 처리될 가장 관련성 높은 video frames를 검색하는 명시적인 grounding 단계를 가지고 있습니다. videoQA를 위한 다른 grounding 연구로는 SeViLa, MIST, NExT-GQA가 있으며, 우리 model은 modular multi-stage reasoning을 통합함으로써 이러한 이전 연구들과 차별화됩니다.
Visual Programming and Modularity.
Visual programming methods는 여러 sub-task specific modules를 실행 가능한 program으로 composing함으로써 end-to-end systems의 한계를 해결하는 가능성을 보여주었습니다. neural modular networks에 대한 이전 (초기) 연구는 이 목표를 향한 초기 진전을 이루었지만, 결국 large-scale end-to-end models의 발전에 뒤처졌습니다. CodeVQA, ViperGPT, VisProg과 같은 최근 연구들은 event/language parsing을, prompt에 제공된 여러 API를 호출하는 전체 python program을 생성할 수 있는 code-finetuned LLM으로 대체함으로써 일부 end-to-end systems와 동등한 accuracies를 보여주었습니다. 이러한 접근 방식은 VQA 해결에 있어 interpretability와 flexibility 측면에서 효과적이지만, image에 접근하지 않고 전체 program을 생성해야 하는, 크고 복잡한 code generation 예제를 포함하는 'single-prompt'에 크게 의존한다는 공통적인 한계를 공유합니다.
Multistage Planning Models.
최근 방법들은 large multimodal models 간의 intermediate representation으로 natural language를 직접 사용하는 것을 탐구해 왔습니다. 새롭게 등장하는 models 중 하나는 Socratic models로, LLMs와 VLMs의 few-shot 또는 zero-shot prompting을 사용하여 video tasks를 해결합니다. 예를 들어 VidIL은 image captions, frame attributes 및 ASR을 LLM에 공급하여 video-language tasks를 수행합니다. 우리 연구와 가장 가까운 것은 AVIS로, visual question answering 작업을 위해 external memory와 함께 multistage LLMs를 사용합니다. 그러나 knowledge 중심의 QA를 images에 대해 수행하는 AVIS와 달리, 우리는 여러 frames에 걸친 reasoning이 필요한 더 도전적인 domain인 videos에 중점을 둡니다. 따라서 핵심적인 차이점은 (잠재적으로 긴) video에서 어떤 frames가 가장 관련성 높은 정보를 포함하고 있는지 결정하여 추가적인 reasoning 단계와 tools를 적용하는 우리의 grounding 단계입니다.
2. Related Work 정리노트 (AI 연구자용)
이 섹션은 본 논문의 제안(MoReVQA)이 기존 연구들과 어떤 점에서 다르고, 어떤 문제점을 해결하고자 하는지를 설명합니다.
1. VideoQA (연구 배경):
- Video Question-Answering (videoQA)는 video 이해 및 reasoning 능력을 평가하는 핵심 분야입니다.
- 최근 연구 동향은 temporal reasoning, 긴 video 처리, 특정 domain (instructional, egocentric video)에 초점을 맞추고 있습니다.
- 본 논문은 NExT-QA, iVQA, EgoSchema, ActivityNet-QA 등 다양한 벤치마크를 사용해 제안 방법론을 평가합니다.
2. End-to-end Models for VideoQA:
- 현황: LLMs의 발전으로 vision과 text를 함께 이해하는 다수의 multimodal models (예: Flamingo, BLIP2, GIT2, PALI, MV-GPT, InstructBLIP) 등장. 이들은 generative (captioning) objective로 학습되어도 일반 vision-language 작업에서 강력한 성능을 보임.
- 한계점:
- Black-box 특성: 내부 동작 해석의 어려움.
- Video 처리의 한계: 메모리 제약으로 인한 video downsampling (temporal sampling, spatial subsampling)이 불가피하며, 모든 frame을 동일한 중요도로 처리하는 경향이 있음.
- 본 논문의 차별점 (MoReVQA): 명시적인 grounding stage를 통해 video 내 가장 관련성 높은 frames를 검색하여 선택적으로 처리함으로써, 기존 end-to-end model의 비효율성을 개선합니다. (SeViLa, MIST, NExT-GQA 등 다른 grounding 연구들이 있지만, 본 논문은 modular multi-stage reasoning을 통합한 점이 다릅니다.)
3. Visual Programming and Modularity:
- 현황: Sub-task specific modules를 program으로 구성하여 end-to-end 시스템의 한계를 극복하려는 시도 (예: CodeVQA, ViperGPT, VisProg). 이들은 LLM을 사용해 python program을 생성하며, 해석 가능성과 유연성 측면에서 효과적입니다.
- 한계점:
- Ungrounded Planning: 전체 program을 image/video에 대한 접근 없이, 'single-prompt' 내의 복잡한 code generation 예제를 통해 한 번에 생성해야 하는 데 크게 의존합니다. 이는 video 내용과 동떨어진 계획으로 이어질 수 있습니다.
- 본 논문의 접근 (MoReVQA): Multi-stage planning을 통해, 한 번에 전체 계획을 세우기보다 단계를 나누어 video 정보와 상호작용하며 계획을 구체화할 가능성을 시사합니다 (Introduction에서 JCEF baseline의 성능이 이를 뒷받침).
4. Multistage Planning Models:
- 현황: Large multimodal models 간의 중간 representation으로 natural language를 사용하는 Socratic models (예: VidIL) 등장.
- 가장 유사한 연구 (AVIS): External memory와 multistage LLMs를 사용하여 image에 대한 visual question answering을 수행.
- 본 논문의 핵심 차별점 (MoReVQA vs. AVIS):
- 대상 Domain: AVIS는 images, MoReVQA는 여러 frame에 걸친 reasoning이 필요한 더 복잡한 videos에 초점.
- 핵심 Grounding Stage: (특히 긴) video에서 어떤 frames가 가장 관련성 높은 정보를 포함하는지 먼저 식별한 후, 추가적인 reasoning 단계와 tools를 적용합니다. 이는 video의 특성을 고려한 MoReVQA의 중요한 차별점입니다.
결론적으로, 본 논문은 기존 end-to-end 방식의 비효율성과 해석의 어려움, 그리고 기존 visual programming 방식의 ungrounded planning 문제를 해결하기 위해, video에 특화된 grounding 단계를 포함하는 modular multi-stage reasoning framework (MoReVQA)를 제안합니다.
쉬운 설명 :
"Related Work"는 이 논문이 나오기 전에 다른 연구자들이 이 분야(video 질문 답변)에서 어떤 연구들을 해왔는지, 그리고 이 논문이 그 연구들과 어떤 점이 다른지를 설명하는 부분입니다.
1. VideoQA (비디오 질문 답변 연구):
- Video를 보고 "이 영상에서 무슨 일이 있었어?" 같은 질문에 컴퓨터가 답하게 하는 연구 분야예요. 이 논문은 자신들의 방법이 얼마나 좋은지 여러 종류의 video 질문 세트(NExT-QA 등)로 시험해 봤다고 해요.
2. End-to-end Models (한 번에 다 처리하는 AI 모델):
- 이건 AI가 처음부터 끝까지, 마치 마법 상자처럼 한 번에 답을 내놓는 방식이에요. 요즘 LLMs 덕분에 글과 영상을 같이 이해하는 똑똑한 AI(Flamingo, BLIP2 등)들이 많이 나왔어요.
- 문제점:
- 얘네들이 어떻게 답을 찾는지는 잘 알기 어려워요 (black-box).
- Video는 용량이 커서, AI가 영상의 모든 부분을 자세히 보지 못하고 몇 장면만 대충 보거나, 모든 장면을 똑같이 중요하다고 생각하고 처리하는 경향이 있어요.
- 이 논문의 아이디어: 모든 장면을 똑같이 보는 대신, 질문과 가장 관련 있는 중요한 장면들(grounding)을 먼저 찾아서 그 부분만 집중적으로 분석해요.
3. Visual Programming and Modularity (레고 블록처럼 AI 만들기):
- 이건 AI를 마치 레고 블록(modules)처럼 여러 조각으로 나눠서, 각 조각이 특정 일을 하도록 만들고, 이 조각들을 합쳐서(program) 문제를 푸는 방식이에요. LLM을 시켜서 이런 계획(program)을 짜게 하죠 (CodeVQA, ViperGPT 등). 이렇게 하면 AI가 어떻게 일하는지 이해하기 좀 더 쉬워요.
- 문제점: 가끔 AI가 video 내용을 보기도 전에 질문만 보고 전체 계획을 한꺼번에 짜버려서, 실제 video 내용과 맞지 않는 계획을 세울 때가 있어요.
- 이 논문의 아이디어 (간접적): 계획을 한 번에 다 짜는 게 아니라, 여러 단계로 나눠서 video 내용을 참고하며 계획을 세우는 것 같아요 (앞서 Introduction에서 JCEF라는 간단한 방법이 이런 복잡한 계획보다 잘 될 때도 있다고 했죠).
4. Multistage Planning Models (여러 단계로 계획하는 AI 모델):
- 최근에는 AI가 문제를 풀 때 한 번에 다 하지 않고, 여러 단계(multistage)로 나눠서 생각하는 방법들이 나오고 있어요. 중간중간 사람의 말(natural language)처럼 정보를 주고받기도 하고요. AVIS라는 AI는 사진(image)에 대해 이렇게 여러 단계로 질문에 답하는데, 이 논문과 좀 비슷해요.
- 이 논문이 AVIS와 다른 점:
- AVIS는 사진을 다루지만, 이 논문은 훨씬 더 복잡한 video를 다뤄요. Video는 시간의 흐름에 따라 내용이 바뀌고 길이도 길 수 있으니까요.
- 그래서 이 논문은 grounding이라는 특별한 단계를 강조해요. 긴 video에서 질문과 관련된 가장 중요한 부분이 어딘지를 먼저 콕 집어낸 다음에, 그 부분에 대해서만 더 자세히 분석하고 답을 찾는 거죠.
쉽게 말해, 이 논문은 기존 방법들의 단점(통째로 처리해서 비효율적이거나, 내용을 안 보고 계획부터 짜는 문제)을 해결하기 위해, "질문을 잘 이해하고, video에서 진짜 중요한 부분만 쏙쏙 골라낸(grounding) 다음, 단계별로 차근차근 생각해서 답을 찾는" 더 똑똑하고 효율적인 model (MoReVQA)을 만들었다고 이야기하는 거예요.
3. Technical Approach
이 섹션에서는 videoQA에 대한 우리의 technical approach (Sec. 3.1)를 설명하기 위해, 우리의 주요 multistage modular reasoning model MoReVQA (Sec. 3.3)를 제시하기 전에 표준 single-stage (Sec. 3.2) 패러다임의 한계에 대해 논의합니다.
3.1. Preliminaries: Video Question-Answering
Task. 우리는 video reasoning을 위한 multimodal systems의 좋은 시험대 역할을 하는 video question-answering (VideoQA) 작업에 중점을 둡니다. 형식적으로, 우리는 개의 frames를 가진 입력 video 과 자연어로 된 해당 question , 그리고 groundtruth answer 가 주어집니다. 이 answer 는 question 자체에서 직접 주어지거나, 후보 옵션 집합 중에서 주어집니다. 작업은 다음과 같은 model 을 개발하는 것입니다: 여기서 는 closed-set VQA 설정에 존재하며 open-ended VQA에는 존재하지 않습니다.
Design Approaches. 이 작업을 해결하기 위한 접근 방식은 광범위하게 다양할 수 있습니다 (Sec. 2 및 그림 1); 여기서는 을 위한 state-of-the-art systems의 두 가지 핵심 design principles를 중심으로 논의를 전개합니다: (1) 단일 monolithic black-box model이 아닌, 특정 sub-tasks에 초점을 맞춘 개별적이고 독립적인 modules를 활용하는 Modularity, 그리고 (2) 시스템이 어떤 modules를 활용하고 어떻게 가장 효과적으로 사용할지 결정하는 동안 명시적인 중간 outputs를 제공하여 더 해석 가능한 chain of execution을 제공하는 Multi-stage planning. 이 섹션에서는 single-stage (이전 연구)와 multi-stage planning (우리의 새로운 model)을 사용하는 modular methods를 대조하는 데 중점을 둡니다.
3.2. Single-Stage Planning
Overview. 섹션 2에서는 visual programming 및 modular methods의 더 넓은 영역에 대해 논의합니다. 여기서는 특정 대표적인 state-of-the-art model (ViperGPT)에 초점을 맞추고, 이전 연구와 일관된 표기법을 사용하여 modular videoQA를 위한 single-stage planning 접근 방식의 주요 한계를 논의합니다.
ViperGPT. videoQA의 맥락에서, ViperGPT는 query 와 특수 prompt 를 입력으로 받아 중간 실행 가능 program (여기서 는 모든 programs (Python, natural language 등)의 공간을 나타냄)를 직접 output하는 single-stage program generator 로 구성된 시스템 입니다. 이 program 는 그런 다음 전체 입력 에 대해 실행되어 최종 answer 를 생성합니다. 더 공식적으로, 전체 시스템은 다음과 같이 설명될 수 있습니다: 여기서 은 program 를 구성하는 데 사용되는 API module library를 나타냅니다. program generator 는 잘 설계된 prompt file 로 conditioned된 code-finetuned LLM으로 인스턴스화되며, 이 는 두 가지 주요 구성 요소로 이루어집니다: (1) API 사용 예제가 포함된 맞춤형 API description, 그리고 (2) dataset distribution에서 발견되는 questions 를 이러한 modules를 효과적으로 함께 구성하는 전체 program 로 변환하는 방법을 보여주는 dataset-specific program examples 집합.
Modules for Modular Reasoning. ViperGPT 및 관련 models은 API에 의해 설명된 특수 module library를 활용하여 실행 가능한 programs 를 조립합니다. 우리는 이 API modules library를 로 표시합니다: 예로는 open-vocabulary detection (OWL-ViT), text-image scoring (CLIP, XVLM), captioning (BLIP) 등이 있습니다. 전체 program 는 주어진 query에 대한 single-stage code generation LLM의 modular reasoning을 설명합니다.
Limitations. single-stage 접근 방식은 단순함이라는 매력적인 가능성을 시사하지만, 실제로는 이러한 design이 신뢰할 수 있는 outputs를 생성하지 못하는 불안정한 programs로 이어진다는 것을 관찰합니다. 그림 4에서 videos에 대한 대표적인 예를 보여주며, 추가 분석은 부록에 있습니다. 전체 시스템의 핵심 문제는 single-stage planner에 주어진 어려운 작업에 있습니다: visual reasoning을 수행하기 전에, model은 실제 video 자체에 대한 어떠한 grounding 없이 전체 program을 output해야 합니다. 따라서 question의 natural language 모호성은 visual context에 의해 해결될 수 없으며, 이는 video / event reasoning 작업에 중요합니다. 더욱이, model이 하나의 큰 LLM inference 단계에서 전체 reasoning programs를 조합할 것으로 기대함으로써, prompt 내 예제의 필요한 복잡성도 그에 따라 증가합니다. 실제로, 우리는 이것이 시스템이 제공된 특정 예제에 overftting하게 만들어 compositional modular generalization의 진정한 잠재력을 실현하지 못하게 한다고 관찰합니다. 이러한 한계는 자연스럽게 두 가지 핵심 질문을 제기합니다: (Q1) 불안정한 single-stage planning이 accuracy에 어느 정도 영향을 미치는가, 그리고 (Q2) multi-stage decomposition을 통해 이러한 한계를 얼마나 잘 극복할 수 있는가? 이는 Sec. 3.3에서 우리가 제안하는 baseline과 model의 동기가 됩니다.
3.3. MoReVQA: Multi-stage, Modular Reasoning
Motivation: A Simple, Strong Baseline (JCEF). single-stage 접근 방식의 한계를 경험적으로 특성화하기 위해 (Q1에 따라), 우리는 Just Caption Every Frame (JCEF)이라는 간단하지만 효과적인 Socratic baseline을 만듭니다 (그림 2). 이는 두 개의 강력한 modules 과 으로 구성됩니다. 우리의 baseline은 training이 필요 없으며, 매우 간단하고 결정론적인 "program"으로 간주될 수 있는 방식으로 이러한 대규모 기성 models을 직접 prompting합니다. 각 video에 대해, video 에서 개의 frames를 sample하고, image-language model 으로 각 frame을 captioning합니다. 이 개의 captions는 그런 다음 frame 번호(예: "[frame 5] caption: a person is throwing a baseball in a feld")와 결합되어 LLM 에 question 와 객관식 질문을 위한 후보 답변 를 query하는 데 사용되는 prompt 를 형성합니다 (prompt 세부 정보는 부록 참조). 동일한 modules 로 업그레이드된 state-of-the-art baseline (ViperGPT+)과 비교함으로써, single-stage planning designs의 한계를 관찰할 수 있습니다: 놀랍게도, JCEF는 이 single-stage baseline을 능가합니다 (Sec. 4).
MoReVQA Overview. 우리는 JCEF baseline을 효과적으로 개선하기 위해 single-stage pipeline을 여러 단계로 분해하는 것을 고려함으로써 두 번째 핵심 질문(Q2)을 해결합니다. 우리가 새로 제안하는 model인 videoQA를 위한 multi-stage modular reasoning (MoReVQA)은 벤치마크와 domain 전반에 걸쳐 videoQA (및 관련 video-language reasoning 작업)에 일반적인 핵심 sub-tasks에 기반을 둔 세 단계로 구성됩니다: (1) event parsing (입력 language에서 무엇이 관련 있는지 이해), (2) grounding (입력 video에서 무엇이 관련 있는지 이해), 그리고 (3) reasoning (관련 events, 그 속성 및 관계 이해). pipeline의 개요는 그림 3에 제공됩니다. 각 단계는 구별되면서도 서로 연결되어 있으며, 특정 sub-tasks에 맞춰진 API calls 집합을 생성하는 LLM을 사용합니다. 중요하게도, 이러한 APIs는 일관된 비교를 위해 single-stage 설정 (Sec. 3.2)에서 고려된 동일한 기성 pre-trained models에 의해 지원됩니다. 이 과정의 중심에는 natural language events, video의 grounded regions, video captions, 중간 tool outputs를 포함하여 여러 단계에 걸쳐 정보를 관리하고 저장하는 공유 external memory가 있습니다 (자세한 내용은 Sec. 4.3 참조). 이러한 decomposition을 통해, 우리의 MoReVQA model 는 각 단계에 대해 더 작고 집중된 prompts 에 의존합니다; 더욱이, 중간 reasoning outputs 는 전체 작업의 다양한 측면을 처리할 수 있으며, video 자체에 grounding을 통합하여 모호성을 해결하고 ungrounded single-stage 설정보다 효과적인 방식으로 새로운 중간 reasoning 단계를 알릴 수 있습니다. 각 단계 를 다음과 같이 설명합니다:
Event parsing stage . 첫 번째 단계는 입력 question 의 초기 분석 및 처리에 중점을 둡니다. 초기 modular systems의 전통적인 language parsing과 달리, 우리의 단계는 word-level이 아닌 event-level에서 parsing하여, 후속 단계를 위해 관계와 속성을 분해하면서도 더 high-level video semantics에 초점을 맞춥니다. 우리의 event parsing prompt (보충 자료 참조)은 LLM이 입력 question을 검토하고, temporal hints 및 관계("in the beginning of the video", "before", "during") 감지, sub-question types (location, description, explanation) 감지, 그리고 language가 추가 tool types (예: OCR)를 제안하는지 여부와 같은 parsing 작업을 수행하도록 conditioned합니다. 그런 다음 LLM은 이러한 parsing 작업을 기반으로 API calls 집합을 생성하며, 이는 으로 표현되고 실행 시 external memory에 후속 단계를 위한 관련 language-only data를 채웁니다.
Grounding stage . 이 단계에서는 식별된 events를 grounding하는 데 초점이 맞춰지며, 이는 모호성을 해결하고 최종 reasoning 단계에서 tool-use를 가장 효과적일 수 있는 temporal regions로 유도하는 데 중요한 과정입니다. 여기서, prompt 는 의 outputs (예: parsed events)을 포함하는 external memory 상태로 구성되며, LLM이 entity detection 및 image-text alignment를 위한 vision-language modules 을 사용하여 video에서 후보 frames 및 temporal regions를 식별하도록 conditioned합니다. 결과적인 는 video에 대해 실행되고, output grounding (spatially and temporally)은 external memory에 추가됩니다. 중요하게도, 이 과정에는 그림 3에서 설명된 바와 같이 visual grounding을 통해 event 모호성을 확인하고 해결하는 데 도움이 되도록 설계된 API calls가 포함됩니다.
Reasoning stage . 우리 시스템의 최종 단계는 최종 prediction 전에 grounded reasoning을 수행합니다. LLM prompt 는 이전 두 단계 이후의 memory 상태를 기반으로 하며, 원래 question의 다양한 측면을 풀기 위해 reasoning sub-questions를 중심으로 설계된 API calls (그림 3)로 최종 실행 파일을 구성하고, 이전에 식별된 video의 특정 grounded regions에 vision-language modules를 집중시킵니다. 이 지역화되고, context-specific한 정보는 이후 video 전체에서 균일하게 sample된 frames (그림 3의 general video context)에서 얻은 보다 일반적인 개의 captions와 결합되어 최종 answer 를 output하기 위한 최종 prediction LLM을 위한 포괄적인 (시간순으로 정렬된) 기반을 형성합니다 (일반적으로, 여기서 은 JCEF보다 훨씬 작습니다). 여기서 최종 API call은 이전 연구에서 발견되는 표준 llm_query module에 해당하며, 일반적으로 올바른 형식 지정 및 후보 답변 선택을 보장하기 위해 program의 끝에 위치합니다.
Flexibility and Memory. MoReVQA의 modular architecture는 당면한 작업에 따라 다양한 APIs와 reasoning strategies를 선택적으로 사용하여 광범위한 datasets, question types 및 작업에 동적으로 맞출 수 있게 합니다. 특히, 간단한 questions는 "더 간단한" execution pipeline을 야기하며 (필요한 경우 단계에 "noop"과 같은 동작이 장착됨), 더 복잡한 questions는 복잡한 instruction set으로 처리됩니다. 이러한 적응성은 external memory component에 의해 촉진되며, 이는 여러 단계에 걸쳐 정보 저장소 역할을 할 뿐만 아니라 시스템이 진화하는 context에 따라 이해와 접근 방식을 반복적으로 개선할 수 있게 합니다. 각 단계 (planning 및 execution)가 이 memory를 통해 이전 단계로부터 정보를 받는다는 점을 강조하며, 이는 더 강력한 reasoning behavior로 이어집니다.
3. Technical Approach 정리노트 (AI 연구자용)
이 섹션은 논문에서 제안하는 VideoQA 방법론 MoReVQA의 기술적 세부 사항을 설명합니다.
3.1. Preliminaries: Video Question-Answering
- Task 정의: 입력 video , 자연어 question , (선택적) 후보 답변 가 주어졌을 때, groundtruth answer 를 예측하는 model 개발: .
- 주요 Design Principles:
- Modularity: 독립적인 sub-task modules 활용 (vs. monolithic black-box model).
- Multi-stage planning: 명시적 중간 outputs를 통해 해석 가능한 chain of execution 제공 (vs. single-stage planning).
- 본 섹션은 modular 방법론 내 single-stage와 multi-stage planning을 대조합니다.
3.2. Single-Stage Planning (대표 모델: ViperGPT)
- Process: Program generator 가 와 prompt 를 입력받아 실행 가능한 program 를 생성하고, 가 와 API module library 을 사용해 를 도출: .
- : Code-finetuned LLM.
- : API description 및 dataset-specific program examples 포함.
- : OWL-ViT (detection), CLIP (scoring), BLIP (captioning) 등.
- Limitations:
- Brittle Programs: 생성된 program이 불안정하고 신뢰성 낮은 output 생성.
- Ungrounded Planning: Visual reasoning 전, video 내용 grounding 없이 LLM이 전체 program을 생성해야 함.
- Natural language ambiguity 해결의 어려움: Visual context 부재.
- 과도한 Prompt 복잡성: LLM이 단일 inference 단계에서 전체 reasoning program을 생성하도록 요구받아, prompt 예제에 overfitting되고 compositional modular generalization 저해.
- 핵심 질문 제기:
- (Q1) 불안정한 single-stage planning이 accuracy에 미치는 영향은?
- (Q2) Multi-stage decomposition으로 이러한 한계를 얼마나 극복 가능한가?
3.3. MoReVQA: Multi-stage, Modular Reasoning
- Motivation - JCEF Baseline (Q1에 대한 답변):
- JCEF (Just Caption Every Frame): (frame captioning)과 (captions 기반 QA)을 사용하는 간단한 Socratic baseline. Training 불필요.
- 주요 발견: JCEF가 동일 modules로 업그레이드된 ViperGPT+보다 우수한 성능을 보여, single-stage planning의 한계를 실증적으로 증명.
- MoReVQA Overview (Q2에 대한 답변):
- Single-stage pipeline을 videoQA의 일반적 sub-tasks에 기반한 3단계로 분해: (1) event parsing, (2) grounding, (3) reasoning.
- 단계 간 정보 공유를 위한 external memory 활용.
- 각 단계별로 작고 집중된 prompts 와 중간 reasoning outputs 사용.
- Video 자체에 grounding을 통합하여 모호성 해결 및 reasoning 단계 개선.
- 공정한 비교를 위해 single-stage와 동일한 off-the-shelf pre-trained models 사용.
- MoReVQA Stages ():
- : Event Parsing Stage:
- 입력 question 를 word-level이 아닌 event-level에서 분석 (더 high-level video semantics 초점).
- Prompt 은 LLM이 temporal hints, relationships, sub-question types, 추가 tool (예: OCR) 필요성 등을 파악하도록 condition함.
- Output (API calls)은 language-only data를 external memory에 저장.
- : Grounding Stage:
- 에서 식별된 events를 video 내에 grounding하여 모호성 해결 및 후속 tool-use 방향 설정.
- Prompt 는 external memory의 outputs를 활용.
- LLM은 vision-language modules (entity detection, image-text alignment)을 사용하여 후보 frames/temporal regions 식별.
- Output (spatial/temporal grounding 정보)는 external memory에 추가. Visual grounding을 통한 event 모호성 검증/해결 API calls 포함.
- : Reasoning Stage:
- 최종 grounded reasoning 수행.
- Prompt 는 이후의 memory 상태 기반.
- Reasoning sub-questions 해결을 위한 API calls로 구성. Vision-language modules를 이전에 식별된 grounded regions에 집중.
- 지역화된 정보와 video 전반에서 uniform하게 sample된 개의 일반 captions (JCEF보다 이 훨씬 작음)을 결합하여 최종 LLM이 answer 예측. (llm_query module 사용)
- : Event Parsing Stage:
- Flexibility and Memory:
- Modular architecture는 dataset, question type, task에 대한 동적 적응성 제공. (간단한 질문 → 간단한 execution pipeline - "noop" 동작 가능).
- External memory: 단계 간 정보 저장소, 반복적 이해 개선, 이전 단계를 통한 후속 단계 정보 제공 → 강건한 reasoning behavior.
쉬운 설명 :
여기서는 이 논문에서 제안하는 기술(MoReVQA)이 어떻게 작동하는지 자세히 설명해 드릴게요.
1. 목표는 VideoQA (비디오 질문 답변): 컴퓨터에게 비디오()를 보여주고 질문()을 하면, (가끔 주어지는 객관식 보기 중에서) 정답()을 맞히게 하는 거예요.
2. 예전 방식: 한 번에 모든 계획 짜기 (Single-Stage Planning, 예: ViperGPT)
- 요리사(LLM AI)에게 음식 이름(질문 )만 알려주고, 재료(비디오 )는 보여주지 않은 채 아주 복잡한 전체 레시피(프로그램 )를 한 번에 다 쓰라고 하는 것과 비슷해요. 요리사는 요리 기술 책(API 라이브러리 )을 참고하고요.
- 문제점: 음식 이름이 애매하면 레시피가 엉망이 될 수 있어요. 또, 요리 기술 책(프롬프트 )이 너무 복잡하면 요리사가 그냥 예전에 봤던 레시피를 베껴 쓸 뿐, 창의적으로 요리하지 못할 수 있고요.
3. 이 논문의 새로운 방식: MoReVQA (여러 단계로 나눠서 똑똑하게 계획하기)
- 깜짝 테스트 (JCEF 베이스라인): "만약 비디오의 모든 장면에 설명을 달고(모든 프레임 캡션), 그 설명들을 바탕으로 요리사(LLM AI)에게 질문의 답을 찾으라고 하면 어떨까?" 해봤더니, 이 단순한 방법(JCEF)이 복잡하게 한 번에 레시피를 짜는 것보다 더 잘하는 경우가 많았어요! 이걸 통해 예전 방식에 문제가 있다는 걸 알았죠.
- MoReVQA - 단계별로 일하는 더 나은 요리사: MoReVQA는 레시피를 한 번에 다 쓰는 대신, 일을 여러 단계로 나눠서 처리해요.
- : 주문 이해하기 (Event Parsing):
- 먼저 요리사(LLM AI)는 음식 이름(질문 )을 꼼꼼히 읽고 뭘 해야 하는지, 어떤 순서로 해야 하는지, 특별한 요청("X 하기 전에 Y 해줘", "매운맛인가요?")은 없는지 등을 파악해요. 일종의 체크리스트를 만드는 거죠. 이 정보는 공유 노트(external memory)에 적어둬요.
- : 재료 확인하기 (Grounding):
- 이제 체크리스트를 가지고 실제 재료(비디오 )를 살펴봐요. 체크리스트에 "빨간 채소 찾기"라고 되어 있으면, 재료들 중에서 빨간 채소를 찾아내죠. 이렇게 "비디오에서 질문과 관련된 부분을 찾아내는 것"을 grounding이라고 해요. 요리사는 어떤 재료가 중요한지 공유 노트에 표시해둬요. 이렇게 하면 음식 이름만 들었을 때 생길 수 있는 오해를 풀 수 있어요.
- : 요리하고 맛보기 (Reasoning):
- 체크리스트와 중요한 재료에 대한 메모를 바탕으로, 요리사는 이제 본격적으로 "요리"를 시작해요. 이때, 모든 재료를 다 쓰는 게 아니라 앞에서 찾아둔 중요한 재료에만 더 특별한 요리 기술(vision-language modules)을 사용해요. 전체적인 맛의 조화를 위해 다른 몇몇 재료도 슬쩍 보긴 하지만요(JCEF보다는 훨씬 적은 수의 일반적인 비디오 캡션). 마지막으로 이 모든 정보를 종합해서 최종 음식(답변 )을 내놓습니다.
- : 주문 이해하기 (Event Parsing):
- 왜 이게 더 좋을까요?
- 유연해요: 간단한 질문에는 간단하게, 복잡한 질문에는 더 자세하게 처리할 수 있어요.
- 공유 노트 (External Memory): 각 단계의 정보가 다음 단계에 전달돼서, 전체 과정이 더 똑똑해지고 실수를 덜하게 돼요. 마치 요리사가 계속 메모를 업데이트하면서 계획을 발전시키는 것과 같아요.
주인장이해
1. 비디오와 question 입력
2. LLM을 통해 question 분해 후 핵심 이벤트를 식별함,
event parsing prompt를 사용해서
parse_event("before", "man standing up", "why is the man his skates?")
"시간적 관계", "선행 또는 주변 사건", "주요 사건/질문"
event(actor='고양이', action='점프', start_location='테이블 위', end_location='창문 옆')
query_action(actor='고양이', temporal_relation='후', reference_event='첫 번째 사건')
API_call_3: classify_question_intent("행동 서술 요구")
어떤 tool 을 사용하기 위한 형태로 바꾸는 셈임.
1. LLM이 추론이나 이런건 잘하니까 일단 LLM한테 QA를 시켜보자.
2. 근데 시각능력이 없으니까 각 tool을 활용해야함.
3. 그걸 LLM에게 스스로 어떤 tool을 쓸지 event을 나눠서 정제된 호출 리스트를 만듬.
4. 그 호출을 순차적으로 진행하면서 각 tool을 사용하게 되고 정보가 수집됨.
5. 그 수집된 정보를 기반으로 QA를 풀게됨A(이게 최종답)
