본문 바로가기

연구실 공부

[논문] Hearing Faces: Target Speaker Text-to-Speech Synthesis from a Face

728x90

https://ieeexplore.ieee.org/document/9687866

 

Hearing Faces: Target Speaker Text-to-Speech Synthesis from a Face

The existence of a learnable cross-modal association between a person's face and their voice is recently becoming more and more evident. This provides the basis for the task of target speaker text-to-speech (TTS) synthesis from face ref-erence. In this pap

ieeexplore.ieee.org

해당 논문을 보고 작성했습니다.

 

Abstract

사람 얼굴과 그들의 voice 사이의 학습 가능한 cross-modal association은 최근에 점점 더 명확해지고 있습니다. reference face를 통한 target speaker text-to-speech (TTS) synthesis task를 수행하는 것의 basis를 제공해 줍니다. 이 논문에서, 저자들은 존재하는 unimodal model들을 결합하여 cross-modal model architecture를 제공해주는 방식으로 task를 수행합니다. 저자들은 Global Style Token을 기반 auditory speaker embedding을 사용하는 Tacotron 2 multi-speaker TTS를 사용합니다. 그리고 FaceNet face encoder가 voice reference 대신 static face image reference로부터 auditory speaker embedding을 예측할 수 있도록 학습을 전이하며, 이를 통해 face로부터 speaker의 voice와 speaking characteristic을 예측할 수 있게 됩니다. Face2Speech와 비교했을 때, 저자들은 공개적으로 사용 가능하고 pre-train된 model의 componenet를 사용하여 저자들의 model이 더 modular architecture가 되도록 만들었습니다. 이 방식은 high-quality speech synthesis를 가능하게 만들어주고 model 구조를 쉽게 확장할 수 있습니다.

 

Introduction

이 논문에서는 최근의 cross-modal 연구에서 밝혀진 내용을 통해 face reference로부터 speaker embedding을 근사하는 방법을 제안합니다.

사람의 얼굴 사진을 봤을 때, 사람들은 그들의 voice 소리에 대한 선입견을 갖기 쉽습니다. 초기 cross-modal 연관 연구에서는 인간이 동적인 사람 얼굴 data (e.g., video)에 대응하는 voie를 식별하는 정확도가 우연보다 더 높다는 것을 발견했으나, static facial data (e.g., image)에서는 동일한 성능을 보이지는 못했습니다. 더 최근에는 static face image로부터 상당히 많은 cross modal information을 얻을 수 있다는 것이 밝혀졌고, machine이 이 information을 다룰 수 있다는 것이 입증되었습습니다. face와 voice 사이의 cross-modal matching에 대해서 잘 동작하는 model을 제안하는 연구가 등장했습니다.

이 논문에서는 널리 사용되는 검증된 성능을 보이는 model을 사용하고, model이 cross-modal information transfer를 수행할 수 있도록 훈련시키는 것을 목표로 합니다. 저자들의 multimodal architecture의 component들은 존재하는 unimodal model로 구현했습니다. 저자들은 auditory input으로부터 speaker style을 나타낼 수 있는 Global Style Token architecture를 teacher model로 사용하여 face image input에서 speaker style을 나타내는 deep convolutional neural network를 training합니다. predicted style embedding을 TTS system에서 사용하는데, 저자들은 Tacotron 2를 TTS system으로 사용하여 target speaker voice에 맞는 speech를 합성했다고 합니다.

저자들의 architecture는 modular structure이며 특정 구성 요소의 선택을 통해 그 기능들을 수행합니다. modular structure이기 때문에, 다른 model들로 쉽게 대체될 수 있습니다. 더 구체적으로는 face encoder, TTS system, vocoder를 저자들이 사용한 model이 아니라 다른 model로 대체할 수 있음을 의미합니다. 

face reference로부터 target speaker speech 합성은 잠재력을 가지고 있으며, 녹음이 존재하지 않은 역사적인 인물의 목소리를 근사하여 박물관이나 다른 환경에서 사용될 수 있습니다. 또한, 애니메이션에서 생성된 캐릭터에 목소리를 맞추는 방식으로도 사용될 수 있습니다. 더 나아가 TTS system의 목소리나 감정을 제어하는 데 유용한 방법이 될 수 있습니다.

이러한 task를 위해 model을 학습하는 것은 많고 다양한 voice recording, face image, word-level transcription dataset이 필요합니다. Voice audio와 transcription tuples은 TTS system을 finetuning할 때 사용되고, voice audio와 face image tuple은 face recognition model을 학습시킬 때 필수적입니다. 저자들은 Lip Reading Sentences 3(LRS3) dataset으로 적절한 dataset을 생성하여 사용했다고 합니다. 이 dataset은 다양한 TED, TEDx talk들로부터 얻어지는 짧고 transcription이 있는 face-aligned된 video들로 구성됩니다.

실험적 결과를 통해 저자들의 model이 주어진 face로부터 voice를 예측할 수 있음을 보이며 real-time inference speed보다 더 빠른 속도로 인지적으로 좋은 quality의 speech도 합성할 수 있다고 합니다.

 

Proposed Model

저자들의 model 구조는 다음과 같습니다.

 

저자들은 face encoder는 supervised method로 finetune하며, face reference로부터 target style embedding을 예측하도록 학습시켰습니다. Global Style Token module은 finetune 과정에서 teacher 역할을 합니다. inference 할 때는 이 predicted style embedding이 Tacotron 2로 전달되며, Tacotron 2는 mel-spectrogram을 합성합니다. ParallelWaveGAN이 spectrogram을 waveform으로 변환해 줍니다.

 

