제목: TACOTRON: Towards End-to-End Speech Synthesis
저자: Yuxuan Wang, RJ Skerry-Ryan, Daisy Stanton, Yonghui Wu, Ron J. Weiss, Navdeep Jaitly, Zongheng Yang, Ying Xiao, Zhifeng Chen, Samy Bengio, Quoc Le, Yannis Agiomyrgiannakis, Rob Clark, Rif A. Saurous
소속: Google
발표: INTERSPEECH 2017
논문: https://arxiv.org/abs/1703.10135
오디오샘플: https://google.github.io/tacotron/
- Tacotron
- 정말로 처음부터 끝까지 한 번에 다하고 싶은 end-to-end TTS(입력은 캐릭터 출력은 오디오) 시스템
- seq2seq2+attention 모델을 이용. NLP분야에 machine translation 관련 기술들을 이것저것 적용한 느낌이 들지만 덕분에 제법 한번에 다 훈련가능한 모델로 구성.
- 마지막 오디오 생성에서 Griffin-Lim를 사용한 것이 옥의 티. 하지만 앞으로 계속 발전될 운명의 모델이니.
- 타코트론(사실은 태코트런)의 이름은 저자들이 타코를 좋아하기 때문에 만들었다고 함. 몇 명의 저자들은 스시를 더 좋아한다고 함;;
Story
TTS 시스템 파이프라인은 너무 복잡함. 전문지식도 필요하고 노동력도 많이 듬. 각각 모델들 모두 따로 훈련해야 하고 에러들도 쌓이게 됨. 그래서 이걸 한번에 다하는 end-to-end 모델이 있으면 좋겠음. Deep Voice[Arik17]도 end-to-end 모델이라고는 하지만 알고보면 5개의 모듈로 되어 있음.
이 문제를 attention[Bahdanau14]을 이용한 seq2seq[Sutskever14] 모델을 이용해서 해결해보겠음. [Wang16]에서도 seq2seq를 쓰긴 했지만 HMM aligner도 만들어야하고 보코더도 필요했음. 이 논문에서는 깔끔하게 한번의 훈련으로 모든 것을 다 훈련시킴.
Model Architecture
입력으로 character를 받으면 raw spectrogram을 출력하는 시스템. 마지막 오디오는 Griffin-Lim 알고리즘으로 생성됨. 백본은 attention이 적용된 seq2seq모델. 크게 encoder, attention-based decoder, post-processing net으로 나눌 수 있음.
CBHG Module
1D Convolution Bank + Highway network[Srivastava15] + bidirectional GRU로 구성되어있는 모듈. 스퀀스로부터 representation을 뽑아내는데 사용되는 중요한 모듈. 먼저 convolutional filter로 local & contextual 정보를 봅고 원래 스퀀스와 함께 highway network에서 high-level feature들을 뽑고 GRU RNN에서 모델링되는 구조. 사실 machine translation[Lee16] 모델을 좀 변형한 형태.
Encoder
텍스트에 대한 sequential representation을 뽑아내는 부분. one-hot vector로 표현된 캐릭터 스퀀스는 bottleneck layer로 되어있는 pre-net을 지나고 CBHG 모듈이 마지막 encoder representation을 만들어냄. 이렇게 하니 그냥 RNN을 쓰는 것보다 오버피팅도 막으면서도 오디오 품질도 더 좋아졌음
Decoder
content-based tanh attention decoder[Vinyals15] 형태를 사용. GRU는 수직으로 residual하게 연결해서 사용. 이렇게 하면 수렴이 좀 더 빨라짐. 디코더의 타겟은 80밴드 멜스펙트로그램. 여기서 각 디코더 스텝마다 여러 프레임(non-overlapped)을 예측하게 했는데 이러면 모델 사이즈도 작아지고 훈련시간과 인퍼런스 시간도 줄어들었음. 이웃하는 프레임들이 서로 correlated되는 경우가 많고, 하나의 캐릭터가 여러 프레임에 걸쳐 있는 경우가 많기 때문. pre-net에 드랍아웃을 넣은것이 generalize하는데 무척 중요했음.
Post-processing Net and Waveform Synthesis
이제 seq2seq에서 나온 target을 waveform으로 바꿔야 함. CBHG 모듈과 Griffin-Lim 알고리즘[Griffin84]을 사용하여 웨이브폼으로 바꿈.
세세한 모델의 디테일은 다음과 같음.
Experiments
내부 데이터(영어, 24.6시간, 여성 스피커)로 훈련. 간단한 ablation 분석을 하는데, 그냥 바닐라 seq2seq 모델만으로 해보니(이때는 scheduled sampling을 해야했음) alignment가 제대로 안되는 것을 볼 수 있음(a). 또한 제안한 모델에서 CBHG 인코더를 좀 더 단순한 2레이어 residual GRU 인코더로 바꾸었더니 노이지한 결과가 나왔음(b). 최종적으로 제안한 모델(c)이 가장 좋은 결과를 보임.
다음으로 post-processing net이 없을 때(a)와 있을 때(b)의 차이를 보면 post-processing net이 더 하모닉스를 제대로 가지고 있는 것을 볼 수 있음(특히 100-400 bin).
MOS 테스트도 빼놓을 수 없음. 비교한 모델은 실제 사용중인 LSTM[Zen16](parametric) 모델과 HMM[Gonzalvo16](concatenative) 모델. HMM모델보다는 적은 점수를 받았지만, 그래도 좋은 점수(3.82)를 받았음. 아마도 Griffin-Lim 으로 오디오를 생성할 때 발생하는 artifact이 영향을 주었다고 생각.
구글에서는 이 논문을 시작으로 타코 시리즈가 죽 이어지게 됨
1편이기 때문에 부족한 점이 보이지만 그만큼 의의는 있는 논문
- [Griffin84] Daniel Griffin and Jae Lim. Signal estimation from modified short-time fourier transform. IEEE Transactions on Acoustics, Speech, and Signal Processing, 32(2):236–243, 1984.
- [Bahdanau14] Dzmitry Bahdanau, Kyunghyun Cho, and Yoshua Bengio. Neural machine translation by jointly learning to align and translate. arXiv preprint arXiv:1409.0473, 2014.
- [Sutskever14] Ilya Sutskever, Oriol Vinyals, and Quoc V Le. Sequence to sequence learning with neural networks. In Advances in neural information processing systems, pp. 3104–3112, 2014.
- [Srivastava15] Rupesh Kumar Srivastava, Klaus Greff, and Jurgen Schmidhuber. Highway networks. arXivpreprint arXiv:1505.00387, 2015.
- [Vinyals15] Oriol Vinyals, Łukasz Kaiser, Terry Koo, Slav Petrov, Ilya Sutskever, and Geoffrey Hinton. Gram- mar as a foreign language. In Advances in Neural Information Processing Systems, pp. 2773– 2781, 2015.
- [Gonzalvo16] X. Gonzalvo, S. Tazari, C.-a. Chan, M. Becker, A. Gutkin, and H. Silen, “Recent advances in Google real-time HMM-driven unit selection synthesizer,” in Proc. Interspeech, 2016, pp. 2238–2242.
- [Lee16] Jason Lee, Kyunghyun Cho, and Thomas Hofmann. Fully character-level neural machine translation without explicit segmentation. arXiv preprint arXiv:1610.03017, 2016.
- [Wang16] Wenfu Wang, Shuang Xu, and Bo Xu. First step towards end-to-end parametric TTS synthesis: Generating spectral parameters with neural attention. In Proceedings Interspeech, pp. 2243–2247, 2016.
- [Zen16] H. Zen, Y. Agiomyrgiannakis, N. Egberts, F. Henderson, and P. Szczepaniak, “Fast, compact, and high quality LSTM-RNN based statistical parametric speech synthesizers for mobile de- vices,” Proceedings Interspeech, 2016.
- [Arik17] S. O. Arik, M. Chrzanowski, A. Coates, G. Diamos, A. Gibiansky, Y. Kang, X. Li, J. Miller, J. Raiman, S. Sengupta, and M. Shoeybi. Deep voice: Real-time neural text-to-speech. In ICML, 2017. [논문리뷰]