본문 바로가기

연구실 공부

[논문] AVLnet: Learning Audio-Visual Language Representations from Instructional Videos

728x90

https://arxiv.org/abs/2006.09199

 

AVLnet: Learning Audio-Visual Language Representations from Instructional Videos

Current methods for learning visually grounded language from videos often rely on text annotation, such as human generated captions or machine generated automatic speech recognition (ASR) transcripts. In this work, we introduce the Audio-Video Language Net

arxiv.org

해당 논문을 보고 작성했습니다.

 

Abstract

video에서 visually grounded language를 학습하는 기존 연구들은 사람이 만든 caption이나 기계가 만든 automatic speech recognition (ASR) transcript과 같은 text annotation을 사용합니다. 이 논문에서 저자들은 Audio-Video Language Network (AVLnet)을 제안하며, 이는 raw video input으로부터 공유되는 audio-visual embedding space를 바로 학습하는 self-supervised network입니다. text annotation의 필요성을 우회하기 위해, 저자들은 random 하게 sample 된 video clip과 raw audio waveform으로부터 audio-visual representation을 학습합니다. 저자들은 HowTo100M를 가지고 AVLnet을 학습하며, image retrieval & video retrieval task에서 가장 좋은 성능을 달성했습니다.

 

Introduction

저자들은 추가적인 annotation이나 ASR transcription 없이 video의 raw audio waveform와 visual channel로부터 학습하는 것을 목표로 합니다. 그래서 저자들은 Audio-Video Language Network (AVLnet)와 raw video input으로부터 visually grounded langauge를 학습하기 위한 self-supervised framework를 제안합니다. spoken and textual annotation의 필요성을 완화하기 위해, 저자들은 video clip의 raw audio channel로부터 바로 학습을 진행합니다. 저자들의 model은 audio and video branch로 구성됩니다. local video clip feature를 추출하고, 각 modality의 content를 나타내는 single feature vector로 pooling 합니다. 저자들은 non-linear feature gating을 사용하여 final output embedding을 얻기 전에 model이 feature activation을 재조정할 수 있도록 만듭니다. instructional video에 있는 noisy audio signal을 가지고 model을 학습하기 위해, 저자들은 Masked Margin Softmax (MMS) loss를 활용하여 audio and visual retrieval을 수행하고 많은 수의 negative sample에 대해 robust 하게 학습시킵니다. 이를 통해 의미적으로 비슷한 audio and visual input을 가까운 공간에 위치하도록 하고 downstream retrieval task에 사용될 수 있는 audio-video embedding space를 얻습니다.

저자들은 대규모 instructional video dataset인 HowTo100M을 가지고 AVLnet을 학습합니다. 저자들은 random 하게 분할된 clip에서 model을 학습하여 supervision의 필요성을 줄입니다. unlabeled video를 가지고 학습되었지만, 저자들의 model은 speech-image pair에 대한 retrieval task에서 가장 좋은 성능을 달성했습니다.

 

Technical Approach for Audio-Video Models

 

Audio-Video Models

 

AVLnet의 구조는 위와 같습니다. 이는 local level에서 feature를 동시에 추출하는 visual and audio branch로 구성되며, 각 modality에서 전반적 content를 나타내는 visual and audio feature vector로 pooling 합니다. 이를 통해 model이 가변 길이 video clip을 다룰 수 있게 되고, inference 과정에서 clip boundary가 사람에 의해 결정되고 길이가 크게 달라질 수 있을 때 유용합니다. visual branch는 2D and 3D cnn feature extraction pipeline으로 구성됩니다. 각 video clip에서 1초마다 1개 feature를 추출하기 위해 ImageNet으로 pretrain 된 ResNet-152 model을 사용하여 2D image feature를 계산하고, 1초마다 1.5개 feature를 얻기 위해 Kinetics으로 pretrain 된 ResNeXt-101 model을 사용하여 3D video feature를 계산합니다. 각 CNN의 output은 2048차원 feature vector를 생성하도록 시간적으로 max-pool 됩니다. 그다음 concatenate 하여 4096차원 feature vector v를 얻습니다. audio branch는 학습 가능한 CNN with residual layer로 구성되며, 이를 통해 video에 있는 raw audio를 처리합니다. model은 audio spectrogram 받고 temporal feature map을 output 합니다. 이 temporal feature map은 mean-pooling 되어 1024차원 feature vector a를 얻습니다. speech transcript을 처리하기 위해 pretrained word embedding을 필요로 하는 text-video model과 대조적으로 저자들의 audio model은 pretrain 될 필요 없으며, 어떠한 언어인 video더라도 상관없으며, ASR이 동작하지 않는 언어에 대해서도 동작할 수 있습니다.

 

Audio-Video Gated Embeddings

visual feature vector v와 audio feature vector a를 추출한 이후, 두 vector를 shared embedding space로 projection 하는 것을 학습합니다. 이는 linear projection을 사용해도 되지만, 저자들은 non-linear feature gating을 사용합니다. 이를 통해 model이 학습된 중요도를 기반으로 각 차원들을 재조정하도록 만들어주며, model이 두 modality에서 동시에 차원을 activate 하도록 만들어줍니다.

 

