티스토리 뷰

반응형

LoRA-Whisper: Parameter-Efficient and Extensible Multilingual ASR


  • Multilingual Automatic Speech Recognition을 위해서는 language interference와 성능 저하 없는 new language incorporation이 필요함
  • LoRA-Whisper
    • Whisper에 LoRA matrix를 incorporate 하여 language interference를 완화
    • LoRA와 language 간의 similarity를 활용하여 new language에 대한 성능을 개선
  • 논문 (ICASSP 2024) : Paper Link

1. Introduction

  • Automatic Speech Recognition (ASR)은 speech를 written text로 transcribe 하는 것을 목표로 함
    • 특히 Whisper는 large-scale multilingual dataset을 기반으로 customized multilingual speech recognition이 가능함
    • BUT, multilingual ASR에는 다음 2가지의 한계점이 있음:
      1. Language overlap, data imbalance, dialectal accent로 인한 Language Interference
        - 이를 위해 language ID나 language-specific module을 활용할 수 있지만, model design이 complex 해짐
      2. New language에 대한 Language Expansion
        - Naive approach로써 new language에 대해 fine-tuning 하는 방법을 고려할 수 있지만, catastrophi forgetting 문제가 발생함
        - 한편으로 continual learning도 고려할 수 있지만 inefficient 하고 time-consuming 함

-> 그래서 multilingual ASR을 위한 parameter-efficient, extensible model인 LoRA-Whisper를 제안

 

  • LoRA-Whisper
    • Low-Rank Adaptation (LoRA)를 활용하여 Whisper를 specific language에 대해 tailoring
      - 즉, language 간 shared information은 Whisper model에 store 하고 각 LoRA matrix는 language-specific information을 capture 함
    • New language incorporating 시에는 new LoRA matrix를 assign 하여 existing language의 성능 저하를 회피
    • 추가적으로 new language와 base language 간의 similarity를 활용한 LoRA matrix initialization과 Mixture of Experts (MoE)를 지원

< Overall of LoRA-Whisper >

  • LoRA와 Whisper를 결합한 mulitlingual ASR model
  • 결과적으로 기존보다 뛰어난 ASR 성능을 달성

2. Background

- Whisper

  • Whisper는 multilingual speech recognition, speech translation, language identification 등의 multiple speech task를 수행할 수 있는 encoder-decoder Transformer model
    • 먼저 Whisper는 input으로 30-seconds length의 80-dimensional log-mel-spectrogram $\mathbf{X}=[x_{1},x_{2},...,x_{T}]$를 사용함
      - $T$ : context length
    • 그러면 encoder block은 input speech feature를 hidden representation $\mathbf{H}$로 encoding 함:
      (Eq. 1) $\mathbf{H}=\text{AudioEncoder}(\mathbf{X})$
    • Decoder block은 hidden representation을 previous token과 special prompt $p$에 따라 recursively condition 하여 text token $\hat{y}$로 decoding 함:
      (Eq. 2) $\hat{y}_{t}=\text{TextDecoder}(p,\hat{y}_{1:t-1},\mathbf{H})$

- LoRA

  • LoRA는 일반적으로 specific domain이나 downstream task에 맞게 Large Language Model (LLM)을 tailor 하기 위해 사용됨
    • 특히 LoRA는 original weight를 fix 한 다음, rank decomposition matrix pair를 학습하는 방식으로 trainable parameter를 줄임
    • 즉, $i$-th feed forward layer $f_{i}(x)=\mathbf{W}_{i}x+\mathbf{b}_{i}$가 주어졌을 때, LoRA는 forward process를 다음과 같이 modify 함:
      (Eq. 3) $f_{i}(x)=(\mathbf{W}_{i}+\Delta\mathbf{W}_{i})x+\mathbf{b}_{i},\,\,\, \Delta\mathbf{W}_{i}=\mathbf{B}_{i}\mathbf{A}_{i}$
      - $\mathbf{W}_{i}\in\mathbb{R}^{d_{1}\times d_{2}}, \mathbf{b}_{i}\in\mathbb{R}^{d_{1}}$ : 각각 frozen weight, bias
      - $\mathbf{B}_{i}\in\mathbb{R}^{d_{1}\times r}, \mathbf{A}_{i}\in\mathbb{R}^{r\times d_{2}}$ : rank $r\ll \min(d_{1},d_{2})$에서의 trainable low-rank matrix

3. Method

  • LoRA-Whisper는 multilingual ASR task에서 language interference와 new language incorporation 문제를 해결하는 것을 목표로 함

