티스토리 뷰
Paper/TTS
[Paper 리뷰] VoiceTailor: Lightweight Plug-In Adapter for Diffusion-based Personalized Text-to-Speech
feVeRin 2024. 10. 3. 10:02반응형
VoiceTailor: Lightweight Plug-In Adapter for Diffusion-based Personalized Text-to-Speech
- Pre-trained diffusion-based model에 personalized adapter를 결합하여 parameter-efficient speaker adaptive Text-to-Speech를 수행할 수 있음
- VoiceTailor
- Parameter-Efficient Adaptation을 위해 Low-Rank Adaptation을 활용하고 adapter를 pre-trained diffusion decoder의 pivotal module에 통합
- Few parameter 만으로 강력한 adaptation을 달성하기 위해 guidance technique과 speaker information strengthening을 채택
- 논문 (INTERSPEECH 2024) : Paper Link
1. Introduction
- Adaptive Text-to-Speech (TTS)를 위해 zero-shot 방식과 one-shot 방식을 고려할 수 있음
- VoiceBox, VALL-E, P-Flow와 같은 zero-shot 방식은 speaker adaptation을 위해 reference audio에 대한 추가적인 fine-tuning 과정이 필요하지 않다는 장점이 있음
- BUT, 높은 speaker similarity를 달성하기 위해 일반적으로 training 중에 대용량의 speech corpus가 필요함 - 한편으로 AdaSpeech와 같은 one-shot 방식은 target speaker에 대한 few reference speech를 통해 pre-trained TTS model을 fine-tuning 하여 personalized TTS를 수행함
- 이때 target speaker에 대한 efficient adaptation을 위해 parameter subset을 활용하거나 Low-Rank Adaptation (LoRA)를 적용하거나, prefix-tuning 등을 사용하여 adapter의 parameter를 fine-tuning 할 수 있음
- BUT, 해당 방식은 decoder model의 한계로 인해 speaker similarity가 제한적이고, fine-tuning 과정에서도 1분 이상의 긴 speech data가 필요하다는 단점이 있음
- 한편으로 Guided-TTS, UnitSpeech와 같이 fine-tuning-based personalized generation을 위해 DDPM을 기반으로 diffusion-based one-shot TTS model을 구축할 수 있음
- 해당 방식들은 diffusion model의 adaptation 성능을 기반으로 5~10초의 짧은 reference speech 만으로도 높은 speaker similairty를 달성 가능함
- BUT, 기존 one-shot 방식과는 달리 모든 model parameter를 fine-tuning 하므로 parameter-inefficiency가 존재
- VoiceBox, VALL-E, P-Flow와 같은 zero-shot 방식은 speaker adaptation을 위해 reference audio에 대한 추가적인 fine-tuning 과정이 필요하지 않다는 장점이 있음
-> 그래서 pre-trained diffusion-based TTS model에서 parameter-subset 만을 fine-tuning 하는 parameter-efficient adaptive TTS model인 VoiceTailor를 제안
- VoiceTailor
- Pre-trained diffusion-based model을 기반으로 UnitSpeech의 fine-tuning method를 활용
- 이때 fine-tuning 전후의 module weight에 대한 change ratio를 분석하여 attention module의 효과를 검증 - 결과적으로 attention module에 LoRA를 적용하고 adaptation을 위해 inject된 low-rank matrix 만을 fine-tuning
- 추가적으로 parameter-efficient adaptation stage에서 최적 hyperparameter 선택과 inference stage에서의 guidance technique을 적용해 speaker information을 향상
- Pre-trained diffusion-based model을 기반으로 UnitSpeech의 fine-tuning method를 활용
< Overall of VoiceTailor >
- Diffusion-based speaker adaptive TTS를 위해 LoRA를 적용
- 추가적으로 LoRA module과 classifier-free guidance를 활용하여 speaker information을 향상
- 결과적으로 single GPU에서 전체 parameter의 0.25%만을 활용하여 speaker adaptation cost를 크게 절감
2. Method
- VoiceTailor는 기존 diffusion-based one-shot TTS의 parameter-inefficiency를 해결하기 위해 LoRA를 활용한 personalized TTS model을 구축하는 것을 목표로 함
- 먼저 VoiceTailor는 LoRA fine-tuning과 reference audio에서 추출한 speaker embedding을 통해 target speaker characteristic을 capture 함
- 추가적으로 논문은 UnitSpeech의 weight change ratio를 분석하여 speaker information을 향상함
- 결과적으로 VoiceTailor는 최적의 LoRA weight를 injection 하고 guidance strategy를 적용함으로써, 전체 parameter의 0.25%만을 fine-tuning 하여 personalized TTS를 달성함

