티스토리 뷰
Paper/TTS
[Paper 리뷰] Grad-StyleSpeech: Any-Speaker Adaptive Text-to-Speech Synthesis with Diffusion Models
feVeRin 2024. 2. 9. 12:43반응형
Grad-StyleSpeech: Any-Speaker Adaptive Text-to-Speech Synthesis with Diffusion Models
- Any-speaker adaptive Text-to-Speech 작업은 여전히 target speaker의 style을 모방하기에 만족스럽지 못함
- Grad-StyleSpeech
- Diffusion model을 기반으로 하는 any-speaker adaptive Text-to-Speech model
- Few-second reference speech가 주어지면 target speaker와 유사한 음성을 생성하는 것을 목표로 함
- 논문 (ICASSP 2023) : Paper Link
1. Introduction
- Text-to-Speech (TTS)는 single speaker에서 multiple speaker로 확장되고 있음
- 특히 reference 음성이 주어지면 any-speaker의 음성을 합성할 수 있는 any-speaker adaptive TTS에 중점을 둠
- Any-speaker adaptive TTS는 target speaker에 대한 few sample 만을 고려하여 target speaker와 유사한 음성을 합성하는 것을 목표로 함
- Any-speaker adaptive TTS를 위한 이전 연구들을 보면,
- 주로 transcribed (supervised) sample을 활용하여 TTS model을 fine-tuning 하는 방식을 사용
-> BUT, supervised sample을 얻기 어렵고, parameter를 업데이트하는데 많은 비용이 필요함 - 그에 비해 zero-shot 방식은 unseen speaker에 대한 fine-tuning 단계가 굳이 필요하지 않음
-> BUT, generative modeling으로 인해 unseen speaker에 대한 similarity가 낮다는 단점이 있음
- 주로 transcribed (supervised) sample을 활용하여 TTS model을 fine-tuning 하는 방식을 사용
-> 그래서 zero-shot any-speaker TTS를 위해 score-based diffusion model을 활용하는 Grad-StyleSpeech를 제안
- Grad-StyleSpeech
- Target speaker의 style을 고려하기 위해 style-based generative model을 도입
- Hierarchical transformer encoder를 통해 reverse diffusion process에서 활용 가능한 representative prior noise를 생성
- 이를 통해 input phoneme을 embedding할 때 target speaker의 style을 반영 가능
< Overall of Grad-StyleSpeech >
- Zero-shot 방식을 기반으로 any-speaker TTS를 수행
- Score-based diffusion model을 활용하고, any-speaker adaptive setting에 대응하는 hierarchical transformer encoder를 도입
- 결과적으로 기존의 다른 any-speaker TTS 모델들보다 뛰어난 성능을 달성
2. Method
- Speaker adaptive TTS는 target speaker의 text transcription, reference speech를 바탕으로 음성을 생성함
- 이를 위해 mel-spectrogram과 같은 audio feature를 합성해야 함
- Text
은 phoneme으로 구성되고, reference speechx=[x1,...,xn] 이라 하자Y=[y1,...,ym]∈Rm×80
- 이때 TTS model의 목표는 ground-truth speech 를 생성하는 것˜Y - Grad-StyleSpeech는 3부분으로 구성됨
- Reference speech를 style vector에 반영하는 Mel-Style Encoder
- Text와 style vector로 condition된 representation을 생성하는 Hierarchical Transformer Encoder
- Denoising step에 따라 mel-spectrogram을 생성하는 Diffusion Model

