티스토리 뷰

반응형

VoiceGuider: Enhancing Out-of-Domain Performance in Parameter-Efficient Speaker-Adaptive Text-to-Speech via Autoguidance


  • Speaker adaptive text-to-speech model에 paramter-efficient fine-tuning을 적용하는 경우, out-of-domain speaker에 대한 adaptation performance의 한계가 있음
  • VoiceGuider
    • Autoguidance로 reinforce 된 speaker adaptive text-to-speech model
    • Autoguidance strengthening strategy를 통해 out-of-domain data에 대한 robustness를 향상
  • 논문 (ICASSP 2025) : Paper Link

1. Introduction

  • Speaker-adaptive Text-to-Speech (TTS)는 unseen speaker에 대해 speech synthesis를 수행함
    • 이를 위해 VALL-E, P-Flow, VoiceBox와 같은 zero-shot approach나 AdaSpeech, UnitSpeech와 같은 few-shot adaptation을 고려할 수 있음
      1. Zero-shot adaptation은 additional training에 대한 필요성을 줄일 수 있지만, 일반적으로 상당한 training resource, model size를 요구함
      2. 반면 few-shot adaptation은 zero-shot method 보다 더 적은 training cost를 사용하면서도 우수한 합성 성능을 얻을 수 있음
        - 특히 VoiceTailor는 Low-Rank Adaptation (LoRA)와 diffusion decoder를 활용하여 efficient one-shot speaker-adaptive TTS가 가능함
    • BUT, 대부분의 one-shot TTS model은 well-constrained speech data에 의존하므로 real-world scenario의 in-the-wild reference에 robust 하지 않음
      결과적으로 pre-training distribution에서 deviate 하는 Out-of-Distribution (OOD) data에 대해 성능 저하를 보임

-> 그래서 OOD data에 대한 성능 저하를 완화한 parameter-efficient speaker-adaptive TTS model인 VoiceGuider를 제안

 

  • VoiceGuider
    • Parameter-efficient one-shot TTS model인 VoiceTailor를 backbone으로 사용
    • OOD data에 대한 adaptation 성능을 향상하기 위해, degraded model을 통해 generation을 guiding하는 Autoguidance를 도입
    • Degraded model candidate exploring을 통해 optimal autoguidance strategy를 identify

< Overall of VoiceGuider >

  • VoiceTailor를 기반으로 autoguidance를 도입한 parameter-efficient speaker-adaptive TTS model
  • 결과적으로 기존보다 뛰어난 OOD data adaptation 성능을 달성

2. Method

  • VoiceGuider는 parameter-efficient speaker adaptive TTS에서 OOD performance degradation 해결을 목표로 함

- Background

  • Denoising Diffusion
    • Diffusion model은 multiple step으로 data에 Gaussian noise를 add 하고 denoising process를 통해 data를 생성함
    • Speaker-adaptive TTS의 경우 text embedding c와 speaker embedding S가 주어졌을 때, 다음의 objective를 활용하여 noisy mel-spectrogram Xt에 add 된 noise ϵt를 recover 하도록 diffusion model을 training 함:
      (Eq. 1) L(θ)=Et,X0,ϵt[||1λtsθ(Xt|c,S)+ϵt||22]
      - sθ : diffusion model, λt : Grad-TTS의 pre-defined noise schedule, t[0,1] : noise level
  • Diffusion Guidance
    • Diffusion model은 Classifier-Free Guidance (CFG)를 사용하여 sample quality와 주어진 condition에 대한 likelihood를 개선할 수 있음
    • 각 generation step에서 CFG는 두 prediction 간의 extrapolation을 통해 model prediction을 modify 함:
      (Eq. 2) ˆsγ(Xt|c,S)=sθ(Xt|c,S)+γ(sθ(Xt|c,S)sθ(Xt|c,))
      - γ : guidance scale
    • 여기서 CFG는 undesired speaker를 avoid 하기 위해 unconditional distribution을 push away 하여 speaker S의 likelihood를 increase 함

