[ICASSP 2023] Exploring Wav2Vec 2.0 fine tuning for improved speech emotion recognition

안녕하세요. 이번에는 음성 감정인식 논문을 가지고 와봤습니다. 제가 이번에 논문 작업에 들어가게 되는데 멀티모달 감정인식 논문에서 대부분 사전학습 모델을 사용하는 것을 알게 되어서 이 논문을 멀티모달로 확장해보면 괜찮지 않을까?라는 생각으로 읽게 되었습니다. 굉장히 간단한 아이디어를 가지고 논문을 작성하였는데요. 그럼 논문 리뷰 시작합니다.


NLP 분야에서 대표적인 사전학습 모델으로 bert가 있다면 음성 분야에는 대표적인 사전학습 모델로 wav2vec2가 있습니다. wav2vec2는 음성인식 분야에서 사용되기 위해서 나왔는데, 시간이 지남에 따라 점차 감정인식에도 사용되기 시작했습니다. 논문의 저자는 이를 fine-tuning하여서 성능 향상을 이루었는데요. 두개의 베이스라인인 vanilla fine-tuning(V-FT)와 task adaptive pretrining (TAPT)를 먼저 제안합니다. 이 두가지 방법 모두 감정인식 데이터셋인 IEMOCAP에서 큰 성능 향상을 보였고, 논무의 저자가 새롭게 소개하는 새로운 fine-tuning 전략인 P-TAPT 또한 제안합니다. 뒤에서 더 자세히 소개드릴 예정이지만 간단히 소개드리자면 TPAT objective를 수정한 버전으로 contextualized emotion representation을 더 잘 학습한다고 합니다.

<Introduction>

introduction 입니다. 감정인식 논문 답게 다른 감정인식 논문과 마찬가지로 감정인식이 굉장히 중요한 task임을 어필하면서 시작하는데 annotated data의 부족으로 인해서 성장에 한계가 있음을 말합니다. 실제로 음성인식 데이터셋에 비해서 강정인식 데이터셋은 상대적으로 작습니다. 게다가 이렇게 작은 데이터셋에서 학습된 system은 call cneter와 같은 다른 도메인에서는 잘 generalize하지도 않는다고 합니다.

이러한 문제를 명시적인 labeling 없이 큰 스케일의 음성 corpus로부터 학습하는 self-supervised pretrain 모델에서 해결책을 찾았습니다. 사전학습으로부터 학습된 knowledge는 feature extractor로서 모델을 사용함으로서 혹은 모델을 fine-tuning함으로서 downstream task로 전달될 수 있습니다. 사전학습 모델은 NLP에서 처음 도입되었지만, 음성 처리를 위해 사전학습 모델이 여러개 개발이 되었는데 그 중 유명한 것이 wav2vec2.0입니다. wav2vec2.0이라니 1.0도 있을 것 같은 느낌이죠? 맞습니다. wav2vec2 전에 먼저 wav2vec이 나왔는데요. wav2vec은 contrastive loss를 최소화함으로서 과거 프레임이 주어진 상태에서 미래 프레임을 예측하도록 학습된 multi-layer convolutional neural network입니다. 그에 반대로 wav2vec2는 remaining context로부터 missing frame을 예측하기 위해 masked learning objective를 채택하는 transformer 기반 모델입니다. wav2vec2와 wav2vec 중에 어떤 모델을 더 많이 쓰느냐고 묻는다면 감정인식 분야를 연구하면서 제 경험상으로는 transformer 기반의 wav2vec2 모델을 많이 쓰는 것 같습니다.

wav2vec2 모델이 세상에 나와 음성 인식, speaker verification, misprounciation detection에서 성공적으로 사용되었음에도 불구하고 오직 적은 시도만 감정인식에 적용되었다고 논문의 저자는 말합니다. 몇 연구를 통해 spectral-based featgure를 감정인식에 사용하는 것 보다 wav2vec feature를 사용하는 것이 좋다는 연구 결과도 있습니다. 여러 연구를 통해 feature extractor로서 사전 학습된 모델의 유용성이 증명되었지만, 감정인식에 맞게 모델을 fine-tuning하는 연구는 거의 진행되지 않았음을 논문의 저자는 언급합니다.

사전학습된 모델을 fine-tuning할 때 지속적으로 발생하는 문제가 있는데 바로 pretraining과 target domain간의 mismatch 입니다. 이를 해결하기 위해서 target dataset에 대해 pretraining process를 계속함으로서 domain shifht를 해결하는 Task daptive pretraining (TAPT)가 제안되었습니다. pretrining ASR corpus의 음성은 여러 측면에서 감정적 음성과 다르기 때문에 TAPT는 감정인식에 대한 fine-tuning을 위한 강력한 방법이라고 논문의 저자는 제안합니다.

