논문 Review/Video Retrieval

Audio-Visual Mismatch-Aware Video Retrievalvia Association and Adjustment

SooHyun2i 2023. 1. 6. 16:18

짧게 필요한 부분만 정리해보자(타임 어택, 집중) 15:00 ~ 16:30

 

해당 Problem

 

해당 Method

video의 각각의 frame을 spatial encoder(CNN) 모델에 넣어서 spatial features를 뽑고 이를 위의 fsp로 표현함

이 feature를 visual context embedder의 input으로 넣는데 일반적인 transformer 형태임 이를 통해 overall spatio-temporal context of visual feature를 encode 할 수 있다고 얘기함 (attention mechanism의 장점임) 여기서 차이점은 multi-head attention의 last part 부분이 not feed-forward라고 하는데 이는 multi-head attention을 내가 체크해 봐야 될듯

이 이유가 나중에 별도의 feed forward layer과 다르게 fvc를 aggregate 하기 위해라고 함

그리고 이 fvc는 2개의 path로 가는데 하나는 embedding semantic-related visual feature고 하나는 아래의 associating audio feature로 감

visual semantic feed forward를 통해 semantic 한 visual cues의 특징을 가지고 있는 visual embedding hv를 얻음

해당 내용이 어떤 것으로 구성 되어 있는지는 모르겠음

associative feed forward를 통해 audio-visual association을 가지는 visual associative feature를 얻음 

이를 통해 AVA-Memory로부터 audio cues를 recall하는데 사용 된다.

Queries로 사용되네...visual memory mv랑 audio memory ma를 accessing 하기 위해서

query가 visual associcative feature, key가 visual memory, value가 audio memory임

 

가중치를 곱하는건가? 뭐 정확히는 모르겠는데 일단 AVA-memory로 나오는 output은 마지막의 fc layer달아서 associated audio embedding ha,mem을 뽑음

 

자 이제 마지막 mismatch-aware semantic은 이 3개의 embedding을 다 받는다. positional encdoing을 separately하게 적용하고 CLS token은 뒤에 BERT를 쓰나? BERT로 aggregating the feature를 적용하는데 사용된다.

mismatch-aware semantic embedder는 위의 식과 같다. visual context embedder 구조와 비슷함(last part 제외하고)

 

오디오 큐가 신뢰할 수 없는 경우(이는 시각적으로 일치하지 않는 경우) 실제 오디오 ha의 비율을 줄인다.. 반면에 관련 오디오 ha,mem의 비율은 증가시킨다...이게 원본이 시각적으로 일치하지 않으면 그 놈 줄이고 그거와 실제 일치한 audio-visual 쌍을 AVA-memory에서 찾았고 그게 ha.mem이니까 그 비율을 증가시킨다.?

 


AVA-Memory를 위의 그림과 별개로 독립적으로 학습시키는 듯

 

위의 내용과 비슷한데 특이한건 audio feature에서 나온 ㅈ저 fta_i 는 앞에서한 ha랑 다른데 fa는 마지막 fc layer를 통과하지 않습니다. 그래서 time t에 대해 랜덤하게 sample paird feature를 만들고 이를 training data로 활용

그리고 i로 같은거면 positive 그 외에 나머지 i,j는 negative set으로 구성

 

training data는 visual and audio가 match가 안된 데이터셋도 있어서 audio-visual associative loss를 사용

log(1-p) loss를 사용했는데 이는 CVPR 21년 어떤 논문의 아이디어를 참고한거고 이를 통해 -log(p)는 hard sample gradient가 높은데 log(1-p)는 easy samples gradient가 높아서 이 방법이 어려운 mismatcch sample의 optimiation을 강요하지 않도록 학습이 된다고 합니다. 그 다음 NCE loss 사용하는데..이거 뭐가 잘되고 좋은거지? 차이점이 뭘까...

key-value 스위칭 하는거?..