Post

Text to Speech 끄적이기

재밌는게 생각이 나서 TTS를 하고싶은데 지식이 없어 이 참에 공부해보겠습니다. (논문 리뷰는 아닙니다.)

딥러닝을 이용한 TTS 자료들이 많지는 않은데

위에 잘 정리되어있는 것 같습니다.


딥러닝을 사용한 TTS는 WaveNet과 Tacotron으로 많은 발전이 이루어진 것 같습니다. 이게 일단 어떻게 동작하냐면…

1
(Text) -> Tacotron2 -> (Mel Spectrogram) -> WaveNet -> (Audio Digital Data)

보통 WaveNet을 Vocoder라고 부릅니다. 기존엔 WaveNet이 아니라 Griffin-Lim이라는 모듈이 있었습니다. 모르는 용어는 밑에서 천천히 알아봅시다.

먼저 흐름을 익히면

  1. Text를 Character로 쪼갠 뒤 Embedding합니다.
  2. Tacotron은 Encoder, Attetnion, Decoder로 구성되며 Mel Spectrogram을 출력합니다.
  3. Mel Spectrogram을 WaveNet에 넣어서 Voice를 만들면 됩니다.

전처리는 보통…

1
Audio Digital Data -(STFT)-> Spectrogram -(Mel-Filter Bank)-> Mel Spectrogram

Mel Spectrogram

Griffin-Lim

  • Linear Spectrogram -> Audio Digital Data 알고리즘 입니다.
  • 이와 같은 역할을 하는 WaveNet(Vocoder)보다 빠릅니다.

Tacotron

figure0

figure0

Tacotron 모델 구조

Tacotron

This post is licensed under CC BY 4.0 by the author.