TT Lab
요금제

한국어

시작하기
블로그

블로그

영상-언어 모델과 스트리밍: 어떻게 학습시키고, 스포츠 벤치마크에서 왜 약한가

상태: 초안 (2026-10-13), 미실측. 논문·기술 보고서 수치는 원문을 열어 조건과 함께 확인했습니다. 직접 해 본 것은 토큰 수를 세는 계산(code/12_video_tokens.py)뿐이고, 영상-언어 모델을 우리 탁구 영상에 돌려 본 적은 없습니다(미실측). 실제 서비스(Gemini)의 영상 입력 조건과 느린 확인 층 설계는 TT Score 모델 해부 8편이 다룹니다. 이 편은 「학습 방식과 벤치마크」에 집중합니다. 시리즈 「비전 모델 읽기 2」 12편(마지막). 1편 CLIP의 그림 인코더가 여기서 다시 나옵니다.

목차

1. 직관: 눈을 언어 모델에 붙인다

영상-언어 모델은 대개 이미 있는 두 부품을 잇습니다. 그림을 보는 인코더(1편의 CLIP 계열)와 글을 다루는 언어 모델입니다. 그 사이에 작은 연결 층을 두어, 그림 인코더가 낸 벡터를 언어 모델이 낱말처럼 읽을 수 있는 벡터(「그림 토큰」)로 바꿉니다. 영상은 프레임 몇 장을 뽑아 각각 그림 토큰으로 바꾼 뒤 이어 붙입니다.

프레임을 토큰으로 바꿔 언어 모델에 넣는다 1–2fps 프레임 그림 인코더 CLIP 계열 연결 층 토큰 합치기 언어 모델 다음 낱말 학습 순서(LLaVA 형) 1) 그림-설명 짝으로 연결 층만 학습 인코더·언어 모델은 얼림 — 그림 토큰을 낱말처럼 2) 질문-답 데이터로 연결 층 + 언어 모델 학습 손실 = 답 부분의 다음 낱말 예측 영상판: 프레임 토큰을 잇고 시각 정보를 덧붙인다 스트리밍으로 바꾸는 장치 · 프레임마다 「지금 말할까」 를 맞히는 손실 VideoLLM-online · 1초마다 프레임과 자막 낱말을 번갈아 학습 LiveCC · 맨 앞 토큰 일부 + 최근 16초만 남기는 창 StreamingVLM 어느 쪽도 16.7ms 안의 순서를 정답으로 배우지 않는다
그림: 프레임 → 그림 인코더 → 연결 층 → 언어 모델, 그리고 스트리밍 장치

학습의 손실은 언어 모델과 같습니다. 다음 낱말 맞히기입니다. 「이 영상에서 선수가 몇 번 쳤나요?」라는 질문과 그림 토큰을 넣고, 정답 문장의 낱말을 하나씩 맞히게 합니다. 이 간단한 틀 안에서 무엇을, 얼마나 촘촘히 보여 주고, 어떤 문장을 정답으로 주느냐가 모델의 능력을 정합니다.

2. 어떻게 학습시키나

LLaVA: 두 단계

LLaVA(NeurIPS 2023)가 이 계열의 기본 순서를 정했습니다(논문).

  1. 연결 층만 학습. 그림-설명 짝 59만 5천 개로, 그림 인코더(CLIP ViT-L/14)와 언어 모델은 얼리고 선형 연결 층 하나만 학습합니다. 1에폭, 약 4시간. 그림 토큰이 언어 모델의 낱말 공간에 「들어맞게」 만드는 단계입니다.
  2. 지시 따르기 학습. 질문-답 형식의 데이터 15만 8천 개로 연결 층과 언어 모델을 함께 학습합니다. 3에폭, 약 10시간. 손실은 답 부분의 낱말에만 겁니다.

두 단계 모두 데이터센터급 GPU 8장으로 했습니다. 흥미로운 점은 2단계 데이터의 출처입니다. 사람이 쓴 것이 아니라, 그림을 볼 수 없는 글 전용 모델(GPT-4)에게 그림의 캡션과 물체 상자 좌표를 글로 주고 대화·자세한 설명·추론 문답을 쓰게 했습니다. 정답 문장이 그림이 아니라 「그림에 대한 글」에서 나왔다는 뜻입니다.