- Problem Statement

  • Multilingual ASR의 경우 $n$ base language를 사용하고, language expansion은 $m$ new language를 사용함
    • 즉, $S_{1}=\{(\mathbf{X}_{i},\mathbf{Y}_{i}),i\in(1,n)\}, S_{2}=\{(\mathbf{X}_{j},\mathbf{Y}_{j}),j\in(n+1,n+m)\}$과 같이 나타낼 수 있음
      - $\mathbf{X}_{i},\mathbf{Y}_{i}$ : 각각 $i$-th language의 speech, transcription
    • Multilingual ASR은 $S_{1}$의 language interference를 완화하고 base language에 대한 ASR 성능 향상을 목표로 함
    • Language expansion은 $S_{1}$의 성능에 영향을 주지 않으면서 $S_{2}$를 multilingual model에 incorporate 하고 $S_{1},S_{2}$의 similarity를 활용하여 $S_{2}$에 대한 ASR 성능을 향상하는 것을 목표로 함

- Multilingual ASR

  • LoRA를 multilingual ASR에 적용하면 language interference를 완화할 수 있음
    • 먼저 각 language에 대해 language-specific LoRA matrix가 Whisper의 encoder, decoder에 append 됨
      - 이때 input이 $k$-th language의 speech이면 $k$-th LoRA module을 activate 하고 forward pass에서 Whisper와 해당 LoRA module을 pass 함
    • 특히 LoRA-Whipser에서 language에 대한 shared information은 original Whisper model 내에 존재하지만, language-specific information은 LoRA module에 store 됨
      - 이를 통해 language interference 문제를 avoid 하고, specific language에 대한 성능도 향상할 수 있음

LoRA-Whisper

- Language Expansion

  • LoRA는 language interference 완화 외에도, catastropic forgetting을 방지하여 language expansion을 지원함
    • 특히 language 간 similarity를 활용하면 new language에 대한 effective training이 가능함
    • 이를 위해 논문은 LoRA-warm startLoRA-MoE를 도입함
  • 여기서 각 method는 다음의 2-step을 따름:
    1. Step 1: Find the Most Similar Language
      • 먼저 new language를 incorporate 하기 위해 new language data에서 $M$ audio segment를 random sampling 함
        - 해당 audio는 language detection을 위한 Whisper model을 통해 process 되고, output은 모든 language에 대한 probability distribution을 제공함
      • 다음으로 multilingual ASR에서 사용된 language에 대해서만 focus 하여, 해당 language와 관련된 probability를 추출하고 normalize 함:
        - 즉, $p_{i}=[p_{i1},p_{i2},...,p_{in}],\,\,\,i=1,...,M$
      • 결과적으로 language incorporating 시, new language와 base language 간의 similarity를 계산하여 most similar language를 찾을 수 있음:
        (Eq. 4) $\text{sim}_{k}=\frac{\sum_{i=1}^{M}\mathbb{I}(k=\arg\max_{j}p_{ij})}{M},\,\,\, \text{for}\,\,k=1,...,n$
        - $\mathbb{I}$ : indicator function
        - $\text{sim}_{k}$ : $k$-th base language와 new language 간의 similarity
    2. Step 2: Continual Training on New Languages
      • Most similar language를 찾은 다음, base language information을 활용하여 new language에 대한 training을 facilitate 함
      • LoRA-warm start의 경우, new LoRA matrix는 most similar language의 LoRA matrix로 initialize 됨
      • LoRA-MoE의 경우, 2개의 LoRA module이 forward pass에서 select 되어 new language training을 지원함

LoRA-Whisper Language Expansion

4. Experiments

- Settings

  • Dataset : FLEURS, MLS
  • Comparisons : Whisper

Dataset

- Results

  • LoRA rank $r=32$일 때 최적의 성능을 달성함

LoRA Rank 별 성능

  • Multilingual ASR
    • LoRA-Whisper는 Whisper 보다 더 적은 training parameter로 더 우수한 multilingual ASR 성능을 달성함

Multilingual ASR

  • Language Expansion
    • New language data에 대해서도 우수한 WER을 달성함

Language Expansion

  • Ablation Study
    • Similar language의 LoRA matrix에 대해 new LoRA matrix를 initialize 할 때 최적의 성능을 달성할 수 있음

LoRA Initialization

 

반응형
댓글
최근에 올라온 글
최근에 달린 댓글
«   2025/08   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
Total
Today
Yesterday