티스토리 뷰
Paper/TTS
[Paper 리뷰] AILTTS: Adversarial Learning of Intermediate Acoustic Feature for End-to-End Lightweight Text-to-Speech
feVeRin 2024. 7. 29. 09:13반응형
AILTTS: Adversarial Learning of Intermediate Acoustic Feature for End-to-End Lightweight Text-to-Speech
- 기존의 text-to-speech는 mel-spectrogram과 같은 pre-defined feature에 의존하여 intermediate latent representation을 학습하므로 생성 품질의 한계가 있음
- AILTTS
- Latent representation에 prosody embedding을 추가하여 합성 품질을 향상
- Training 중에 mel-spectrogram에서 reference prosody embedding을 추출하고, 추론 시에는 Generative Adversarial Network를 사용하여 text에서 해당 embedding을 추정
- 논문 (INTERSPEECH 2023) : Paper Link
1. Introduction
- Text-to-Speech (TTS)는 크게 autoregressive (AR), non-autoregressive (non-AR) 방식으로 나눌 수 있음
- AR 방식은 고품질 합성이 가능하지만 parallel manner로 동작하기 어렵기 때문에 추론 속도가 느림
- 반면 non-AR 방식은 parallel 합성이 가능하므로 빠른 추론 속도를 가짐
- 대표적으로 FastSpeech2는 mel-spectrogram과 같은 intermediate feature를 활용하여 acoustic information을 학습함
- BUT, mel-spectrogram에 충분한 speech variance information을 반영하기 어려우므로 합성 품질의 한계가 있음
-> 그래서 text-to-waveform mapping에 필요한 variance information을 제공할 수 있는 lightweight TTS 모델인 AILTTS를 제안
- AILTTS
- Speech variance를 represent 하는 prosody-related acoustic feature를 추출하기 위해 prosody encoder를 도입
- Prosody encoder의 output을 text-to-waveform conversion process를 위해 condition 되는 reference prosody embedding으로 구성함 - 추론 시에는 text input에서 reference prosody embedding을 추정하는 prosody predictor를 채택
- 이때 estimation power를 향상하기 위해 Generative Adversarial Network (GAN)을 prosody predictor에 적용함
- Speech variance를 represent 하는 prosody-related acoustic feature를 추출하기 위해 prosody encoder를 도입
< Overall of AILTTS >
- Prosody-related acoustic embedding을 conditioning 하여 single-stage TTS에 speech variance를 효과적으로 반영
- Text에서 reference prosody embedding을 효과적으로 추정할 수 있도록 adversarial training을 도입
- 결과적으로 prosody embedding을 통해 빠른 수렴 뛰어난 합성 품질을 달성
2. Method
- Overview
- AILTTS는 LiteTTS를 baseline으로 하여 phoneme encoder, prosody encoder (posterior), prosody predictor (prior), internal aligner, auxiliary predictor, vocoder로 구성됨
- Training process에서는 prosody encoder output (key, value)와 phoneme encoder output (query)에 attention을 적용하여 phoneme-scale prosody embedding
을 얻음hpr - 이후 internal aligner를 사용하여 joint embedding
을 mel-spectrogram으로 time-align 함hph+hpr - 최종적으로 얻어진 aligned embedding
를 conditioning 한 다음, vocoder를 통해 waveform을 생성함I
- Training process에서는 prosody encoder output (key, value)와 phoneme encoder output (query)에 attention을 적용하여 phoneme-scale prosody embedding