- Mel-Style Encoder
- Mel-style encoder를 사용하여 reference speech를 latent style vector에 embedding 함
- 수식적으로는
으로 나타낼 수 있음s=hψ(Y)
- : style vectors∈Rd′
- :hψ 에 의해 parameterize 된 mel-style encoderψ - 구조적으로 mel-style encoder는
- Spectral/temporal processor, Transformer layer, Temporal average pooling으로 구성됨
- 수식적으로는
- Score-based Diffusion Model
- Diffusion model은 unit Gaussian 분포
를 따르는 prior noise 분포에서 sampling 된 noise를 점진적으로 denoising 하여 sample을 생성N(0,I)
- 이때 Grad-StyleSpeech는 Markov chain 대신 Grad-TTS가 채택한 SDE 기반의 denoising process를 활용
- Forward Diffusion Process
- Forward diffusion process는 noise 분포
에서 얻어진 noise를, sample 분포N(0,I) 에서 가져온 sample에 점진적으로 추가하는 과정Y0∼p0 - Forward diffusion process에 대한 differential equation을 다음과 같이 정의하자:
dYt=−12β(t)Ytdt+√β(t)dWt
- : continuous time step,t∈[0,T] : noise scheduling function,β(t) : standard Wiener processWt - 이때 Grad-TTS는 data-driven prior noise 분포
에서 denoising을 수행할 것을 권장:N(μ,I)
(Eq. 1)dYt=−12β(t)(Yt−μ)dt+√β(t)dWt
- : neural network의 text/style-conditioned representationμ - 그러면 Gaussian 분포를 따르는 transition kernel
는 tractable 하므로:p0t(Yt|Y0)
(Eq. 2)p0t(Y|Y0)=N(Yt;γt,σ2t),σ2t=I−e−∫t0β(s)dsY0 γt=(I−e−12∫t0β(s)ds)μ+e−12∫t0β(s)dsY0
- Forward diffusion process는 noise 분포
- Reverse Diffusion Process
- Reverse diffusion process는
의 noise를pT 의 data sample로 점진적으로 invert 하는 과정p0 - 따라서 (Eq. 1)에 대한 reverse process는 reverse-time SDE로써:
dYt=[−12β(t)(Yt−μ)−β(t)∇Ytlogpt(Yt)]dt+√β(t)d˜Wt
- : reverse Wiener process,˜Wt : data 분포∇Ytlogpt(Yt) 의 score functionpt(Yt) - Reverse SDE를 풀기 위해 numerical SDE solver를 활용하여 noise
로부터 sampleYt 를 생성할 수 있음Y0
- 이때 exact score를 얻기가 어렵기 때문에 neural network 를 이용하여 score를 추정ϵθ(Yt,t,μ,s)
- Reverse diffusion process는
- Hierarchical Transformer Encoder
- Diffusion model을 활용하는 multi-speaker TTS에서
는 중요한 역할을 함μ - 따라서 encoder가 3-level hierarchy를 가지도록 구성
- 먼저 text encoder
는 phoneme sequence의 contextual representation을 위해 multiple transformer block을 통해 input text를 hidden representation으로 mapping:fλ H=fλ(x)∈Rn×d - 이후 input text
와 target speechx 사이의 alignment를 계산하고, text encoder의 output length를 target speech의 length로 regulate 하는 unsupervised alignment learning framework를 적용:Y Align(H,x,Y)=˜H∈Rm×d
- 추가적으로 각 phoneme의 duration을 예측하기 위해 duration predictor를 도입 - 마지막으로 speaker-adaptive hidden representation을 얻기 위해 style-adaptive transformer block을 통해 length-regulated embedding sequence를 encoding:
μ=gϕ(˜H,s)
- : style vectors
- 먼저 text encoder
- 구조적으로는, Style-Adaptive Layer Normalization (SALN)을 통해 style-adaptive encoder의 transformer block에 style information을 반영
- 이를 통해 hierarchical transformer encoder는 input text 의 linguistic content와 style vectorx 의 style information을 반영한 hidden representations 를 얻음μ
- 이렇게 얻어진 는 denoising diffusion model의 style-conditioned prior noise 분포를 구성하는데 사용됨μ - 이때 Grad-TTS와 마찬가지로 prior loss
를 적용Lprior=||μ−Y||22
- 와μ 간의Y distance를 최소화하는 방식으로 최적화됨L2
- 따라서 encoder가 3-level hierarchy를 가지도록 구성
- Training
- Score estimation network
를 training 하기 위해ϵθ - Tractable transition kernel
에 대한 marginalization의 expectation을 계산:p0t(Yt|Y0)
(Eq. 3)Ldiff=Et∼U(0,T)EY0∼p0t(Yt|Y0)||ϵθ(Yt,t,μ,s)−∇Ytlogp0t(Yt|Y0)||22
- : style vector,s : (Eq. 2)의 Gaussian 분포에서 sample 되는 값Yt - 이후 exact score computation은:
(Eq. 4)Ldiff=Et∼U(0,T)EY0∼p0(Y0)Eϵ∼N(0,I)||ϵθ(Yt,t,μ,s)+σ−1tϵ||22
- : (Eq. 1) 참고σt=√1−e−∫t0β(s)ds - 따라서 aligner와 duration predictor training에 대한
까지 결합한 최종 training objective는:Lalign L=Ldiff+Lprior+Lalign
- Tractable transition kernel
3. Experiments
- Settings
- Dataset : LibriTTS, VCTK
- Comparisons : YourTTS, Grad-TTS, Meta-StyleSpeech, AdaSpeech
- Results
- Unseen speaker에 대한 zero-shot adaptation 성능을 비교해 보면
- SECS, CER 측면에서 Grad-StyleSpeech의 성능이 가장 우수한 것으로 나타남
- 특히 Grad-StyleSpeech는 Grad-TTS 보다 훨씬 뛰어난 성능을 보임
- 이는 any-speaker adaptation 성능이 diffusion model 뿐만 아니라 hierarchical transformer encoder에서도 파생된다는 것을 의미

- MOS 측면의 주관적 합성 품질 비교에서도 Grad-StyleSpeech가 가장 우수한 성능을 보임

- 합성된 음성에 대한 mel-spectrogram을 확인해 보면,
- Grad-StyleSpeech는 diffusion model을 활용함으로써 high-frequency component를 detail 하게 모델링함
- 결과적으로 over-smoothing 문제를 극복 가능

- Grad-StyleSpeech를 unseen speaker에 대해 fine-tuning 했을 때의 결과를 살펴보면,
- Diffusion model과 Style-adaptive encoder를 100 step으로 fine-tuning 했을 때 AdaSpeech 보다 우수한 성능을 달성
- 이러한 fine-tuning은 speaker similarity를 확보하는데 효과적인 것으로 나타남

반응형
'Paper > TTS' 카테고리의 다른 글
댓글