티스토리 뷰
Paper/TTS
[Paper 리뷰] SANE-TTS: Stable and Natural End-to-End Multilingual Text-to-Speech
feVeRin 2024. 6. 4. 10:24반응형
SANE-TTS: Stable and Natural End-to-End Multilingual Text-to-Speech
- Stable 하고 natural 한 end-to-end multilingual text-to-speech 모델이 필요함
- SANE-TTS
- Multilingual synthesis의 naturalness를 향상하기 위해 domain adversarial training을 도입
- 추가적으로 speaker regularization loss를 적용하여 duration predictor의 speaker embedding을 zero-vector로 대체해 cross-lingual synthesis를 stablize 함
- 논문 (INTERSPEECH 2021) : Paper Link
1. Introduction
- Multilingual Text-to-Speech (TTS)는 single model을 사용하여 multiple language의 음성을 합성하는 것을 목표로 함
- Naive 하게 multilingual speech dataset을 사용하여 training 할 수 있지만, 해당 dataset을 확보하는 것은 어렵기 때문에 근본적인 한계가 있음
- 따라서 일반적으로 monolingual corpora로 학습시켜 cross-lingual synthesis를 수행하는 방식으로 multilingual TTS 모델을 구축함 - 이때 기존 multilingual TTS 모델은 주로 Tacotron을 기반으로 하지만, attention에 기반한 autoregressive 동작으로 인해 다음의 한계점을 가짐
- Attention error로 인해 wrong alignment가 발생하므로 word skipping/repeating 문제가 나타남
- Autoregressive 생성으로 인해 phoneme-level duration을 직접 control 할 수 없음 - 따라서 YourTTS와 같이 non-autoregressive 모델들을 활용하는 방식들이 제안됨
- 이때 non-autoregressive 모델은 각 phoneme의 duration과 total length를 추정하기 위해 duration predictor를 포함함
- 특히, end-to-end 방식으로 동작하는 VITS가 대표적임 - BUT, VITS는 우수한 합성 품질에도 불구하고 cross-lingual synthesis에서 duration prediction에 대한 uncertainty의 문제가 있음
- 이때 non-autoregressive 모델은 각 phoneme의 duration과 total length를 추정하기 위해 duration predictor를 포함함
- Naive 하게 multilingual speech dataset을 사용하여 training 할 수 있지만, 해당 dataset을 확보하는 것은 어렵기 때문에 근본적인 한계가 있음
-> 그래서 natural synthesis와 stable duration prediction을 지원하는 multilingual 모델인 SANE-TTS를 제안
- SANE-TTS
- 먼저 naturalness를 향상하기 위해서는 speaker identity가 linguistic feature와 disentangle 되어야 함
- 따라서 speaker representation에서 language information의 leakage를 방지하는 speaker regularization loss term을 추가 - 한편으로 stable 한 duration predictor는 cross-lingual 추론 중에 speaker identity와 independent 하게 phoneme duration을 생성할 수 있어야 함
- 이를 위해 deterministic duration predictor는 speaker embedding 대신 zero-vector를 사용하여 speaker identity에 관계없이 phoneme duration을 생성
- 먼저 naturalness를 향상하기 위해서는 speaker identity가 linguistic feature와 disentangle 되어야 함
< Overall of SANE-TTS >
- Speaker regularization loss와 deterministic duration predictor를 활용한 multilingual TTS 모델
- 결과적으로 multilingual speech에 대해 높은 speaker similarity와 naturalness를 달성
2. Method
- SANE-TTS는 multilingual TTS를 목표로 함
- 먼저 다양한 language를 receive 하기 위해 text encoder와 duration predictor를 수정함
- Loss function은 speaker identity에서 text representation을 disentangle 하는 Domain Adversarial Training (DAT)을 기반으로 language-independent speaker representation을 학습하는 speaker regularization term을 추가하여 구성됨
- 구조적으로 SANE-TTS는 phoneme sequence, speaker embedding, language embedding을 input으로 하여 raw waveform을 output 함
- 여기서 transcript를 phoneme sequence로 변환하는 동안, 각 language에 대해 서로 다른 phoneme set과 grapheme-to-phoneme을 적용
- Training 시 posterior encoder는 linear spectrogram을 additional input으로 사용
- Language Embedding
- SANE-TTS는 speaker embedding과 동일한 크기의 256-dimensional vector인 learnable language embedding을 사용함
- 이때 text encoder와 duration predictor에만 해당 language embedding을 제공함
- 특히 duration predictor에서 language embedding은 convolution layer를 통과한 다음, speaker embedding과 동일한 방식으로 hidden text representation에 추가됨
- Flow를 위한 posterior encoder와 decoder는 기존의 VITS를 따름
- Text Encoder
- 다양한 language와 compatible 될 수 있도록 relative positional representation을 가지는 transformer-based text encoder와 parameter generation을 채택함
- 특히 parameter generator는 language embedding을 input으로 사용하여 text encoder의 parameter를 생성함
- 해당 process를 통해 input phoneme sequence의 각 language에 대한 text encoder를 효과적으로 최적화할 수 있음
- Domain Adversarial Training
- 모든 speaker가 동일한 transcript를 사용하지 않으므로, text representation은 speaker identity와 entanlge 되어 있음
- 따라서 논문은 text representation에 대한 speaker bias를 줄이기 위해 Domain Adversarial Training (DAT)를 도입함
- 이를 위해 text encoder 마지막에 domain classifier로써 speaker classifier를 추가
- 구조적으로 speaker classifier는 fully-connected layer로 구성되고 speaker classifier와 text encoder 사이에는 gradient reversal layer가 삽입됨
- Training 시에는 text representation에서 speaker identity를 예측하는 것을 방지하기 위해, cross-entropy loss로 speaker classifier를 train 함 - 결과적으로 DAT를 통해 text encoder는 speaker-independent text representation을 학습하고 모델은 general text에서 음성 합성을 수행할 수 있음
- Speaker Regularization Loss
- Text representation의 speaker bias와 유사하게, dataset 내에서 speaker identity는 speaker utterance의 language에 의해 bias 됨
- 즉, 다양한 language의 음성을 합성하기 위해서는 duration predictor에서 speaker identity가 language에 entagle 되는 것을 방지해야 함
- 따라서 논문은 language에 대한 speaker bias를 줄이기 위해, speaker regularization loss $L_{reg}$를 도입함:
(Eq. 1) $L_{reg} = || \mathbb{E}_{k\in K}[\mathrm{conv}(S_{k})] ||_{2}$
- $\mathrm{conv}$ : kernel size가 1인 convolution layer, $S_{k}$ : batch $K$의 datapoint $k$에 대한 speaker embedding
- Hidden speaker representation의 평균 $\mathrm{conv}(S_{k})$가 language에 관계없이 zero-vector로 push 되므로 speaker identity는 model의 language와 disentangle 됨 - Speaker regularization loss는 hidden speaker representation의 평균을 zero-vector 쪽으로 push 하므로, 추론 중에 duration predictor는 speaker embedding 대신 zero-vector를 사용해 phoneme duration을 추정함
- 이를 통해 duration predictor의 instability를 줄이고 cross-lingual synthesis에서 speaker information adjusting에 따른 uncertainty를 제거할 수 있음
- Deterministic Duration Predictor
- 기존 VITS에서는 다양한 rhythm의 음성을 생성하기 위해 stochastic duration predictor (SDP)가 사용됨
- BUT, SDP는 normalizing flow를 통해 noise latent로부터 stochastic 하게 duration을 예측함
- 따라서 SDP는 unnatural duration을 예측하므로 unclear pronunciation을 생성할 수 있음 - 따라서 SANE-TTS는 해당 stablitity를 향상하기 위해 deterministic duration predictor (DDP)를 도입함
- BUT, SDP는 normalizing flow를 통해 noise latent로부터 stochastic 하게 duration을 예측함
3. Experiments
- Settings
- Dataset : English, Korean, Japanese Mandarin dataset
- Comparisons : Meta-learning TTS
- Results
- Speech Synthesis Quality
- 아래 표와 같이 MOS 측면에서 SANE-TTS는 naturalness와 speaker similarity 모두 가장 뛰어남
- Cross-lingual Speech Synthesis
- Cross-lingual 추론 시 mel-spectrogram과 alignment를 확인해 보면
- SANE-TTS는 source speaker에 관계없이 moderate rthythm으로 음성 합성이 가능함
- Ablation Study
- Ablation study 측면에서 각 component를 제거하는 경우, 아래 표와 같이 naturalness와 similarity 모두에서 성능 저하가 발생함
- 추가적으로 mel-spectrogram 측면에서 DDP와 SDP를 비교해 보면
- (a), (b) : DDP를 사용하는 경우 / (c), (d) : SDP를 사용하는 경우
- DDP를 사용했을 때 더 나은 alignment와 mel-spectrogram을 얻을 수 있음
- Duration predictor의 hidden speaker representation에 대한 t-SNE 결과를 확인해 보면,
- Speaker regularization이 없는 경우, language 별 cluster가 형성됨
- 반면 speaker regularization이 추가되는 경우, cluster 없이 center에 분포됨
- 즉, speaker regularization을 통해 language-independent representation을 학습할 수 있음
반응형
'Paper > TTS' 카테고리의 다른 글
댓글