[Capstone #7] Conditional Variational Autoencoder with Adversarial Learning for End-to-End Text-to-Speech

윤하은·2024년 4월 19일
0

Capstone

목록 보기
7/10

Paper : https://arxiv.org/abs/2106.06103
Github : https://github.com/jaywalnut310/vits


Abstract


최근 single-stage training과 parallel sampling이 가능한 end-to-end TTS 모델들이 제안되었지만, two-stage TTS 시스템보다 샘플 품질이 뛰어나지 않다. 본 논문에서는 현재의 two-stage 모델보다 더 자연스러운 소리를 생성하는 병렬 end-to-end TTS 방법을 제안한다.


Normalizing flows로 확장된 variational inferenceadversarial training process를 도입하여 generative modeling의 표현력을 향상시킨다.

또한 입력 텍스트에서 다양한 리듬으로 음성을 합성하기 위해 stochastic duration predictor를 제안한다. Latent variables에 대한 불확실성 모델링stochastic duration predictor를 통해 텍스트 입력이 다양한 pitch와 rhythm으로 여러 가지 방법으로 발음될 수 있는 자연스러운 1:N 관계를 표현한다.


Single speaker dataset LJ Speech에 대한 MOS는 본 논문의 방법이 가장 좋은 공개적으로 사용 가능한 TTS 시스템보다 더 뛰어나며, 실제와 비교 가능한 MOS를 달성한다는 것을 보여준다.




1. Introduction


TTS 시스템은 주어진 텍스트로부터 raw speech waveform을 합성한다. Deep neural network의 빠른 발전으로 인해, TTS 시스템 파이프라인은 normalization과 phonemization과 같은 텍스트 전처리를 제외하고 two-stage generative modeling으로 단순화되었다.

  • 전처리된 텍스트로부터 melspectrogram이나 linguistic features과 같은 중간 음성 표현을 생성

  • 중간 표현에 대한 condition으로 raw waveforms을 생성

two-stage pipeline의 각 단계 모델은 독립적으로 개발되었다.



Neural network-based autoregressive TTS system은 실제같은 음성을 합성하는 능력을 보였지만, sequential한 generative process 때문에 현대 병렬 프로세서를 완전히 활용하기 어렵다. 이러한 제한을 극복하고 합성 속도를 향상시키기 위해 여러 non-autoregressive 방법이 제안되었다.

  • Text-to-spectrogram generation step : pre-trained autoregressive teacher network에서 attention map을 추출하여 텍스트와 spectrogram 간의 정렬 학습 난이도를 줄이려 시도

  • Likelihood-based method : 목표 mel-spectrogram의 likelihood를 최대화하는 alignment를 추정하거나 학습함으로써 외부 정렬기에 대한 의존성을 제거

  • Generative adversarial network : second stage model에서 다양한 판별자를 가진 GAN-based feed-forward network는 각각 다른 scales나 periods에서 샘플을 구별하여 고품질의 raw waveform 합성



병렬 TTS 시스템의 발전에도 불구하고, two-stage pipeline은 여전히 문제가 남아 있다.

  • 높은 품질의 생성을 위해 후반 단계 모델이 초기 단계 모델의 생성 샘플로 훈련 또는 미세 조정을 요구

  • 사전에 정의된 mediate features에 대한 의존성으로 인해 learned hidden representation을 적용하여 성능을 더 개선하는 것이 불가능



최근에는 FastSpeech 2s와 EATS와 같은 여러 연구에서 효율적인 end-to-end 훈련 방법을 제안했다.

  • 전체 파형이 아닌 짧은 오디오 클립을 기반으로 훈련

  • mel-spectrogram decoder를 활용하여 text representation learning을 지원

  • target과 생성된 음성 간의 길이 불일치를 완화하기 위해 전용 spectrogram loss를 설계

그러나 학습된 표현을 활용하여 성능을 향상시킬 수 있음에도 불구하고, 합성 품질은 two-stage 시스템에 비해 뒤떨어진다.



본 논문에서는 현재의 two-stage 모델보다 더 자연스러운 음성을 생성하는 parallel end-to-end TTS 방법을 제안한다. VAE를 사용하여 TTS 시스템의 두 모듈을 잠재 변수를 통해 연결하여 효율적인 end-to-end 학습을 가능하게 한다.

고품질의 음성 파형이 합성될 수 있도록 모델의 표현력을 향상시키기 위해 다음 방법을 수행한다.

  • conditional prior distributionnormalizing flow 적용

  • waveform 도메인에서 adversarial training을 시행

고해상도 오디오를 생성하는 것 외에도, TTS 시스템이 텍스트 입력이 pitch, duration 등이 여러 가지 방식으로 발음될 수 있는 1:N 관계를 표현하는 것이 중요하다. 1:N 문제에 대처하기 위해 본 논문에서는 입력 텍스트로부터 다양한 리듬으로 음성을 합성하기 위한 stochastic duration predictor를 제안한다. Latent variable에 대한 불확실성 모델링과 stochastic duration predictor를 통해 텍스트로 표현할 수 없는 speech variations를 포착한다.




2. Method


  • Conditional VAE 공식
  • Variational inference에서 유도된 alignment estimation
  • 합성 품질 향상을 위한 adversarial training



2.1. Variational Inference


Overview


VITS는 variational lower bound, 즉 Evidence Lower Bound (ELBO)를 최대화하는 conditional VAE로 표현될 수 있다. 이는 intractable marginal log-likelihood인 log pθ(x|c)의 variational lower bound이다.

pθ(z|c) : condition c가 주어졌을 때 latent variable z의 prior distribution
pθ(x|z) : 데이터 점 x의 likelihood function
qφ(z|x) : approximate posterior distribution


training loss는 음의 ELBO로, reconstruction loss -log pθ(x|z)KL divergence log qφ(z|x) - log pθ(z|c)의 합으로 볼 수 있다. 여기서 z ∼ qφ(z|x)다.




Reconstruction loss


  1. Reconstruction loss에서 target data point로 raw waveform이 아닌 mel-spectrogram을 사용하며, 이를 x_mel로 표시한다.

  2. latent variable z를 waveform 도메인 y hat으로 업샘플링하여 디코더를 통해 mel-spectrogram 도메인 x hat_mel로 변환한다.

  3. 예측된 mel-spectrogram과 대상 mel-spectrogram 간의 L1 loss를 reconstruction loss로 사용한다.


이는 데이터 분포에 대해 Laplace distribution을 가정하고 상수항을 무시하여 maximum likelihood estimation으로 볼 수 있다. Mel-scale을 사용하여 인간의 청각 시스템의 응답을 근사화하는 mel-spectrogram 도메인에서 reconstruction loss를 정의한다.


Raw waveform에서 mel-spectrogram 추정은 STFT 및 mel-scale로의 linear projection만 사용하므로 학습 가능한 매개변수가 필요하지 않다. 또한, 추정은 훈련 중에만 사용되며 추론 중에는 사용되지 않는다.

실제로 전체 잠재 변수 z를 업샘플링하지 않고 디코더의 입력으로 부분 시퀀스를 사용한다. 이것은 효율적인 end-to-end 훈련에 사용되는 windowed generator training이다.

Laplace distribution





소감


아직 뒷부분 내용을 다 공부하지 못했다. 시간이 오래 걸리더라도 코드와 함께 꼼꼼히 이해하고 싶다.

0개의 댓글