그래서 이 논문에서는 wav2vec2.0을 감정인식 task에 맞게 fine-tuing하여 IEMOCAP에서 SOTA를 달성합니다.

<Method>

<1. The wav2vec2.0 model>

wav2vec2.0은 raw audio signal으로부터 contextualized representations를 추출하도록 학습된 transformer-based model입니다. Fig 1에 (b)를 보면 모델의 구조와 pretrining objective에 대해서 알 수 있습니다. 모델은 3개의 sub-model로 구성되어 있는데요. feature encoder와 transformer module, quantization module입니다. feature encoder는 input signal을 low-level feature로 처리하는 multi-layer CNN으로 구성되어 있습니다. low-level feature에 기반하여 transformer module은 contextualized representation을 적용하도록 합니다. quantization module은 low-level feature를 trainable codebook으로 discretize합니다. 모델을 학습시키기 위해서 low-level feautre의 part는 transformer module로부터 masking되고 objective는 masked feature의 quantized version을 identifygkqslek.

<2. comparing methods>

논문의 저자는 2개의 베이스라인을 가져가는데요. 하나는 convolutional fine-tuning method, 하나는 NLP에서 처음 소개된 task adaptive pretraining 방법입니다.

<2.1 Vanilla fine-tuning>

wav2vec2.0은 자연스럽게 sentence repretataion을 형성하기 위한 utterance-level pretraining task가 없다는 점에서 NLP와 다르다고 발할 수 있습니다. 결과적으로 utterance level classification task를 fine-tuning하려면 time stop에 걸친 aggregation이 필요합니다. 논문의 저자는 다양한 구성을 실험한 결과 최종 layer에서 average pooling을 사용하는 것이 감정인식에 간단하면서도 효과적이라는 사실을 발견했습니다. 구체적으로, wav2vec2으로 추출한 최종 contextualized representation은 먼저 time dimesion에 걸친 global average pooling으로 처리된 다음, ReLU activation과 single linear layer를 통해 감정인식을 수행합니다. 이러한 vanilla fine-tuning mothod를 V-FT라고 칭하겠습니다.

<2.2 Task adaptive pretraining>

Task adaptive pretraining (TAPT)는 domain-specific task에 대해 pretrained language models를 fine-tuning하는 간단하지만 효과적인 method입니다. 이는 target data set에 대한 pretraining을 계속함으로써 pretraining과 target domain간의 차이를 메웁니다. 이 논문에서는 감정인식에서 wav2vec2를 fine-tuning하는 방법 중 하나로 TAPT를 다룹니다. 논문의 저자는 original pre-training과 fine-tuning stage를 구분하기 위해서 continual pretraining process를 위하 intermediate task adaptation stage를 정의합니다.

<2.3. Pseudo-label task adaptive pretraining>

TAPT는 pretraining objective에 따라 continual training을 통해 감정적 음성에 적응하지만 emotion label을 직접적으로 사용하지는 않습니다. 기본적으로, 얻은 contexualized representation은 다양한 down-stream task에 적합한 general feature가 될 것입니다. 논문의 저자는 감정인식에만 초점을 맞추기 때문에 objective를 조정하여 emotion-specific feature를 생성하도록 수정합니다. missing low-level feature를 식별하는 대신 masked sequence의 emotion state를 미리 파악하도록 중점을 둡니다. 이를 통해 얻을 수 있는 한 가지 이점은 데이터 효율성 향상인데요. missing audio part를 reconstruction하는 작업은 더 복잡한 작업이기 때문에 모델이 over-fitting에 취약해질 수 있습니다. 또한 contexualized representation에서 감정 인식과 무관한 정보를 이미 fitering하기 때문에 fine-tuning stage가 간소화됩니다.

하지만, 대부분의 감정인식 데이터셋에서는 utterance-level의 emotion label만 제공되지만, 논문에서 말하길 여러 연구에 따르면 segment-based classification objective를 가지고 학습하면 frame-level emotion information도 추론할 수 있다고 합니다. 특히 Fig 1에서 (a)에서 볼 수 있듯이, 논문의 저자는 utterance-level의 emotion label을 예측하는 데 유용한 frame-level의 emotion represntation을 추출하기 위해서 wav2vec을 fine-tuning합니다. CNN의 locality가 sequental structure를 보존하기 때문에 wav2vec과 같은 CNN 구조를 사용하는 것이 중요하다고 말하는데요. 학습 후, k-means clustring 알고리즘을 수행하는데요. 이를 통해 CNN classifier의 intermediate layer에 대한 k-means cluster는 target label과 관련된 information을 포착할 수 있습니다. 따라서 논문의 저자는 이러한 cluster assignment를 local emotion state를 표현하는 pseudo-label로서 해석하였습니다.

