기존 Vision-language pre-training(이미지-언어 사전학습 모델)을 비디오 작업에 직접 적용하면 성능이 저하되는 문제가 있음.
이미지 데이터로 사전학습된 모델을 비디오 데이터셋으로 미세조정할 때, 성능이 정체되거나 오히려 떨어지는 현상이 관찰됨
이는 학습된 visual feature 중 높은 norm 값을 가진 특징들의 영향 때문임
특징 분포의 극단값 영향을 줄이기 위해 시간 차원에 걸쳐 특징 값을 부드럽게 하는 풀링 전략을 제안함
높은 norm 값 특징의 지배적인 영향을 줄이기 위해 시간 차원에 걸쳐 특징 분포를 부드럽게 하는 간단한 풀링 기법 제안
이를 통해 극단적인 특징값의 영향을 완화시킴
제안된 PLLaVA 모델이 비디오 질의응답 및 캡션 생성 벤치마크에서 최고 성능을 달성하며, 이전 모델 대비 9~14.5% 향상된 결과를 보임
제안 기법을 적용한 PLLaVA 모델이 최신 비디오 QA, 캡셔닝 벤치마크에서 가장 높은 성능 기록
Video ChatGPT 벤치마크에서 이전 SOTA 모델 대비 9% 향상
MVBench 다중선택 벤치마크에서 14.5% 정확도 향상
Highlights
Issues on Image MLLM Adaption to Video Frame
3가지 문제를 경험함 1) Data가 늘어도 성능이 향상되지 않음, 2) LLM이 커져도 성능이 향상되지 않음, 3) OOD Prompt에 취약함(학습 시 미사양한 Prompt)
위 문제의 원인
큰 놈(norm)이 문제: MLLM Finetuning 중 일부 visual feature가 큰 norm을 갖게 되는데 이 token이 비디오 전반의 정보를 획득하고 다른 token을 surpress하여 짧은 답변이 나오게 됨(다양한 visual feature를 활용 못한다는 듯). Frame을 추가해서 학습하면 개선에 도움이 되지만 resource trade off가 있음.
Resource를 효율적으로 더 많은 frame을 보기 위해 단순 averaging이 아닌 pooling operation으로 optimal setting을 탐색
이미지 데이터셋에 비해 비디오 데이터셋의 품질이 낮음. 특히 많은 비디오 데이터셋이 질의응답 형식이라 비디오에 대한 설명이 짧음. 모델이 비디오 데이터셋에서 시간적 설명을 학습하면서 객체나 공간 관계 등 다른 측면의 설명 능력이 저하되고, 언어모델이 강력할수록 이 현상이 더 빨리 나타남.
고품질 비디오 데이터셋을 구축하는 대신, 이미지 데이터셋에서 학습한 정보를 보존하면서 비디오 데이터셋의 시간 정보를 효과적으로 학습할 수 있는 아키텍처와 최적화 알고리즘을 제안. 이를 위해 weight 퓨전 기법을 활용. 이미지 pretraining weight와 비디오 finetuning weight를 최적 결합하여 이미지와 비디오 데이터셋의 장점을 모두 취함.
PLLAVA
Pooling(Temporal 포함하여 Pooling... )
Video Frame: X ∈ R^(T×C×W ×H)
Clip Features: Xv ∈ R^(T ×w×h×d)
Adaptive Pooling Feture: Xvp ∈ R^(T′ × w′ × h')
Post Optimization
W0: LLM weights of Image MLLM
delaW: LLM Lora weights of Video Finetuned MLLM
a, r: LoRA Params
아마도 Video LoRA 학습 후에 Image MLLM에 해당 LoRA를 새로운 a 값으로 Merging하여 사용하는 듯
Links
why?
Summary (by claude3)
Highlights
Issues on Image MLLM Adaption to Video Frame
PLLAVA
Evaluation