- VoiceTailor: Parameter-Efficient Baseline

  • Pre-trained diffusion model이 주어졌을 때, VoiceTailor(Eq. 1)을 사용하여 new speaker에 adapt 하기 위해 parameter-efficient adapter인 LoRA를 training 함
    • Pre-trained diffusion model에서 attention module의 각 linear layer W0에 대해 VoiceTailor는 BRd×r,ARr×k인 new matrix ΔW=BA만 training 함
      - 즉, scale을 α라고 할 때, W=W0+αBA
    • 결과적으로 VoiceTailor는 small rank r을 choice 하여 whole parameter의 0.25%만 학습함
      - 이를 통해 small parameter 만으로도 fine-tuning baseline인 UnitSpeech 수준의 speaker adaptation 성능을 달성할 수 있음
    • BUT, VoiceTailor는 pre-trained domain과 close 한 in-domain speaker에 대해서는 strong performance를 보이지만 OOD speaker에 대해서는 낮은 성능을 보임

- VoiceGuider: Eliminating LoRA Error with Autoguidance

  • VoiceTailor는 LoRA의 limited capacity로 인해 OOD speaker에 대한 prediction error가 발생하고, 해당 error는 diffusion model의 iterative generation process를 통해 amplify 되므로 성능이 저하될 수 있음
    - 따라서 논문은 CFG가 undesired sample을 steer away 한다는 점을 활용하여 speaker-adaptive TTS에서 LoRA error를 eliminate 함
  • Autoguidance
    • Diffusion guidance에서 strong conditional model과 unconditional model은 correlated error를 share 함
      - 경험적으로 unconditional model error가 over-emphasize 되므로, CFG의 extrapolation을 통해 해당 error를 eliminate 할 수 있음
    • 이때 unconditional model s1(Xt|c,S) 대신 inferior model s0(Xt|c,S)로 strong model s1(Xt|c,S)를 guide 하는 autoguidance와 CFG를 combine 하면:
      (Eq. 3) ˆsγ(Xt|c,S)=s1(Xt|c,S)+γS(s1(Xt|c,S)s1(Xt|c,))Speaker likelihood+γa(s1(Xt|c,S)s0(Xt|c,S))LoRA error
      - γS,γa : 각각 CFG, autoguidance의 scale
      - 결과적으로 speaker likelihood를 amplify 하고 LoRA error를 줄이는 것이 가능함
    • 추가적으로 speaker-adaptive TTS에 대한 optimal autoguidance strategy를 identify 하기 위해, inferior model s0에 대한 다음의 candidate를 고려함:
      1. Shorter Training Time
        - s1에 비해 shorter training time을 소모한 model을 사용하여 s0를 구성함
        - s1의 intermediate checkpoint에서 derive 될 수 있으므로, inferior model을 쉽게 얻을 수 있음
      2. Smaller LoRA Rank
        - s1 보다 smaller LoRA rank size를 사용하여 s0를 구성함
        - VoiceTailor를 기준으로, 2,4와 같은 smaller rank는 16 rank size에 비해 inferior 함
  • Limited Guidance Interval
    • Autoguidance는 generation process의 certain interval에서 detrimental 함
      - 특히 high noise level에서 guidance는 data distribution과 blindly push away 되므로 mode dropping과 sample quality degrade가 발생함
    • 경험적으로 t[0.6,1.0] range에서 guidance가 detrimental하므로, 해당 range에서 CFG와 autoguidance를 모두 disable하여 error를 줄이고 higher speaker similarity를 달성할 수 있음
    • 결과적으로 guidance scale γS,γa:
      (Eq. 4) γ(t)={γ,ift(tlo,thi]0,otherwise
      - Disabled interval에서 autoguidance의 inferior model s0는 fine-tuned model s1과 equivalent하다고 볼 수 있음

Overall of VoiceGuider

3. Experiments

- Settings

Dataset

- Results

  • Problem Statement
    • In-domain, OOD, in-the-wild OOD의 3가지 dataset에 대한 SECS를 비교해 보면, data domain에서 멀어질수록 performance gap이 증가함

Problem Statement

  • Model Comparison
    • In-the-Wild OOD data인 GigaSpeech에 대해, VoiceGuider는 pre-training에 heavy data를 사용하는 XTTS, CosyVoice와 비슷한 preference를 달성함

Model 성능 비교

  • Ablation Study
    • 먼저 100 training iteration을 사용할 때 최적의 성능을 달성할 수 있음
    • LoRA rank r 측면에서 smaller rank는 meaningful variance를 보이지 않음
    • Autoguidance scale은 1일 때 최적의 성능을 보임
    • Upper bound가 tighten 하면 adaptation performance가 개선되지만, lower bound가 증가하면 CER은 저하됨

Ablation Study

 

반응형
댓글
최근에 올라온 글
최근에 달린 댓글
«   2025/04   »
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
Total
Today
Yesterday