google-deepmind/videoprism

Official repository for "VideoPrism: A Foundational Visual Encoder for Video Understanding" (ICML 2024)

VideoPrism – 일반 목적의 비디오 인코더

무엇인가요 – VideoPrism은 비디오용 기초 스타일의 시각 인코더입니다. 이는 JAX/Flax 모델로, 원시 비디오 클립을 풍부한 공간-시간 임베딩으로 변환할 수 있으며, 크로스모달 검색 및 관련 작업을 위한 쌍으로 제공되는 비디오-텍스트 인코더도 포함되어 있습니다.

왜 중요한가요 – 저자들은 엄청난 하이브리드 데이터셋(10억 개의 이미지-텍스트 쌍, 3600만 개의 고품질 비디오-텍스트 쌍, 5억 8200만 개의 노이즈 있는 비디오 클립)에서 모델을 사전 학습했습니다. 단일 고정된 백본을 사용해 33개 중 31개의 공개 비디오 이해 벤치마크에서 최고 성능을 달성했으며, 분류, 검색, 위치 지정, 캡션, QA를 포함합니다.

사용 방법 – 패키지 설치 후(pip install .), 도우미 함수 videoprism.models.get_modelload_pretrained_weights를 사용해 체크포인트를 로드할 수 있습니다. README에는 두 가지 짧은 코드 스니펫이 제공됩니다:

import jax
from videoprism import models as vp

# 비디오 전용 인코더
model = vp.get_model('videoprism_public_v1_base')
state = vp.load_pretrained_weights('videoprism_public_v1_base')

@jax.jit
def encode(video):
    return model.apply(state, video, train=False)

비디오-텍스트 버전의 경우 SentencePiece 토크나이저(c4_en)를 로드하고, 비디오 텐서와 토큰화된 텍스트를 모두 모델에 전달합니다.

사전 제작된 데모 – 리포지토리는 다음 세 가지 Colab 노트북을 제공합니다:

  • 비디오 인코더 데모 – 원시 비디오 → 토큰 임베딩.
  • 비디오-텍스트 인코더 데모 – 제로샷 검색을 위한 공동 비디오-텍스트 임베딩 계산.
  • 비디오 분류 데모 – 고정된 백본 위에 가벼운 헤드를 파인튜닝.

릴리스된 모델 – Hugging Face에 4가지 체크포인트 패밀리가 제공됩니다:

변형 크기 파라미터 수 일반 입력 체크포인트
VideoPrism‑B (기본) 458 MB 114 M 16프레임, 288×288 클립 videoprism-base-f16r288
VideoPrism‑L (대형) 1.42 GB 354 M 8프레임, 288×288 클립 videoprism-large-f8r288
VideoPrism‑LvT‑B (비디오-텍스트 기본) 991 MB 248 M videoprism-lvt-base-f16r288
VideoPrism‑LvT‑L (비디오-텍스트 대형) 2.30 GB 580 M videoprism-lvt-large-f8r288

성능 요약 (고정된 백본)

  • VideoGLUE (분류, 행동 탐지 등) – VideoPrism‑L은 Kinetics‑400에서 85.0 %, AVA‑K에서 34.5 %를 기록하며 이전 SOTA를 초과했습니다.
  • 제로샷 비디오-텍스트 검색 – VideoPrism‑LvT‑L은 VATEX (비디오→텍스트)에서 recall@1이 75.0 %, VATEX (텍스트→비디오)에서 57 %를 달성했습니다.
  • 제로샷 비디오 분류 – VideoPrism‑LvT‑L은 K400에서 72.4 %를 기록해 이전 베이스라인을 능가했습니다.

로드맵 – 현재 목록된 유일한 TODO는 PyTorch 지원 추가로, JAX 생태계 외부로의 접근성을 넓히는 것입니다.

라이선스 및 면책 조항 – 코드는 Apache 2.0, 모델 가중치 및 기타 자산은 CC‑BY입니다. 리포지토리는 이 것이 공식 Google 제품이 아님을 명시하고 있습니다.


결론 – VideoPrism은 연구자들이 최소한의 파인튜닝으로 하류 작업에 쉽게 통합할 수 있는, 준비된 고용량 비디오 인코더(비디오-텍스트 버전 포함)를 제공하며, 명확한 Colab 노트북과 사전 학습된 체크포인트를 함께 제공합니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트