Speech Encoding and Synthesis

Global Style Token을 사용하는 Tacotron 2 model은 voice reference를 가지고 multi-speaker text-to-speech synthesis를 하도록 학습된 network입니다. 이는 512차원 중간 representation (style embedding)을 사용하여 speaker voice와 prosody를 modelling하는데, 이는 style token layer를 통해 생성됩니다. Mel-spectrogram을 predict하기 위해 이 embedding과 encode된 text feature가 decoder로 pass됩니다. 그리고 vocoder가 output을 waveform으로 합성합니다.

Tacotron 2는 text encoder와 decoder로 구성되며, recurrent sequence-to-sequence network로 구성된 neural architecture입니다. character embedding sequence로 Mel-spectrogram을 prediction해주는 model입니다. 그리고 WaveNet을 수정하여 만든 vocoder도 존재하는데, 이는 spectrogram에서 raw audio를 예측해 줍니다. 이 논문에서는 vocoder를 VCTK Corpus로 pretrain된 ParallelWaveGAN으로 대체했습니다. ParallelWaveGAN은 최신에 등장한 waveform prediction network이며, inference speed가 향상되었으며 합성 quality도 향상되었습니다.

저자들은 Tacotron 2 with GST를 multi-speaker TTS architecture로 사용했는데, GST를 구현하는 다른 TTS sytem으로 Tacotron2를 대체해도 상관없다고 합니다.

 

- Text Encoder

먼저 text input을 pre-process합니다. 저자들은 원치 않은 기호들을 제거하고 알려진 약어들을 다시 확장하며, g2pE를 사용하여 발음을 나타내는 phonetic token으로 변환했습니다. text encoder는 token sequence를 embeddding sequence로 mapping합니다. 그다음 batch normalization과 ReLU activation이 존재하는 512개의 filter와 5x1 형태의 3개 convolutional layer가 존재하며, 그다음엔 512-unit bidirectional LSTM layer가 있습니다.

 

- Style Embedding

Global Style Token model은 " Style tokens: Unsupervised style modeling, control and transfer in end-to-end speech synthesis" 논문에서 등장하는 model과 동일합니다. 이 network는 acoustic input으로 style embedding을 predict하는데, style embedding은 reference speaker의 vocal characteristic을 나타냅니다. GST model은 Tacotron 2와 reconstruction loss로 같이 학습됩니다.

GST module의 첫 part는 reference encoder입니다. reference encoder는 log-Mel filterbank를 input으로 받으며 128차원 reference embedding을 추출합니다. reference encoder는 2D convolution layer, batch normalization, ReLU activation이 6번 stack되어 구성되며, 그 뒤에는 single layer 128 unit unidirectional GRU가 붙습니다. 이어지는 style token layer는 random하게 초기화되지만 고정된 512차원 style token 128개와 8개 attention head로 이루어진 multi-head attention mechanism을 포함하는 bank입니다. reference embedding을 input으로 받으며 reference의 다양한 측면에서 가장 관련 있는 token의 combination인 512차원 style embedding을 output합니다. 이는 효과적으로 bank 내의 style token들의 weighted sum을 제공합니다. 각 token들은 speaking rate나 pitch와 같이 speech의 일부 특성들을 capture합니다. 저자들은 face encoder를 학습시키기 위해 target vector로서 style embedding을 사용합니다.

log-Mel filterbank는 24kHz input waveform에 Short Time Fourier Transform (STFT)를 적용하여 추출되며, 이때 300 sample hop length (12.5ms), 1200 sample window length (50ms) zero-padded to length 2048 (85.33ms)를 사용합니다. 이 STFT는 80 Mel bands와 80~7600 Hz frequency 사이의 Mel filterbank로 project됩니다. 그다음 log를 이용해 scale됩니다. 마지막으로, 추출된 filter bank는 training data를 기반으로 구한 global mean과 variance를 이용해 normalize됩니다.

 

- Decoder and Vocoder

style embedding을 모든 encoded input sequence에 추가합니다. 그다음 이 sequence를 decoder에 pass합니다. decoder는 autoregressive RNN이며 Mel-spectrogram prediction을 수행합니다. 저자들의 decoder는 location-sensitive attention mechanism을 사용하여 input sequence와 이전 time step들에 attention할 수 있습니다. 최종 Mel spectrogram은 ParallelWaveGAN으로 pass되어 24kHz waveform을 생성합니다.

 

Face Encoder

face encoder로 FaceNet을 사용합니다. 이는 VGGFace2 dataset으로 pre-train됩니다. multi-task cascaded neural network (MTCNN)이 FaceNet 앞에 붙는데, MTCNN을 통해 face detection과 alignment를 수행합니다. input image를 face region에 10px을 margin으로 하여 crop한 후 160x160 px로 resize합니다.

저자들은 dataset으로 face recognition task를 먼저 학습시킨 후, image로부터 그에 대응하는 utterance를 target value로 하는 style embedding을 추출하도록 finetune합니다. 이 과정을 거친 후, adapted FaceNet으로 GST module을 대체합니다.

 

Conclusion

저자들은 face image reference를 사용하는 target speaker TTS synthesis modular architecture를 제안합니다. 저자들은 pre-trained Tacotron2 with GST model을 사용했습니다. 실험 결과를 통해 face reference로 style embedding을 예측하는 것이 가능하다는 것을 보였으며, 이 task에서는 전례 없는 자연스러움을 달성했습니다. Face2Speech와 비교했을 때, 저자들의 model은 약간 낮은 matching ability를 보이지만, 합성된 음성의 자연스러움은 훨씬 뛰어납니다.