[AI 맛보기] 동영상 설명 및 요약(Video Captioning/Explaining)
4 min readNov 4, 2022
Video Explaining 이란?
주어진 영상의 내용을 한 눈에 알아볼 수 있도록, 정리/요약/분류해주는 모든 방법들을 의미합니다. 주로 사용되는 방식은 다음과 같습니다.
- 동영상 전체 내용을 요약한 하나의 문장을 생성하는 방식
- 미리 지정된 카테고리 중 동영상과 가장 관련성이 높은 하나를 선택하는 방식
사전 처리 (pre-processing)
주어진 동영상의 각 요소를 컴퓨터 모델이 처리할 수 있도록, 바꿔주는 작업(벡터화)이 필요합니다.
과거에는, 동영상의 각 모달리티마다 특성을 고려한 변환을 진행하여 임베딩 벡터를 얻었습니다.
- 텍스트 → FastText
- 이미지 →ResNet
현재에는 딥러닝의 발전에 따라, Transformer 구조 기반의 임베딩 추출이 가장 좋은 성능을 보여줍니다
- 텍스트 → BERT, RoBERTa
- 이미지 →ViT, BEiT
- 텍스트 & 이미지 복합 →LXMERT, VL-BEiT
전체 모델의 구조
- 전처리(transformer 인코더)를 통해, 동영상의 각 프레임마다 임베딩을 추출합니다.
- 시계열 데이터인 비디오를 시간 순으로 이해하기 위해, 추출한 임베딩을 RNN(LSTM)으로 디코딩합니다.
- 그 후, 원하는 목적에 맞는 FFN(Feed Forward Network)를 붙여서 마지막 결과를 얻습니다
평가 지표
- 요약 문장을 얼마나 잘 생성하였는지를 판단하기 위해서는, 기준 문장과 얼마나 많은 단어가 연속적으로 일치하는 지를 계산한 BLEU score를 사용합니다.
- 카테고리를 얼마나 잘 분류하였는지를 알아보기 위해서는, precision과 recall을 동시에 고려한 F1-score를 사용합니다.
Video Explaining 활용 분야
- 동영상 주제 별 자동 분류
- 동영상의 핵심 정보 추출
액션파워에 대한 더 많은 이야기가 궁금하다면?
More about Action Power