본문 바로가기

데이터사이언스/deep learning

Vid2Seq 논문 정리 (1)

 대부분의 동영상에는 이벤트가 포함된다. '달리기를 하는 여자'와 '박수를 치는 사람들'을 예로 들 수 있다. Video captioning은 동영상을 설명하는 한 줄의 설명을 생성하는 것이지만, Dense Video captioning은 비디오에서 모든 이벤트를 감지하고 설명하며, 시간대를 식별하는 작업을 포함한다. 이는 영상의 길이가 증가할 수록 훨씬 어려워지는 작업이다.

 기존 방식은 대부분 이벤트의 시간대를 찾은 뒤 캡셔닝하는 2단계의 접근 방식을 사용한다. 시간대를 찾는 것과 캡셔닝의 상호관계를 활용하기 위해, 일부 방식은 두 task를 동시에 푸는 모델을 사용한다, 하지만, 이런 방식은 주로 envent counter 같은 task-specific한 구성 요소가 필요하다. 더 나아가, 이 방식들은 사람이 주석을 단 제한된 사이즈의 데이터 셋에서만 학습이 되어 task를 효과적으로 해결하기 어렵다.

 

Figure 1. Vid2seq은 단일 토큰 시퀀스를 생성하여 동영상에서 시간적 근거와 함께 Dense event caption을 예측하는 visual language model이다(오른쪽). 라벨이 없는 내래이션 동영상에 대한 대규모 사전 학습을 진행하였다(왼쪽).

 

 이런 문제를 해결하기 위해 첫번째, 이 논문에서는 비디오 언어 모델, Vid2Seq를 제안한다. 언어모델이 웹에서 먼저 훈련되고, 동영상의 타임스탬프를 나타내는 특별한 시간 토큰으로 증강되었다. 비디오 프레임과 기록된 음성 input이 주어지면, Figure 1(오른쪽)처럼 모델은 단일 토큰 시퀀스를 생성함으로써 모든 이벤트 캡션과 그 시간 경계를 예측한다. 따라서 이런 모델은 어텐션을 통해 비디오의 다른 이벤트 사이의 멀티모달 의존성을 학습할 수 있는 잠재력을 가진다. 하지만 이는 현재 video captioning 데이터셋보다 많은 대규모 학습 데이터를 필요로 한다. 더 나아가, 수동 주석이 달린 dense caption을 수집하는 것은 비용이 많이 든다.

 

 따라서 논문에서는 대규모로 쉽게 구할 수 있는 라벨이 없는 내래이션 동영상을 활용하여 Vide2Seq를 사전학습하기를 제안한다.이를 위해, 기록된 음성의 문장 경계를 pseudo 이벤트 경계로 재구성하고, 음성 문장을 pseudo 이벤트 캡션으로 사용한다. 그리고 시각적 입력이 주어졌을 때 기록된 음성을 예측하는 생성적 목표와, 음성의 구간을 마스킹하는 노이즈 제거 목표를 가지고 Vid2Seq를 사전 훈련한다. 하지만 녹음된 음성은 비디오를 항상 잘 설명하는 것은 아니고, 영상과 시간이 잘 맞지 않을 수 있다. 예를 들어 Figure 1(왼쪽)에서, 내래이션이 회색 옷을 입은 사람이 슬로프를 내려왔다고 말하는 것은, 그가 실제로 슬로프를 내려온 이후이다. 직관적으로, Vid2Seq은 모든 내래이션과 비디오의 타임스탬프를 동시에 학습하기 때문에, 이런 noisy한 데이터 학습에도 적합하다. 

 

 이 논문에서는 광범위한 실험을 통해 사전 훈련된 모델의 효과를 입증한다. 이를 통해 내레이션 비디오에 대한 사전 학습의 중요성, 시각 및 음성 모달리티를 모두 사용하는 Vid2Seq의 기능, 사전 학습 목표의 중요성, 공동 캡션 생성 및 시간 추출의 이점, 언어 모델 크기와 사전 학습 데이터 세트의 규모에 대한 중요성 등을 보여준다. 이 모델은 비디오를 설명하는 텍스트 단락을 생성하는 데도 좋은 성능을 보인다. 추론 시 실제 데이터 이벤트에 대한 정보를 사용하지 않고도 이러한 제안에 의존하는 모든 이전 접근 방식보다 뛰어난 성능을 보인. 사전 학습된 Vid2Seq 모델은 다양한 dense video captioning 벤치마크에서 SOTA 성능을 달성한다.