그런 다음 TAPT objective를 새로운 P-TAPT obejctive로 대체합니다. masking된 freame의 k-means cluster assignment를 예측하기 위해 두 개의 linear laye로 구성된 position-wise linear head를 추가합니다. 실제로는 cluster 수가 다른 다양한 k-means clustring을 실행하며, 모델은 여러 개의 linear head를 사용하여 cluster assignment ensemble을 예측해야 합니다.

<Experiment>

<Dataset>

데이터셋으로는 IEMOCAP과 SAVEE를 사용했다고 합니다. 간단히 소개하면 아래와 같습니다.

  • IEMOCAP : Interactive Emotional Dyadic Motion Cap- ture (IEMOCAP)
  • SAVEE : The Surrey Audio-Visual Expressed Emotion (SAVEE) dataset

<Result>

Table 1과 2를 통해 UA를 확인할 수 있습니다. 역시나 논문의 저자가 제안한 P-TAPT가 우세한 성능을 보이는 것을 확인할 수 있고, 심지어 SAVEE 데이터셋의 성능인 Table 2를 보면 Human 보다 성능이 더 높은 것을 파악할 수 있습니다.

데이터 size에 대해서 리포팅한 것인데요. 역시나 P-TAPT가 가장 높은 성능을 띄는 것을 알 수 있습니다.

Table 5는 다른 방법론과의 비교인데요. 여기서 주목할 점은 멀티모달 방법론 보다 성능이 높은 것 입니다.


이렇게 리뷰를 마쳐봤는데요. 근데 여러분 뭔가 아쉽지 않나요? 맞습니다. 이 논문에서는 식이 1도 등장하지 않습니다….호호호. 대단한 논문이지요? 제가 곧 리뷰할 TAPT도 식이 1도 등장하지 않지만 best oral paper 상을 받은 대단한 논문인데 TAPT를 기반으로 진행한 논문이여서 그런지 이런 부분도 따라간 것 같습니다. 오랜만에 간단하지만 좋은 성능을 낸 논문을 리뷰한것 같네요. 읽어주셔서 감사합니다.

Author: 김 주연

4 thoughts on “[ICASSP 2023] Exploring Wav2Vec 2.0 fine tuning for improved speech emotion recognition

  1. 안녕하세요 좋은리뷰 감사합니다. V-FT와 TAPT 방법론의 차이에 대해 궁금한데요, 특히 두 방법론간의 차이점 중 하나인 V-FT의 time stop에 걸친 aggregation이 어떠한 과정인지 궁금합니다! 감사합니다

    1. utterance level classification task를 fine-tuning하려면 time stop에 걸친 aggregation에 대해서는 논문에서는 간략하게 average pooling을 사용하였다고 언급하였는데요. 사실상 V-FT는 메인 아이디어가 아니기 때문에 이런 정도만 언급한 것 같습니다.

  2. 좋은 리뷰 감사합니다.
    요즘 김주연 연구원님께서 리뷰해주신 논문들을 살펴봐도 확실히 text와 audio분야는 pretrained 모델을 feature extractor로 활발히 사용하는 것 같습니다.
    TAPT에 관한 질문이 있는데 TAPT는 사전 학습모델을 downstream task에 적용할 때 사전학습에 사용된 데이터와 target 데이터와의 domain gap을 줄이기 위한 방법으로 이해하였습니다. 그런데 이를 위해 target 데이터셋에 대한 pretraining을 진행한다는 부분이 명확하게 이해되지 않는데, target data의 표현을 학습하기 위해 self-supervised 방식으로 tuning을 진행 것이 맞나요? 그렇다면 결국 우리가 하고자 하는 task는 target data로 감정인식을 수행하는 것인데 target data를 사용한 supervised 방식의 학습은 진행되지 않는 것인지도 궁금합니다.

    1. 안녕하세요. 댓글 감사합니다. target data의 표현을 학습하기 위해 self-supervised 방식으로 tunning 했다기 보다는사전학습을 더 진행해준것이라고 생각하시면 될듯합니다. 이번 논문에서는 TAPT에 대해서는 그리 언급되지 않아서 TAPT에 대해서는 제가 다음 리뷰로 작성할 예정이니 그 부분을 더 참고해주시면 감사하겠습니다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 항목은 *(으)로 표시합니다