식으로 나타내면 위와 같습니다. f(v)와 g(a)는 4096차원 embedding vector를 output하며, W와 b는 학습 가능한 parameter이고 ο는 element-wise multiplication을 나타내고 σ는 element-wise sigmoid activation을 의미합니다.

 

Contrastive Loss for Audio-Video Retrieval

AVLnet의 self-supervised 특성으로 인해, 저자들은 Masked Margin Softmax (MMS) loss를 사용합니다. MMS loss는 각 batch 내에서 retrieval을 simulation 하는 contrastive loss function입니다. MMS loss는 model이 true audio-visual embedding pairs (a_i, v_i)와 imposter pair (a_i, v_j^{imp}), (a_j^{imp}, v_i)를 구분할 수 있도록 학습됩니다. (i, j)는 batch에 있는 video clip의 index를 나타냅니다. 이전 unsupervised audio-image modeling 연구에서 사용하는 triplet loss (imposter pair를 random 하게 sample 하거나 negative mining을 사용)와 다르게, MMS loss는 positive를 더 넓은 범위의 negative와 비교 가능합니다. original MMS loss는 각 visual sample을 가지고 여러 ground truth audio caption을 처리하기 위해 masking component를 포함하지만, 저자들에게 masking은 저자들의 scenario에 적절하지 않기 때문에 masking을 제외합니다. 저자들의 scenario는 각 visual clip이 한 가지 groudn truth audio pair를 가지고 있기 때문입니다. L_{MMS} loss는 다음과 같이 정의됩니다.

 

f(v)와 g(a)는 gated embedding이고 function L은 다음과 같습니다. 

 

MMS loss L_{MMS}는 두가지 InfoNCE (with margin)의 합으로 볼 수 있습니다. 첫째, visual input은 고정이고 audio sample을 retrieval 되는 경우를 나타내고, 둘째는 audio input이 고정되고, visual sample을 retrieval 되는 경우입니다. InfoNCE는 동일한 audio sample 내에서 negative를 sample 하여 사용하지만, 저자들은 동일한 video에서 audio와 video를 sample 하여 negative로 사용하기도 하면서 다른 video에서 얻은 audio와 video sample을 negative로 사용하여 text-video approach의 성능을 향상시켰습니다. 학습 과정에서 N개 video를 batch로 사용하고, 한 video 당 M 개 clip을 추출하여 사용했으며, 결과적으로 한 batch에 NM개 video clip이 존재하게 됩니다.

 

Video Clip Sampling

unlabeled instructional video를 사용하여 저자들은 각 video를 t 길이의 M개 clip으로 random 하게 training sample을 생성합니다. 이 절차를 통해 supervised annotation 없는 clip을 sampling 할 수 있게 하며, 그 결과로 ASR이 지원되지 않는 언어를 사용하는 video도 사용할 수 있게 되며 clip의 수와 길이를 유연하게 조절할 수 있습니다.

unsupervised clip selection으로 silent 또는 중요하지 않은 clip을 포함할 수 있으며, model 성능에 크게 영향을 미치지 않는다는 것을 실험을 통해 얻었다 합니다.

 

Technical Approach for Text-Audio-Video Models

 

Text Processing

textf를 AVLnet에 통합하기 위해, 저자들은 각 video clip에 대한 text caption을 처리하는 세 번째 branch를 추가했습니다. 먼저 GoogleNews pretrained Word2Vec model을 사용하여 word embedding을 추출했습니다. AVLnet audio and video branch 구조를 따르기 위해, 각 clip의 text caption에 있는 단어들에 대해 word embedding을 max-pooling 하였습니다. text embedding vector의 결과를 AVLnet에 통합하기 위해 다른 두 구조를 사용했습니다. 

 

위 그림의 첫 구조는 text branch를 분리한 형태이고, 두 번째 구조는 audio와 text branch를 혼합한 형태입니다. 저자들의 text model이 최신 transformer model보다 model의 깊이가 얕지만, text-video embedding을 학습하기 위해 더 깊은 text model을 사용하는 것이 단순한 text model에 비해 큰 개선이 없음을 발견했습니다.

 

Independent Tri-Modal Branch Architecture

AVLnet-Text-Tri라 불리는 이 구조는 text, audio, video branch를 분리하고 각 branch에 독립적으로 gating을 적용합니다. 세 가지 modality 중 어느 두 가지라도 비교할 수 있는 shared embedding space를 학습하는 것이 이 구조의 목표입니다. clip이 주어지면 max-pooled word embedding vector t에 non-linear gating을 적용합니다. 

 

h(t)는 4096차원 embedding vector를 나타내고, W와 b는 학습 가능한 parameter를 나타내며, ο는 element-wise multiplication을 의미하고 σ는 element-wise sigmoid activation을 나타냅니다. 각 modality pair에 대한 MMS loss를 적용하여 세 가지 loss 더해서 branch를 동시에 최적화합니다. 

 

최종 Tri-modal loss는 위 식과 같습니다.

 

Audio-Text Fused Architecture