- UnitSpeech
- 논문은 UnitSpeech를 기반으로 one-shot TTS를 수행함
- 먼저 UnitSpeech는 short untranscribed speech sample을 기반으로 pre-trained multi-speaker diffusion-based TTS model을 fine-tuning 해 personalized TTS model을 구성함
- 이때 multi-speaker diffusion-based TTS model은 Grad-TTS를 기반으로 mel-spectrogram
를 Guassian noiseX0 로 변환하는 forward process를 정의함XT∼N(0,I)
- 해당 forward process는 pre-defined noise schedule
와 Wiener processβt 를 통해 정의됨Wt - 즉, forward process에서 time step
의 noisy mel-spectrogramt∈[0,T] 는:Xt
(Eq. 1)dXt=−12Xtβtdt+√βtdWt,t∈[0,1]
(Eq. 2)Xt=√e−∫t0βsdsX0+√1−e−∫s0βsdsϵt
- : standard normal distribution에서 sampling 된 noiseϵt
- 해당 forward process는 pre-defined noise schedule
- Forward process의 reverse trajectory를 따라 mel-spectrogram을 sampling 하려면 text encoder output
와 pre-trained speaker encoder에서 추출된 speaker embeddingcy 로 condition 된 scoreeS 를 사용해야 함s(Xt|cy,eS) - 여기서 UnitSpeech의 diffusion-based decoder
는 conditional scoreθ 를 예측하도록 training 됨sθ(Xt|cy,eS) - 그러면 decoder pre-training에 대한 loss function과 sampling을 위한 predicted score는:
(Eq. 3)L=Et,X0,ϵt[||√1−e−∫t0βsdssθ(Xt|cy,eS)+ϵt||22]
(Eq. 4)Xt−Δt=Xt+βt(12Xt+sθ(Xt|cy,eS))Δt+√βtΔtzt
- : Gaussian Noisezt∼N(0,I)
- 여기서 UnitSpeech의 diffusion-based decoder
- 이를 기반으로 UnitSpeech는 pre-trained diffusion decoder를 untranscribed speech로 fine-tuning 하는 unit encoder를 도입해 text input을 없이 speaker adaptation이 가능하게 함
- 여기서 Unit encoder는 phonetic information을 포함하는 self-supervised speech representation인 acoustic unit을 input으로 하여 text encoder를 대체함
- 즉, UnitSpeech는 text encoder를 해당 pluggable unit encoder로 대체하고 pre-trained decoder와 동일한 objective로 training 한 다음, reference audio와 unit을 통해 fine-tuning 하여 speaker adaptation을 수행함
- 추가적으로 UnitSpeech는 diffusion model에서 conditioning information을 향상하는 classifier-free guidance를 text encoder output
에 결합해 pronunciation accuracy를 개선함cy - 이를 확장하여 VoiceTailor는 classifier-free guidance를 speaker embedding
에도 적용함eS - 즉, multi-speaker TTS model을 pre-training 하는 동안 learnable unconditional embedding
를 도입하고 25%의 확률로eϕ 를eϕ 로 대체하도록 함eS
- 이를 확장하여 VoiceTailor는 classifier-free guidance를 speaker embedding
- Parameter-Efficient Speaker Adaptation
- VoiceTailor는 speaker adaptation 과정에서 모든 parameter를 fine-tuning 하는 inefficiency를 해결하기 위해 parameter-efficient adaptation method인 LoRA를 채택함
- LoRA는 trainable low-rank decomposed matrix를 결합하여 linear layer의 weight matrix를 fine-tuning 함
- Linear layer의 pre-trained weight
가 주어지면 LoRA는W∈Rd×k 로 augment 함W+α⋅ΔW=W+α⋅BA - 여기서 parameter
는ΔW:= 가 frozen 된 상태에서 fine-tuning 됨
- : adapter matrix의 scaling factor, : rank - 결과적으로 LoRA는 original matrix의 dimension
에 비해 rank 을 상당히 작은 값으로( ) 사용함으로써 더 적은 parameter로 adaptation을 수행함
- 이때 pre-trained model parameter를 , fine-tuned adapter 가 있는 model parameter를 로 나타냄
- Linear layer의 pre-trained weight
- UnitSpeech를 기반으로 모든 decoder parameter를 fine-tuning 해 speaker adaptation을 수행한 다음, 어떤 module이 speaker adaptation에서 중요하게 사용되는지 분석할 수 있음
- 이를 위해 논문은 pre-training 전후의 각 module
에 대한 weight change ratio 를 계산함 - 결과적으로 UnitSpeech의 diffusion decoder 내에서 attention module과 다른 module 간의 평균 change ratio를 계산해 보면 각각 0.0282와 0.0050으로 얻어짐
- 즉, attention module이 one-shot diffusion TTS model의 adaptation에서 가장 중요하게 사용됨
- 이를 위해 논문은 pre-training 전후의 각 module
- 따라서 VoiceTailor는 attention module에 LoRA를 inject 하여 speaker adaptation을 위한 parameter를 최적화함
- LoRA는 trainable low-rank decomposed matrix를 결합하여 linear layer의 weight matrix를 fine-tuning 함
- Speaker Information Strengthening Strategies
- Fine-tuned adapter는 pre-trained multi-speaker TTS model과 결합되어 personalized TTS를 구성할 수 있음
- VoiceTailor에서 speaker information은 speaker embedding
와 pluggable LoRA weight 의 2가지 form으로 제공됨
- 이때 parameter 감소로 인한 speaker adaptation 성능 저하를 완화하기 위해, target speaker information을 strengthen 하는 sampling method를 활용 가능 - 따라서 논문은 LoRA의 scaling factor
를 fine-tuning 중에 사용되는 값보다 큰 값으로 설정하고, classifier-free guidance를 적용함
- VoiceTailor에서 speaker information은 speaker embedding
- Adjustment of LoRA Scaling Factor
는 speaker adaptation을 위해 pre-trained model에 adapter가 add 되는 intensity를 control 함- 여기서 training 중에 사용되는 것보다 generation 중에 더 큰
를 사용함으로써 low-rank adapter에 stronger speaker information을 제공할 수 있음
- Classifier-Free Guidance
- VoiceTailor에서 speaker information은
2가지로 구성되므로 각 source에 대해 classifier-free guidance를 적용함 - 먼저 fine-tuned model
의 score가 주어졌을 때, unconditional score 에 대한 다음 3가지 candidate를 고려할 수 있음: : 가 제공하는 speaker information을 유지하면서 를 unconditional embedding 로 대체하여 얻어짐 : Pre-trained model 에서 를 제거하고 를 input으로 유지하여 얻어짐 : 의 모든 speaker information이 없는
- 그러면 modified score
는 앞선 unconditional score를 기반으로 다음의 classifier-free guidance를 적용하여 계산됨:
(Eq. 5)
- : additional speaker information의 intensity를 결정하는 gradient scale - 결과적으로 VoiceTailor는
를 채택하여 sample을 생성함
- 와 에 대한 3가지 candidate audjusting과 를 통한 classifier-free guidance 외의 방식은 speaker adaptation에 악영향을 주기 때문
- VoiceTailor에서 speaker information은
3. Experiments
- Settings
- Dataset : LibriTTS
- Comparisons : UnitSpeech, XTTS, YourTTS
- Results
- Model Comparison
- 전체적으로 VoiceTailor가 가장 우수한 성능을 보임
- 특히 VoiceTailor는 0.25%의 parameter만 fine-tuning 하여 UnitSpeech 수준의 speaker similarity를 달성할 수 있음

- Parameter-Efficient Fine-Tuning
- Attention이 아닌 linear layer에 trainable low-rank matrix를 추가해도 pronunciation accuracy와 speaker similarity는 개선되지 않음
- 즉, attention module이 speaker adapatation에서 가장 중요함 - Fine-tuning 중
의 scale은 에 의해 결정됨
- 과 같이 너무 작은 값을 사용하지 않는 한 비슷한 수준의 speaker similairty를 달성 가능 와 같은 작은 LoRA rank는 SECS를 저하하는 대신 39K의 parameter로 동작하는 VoiceTailor를 얻을 수 있음
- Attention이 아닌 linear layer에 trainable low-rank matrix를 추가해도 pronunciation accuracy와 speaker similarity는 개선되지 않음

- Speaker Information Strengthening Method
- Speaker embedding
에 기반한 classifier-free guidance를 제외하면, 다른 method는 speaker adaptation 성능을 저하함 - 특히 fine-tuning에 사용된 값보다 LoRA scaling factor
를 증가시키면 CER, SECS가 모두 저하됨
- 따라서 논문은 인 speaker embedding guidance만 사용함
- Speaker embedding

반응형