- 23.07.19 : train 파트 내용 추가
안녕하세요. 제가 이전에 CLIP 논문을 리뷰하면서 text, visual modality을 audio, text, visual modality로 확장할 수는 없을까 생각한 적이 있는데요. 그런데 찾아보니 역시나 audio를 결합한 CLIP이 있더라구요? 바로 가져와봤습니다. 이번에는 감정인식과 직접적으로 연관된 task는 아니라 신선하게 읽을 수 있었습니다.
<Introduction>
논문의 저자는 과거의 연구자들이 주로 audible modality만 사용한 classification task에만 집중했다고 하였습니다. 그런데 최근에는 audio와 관련된 task에 적용하는 multimodal approaches 인기가 높아지고 있다고 말하는데요. 그리고 multimodal approaches는 주로 audio 외에 text, visual modality를 추가로 사용하는 것을 의미합니다. 그런데 audio와 함께 modality를 추가로 사용하는 것은 드므지 않지만, audio domain에서 두가지 modality를 추가로 사용하는 것은 아직도 흔하지 않습니다. 이 부분은 논문과 함께 깊이 공감하면서 읽었는데요. 실제로 multimodal 논문을 서베이하면 주로 text, visual modality이거나 audio, text modality를 주로 사용하는 것을 확인할 수 있습니다.
논문의 저자는 unimodal과 multimodal 모두에서 발전이 힘든 부분이 high quality labled data의 양이 제한되어 있기 때문이라고 말하는데요. 이러한 데이터 부족이 연구에 어려움이 되고 있고, 이 때문에 texutal descriptions을 기반으로 한 contrastive learning 방법의 zeroshot, fewshot 방식에 관심이 일으키고 있다고 말합니다.
그래서 이 논문에서는 CLIP이라고 불리는 constrastive text-image model과 함께 high-performance audio model ESResNeXt를 합쳐 최종적으로 tri-modal hybrid architecture를 제안합니다.
CLIP model은 원본 논문에서 ‘zero-shot inference’라고 불리는 아주 인상적인 성능과 강력한 domain adaptation capabilities를 보여주는데요. 뒷단에서 더 설명드리겠지만, 학습하는 과정에서 three modalities를 joint하여 사용하는 것은 environmental sound classification task에서 뛰어난 성능 향상을 보였고 base architecture의 zero-shot capabilities를 audio까지 확장할 수 있었습니다.
<Model>
모델의 구조는 Figure 1을 통해서 확인할 수 있는데요. high level에서, 논문의 hybird archtecture는 visual과 textual modalities를 위한 ResNet-based CLIP과 audio를 위한 ESResNeXt model을 합친 것을 확인할 수 있습니다.
<Archtecture>
네트워크 설계 관점에서 볼 때, 제안된 AudioCLIP model은 novel CLIP framework를 계승하고 추가적인 audible modality를 도입하여서 기존 archtecture를 확장시킵니다. 논문의 저자는 새로 추가된 modality도 기존의 modality와 마찬가지로 중요하다고 생각했기 때문에 AudioCLIP은 Figure 1에 표시된 것처럼, image head, text head, audio head로 구성됩니다.
기존의 CLIP과 비슷하게, 제안된 모델은 여러 modalities에 걸쳐서 sample의 different representation을 pair-wise manner로 align하는 방법을 학습합니다. (서로 다른 표현을 쌍으로 정렬하여 학습)
이러한 alighnment는 modality당 M-dimensional vector embedding을 생성하고(M=1024), 이후 샘플 간 pair-wise cosine similarityes를 계산하여 symmetric cross entorpy loss function에 대한 입력으로 사용됩니다.
세 번째 modality인 audible modality를 사용하면 Figure 1에 표시된 것처럼 새로운 inter-modality alignment terms가 소개되는데 바로, text-audio(TA), image-audio(IA) 입니다.
AudioCLIP은 Figure 1 왼쪽의 채워진 사각형과 같은 original CLIP의 image-text contrastice learning setup과 audioble modality 기반 extention을 융합하여 세 가지 basic modalities를 임이의 조합으로 동시에 처리할 수 있도록 합니다.
<Training>
AudioCLIP은 symmetric cross-entropy loss를 이용하여 data sample의 multimodal embedding간의 cosine similarities의 극대화를 기반으로 한 constrastive learning 방식으로 학습됩니다. AudioCLIP의 training은 3가지 stage로 구성되는데요. 하나하나 설명드리도록 하겠습니다.
우선 첫 번째는 각 실험에서 AudioCLIP의 modality-specific head는 pre-initialized 되었다는 점입니다(Stage 1). vanilla CLIP을 구성하는 Image-head, text-head는 기존의 논문의 저자가 composit CLIP dataset에서 획득한 가중치를 사용했습니다. audio-head, 즉, ESResNeXt는 모든 경우에 대해서 pre-loaded된 ImageNet-weight를 사용한 다음 [5] 논문의 저자가 제안한 것에 맞추어 초기화 하였습니다. 이렇게 훈련된 CLIP과 ESResNeXt의 snapshots을 AudioCLIP의 branch에 대한 initial state로 활용하였습니다.
AudioSet dataset은 특성상 다양한 modalities를 connect할 수 있는데요. 이는 뒤에서 더 자세히 설명드리겠습니다. 그래서 AudioSet에서 학습될 때 , audio recordings, textual label, 해당 video frame은 각각 AudioCLIP의 audio-head, text-head, image-head를 위한 input으로 사용되었습니다. 특히, audio track과 각 class label은 ESResNeXt model (Stage 2)의 image-audio transfer learning을 수행하는 데에 사용되었으며, 추출된 frame은 audio와 class name과 함께 hybrid AudioCLIP model의 input으로 사용되었습니다. trainin part에서는, videio에서 추출된 동일한 distant의 frame 10개를 추출하고, 그 중 하나를 무작위로 선택하여 AudioCLIP model에 통과시킵니다. 평가 단계에서는, 동일한 extraction procedure를 수행하지만, central frame만 model에 제시되었다는 것이 차이점으로 있습니다.
논문의 저자는 AudioSet을 기반으로 multimodal training을 수행했는데요 (Stage 2). 이를 위해서, shared embedding space를 vanilla CLIP과 호환되도록 유지하거나 AudioCLIP을 audio 분포에 더 잘 맞추는 두 가지 경로를 사용할 수 있습니다.
첫 번째 옵션은 image head와 text head를 frozen(”frozen: IH, TH”)된 상태로 유지하면서 AudioCLIP을 학습하는 것으로, audio embedding이 frozen CLIP model의 embedding에 맞춰 align 되도록 합니다.
두 번째 옵션은 이 경우에는 세 개의 head 모두에 대한 joint traiing이 수행되었기 때문에 full AudioCLIP이 audio 분포에 더 가깝게 따라갈 수 있습니다. (그리고 target dataset에 대한 정확도를 향상시켰다고 하네요)
위에서 말씀드린 AudioSet training strategy와는 별개로, AudioCLIP을 target dataset, 즉 UrbanSound8K와 ESC-50에 맞추기 위해서 최종 fine-tuning(Stage 3, optional)을 도입할 수도 있습니다. 참고로 논문의 저자는 모델의 특성상 전통적인 tine-tuning step 없이 이러한 데이터셋에 대해서 zero-shot inference를 할 수 있다고 어필합니다. fine-tuning case인 경우, target dataset이 audio modality로만 구성되어 있기 때문에 나머지 AudioCLIP의 supervision 아래에서 audio head에 대해서만 수행되었다고 합니다. 여기서 Image head와 text head를 freeze한다는 것은 optimization step에서 해당 네트워크 파라미터를 backpropagation에서 제외하여 해당 파라미터의 값을 snapshot과 동일하게 유지한다는 것을 의미합니다. 이를 통해 vanilla CLIP initialization에 의존하는 AudioCLIP의 성능과 audio domain-adapted된 AudioCLIP의 성능을 비교할 수 있게 되었습니다.
Training 파트 시작 부분에서 “AudioCLIP은 symmetriccross-entropy loss를 이용하여 data sample의 multimodal embedding간의 cosine similarities의 극대화를 기반으로 한 constrastive learning 방식으로 학습됩니다. “라고 말씀드렸는데요. 그렇다면 여기서 symmetric cross-entropy loss가 과연 뭘까요? 이 부분은 original CLIP 논문인 [12]를 참고하면 조금 더 설명이 나와있는데요.
위의 그림은 CLIP의 presudocode를 Figure로 나타낸 것입니다. symmetric loss function 파트를 좀 더 보면 딱 감이 오는데요. 각 logits에 따라서 axis=0으로, axis=1로 cross entorpy loss를 수행한 것을 의미합니다. symmetric cross-entorpy loss가 새롭게 정의된 cross-entropy와 관련된 식은 아니고 symmetric하게 loss를 수행하는 것을 의미합니다.
<Dataset>
이번에는 제가 모르는 task이기 때문에 dataset에 대한 이해도가 무척 떨어져 좀더 구체적으로 작성해볼까 합니다. 우선 본 논문에서는 5개의 image, audio 그리고 mixed dataset이 사용되었습니다. 2개는 weight initializers로 간접적으로 (CLIP dataset, ImageNet), 3개는 training/evaluation 위해 직접적으로(AudioSet, UrbanSound8K, ESC-50) 사용되었습니다. 더 구체적인 dataset 설명은 아래와 같습니다.
- Composite CLIP dataset (init) : CLIP을 학습 시키기 위해서 구축된 새로운 dataset입니다. 이 dataset은 약 500개의 text 기반 queries를 기반으로 약 4억개의 text-image pair로 구성되어 있습니다.
- ImageNet (init) : 워어어낙 유명한 데이터셋이니 생략하겠습니다.
- AudioSet : 본 논문을 설명하면서 가장 많이 등장한 dataset인데요. 527개의 class로 구성된 large-scale audible dataset 입니다(~1.8M/ ~20k, training / evaluation set). 각 sample은 YouTube-video에서 최대 10초 길이의 snippet으로, 해당 ID와 timing으로 정의됩니다. audio track 말고도 video frame을 추출해서 사용했는데요. 이 덕분에 논문에서는 AudioSet이 vaniila CLIP framework와 논문에서 제안한 tri-model extention 기능 사이의 glue가 되었다고 합니다.
- UrbanSound8K : 이 데이터셋은 16~48kHz 범위의 주하수에서 샘플링된 8732개의 mono, binaural audio track(각 트랙 ≤ 4s)을 10개의 class로 구성하여 제공합니다.
- ESC-50 : 이 데이터셋은 44.1kHz로 샘플링된 2000개의 single-channel 5초 길이 audio track을 제공합니다. 또한 이 데이터셋은 5개의 그룹으로 나눌 수 있는 50개의 class로 구성되어 있습니다.
<Data augmentation>
본 논문에서 사용한 audio dataset은 composit CLIP dataset에 비해서 trining sample이 2배나 적기 때문에 과적합 문제가 발생할 수 있다고 합니다. 특히 UrbanSound8K, ESC-50 dataset에 경우 더더욱 그렇다고 하는데요. 그래서 본 논문에서는 다음과 같은 증강 방식을 통해 이러한 문제를 해결하고자 하였습니다.
- time scaling
- time inversion
- Random crop and padding
- Random noise
<Performance evaluation>
AudioCLIP의 성능 평가는 environmental sound classification task를 기반으로 수행되었는데요. 정확도는 모델의 classification capabilities를 점수화하여서 표시하였습니다. 성능 측정은 두 개의 dataset (UrbanSound8K, ESC-50)에서 공통적으로 supervised되었고 target에 대한 fint-tuning이 없는 상태에서 수행되었습니다. (zero-shot inference)
앞에서 설명한 바와 같이 AudioCLIP은 vanilla CLIP과 같이, multimodal input을 shared vector space로 embedding 시키고, 동일한 concept에 대한 다른 representation 간의 similarity를 평가할 수 있습니다. 네트워크의 아키텍쳐가 dedicated classification으로 구성되어 있지 않기 때문에 이러한 output을 class에 mapping할 수 있으므로 actual target class를 즉석에서 정의할 수 있습니다. 따라서 actual classification에 앞서 AudioCLIP의 text-head로부터 textual label의 vector embedding을 가져오는 추가 단계를 수행해야 합니다. vector embedding을 가져왔으면, 그 다음에는 visual, audio embedding과 cosine similarities를 계산하여 가장 유사한 class를 식별할 수 있습니다.
<Result>
<Audio Classification>
Table 1을 통해서 성능을 확인할 수 있는데요. 이 테이블을 통해서 UrbanSound8K와 ESC-50 dataset에서 가장 높은 정확도를 달성했음을 확인할 수 있는데 이를 통해 training 중에 여러 모달리티를 동시에 사용하는 것이 이점이 된다는 것을 입증하였습니다. 특히, frozen된 text-head, image-head의 supervision 아래에서 audio-head를 training한 결과, 각각 89.95%와 96.65%의 정확도를 달성하여 UrbanSound8K, ESC-50 dataset에서 SOTA를 능가하는 성능을 보이는 것을 확인할 수 있는데요. 마지막으로 image, text, audio head를 동시에 training하면 audio-head만 단독으로 training할 때보다 성능이 더욱 항샹되었다는 것을 확인할 수 있습니다.
<Zero-shot Inference>
Composit CLIP dataset은 image, text-head에 좋은 initialization을 제공하여서 zero-shot 방식으로 inference 하거나 fine-tuing하여 새로운 SOTA를 얻을 수 있다고 본 논문은 말합니다. audio-head에 basic initialization 역할을 하는 ImageNet dataset은 cross-domain transfer learning에 좋은 starting point가 될 수 있음을 보였고, 이를 AudioSet과 함께 사용하면 SOTA 수준의 audio classification capabilities를 구축할 수 있음을 논문에서는 말합니다[5, 23, 24]. 특히 composit CLIP dataset을 통해 image-head와 text-head를 초기화하는 것만으로도 multimodal supervision 하에 audio-head를 성공적으로 training 할 수 있다고 합니다. 실제로 이렇게 training 하면(실제 target인 UrbanSound8k, ESC-50에 대한 fine-tuning 없이) UrbanSound8K, ESC-50 dataset에서 각각 65.31%, 69.40%의 가장 높은 zero-shot inference result를 얻은 것을 확인할 수 있습니다. (Table 2 참고)
또한 AudioSet에서 image-head, text-head를 audio-head와 함께 training하면 downstream task에서 68.78%로 추가적으로 성능 향상을 이룰 수 있습니다.
마지막으로, target에 대한 fine-tuning은 UrbanSound8K에서 90.07%, ESC-50에서 97.15%로 논문에서 표현하기를 아주 귀중한 improvement를 제공한다고 하네요.
이번에는 이렇게 AudioCLIP에 대해서 리뷰를 해봤는데요. 이렇게도 CLIP을 확장시켜서 사용할 수도 있구나를 알게되었던 것 같습니다. 요즘에는 비디오에서 감정 인식을 수행하는 것이 좀 더 흥미가 가는데요. 다음번에 리뷰할 수 있으면 좋을 것 같습니다. 읽어주셔서 감사합니다. 아래는 본 리뷰에서 참고한 논문에 대해서 reference를 작성하였습니다. [12]의 경우, original CLIP 논문이니 흥미가 가시는 분들은 참고하시면 좋을 듯 합니다.
[5] Andrey Guzhov, Federico Raue, Jo ̈rn Hees, and Andreas Den- gel, “Esresne(x)t-fbsp: Learning robust time-frequency trans- formation of audio,” in 2021 International Joint Conference on Neural Networks (IJCNN), 2021.
[12] Alec Radford,Jong Wook Kim, Chris Hallacy, Aditya Ramesh, Gabriel Goh, Sandhini Agarwal, Girish Sastry, Amanda Askell, Pamela Mishkin, Jack Clark, Gretchen Krueger, and Ilya Sutskever, “Learning transferable visual models from natural language supervision,” 2021. ← 이 논문이 CLIP 논문인데 흥미가 가시는 분은 여기를 더 참고하시는 것도 좋을 것 같습니다.
[23] Andrey Guzhov, Federico Raue, Jo ̈rn Hees, and Andreas Den- gel, “Esresnet: Environmental sound classification based on visual domain models,” in 25th International Conference on Pattern Recognition (ICPR), January 2021, pp. 4933–4940.
[24] Kamalesh Palanisamy, Dipika Singhania, and Angela Yao, “Rethinking cnn models for audio classification,” arXiv preprint arXiv:2007.11154, 2020.
안녕하세요. 좋은 리뷰 감사합니다.
audioset울 기반으로 멀티모달 학습을 수행하기 위해서 shared embedding space를 vanilla CLIP과 호환되도록 유지해야 한다고 하셨는데 이 부분이 IH, TH를 frozen한 후 audioclip을 학습시키는 것을 의미하는 건가요 ? 또, audioclip을 오디오 분포에 더 잘 맞춘다는 것은 세 head에 대해 joint training을 수행함으로써 나오는 것인가요?
또한 audioclip을 target dataset에 맞추기 위해 fine tuning을 도입할 수 있다고 하였는데, zero shot inference를 하기 위해서는 fine tuning이 필요 없다고 하셨습니다. 그렇다면 보통 zero shot inference을 제외하고는 fine tuning을 하는 것이 일반적인가요? 또 모델의 특성상 전통적인 fine tuning없이 zero shot inference를 할 수 있다고 하셨는데 모델의 어떤 점이 이를 가능하게 한 것인지 궁금합니다.
감사합니다 !!
1. 네 맞습니다. audioset울 기반으로 멀티모달 학습을 수행하기 위해서 shared embedding space를 vanilla CLIP과 호환되도록 유지해야 한다는 부분이 옵션 첫번째에 IH, TH를 frozen을 유지하면서 AudioCLIP을 학습시키는 것을 말합니다.
2. 네 맞습니다
3. 보통 zero shot inference을 제외하고는 fine tuning을 하는 것이 일반적인가요? => 제 생각에는 일반적이라고 생각합니다.
4. 모델의 특성상 전통적인 fine tuning없이 zero shot inference를 할 수 있다고 하셨는데 모델의 어떤 점이 이를 가능하게 한 것인지 -> 저는 이것이 textual descriptors 덕분에 해결할 수 있었다고 생각하는데요. textual한 정보들 덕분인 것이지요.
안녕하세요 김주연 연구원님
리뷰해주신 논문은 기존 CLIP (V, T) 을 오디오 모달까지 확장한 AudioCLIP (V, A, T) 방법론을 제안한 것 같습니다. 리뷰를 읽으며 몇 가지 궁금한 점 생겨 댓글 남겨볼까 합니다.
1. 부분에서 “AudioCLIP model은 novel CLIP framework를 계승하고 추가적인 audible modality를 도입하여서 기존 archtecture를 확장시킨다” 라고 하셨는데요. novel CLIP framework는 CLIP 과는 또 다른건가요? 다르다면 어떤 차이가 있는지 궁금합니다. 부분 중 symmetric cross entropy 의 수식은 어떻게 될까요? 수식을 통해 cosine similarities의 극대화되는 이유를 리뷰에 추가적으로 다뤄주시면 좋을 것 같습니다.
2. Image Head로는 Modified ResNet-50 을 , Text Head로는 Transformer를 , Audio Head로는 ESResNeXt을 사용한 것으로 이해가 되는데요. Text Head 를 제외하고, Image와 Audio 헤드로는 왜 하필 해당 모델을 사용하였는지 알 수 있을까요? 그리고 Modified ResNet-50 라면 어떤 점에서 ResNet-50과 다른지도 궁금합니다. 만일 왜 해당 모델을 사용했는지가 본 논문 혹은 기존의 CLIP 논문에도 없다면, 김주연 연구원이 생각하는 이유를 알려주시면 좋을 것 같습니다.
3.
4. training 의 stage-1은 제가 이해하기로 가중치 초기화 방식에 대한 얘기 같은데, ESResNeXt는 초기화에 대한 이야기 같은데, [5] 논문의 저자가 제안한 것 그리고 “이렇게 훈련된 CLIP과 ESResNeXt의 snapshots” 이 무엇을 의미할까요…? snapshot이 무엇일지…? 그냥 모델을 불러오는 것과는 차이가 있는건가요? 초기화 방식을 각 모달별로 따로 진행한다는 것인지 이해가 가지 않는데, 전체적인 학습의 stage 3단계를 모달 마다 순차적으로 다시 설명해주시면 감사드리겠습니다.
5.
P.S. 혹시 리뷰를 작성할 때 영어 단어를 그대로 쓰기 보다는, 한글로 풀어서 작성해주시는 건 어떨까요..? (당연히 설명할 수 있는 영어단어를 말한겁니다..! 대체할 수 없는 단어라면 어쩔 수 없지요) 몇몇 문장은 영문을 그대로 번역한 것 같이 이해가 잘 되지 않는 부분이 있어… 조심스럽게 글 남겨봅시다.
1. 이 부분은 특별한 무언가를 계승 했다기 보다는 새로운 CLIP을 제안했다는 의미로 받아들여주시면 될 것 같습니다.
2. Audio Head로는 논문에서 말하길 “The recently proposed high-performance
audio classification model ESResNeXt”이라고 설명하는데 ESResNeXt가 ESR(Environmental sound classification) task에서 높은 성능을 내는 모델이기 때문에 사용하였다고 말하였고, image-head 같은 경우 ResNet-base CLIP[12]에서 제안된 head를 그대로 사용한 것입니다. [12]가 원본 CLIP 논문이니 orignal CLIP의 head를 가져다 쓴 것이죠.
3. 이 부분은 사실 논문에서 깊게 다루지 않아 저도 논문에서만 다룬 정도로만 다르고 넘어간 부분이 없지않아 있는데요. 추후에 수식 관련하여 내용을 추가하도록 하겠습니다.
4, 제가 이해한 바를 간략히 작성하명 아래와 같습니다.
stage1: 가중치 초가화
stage2: auidoclip학습
stage3: fine-tuning
이렇게 3개로 말할 수 있는데요. 또한 snapshot 같은 경우도 저는 모델을 불러오는 것과 동일하게 이해하였습니다.
5. 영어로 작성하는 부분이 더 잘 이해가 갈 것이라 생각하였는데 저도 이해를 잘 하지 못하고 서로 이해하지 못하는 상황으로 간 것 같네요;; 다음부터는 좀더 잘 작성해보도록 하겠습니다. 피드백 너무나 감사합니다!
좋은 리뷰 감사합니다.
인트로부분에서 ‘audio domain에서 두가지 modality를 추가로 사용하는 것은 아직도 흔하지 않습니다.’라고 하셨는데 audio 도메인을 잘 활용하지 않는 것에 공감한다 하셨는데 그 이유에 대해 섷명해주실 수 있을까요??
또한 table 1과 table 2를 보았을 때 audio모달리티와 IH TH를 같이 학습하였을 따 송능을 리포팅하였는데 IH와 TH를각각 같이 학습시켜보는 실험은 없나요??
1) 우선 제가 서베이 해본 결과 경험적으로 대부분 multimodal에 대해서 다룰 때 보통 cross-modality 이런식으로 (V, T)만 다루는 경우가 흔하기 때문에 이렇게 작성하였습니다.
2) 승현님 의견대로 그렇게 해서 성능을 내볼 수도 있을 것 같은데 논문에서 제시한 바는 위의 표가 전부이기때문에 IH, TH를 각각 따로 학습시켜서 성능을 리포팅한 것은 없습니다
안녕하세요 김주연 연구원님
좋은 리뷰 감사합니다.
기존 CLIP 연구에서 오디오 모달리티를 더해 성능을 향상시킨 것으로 이해했습니다.
궁금한 점이 하나 있는데, 기존 연구에서 오디오 모달리티를 사용하지 않은 것이 다른 모달리티에 비해 정보량이 적어서 인지 궁금합니다.
또한 새로운 모달리티를 적용하는데 기존 CLIP의 방법론과 유사하게 퓨전(TA, IA)을 하는것으로 이해했는데 신기하네요.. 원래 오디오 모달리티에 확장 적용이 쉬운 편 인지 궁금합니다.
감사합니다
1) 흠… 이 부분에 대해서는 그렇게까지 생각하보니 못했는데 그럴 수 있겠다 라는 생각도 드네요,,? 대부분 v,t로 멀티모달을 많이 하는데 이렇게 해도 성능이 어느정도 보장이 되니까 그런것은 아닌가….생각도 들도 두개의 모달리티를 사용하는 것이 세 개를 사용하는 것보다 더 쉽기 때문은 아닐까 생각합니다.
2) 네 맞습니다. 원래 오디오 모달리티에 확장 적용하는 것이 쉬운 편인지는 잘 모르겠으나 이번 논문에서는 간단한 아이디어만으로 쉽게 오디오 모달리티로 확장시킨 것 같습니다.