AVLnet-Text-Fused 구조이며, audio branch와 text branch의 output을 non-linear gating 하기 전에 fuse 하는 방식입니다. 이를 통해 raw audio와 text의 상호보완적 language information을 사용할 수 있습니다. 구체적으로 non-linear gating을 audio embedding vector에 적용하는 대신, 저자들은 audio embedding과 text embedding에 gating을 적용합니다.

 

g(a, t)는 speech information과 text information을 결합하여 language embeddign vector를 구한 output입니다. W와 b는 학습 가능한 parameter이고 ο는 element-wise multiplication을 나타내고, σ는 element-wise sigmoid activation입니다. model을 학습하기 위해, 저자들은 아래와 같이 loss를 정의했습니다.

 

각 video clip에서 추출한 audio sample과 text caption은 분리할 수 없는 것으로 간주되어 함께 sampling 됩니다.

 

Experimental Setup

 

Audio-Video Experiments

 

- Audio-Image Retrieval Evaluation

instructional video와 image에 대한 spoken caption 모두 visual scene을 묘사하는 speech를 포함하고 있기 때문에, instructional video로 학습하는 것은 image와 spoken caption에 관련된 initialization을 학습할 수 있음을 의미합니다. 그러므로 AVLnet을 HowTo100M video로 학습하고 image and spoken caption으로 fine-tuning 했습니다. 그다음 audio to image와 image to audio retrieval task에 대한 성능을 평가했습니다.

 

- Audio-Video Retrieval Evaluation

저자들은 YouCook2와 CrossTask라는 두 video dataset을 가지고 fine-tune 한 다음 평가를 진행했습니다. YouCook2는 cooking video를 포함하고 있지만, CrossTask는 더 광범위한 video를 포함합니다. 그리고 YouTube video로 구성된 MSR-VTT를 가지고 pretrain을 하고 평가를 진행했습니다. 각 dataset에 대한 human-annotated clip을 사용했습니다. 

저자들은 저자들의 model을 video clip retrieval (audio to video), language retrieval (video to audio) task에 대해 평가를 진행했습니다. 이를 통해 저자들의 model이 한 modality를 가지고 다른 modality에 대한 retrieval을 잘 수행할 수 있는지 측정했습니다. 실험을 통해 저자들의 model이 audio와 spoken query를 가지고 video를 바로 찾을 수 있다는 것을 확인했습니다. 

 

Audio-Video Experiments

 

Comparison to State-of-the-art

 

- Audio-Image Retrieval

저자들은 AVLnet은 HowTo100M을 사용하여 학습했습니다. Place에 대해 fine-tuning 할 때, 저자들은 visual encoder의 weight를 update 했습니다.

 

위 표를 보면, 이전 model보다 AVLnet이 더 뛰어난 성능을 보여준다는 것을 알 수 있습니다. AVLnet이 Place dataset의 image와 caption으로 transfer 되는 유의미한 initialization을 수행했음을 보여줍니다.

 

- Audio-Vdieo Retrieval

non-instructional context에 대한 video clip을 retrieval 하는 이전 audio-video model과 AVLnet 성능을 비교합니다. video clip에서 중간 frame image만 사용하여 학습하고 추론하는 model을 비교대상으로 사용했습니다. 그리고 binary cross-entropy loss를 사용한느 model도 비교 대상으로 사용했습니다. AVLnet과 비교했을 때, non-linear gating을 사용하지 않고 embedding 차원도 128입니다. 공평한 비교를 위해, 저자들은 모든 model을 HowTo100M으로 학습했으며, 비교 대상 model들은 visual and audio pipeline이 다르기 때문에 수정했습니다.

 

위 표는 no-pretraining, zero-shot, fine-tune setting에 대한 결과를 보여줍니다. video clip retrieval과 language retrieval 성능은 비슷합니다. target dataset으로만 학습된 경우, 모든 model이 유사한 성능을 보여줍니다. 하지만 HowTo100M으로 학습하는 것이 zero-shot과 fine-tuned setting에서 상당히 많은 성능 향상을 이끌어냈으며, 이를 통해 large-scale pretraining이 필수적임을 보입니다. 

 

Conclusion

이 논문에서 저자들은 instrucitonal video에서 audio-video representation을 학습하는 self-supervised method를 제안합니다. 이전 audio-video 연구들은 sound localization에 초점을 맞추지만, 저자들의 goal은 visual entity에 spoken word를 연관 짓는 것입니다. 저자들은 raw video를 가지고 바로 학습되는 AVLnet model을 제안합니다. 그리고 이는 spoken or text annotation의 필요성이 없앴습니다. 저자들은 다양한 dataset으로 video retrieval task를 수행했으며, image retrieval task도 수행하여 좋은 성능을 달성했습니다. 그리고 저자들은 tri-modal model인 AVLnet-Text도 제안했으며, 이는 instructional video dataset에 이미 존재하는 text narration을 사용하여 추가적인 학습을 진행한 model입니다. 이 방식은 text to video retrieval을 위한 유용한 multi-modal embedding space를 학습합니다.

 

728x90