- Prosody Predictor with Conditional Discriminator
- Prosody predictor는 input phonetic embedding
로부터 target prosody embeddinghph 을 예측하는 것을 목표로 함hpr - 이때 논문은 prosody embedding의 dynamic nature를 반영하기 위해 discriminator를 활용함
- 해당 discriminator는 prosody predictor를 generator로 하여 phonetic information을 condition으로 target prosody embedding
과 predicted embeddinghpr 을 distinguish 함˜hpr
- Phonetic embbeding 를 condition으로 하는 projection-based conditional discriminator를 사용hph - 생성된 feature map과 target 간에 feature matching loss를 적용하여 GAN-based training을 stabilize 함
- 여기서 feature map은 PostConv1D layer 이전의 모든 1D convolution layer의 output으로 정의됨
- 1개의 PreConv1D layer와 나머지 6개 1D convolution block으로부터 총 7개의 feature map을 추출함
- 해당 discriminator는 prosody predictor를 generator로 하여 phonetic information을 condition으로 target prosody embedding
- 논문은 discriminator를 설계하기 위해 2가지의 additional trick을 적용함
- 먼저 phoneme domain 대신 aligned domain에서 2개의 prosody embedding을 distinguish 하는 discriminator를 사용
- Mel-spectrogram의 timing information으로 align 된 가 vocoder의 input으로 사용되기 때문I
- 이때 internal aligner에서 추정된 duration을 활용하여 phoneme-wise embedding의 time scale을 mel-spectrogram의 time scale에 align 함 - GPU memory constraint로 인해 vocoder와 동일한 receptive field를 가지도록 discriminator를 구축
- 먼저 phoneme domain 대신 aligned domain에서 2개의 prosody embedding을 distinguish 하는 discriminator를 사용
- 최종적으로 Least-Squares GAN의 loss를 기반으로 reconstruction loss
, feature matching lossLrecon 을 포함한 prosody predictor loss를 정의:Lfm
(Eq. 1)LG=E(˜Hpr,Hpr)[(D(˜Hpr,Hpr)−1)2]+Lrecon+Lfm
(Eq. 2)LD=E(Hpr,˜Hpr,Hph)[(D(Hpr,Hph)−1)2+(D(˜Hph,Hph))2]
-Lrecon=||˜Hpr−Hpr||1,Lfm=∑7i=1||˜Fipr−Fipr||1
- : mel-spectrogram의 time-scale에 mapping 된 embeddingH(⋅)
- : discriminator의Fi -th feature mapi
- 이때 논문은 prosody embedding의 dynamic nature를 반영하기 위해 discriminator를 활용함

- Prosody-Conditioned Internal Aligner
- External aligner를 사용하지 않고 phoneme, mel-spectrogram 간의 time-alignment를 학습하기 위해 likelihood-based internal aligner를 채택함
- 이때 encoded feature 간의
distance로 계산된 probability matrix에 대해 monotonic alignment의 likelihood를 최대화함L2
- 이후 probability matrix에서 most probable path를 select 하고, phoneme duration (binary matrix)를 얻음
- 두 matrix 간의 gap은 KL-divergence를 최소화하여 reduce 됨
- AILTTS의 aligner는 joint embedding
을 phonetic feature로, mel-spectrogram을 acoustic feature로 사용함hph+hpr
- 에는 attention module에 의해 phoneme-level로 mapping 된 local acoustic information이 포함되어 있으므로hpr 만 사용하는 것보다 alignment를 학습하는 것이 쉬워짐hph - 논문에서는 FastSpeech2를 따라 stop-gradient를 적용하여 phonetic embedding
를 accept 하는 duration predictor를 joint training 함hph
- 결과적으로 해당 aligner를 통해 alignment accuracy를 향상하여 duration predictor가 duration을 정확하게 추정하도록 함
- 이때 encoded feature 간의
- Final Training Loss
- 전체적인 training loss는:
(Eq. 3)Ltotal=Lvar+Lalign+Lpred+Lvoc+Laux
- : prosody encoder의 output에 적용되는 pitch/energy prediction lossLvar
- : duration predictor를 포함한 internal aligner에 대한 lossLalign
- : 각각 prosody predictor, vocoder에 대한 lossLpred,Lvoc
- : target mel-spectrogram과 auxiliary predictor의 output으로 얻어지는 predicted mel-spectrogram 간의Laux lossL1 - Auxiliary Predictor
- Aligned embedding
에 acoustic information을 추가적으로 제공하기 위해, input이I 인 auxiliary predictor를 도입함I - 해당 architecture는:
- PostConv1D layer의 output channel 수는 mel-spectrogram dimension으로 설정
- 모든 residual 1D convolutional block의 마지막 stage에 layer normalization을 적용
- 이때 receptive field는 vocoder의 receptive field와 동일하므로 auxiliary predictor는 vocoder input
에 acoustic information을 효율적으로 제공할 수 있음I
- 특히 auxiliary predictor는 training stage에서만 사용되므로 parameter 수와 complexity는 증가하지 않음
- Aligned embedding
3. Experiments
- Settings
- Results
- 전체적으로 AILTTS는 LiteTTS 수준의 적은 parameter 수와 빠른 추론 속도를 가지면서 가장 높은 MOS를 달성함

- Ablation study 측면에서 discriminator와 aligner를 제거하면 성능 저하가 발생함

- 특히
을 aligner input으로 사용하는 경우 early stage 동안 기존보다 빠르게 수렴함hph+hpr

반응형