티스토리 뷰
Paper/TTS
[Paper 리뷰] MM-TTS: Multi-Modal Prompt Based Style Transfer for Expressive Text-to-Speech Synthesis
feVeRin 2024. 4. 23. 09:45반응형
MM-TTS: Multi-Modal Prompt Based Style Transfer for Expressive Text-to-Speech Synthesis
- Text-to-Speech에서 style transfer는 style information을 text context에 반영하여 특정 style을 가진 음성을 생성하는 것을 목표로 함
- BUT, 기존의 style transfer 방식들은 fixed emotional label이나 reference clip에 의존하므로 flexible 한 style transfer의 한계가 있음
- MM-TTS
- 생성되는 음성의 style을 control 하기 위해 reference speech, emotional facial image, text description 등을 포함하는 multi-modal prompt space를 활용
- 이때 모델은 multi-modal information을 unified style space로 aligning 하여 single system에서 arbitrary modality를 input 할 수 있어야 하고, unifed style representation을 주어진 text content에 효율적으로 transferring 해야 함
- 이를 위해 aligned multi-modal prompt encoder를 채택하고 더 나은 style representation을 위한 Style Adaptive Convolution을 도입함
- 추가적으로 mel-spectrogram의 over-smoothing 문제를 완화하기 위해 rectified flow-based refiner를 사용
- 논문 (AAAI 2024) : Paper Link
1. Introduction
- Text-to-Speech (TTS) 모델의 핵심은 text content를 해당하는 음성에 mapping 하는 cross-modal task에 있음
- BUT, 단순히 text content에 해당하는 음성을 생성하는 것으로는 naturalness가 떨어짐
- 즉, 생성된 음성은 speaker identity, prosody, emotion 등의 paralinguistic information을 반영할 수 있어야 함
- 이를 위해 multi-speaker TTS, multi-lingual TTS, style transfer 등의 방법을 고려할 수 있음 - 특히 TTS에서 style transfer는 4가지 범주로 나눌 수 있음
- Emotion label-based Style Transfer : style을 represent 하기 위해 predefined emotional category를 사용하는 방식
- Reference speech-based Style Transfer : 주어진 speech segment의 style을 추출하여 style-related voice를 생성하는 방법
- Face-based Style Transfer : 주어진 face image에서 speaker identity를 추출하여 활용하는 방식
- Text description-based Style Transfer : natural language prompt를 활용하는 방식
- 위와 같은 style transfer 방식들은 각각의 modality에 특화되어 있기 때문에 flexible하지 않음
-> 그래서 특정한 modality prompt에 제한되지 않고 any modality prompt를 활용할 수 있는 flexible style transfer TTS 모델인 MM-TTS를 제안
- MM-TTS
- 아래 그림과 같이 multi-modal prompt를 사용하는 general TTS framework를 활용
- Multi-modal prompt feature 간의 alignment를 달성하기 위해 Contrastive Language Image Pretraining (CLIP)의 semantic understanding capability를 기반으로 하는 Aligned Multi-Modal Prompt Encoder (AMPE)를 도입
- 이를 통해 text, speech, image prompt modality를 unified style space로 unify 하여 multi-modal input을 통한 flexible style control을 지원 - Text-to-Mel 모델로써 style information의 local detail을 추출할 수 있는 Style Adaptive Convolution (SAConv) module을 적용
- 추가적으로 Text-to-Mel 모델에서 발생하는 over-smoothing 문제를 해결하기 위해, Rectified Flow에 기반한 Reflow Refiner를 사용하여 real domain에 가까운 mel-spectrogram을 얻음
< Overall of MM-TTS >
- TTS에서 multi-modal capability를 반영할 수 있는 multi-modal prompt based style transfer framework
- Multi-modal prompt에 따라 flexible style control이 가능한 AMPE와 추출된 style information을 효과적으로 transfer 할 수 있는 SAConv를 제안
- Rectified Flow-based Refiner를 통해 over-smoothing 문제를 완화
- 결과적으로 다양한 modality에 대해 기존 모델들 보다 우수한 성능을 달성
2. Method
- Overview
- MM-TTS는 expressive TTS를 위해 multi-modal prompt based style transfer framework를 구성함
- 여기서 TTS에 대한 flexible multi-modal style transfer를 위해, unified style space와 efficient adaptive style transfer를 수행하는 module을 설계해야 함
- 아래 그림과 같이 MM-TTS framework는 다음의 4개의 module로 구성됨
- CLIP-based text encoder, image encoder, speech style encoder, text encoder를 포함하는 Aligned Multi-Modal Prompt Encoder (AMPE)
- Multi-modal information을 unified style space로 align 하는 역할 - 주어진 text content를 해당하는 음성으로 mapping하는 Text-to-Mel (T2Mel) 모델
- 이때 unified style representation을 transfer하기 위해 Style Adaptive Convolution (SAConv)를 도입
- T2Mel backbone으로써 FastSpeech2를 기반으로 하는 StyleSpeech를 사용 - Realistic mel-spectrogram을 얻기 위한 Refiner
- Mel-spectrogram을 waveform으로 변환하는 Vocoder
- 논문에서는 HiFi-GAN을 사용
- CLIP-based text encoder, image encoder, speech style encoder, text encoder를 포함하는 Aligned Multi-Modal Prompt Encoder (AMPE)
- Aligned Multi-Modal Prompt Encoder
- Flexible style control을 위해 text, speech, image prompt modality를 unified style space로 unify 하는 CLIP-based Aligned Multi-Modal Prompt Encoder (AMPE)를 도입
- AMPE module에는 text, speech, face에 대한 3가지 modality가 input 됨
- 이때 fixed CLIP-based text/image encoder와 learned adapter module을 활용하여 해당하는 text prompt embedding $\mathbf{E}_{T}$와 face image prompt embedding $\mathbf{E}_{I}$를 추출하고,
- Speech style encoder를 통해 speech prompt embedding $\mathbf{E}_{S}$를 추출 - Unified style embedding $\mathbf{E}_{U}$는 다음과 같이 계산되는 MSE loss로 guide 됨:
(Eq. 1) $L_{AMPE}=Loss_{I}+Loss_{T}=MSE(\mathbf{E}_{I},\mathbf{E}_{S})+MSE(\mathbf{E}_{T},\mathbf{E}_{S})$ - 이때 unified style embedding $\mathbf{E}_{U}$는 training phase와 inference phase에서 다르게 사용됨:
(Eq. 2) $\begin{matrix}
\mathbf{E}_{U}=\mathbf{E}_{S}, & \textrm{at the training phase} \\
\mathbf{E}_{U}\in\{\mathbf{E}_{S},\mathbf{E}_{I},\mathbf{E}_{T}\}, & \textrm{at the inference phase} \\
\end{matrix}$
- Inference 시에는 arbitrary embedding을 사용할 수 있음 - AMPE module의 style encode 구성을 위해 다음의 4가지 componet를 활용하여 설계함
- 먼저 spectral processing, temporal processing, multi-head attention에 대한 3가지 component는 Meta-StyleSpeech를 따름
- 추가적으로 richer style information을 capture 할 수 있도록 Multi-layer GRU를 적용하여 informative multi-channel vector를 얻음
- AMPE의 adaptor module은 2개의 fully-connected layer로 구성됨
- AMPE module에는 text, speech, face에 대한 3가지 modality가 input 됨
- Style Adaptive Convolutions
- 추출된 style information은 일반적으로 concatenation이나 summation으로 generator에 제공됨
- 한편으로 Meta-StyleSpeech는 reference style의 statistical property를 활용하여 transfer 하는 Style Adaptive Layer Normalization (SALN)을 사용함
- MM-TTS도 이와 비슷하게 reference style transfer를 위해, Style Adaptive Convolution (SAConv)를 제안함
- SAConv는 style embedding $\mathbf{E}_{U}$를 receive 하여 kernel prediction network를 통해 kernel, bias를 예측하고 context feature에 반영하여 prompt style transffered speech를 얻음
- 구조적으로 kernel prediction network는 input convolution, 6개의 convolution layer를 가지는 residual convolution module, adaptive kernel/bias를 예측하는 kernel/bias convolution으로 구성됨
- 여기서 context feature $x$와 desired style embedding $\mathbf{E}_{U}$가 주어지면 normalized context feature $x_{norm}$은:
(Eq. 3) $x_{norm}=\frac{x-\mu_{x}}{\sigma_{x}}$
- $\mu_{x}, \sigma_{x}$ : 각각 input context feature $x$의 평균, 표준편차
- 그러면 kernel prediction network를 통해 주어진 style feature $\mathbf{E}_{U}$에 대한 predicted kernel $\mathrm{conv}_{kernel}$과 bias $\mathrm{conv}_{bias}$를 얻을 수 있음 - 이후 SAConv는 predicted kernel/bias를 사용하여 다음과 같이 계산됨:
(Eq. 4) $\mathrm{SAConv}(x,\mathrm{conv}_{kernel},\mathrm{conv}_{bias}) = \mathrm{conv}_{kernel}(x_{norm})+\mathrm{conv}_{bias}$ - Meta-StyleSpeech에서 사용된 SALN의 gain/bias는 style feature의 global statistics만 transfer 하는 fully-connected layer임
- 반면 MM-TTS의 SAConv는 style feature를 보다 정확하게 transfer 하기 위해, 주어진 style embedding에 따라 convolution kernel과 bias를 예측하는 것을 목표로 함
- Rectified Flow Based Refiner
- Over-smoothing 문제를 해결하고 SAConv의 효율성을 유지하기 위해, two-stage pipeline을 통해 적은 수의 Euler step 만으로도 고품질의 음성을 얻을 수 있는 rectified flow 기반의 Reflow Refiner를 도입함
- Reflow Refiner는 straight line으로 분포 $\pi_{0}$에서 $\pi_{1}$까지 transport 하는 Ordinary Differential Equation (ODE) 모델
- $\pi_{0}$ : standard Gaussian 분포, $\pi_{1}$ : ground-truth 분포 - $X_{0}\sim\pi_{0}, X_{1}\sim\pi_{1}$에 대한 empirical observation이 주어지면, $(X_{0}, X_{1})$에 대한 Reflow Refiner는 time $t\in [0,1]$에 대해 first training stage에서 생성된 mel-spectrogram $c_{mel}$로 condition 된 ODE로 유도됨:
(Eq. 5) $dX_{t}=v(X_{t},t,c_{mel})dt$
- 이는 $\pi_{0}$의 $X_{0}$를 $\pi_{1}$의 $X_{1}$으로 변환함
- Drift force $v: \mathbb{R}^{d} \rightarrow \mathbb{R}^{d}$는 simple least squares regression을 solving 하여 $X_{0}$에서 $X_{1}$을 가리키는 linear path direction $(X_{1}-X_{0})$을 따르도록 flow를 drive 함 - 여기서 loss $L_{Refiner}$는:
(Eq. 6) $L_{Reflow}=\int_{0}^{1}\mathbb{E}\left[|| (X_{1}-X_{0})-v(X_{t},t,c_{mel})||^{2}\right]dt$
- $X_{t}$ : $X_{0}, X_{1}$에 대한 linear interpolation으로써, $X_{t} =tX_{1}+(1-t)X_{0}$ - Inference phase에서 $v$를 얻은 다음, $X_{0}\sim\pi_{0}$에서 시작하는 ODE를 solve 하여 $c_{mel}$으로 condition 된 $\pi_{0}$를 $\pi_{1}$로 transfer 함
- 이때 MM-TTS는 inference시 ODE RK-45 sampler를 사용 - 이러한 Reflow Refiner training을 통해 $\pi_{0}$와 $\pi_{1}$ 사이에 대한 straight line을 얻을 수 있음
- 해당 straight line을 기반으로 빠른 추론 속도를 가지는 one-step model인 single Euler method만으로도 정확하게 simulation 될 수 있음
- Reflow Refiner는 straight line으로 분포 $\pi_{0}$에서 $\pi_{1}$까지 transport 하는 Ordinary Differential Equation (ODE) 모델
- Objectives
- Training pipeline은 text-to-mel stage와 refiner stage의 2-stage로 구성됨
- First stage에서는 AMPE, SAConv, Text-to-Mel 모델을 결합하여 다음의 loss function을 최소화하도록 최적화됨:
(Eq. 7) $L_{1s} =L_{Mel}+L_{Var}+L_{AMPE}$
- $L_{Mel}$ : Mel-decoder에 의해 생성된 mel-spectrogram과 ground-truth 간의 MAE loss
- $L_{Var}$ : duration, pitch, energy reconstruction loss - Second stage에서는 다음의 loss function을 통해 Reflow Refiner를 최적화함:
(Eq. 8) $L_{2s} = L_{Reflow}$
- First stage에서는 AMPE, SAConv, Text-to-Mel 모델을 결합하여 다음의 loss function을 최소화하도록 최적화됨:
3. Experiments
- Settings
- Dataset : MEAD-TTS
- Comparisons : FastSpeech2, GenerSpeech, IST-TTS, StyleSpeech
- Results
- Results on Reference Speech Based Style Transfer
- Reference와 생성된 음성 간의 content consistency에 따라 Parallel Style Transfer (PST), Non-Parallel Style Transfer (NPST)로 나눌 수 있음
- 먼저 PST 측면에서 정량적, 정성적 성능을 평가해 보면, MM-TTS는 reference가 주어졌을 때 in-domain, out-domain 모두에서 우수한 성능을 달성함
- NPST 측면에서 AXY preference test를 수행해 보면, 마찬가지로 MM-TTS의 결과를 가장 선호하는 것으로 나타남
- Results on Face Based Style Transfer
- Face-based style transfer를 위해 Oulu-CASIA dataset을 활용해 평가해 보면, MM-TTS는 naturalness와 classification 성능 측면에서 우수한 성능을 보임
- 즉, MM-TTS는 face image에서 style attribute를 정확하게 capture 하고 반영할 수 있음
- Results on Text Description Based Style Transfer
- Text prompt를 활용하는 경우에도 MM-TTS는 가장 우수한 성능을 보임
- Ablation Study
- SAConv module을 SALN module로 대체하는 경우, style similarity가 저하되는 것으로 나타남
- Reflow Refiner를 제거하는 경우, naturalness가 저하되는 것으로 나타남
- LJSpeech dataset에 대한 pre-training을 수행하지 않는 경우, out-of-domain에 대한 naturalness, similarity가 크게 저하됨
- Refiner Evaluation
- MM-TTS의 Reflow Refiner는 DDPM과 같은 다른 refiner와 비교하여, 품질과 sampling 속도 측면에서 가장 효과적인 것으로 나타남
- 특히 1 Euler step의 Reflow는 RK45 sampler의 Reflow와 비슷한 결과를 보임
반응형
'Paper > TTS' 카테고리의 다른 글
댓글