영상으로 넓히기

Video-LLaVA(2023)는 영상에서 프레임 8장을 고르게 뽑아 224px 로 넣습니다. 1단계에 그림-글 55만 8천 개와 영상-글 70만 2천 개, 2단계에 그림 지시 66만 5천 개와 영상 지시 10만 개를 썼습니다(논문). 영상 몇 초가 프레임 8장으로 요약됩니다.

Qwen2.5-VL: 토큰을 줄이고 시각을 넣는다

긴 영상을 넣으려면 토큰을 아껴야 합니다. Qwen2.5-VL(2025 기술 보고서)은 이렇게 합니다.

영상 안에서 사건 구간을 찾는 과제(Charades-STA)에서 72B 모델이 mIoU 50.9 였습니다(보고서). 「몇 초 구간」은 어느 정도 하지만, 그 단위는 초입니다.

스트리밍: 언제 말할지까지 배운다

실시간 해설은 질문이 끝나면 답하는 대화와 다릅니다. 영상이 계속 들어오고, 모델이 말할 때를 스스로 정해야 합니다.

이 셋 모두 정답이 사람의 말(서술, 자막, 해설) 입니다. 해설자는 「멋진 포핸드!」라고는 말해도 「리시버 쪽 바운드는 41번째 프레임」이라고는 말하지 않습니다. 모델이 배울 수 있는 시간 해상도는 정답 문장의 시간 해상도를 넘기 어렵습니다.

3. 직접 해 보기: 10초 랠리의 토큰 값

code/12_video_tokens.py 로 Qwen2.5-VL 의 방식(28×28 화소가 토큰 하나, 두 프레임이 한 묶음)대로 10초 랠리에 드는 시각 토큰 수를 셌습니다(code/12_video_tokens.out.txt). 평가 상한은 영상 하나에 24,576토큰입니다.

해상도(묶음당 토큰) 1fps 2fps 8fps 30fps 60fps
448×252(144) 720 1,440 5,760 21,600 43,200(넘침)
896×504(576) 2,880 5,760 23,040 86,400(넘침) 172,800(넘침)
1792×1008(2,304) 11,520 23,040 92,160(넘침) 345,600(넘침) 691,200(넘침)

그리고 그 해상도에서 공의 크기를 토큰 한 칸과 견줬습니다. 옆면에서 찍은 1080p 영상의 공 지름 중앙값 11화소(TT Score 모델 해부 2편의 실측)를 비율대로 줄였습니다.

448×252: 공 지름 2.6px = 토큰 한 칸 폭의 9%
896×504: 공 지름 5.1px = 토큰 한 칸 폭의 18%
1792×1008: 공 지름 10.3px = 토큰 한 칸 폭의 37%

맞바꿈이 보입니다. 60fps 로 모든 프레임을 넣으려면 448×252 까지 해상도를 낮춰도 상한을 넘고, 그때 공은 토큰 한 칸의 9% 입니다. 공이 보이게 해상도를 올리면 1–2fps 밖에 못 넣습니다. 바운드 하나의 접촉은 한두 프레임(60fps 에서 17–33ms)에 일어나니, 「촘촘한 시간」과 「작은 물체」를 동시에 담을 자리가 토큰 예산에 없습니다. 참고로 VideoLLM-online 공개 모델은 프레임당 10토큰(3×3 칸 + 1)으로 극단적으로 줄였습니다. 10초 2fps 에 200토큰이지만, 화면 전체를 3×3 칸으로만 봅니다.

4. 벤치마크가 보여 주는 것

TennisTV: 테니스 랠리 이해

TennisTV 는 F3Set 의 테니스 영상 1,298개로 8가지 과제 2,527문항을 만들었습니다(현재 v5 기준, 논문).

대상 평균 정확도
사람 89.2
무작위 27.9
가장 좋은 모델(GPT-4.1) 45.1
GPT-4o / Gemini 2.5 Pro 44.5 / 43.9
Qwen2.5-VL-7B 38.8

가장 좋은 모델도 사람의 절반 수준이고, 무작위보다 17점 높을 뿐입니다. 랠리의 타구 수 세기는 사람 92.5, 가장 좋은 모델 39.8 이었습니다. 1편의 CLIP 이 「세기」에 약하다고 스스로 적었던 것과 같은 결입니다.

더 흥미로운 것은 프레임 수를 늘린 실험입니다(Qwen2.5-VL-7B, 논문).

입력 전체 랠리 단위 과제 타구 단위 과제
1fps 38.1 — —
16프레임 38.6 39.3 38.0
32프레임 38.8 38.8 38.9
64프레임 38.4 37.7 39.1

프레임을 4배로 늘려도 전체는 거의 그대로이고, 랠리 단위 과제는 오히려 떨어졌습니다. 프레임을 더 보여 준다고 해서 모델이 그것을 쓰는 법을 아는 것은 아닙니다. 학습 때 그런 정답(촘촘한 시간에 대한 문답)을 거의 보지 못했기 때문으로 해석할 수 있습니다(추정).

F3Set: 아예 비교에서 빠졌다

빠르고 촘촘한 세밀 이벤트 벤치마크 F3Set(ICLR 2025)은 GPT-4V 에 테니스 랠리의 연속 12프레임을 보여 주는 예비 시험을 했습니다. 종목·점수판·대회는 알아봤지만, 세밀한 사건과 프레임 사이의 순서(타구 방향 등)를 잡지 못해 본 실험의 비교 대상에서 뺐습니다(논문 부록). 10편의 프레임 단위 모델과 같은 표에 놓을 수준이 아니었다는 뜻입니다.

SportR: 강화 학습으로 규칙 추론

SportR(2025)은 탁구를 포함한 5종목의 그림 4,789장과 4종목의 영상 2,052개로 규칙·반칙 추론을 묻습니다. 결과가 두 갈래입니다(논문).

규칙에 대한 추론은 학습으로 늘릴 수 있지만, 그 추론의 재료인 촘촘한 지각(공이 어디에 언제 닿았나)은 여전히 약하다는 그림입니다.

SCBench: 탁구 해설

SCBench(2024)에는 탁구 클립 719개(평균 9.96초)가 있습니다. 탁구에서 가장 좋은 모델(InternVL-Chat-2, 401억 파라미터)의 해설 점수가 10점 만점에 5.92 였습니다. 채점은 다른 언어 모델이 여섯 측면으로 했습니다(논문).

5. 왜 약한가: 학습 방식에서 본 세 가지 이유

  1. 정답이 말이다. 학습 데이터의 정답은 캡션, 자막, 해설, 언어 모델이 쓴 문답입니다. 사람은 바운드의 프레임 번호를 말로 하지 않습니다. 정답에 없는 시간 해상도는 배우기 어렵습니다.
  2. 토큰 예산이 시간과 공간을 맞바꾸게 한다. 위 계산처럼, 모든 프레임을 넣으면 공이 토큰 한 칸보다 작아지고, 공을 보이게 하면 프레임이 듬성듬성해집니다.
  3. 눈이 「세기」와 「세밀함」에 약하다. 많은 모델이 CLIP 계열 그림 인코더를 얼려서 씁니다. 그 인코더가 세기·세밀한 구분에 약하다는 것은 1편에서 봤습니다.

6. 한계(이 편의 주장에 대한)

7. 우리 프로젝트와의 연결

티티 한마디. 영상-언어 모델은 해설자의 말로 배워요. 그런데 해설자는 「41번째 프레임에 바운드!」라고 말하지 않잖아요. 그래서 말은 잘하는데 공이 언제 떨어졌는지는 잘 몰라요. 판정은 공을 세는 엔진에게, 설명은 말 잘하는 모델에게 맡기는 게 맞는 것 같아요.

참고 문헌

로그인하면 좋아요를 누를 수 있습니다

댓글

아직 댓글이 없습니다.

로그인하면 댓글을 쓸 수 있습니다