티스토리 뷰

반응형

GenerSpeech: Towards Style Transfer for Generalizble Out-of-Domain Text-to-Speech


  • Out-of-Domain 음성 합성을 위해 style transfer를 활용할 수 있지만 몇 가지 한계가 존재함
    - Expressive voice의 dynamic style feature는 모델링과 transfer가 어려움
    - Text-to-Speech 모델은 source data와 다른 Out-of-Domain condition을 handle 할 수 있을 만큼 robust 해야 함
  • GenerSpeech
    • Out-of-Domain custom voice에 대해 high-fidelity zero-shot style transfer를 가능하게 하는 text-to-speech 모델
    • 광범위한 style condition을 모델링하는 Multi-level Style Adaptor의 도입
    • Linguistic content representation에서 style information을 제거하여 generalization을 향상하는 Mix-Style Layer Normalization
  • 논문 (NeurIPS 2022) : Paper Link

1. Introduction

  • Text-to-Speech (TTS)는 expressive 하고 다양한 음성 생성을 위해 multiple speaker, emotion, style 등을 포함하는 복잡한 환경으로 확장되고 있음
    • 하지만 domain shift와 관련한 unseen scenario에서 TTS 모델의 사용은 여전히 어려움이 있음
      - 특히 generalizable Out-of-Domain (OOD) TTS는 custom voice와 같은 acoustic reference에서 파생된 unseen style (timbre, emotion 등)을 사용하여 고품질의 음성 sample을 합성하는 것을 목표로 함
    • 이러한 OOD TTS 작업에는 2가지 한계가 있음
      1. Style modelling and Transferring
        - Expressive voice의 high dynamic range는 control과 transfer가 어려움
        - 대부분의 TTS 모델의 경우 평균적인 분포만 학습하기 때문에 sample에 대한 fine-grained control이 어려움
      2. Model Generalization
        - Custom voice와 training data가 다를 때, 분포의 차이로 인해 합성 품질이 저하됨
    • 위의 OOD TTS 문제를 해결하기 위한 여러 방법들이 제시되었지만, 완전히 해결된 것은 아님
      1. Style Modelling and Transferring
        - Global Style Token의 활용 : GST를 통해 음성의 global scale style feature를 memorize 하고 reporduce 하는 방식
        - Fine-grained latent variable의 활용 : global utterance-level과 local quasi-phoneme-level style을 모두 활용하는 방식
        -> BUT, 여전히 서로 다른 style characteristic을 제한적으로 caputre 하고 speaker identity, emotion, prosody range를 올바르게 반영하지 못함
      2. Model Generalization
        - Data-driven Method : 대규모의 dataset에서 pre-train 하여 data 분포를 확장하는 방법
        - Style Adaptation : fine-tuning, meta-learning 등을 활용하는 방법
        -> BUT, 대규모 dataset은 많은 비용이 필요하고, style adaptation은 target voice가 accessible 하다는 가정이 실제로는 불가능한 경우가 많음
    • 이때 더 나은 generalization을 위해, disentangled representation learning을 활용할 수 있음
      - 모델을 domain-agnostic과 domain-specific part로 decompose 하는 방식

-> 그래서 OOD TTS의 style transfer 문제를 해결하기 위해, 음성 variation을 style-agnostic과 style-specific part로 decompose 하는 GenerSpeech를 제안

 

  • GenerSpeech
    • Style-agnostic (linguistic content)와 Style-specific (speaker identity, emotion, prosody) variation을 개별적으로 모델링하고 제어
    • Multi-level Style Adaptor는 custom utterance의 global/local stylization을 위해 사용됨
      - Downstream wav2vec 2.0 encoder를 통하여 speaker와 emotion representation을 제어할 수 있는 latent representation을 생성
      - 3개의 local style encoder는 explicit label 없이 fine-grained frame, phoneme, word-level prosody를 모델링
    • Mix-Style Layer Noramlization (MSLN)을 채택하여 generalization을 향상
      - MSLN은 linguistic content representation에서 style attribute를 제거하고 style-agnostic variation을 예측

< Overall of GenerSpeech >

  • 광범위한 style condition을 모델링하는 Multi-level Style Adaptor의 도입
  • Linguistic content representation에서 style information을 제거하고 generalization을 향상하는 MSLN의 사용
  • 결과적으로 OOD TTS를 위한 zero-shot style transfer 작업에서 GenerSpeech가 가장 우수한 성능을 달성

2. GenerSpeech

- Problem Formulation

  • OOD custom voice에 대한 style transfer는,
    • Training data와는 다른 acoustic condition을 가지는 reference utterance에서 파생된 unseen style (speaker identity, emotion, prosody)를 사용하여 고품질의 음성 sample을 생성하는 것을 목표로 함

- Overview

  • GenerSpeech는 FastSpeech2를 backbone으로 활용함
    • Disentangled representation learning을 통해 TTS 모델을 domain-agnostic, domain-specific part로 decompose 함으로써 generalization을 향상할 수 있음
    • 따라서 GenerSpeech는 style-agnositc (linguistic content)과 style-specific (speaker identity, emotion, prosody)를 개별적으로 모델링할 수 있어야 함
    • 이를 위해,
      1. Linguistic content representation에서 style information을 제거하는 Mix-Style Layer Normalization (MSLN)을 채택하여 generalization을 향상
      2. 3개의 local encoder (frame, phoneme, word-level)로 구성된 Multi-level Style Adaptor를 통해 style attribute transferring을 향상
      3. Sample의 detail을 reconstruct 하는 Flow-based Post-net을 사용하여 fine-grained mel-spectrogram을 생성

GenerSpeech Architecture

- Generalizable Content Adaptor

  • OOD custom voice를 통한 style transfer의 품질 저하를 방지하기 위해,
    • Mix-Style Layer Normalization을 사용하여 phonetic sequence의 style information을 제거하고 style-agnoistic prosodic variation을 예측
  • Mix-Style Layer Normalization
    • Layer Normalization은 lightweight learnable sacle vector $\gamma$, bias vector $\beta$를 사용하여 hidden activation과 최종 예측에 큰 영향을 미칠 수 있음:
      $LN(x) = \gamma \frac{x-\mu}{\sigma} + \beta$
      - $\mu, \sigma$ : 각각 hidden vector $x$의 평균, 분산
    • 추가적으로 speaker adaptation을 위한 conditional layer noramlization은, style embedding을 기반으로 normalized input feature의 shifting과 scaling을 수행할 수 있음:
      $CLN(x,w) = \gamma(w) \frac{x-\mu}{\sigma}+\beta(w)$
      - 이때 2개의 simple linear layer $E^{\gamma}, E^{\delta}$는 style embedding $w$를 input으로 사용하여 각각 scale과 bias vector를 output:
      (Eq. 1) $\gamma(w) = E^{\gamma}*w, \,\,\,\, \beta(w) = E^{\delta} * w$
    • Source와 target domain 간의 discrepancy는 TTS 모델의 generalization을 방해함
      - Style information을 disentangle 하고 style-agnostic representation을 학습하기 위해서는 mismatch style information에 따라 sequence를 refine 해야 함
      - 구조적으로는, 모델이 style과 match 하는 representation을 생성하지 못하도록 noise를 injection 하는 것
    • 따라서 training sample의 style information을 perturbing 하여 TTS 모델을 regularize 하는 Mix-Style Layer Normalization (MSLN)을 설계:
      (Eq. 2) $\gamma_{mix}(w) = \lambda \gamma(w) + (1-\lambda)\gamma(\tilde{w}), \,\,\,\, \beta_{mix} = \lambda \beta(w) + (1-\lambda) \beta(\tilde{w})$
      - $w$ : style vector, $\tilde{w}$ : $\tilde{w} = Shuffle(w)$로 얻어짐
      - $\lambda \in \mathbb{R}^{B}$ : Beta 분포에서 sampling, $B$ : batch size
      - $\lambda \sim Beta(\alpha, \alpha), \alpha \in (0, \infty)$는 original stlye과 shuffle style의 trade-off를 나타냄
    • 최종적으로 generalizable style-agnostic hidden representation은:
      (Eq. 3) $MixStyleLN(x,w) = \gamma_{min}(w) \frac{x-\mu}{\sigma} + \beta_{min}(w)$
  • MSLN을 통해 결과적으로 모델은 perturbed style로 regularize 된 input feature를 refine 하고 generalizable style-invariant content representation을 학습
    • Over-fitting을 방지하고 diversity를 보장하기 위해 shuffle vector를 Beta 분포에서 sampling 한 shuffle rate $\lambda$와 random mix 하여 style information을 perturb
    • 이때 style-agnostic prosodic variation을 생성하기 위해 pitch predictor를 채택
      - Generalizable content adaptor에서 MLSN을 활용함으로써 linguistic content-related variation을 global style attribute와 disentangle 할 수 있음
      - 결과적으로 OOD custom style에 대해 TTS 모델의 generalization을 향상

Mix-Style Layer Normalization의 Pseudo Code

- Multi-level Style Adaptor

  • OOD custom voice에는 high dynamic style attribute (speaker identity, prosody, emotion)이 포함되어 있어 TTS 모델링과 transfer를 어렵게 함
    • GenerSpeech는 global, local stylization을 위해 Multi-level Style Adaptor를 도입
  • Global Representation
    • Generalizable wav2vec 2.0 모델을 사용하여 speaker와 emotion acoustic condition을 포함한 global style characcteristic을 capture
      - 이때 wav2vec 2.0 encoder 상단에 average pooling layer와 fully-connected layer를 추가하여 emotion classification으로의 fine-tuning이 가능
      - AM softmax criteria는 downstream classification을 위한 loss function으로써 사용됨
    • 결론적으로 fine-tuned wav2vec 2.0 모델은,
      - Discriminative global representation $\mathcal{G}_{s}$와 $\mathcal{G}_{e}$를 생성하여 speaker와 emotion characteristic을 각각 모델링

Downstream Global Style Encoder

  • Local Representation
    • Fine-grained prosodic detail을 얻기 위해서 frame, phoneme, word-level의 3가지 acoustic condition을 고려
    • 이러한 multi-level style encoder는 공통된 architecture를 사용
      1. Input sequence는 여러 convolutional layer를 통과하여 refine 됨
      2. 이때 다양한 level의 stylization을 위해 refined series에 대한 pooling operation을 수행
        - Pooling operation은 input boundary에 따라 각 representation 내부의 hidden state를 평균화함
      3. 최종적으로 refined sequence는 bottleneck을 통해 vector quantization에 제공되어 non-prosodic information을 제거함
    • 여기서 3-level prosodic condition은 다음과 같이 얻어짐:
      1. Frame level
        - Frame-level latent representation $\mathcal{S}_{p}$를 capture 하기 위해 local style encoder에서 pooling layer를 제거
      2. Phoneme level
        - Phoneme-level style latent representation $S_{p}$를 capture 하기 위해 phoneme boundary를 extra input으로 사용하고,
        - Vector quantization layer 이전에 refined sequence에 대해서 pooling을 적용
      3. Word level
        - Phoneme-level과 유사하게 word-level style latent representation $S_{w}$는 word boundary를 extra input으로 사용하고, pooling을 적용하여 sequence를 refine 
    • Vector Quantization block에서 refined sequence는 bottleneck을 통해 vector quantization에 제공되어 non-style information을 제거
    • 이때 vector quantization block의 bottleneck design은:
      1. Latent embedding space $e \in \mathbb{R}^{K \times D}$를 정의하자
        - $K$ : discrete latent space size, $D$ : 각 latent embedding vector $e_{i}$의 dimension
        - $K$개의 embedding vector $e_{i} \in \mathbb{R}^{D}, \, i \in 1, 2, ..., K$
      2. 이때 representation sequence가 embedding에 commit 되고 output이 증가하지 않도록 하기 위해서, commitment loss를 추가:
        (Eq. 4) $\mathcal{L}_{c} = || z_{e}(x) - sg[e]||_{2}^{2}$
        - $z_{e}(x)$ : vector quantization block, $sg$ : stop gradient operator
  • Style-to-Content Alignment Layer
    • Variable-length local style representation을 phonetic representation $\mathcal{H}_{c}$와 align 하기 위해, Style-to-Content Alignment Layer를 도입하여 style과 content 사이의 alignment를 학습
    • 이를 위해 Scaled Dot-Product Attention을 attention module로 활용
      - Frame-level style encoder를 예시로 들면, $\mathcal{H}_{c}$가 query로 사용되고 $\mathcal{S}_{u}$가 key, value로 사용됨:
      (Eq. 5) $Attention(Q,K,V) = Attention(\mathcal{H}_{c}, \mathcal{S}_{u}, \mathcal{S}_{u}) = Softmax \left( \frac{\mathcal{H}_{c}\mathcal{S}_{u}^{T}} {\sqrt{d}} \right) \mathcal{S}_{u}$
    • Attention module에 입력되기 전에 style representation에 positional embedding을 추가함
      - 추가적으로 residual connection을 사용하여 $\mathcal{H}_{c}$를 반영하고,
      - Aligned representation이 linguistic content representation에서 그대로 copy 되는 것을 방지하기 위해 dropout이 적용됨
    • 성능 향상을 위해 style-to-content alignment layer를 stack 하여 query를 점진적으로 stylize 함
      - 결과적으로 style-specific prosodic variation을 생성하기 위해 pitch predictor를 도입

- Flow-based Post-Net

  • Expressive custom voice에는 high dynamic variation이 포함되어 있지만, 일반적으로 사용되는 transformer decoder는 그러한 detailed mel-spectrogram sample을 생성하기 어려움
    • 이를 위해 GenerSpeech는 Flow-based Post-net을 도입
      - 합성된 mel-spectrogram의 품질과 similarity를 향상하고 mel-spectrogram decoder의 coarse-grained ouptut을 refine
    • Post-net architecture는 coarse-grained spectrogram과 mel decoder input을 condition으로 하는 Glow를 따름
      - 학습과정에서 flow post-net은 합성된 mel-spectrogram을 Gaussian prior 분포로 변환하고, data의 exact log-likelihood를 계산

      - 추론과정에서는 prior 분포에서 latent variable을 sampling 하고 post-net에 역으로 전달하여 expressive mel-spectrogram을 생성

- Pre-training, Training and Inference Procedures

  • Pre-training and Training
    • GenerSpeech의 pre-training 단계에서는,
      - AM softmax loss objective를 사용하여 global style encoder wav2vec 2.0 모델을 downstream task로 fine-tuning
      - 이때 모든 parameter는 adjustable 하고 이후 discriminatively-trained wav2vec 2.0 모델에 대한 knowledge를 transfer 하여 global style feature를 생성
    • GenerSpeech의 training 단계에서는,
      - Reference와 target speech는 동일하게 유지됨
      - 이때 최종적인 loss term은 다음과 같이 구성됨:
      1. Duration prediction loss $\mathcal{L}_{dur}$ : log-scale에서 ground-truth phoneme-level duration과 예측값 사이의 MSE
      2. Mel-reconstruction loss $\mathcal{L}_{mel}$ : ground-truth mel-spectrogram과 transformer decoder에 의해 생성된 spectrogram 간의 MAE
      3. Pitch reconstruction loss $\mathcal{L}_{p}$ : ground-truth와 style-agnostic, style-specific pitch predictor에 의해 예측된 joint pitch spectrogram 간의 MSE
      4. Post-net의 negative log-likelihood $\mathcal{L}_{pn}$
      5. Commit loss $\mathcal{L}_{c}$ : (Eq. 4)에 따라 vector quantization layer를 제약하는 objective
  • Inference
    • GenerSpeech는 아래의 pipeline으로 OOD TTS를 위한 custom voice style transfer를 수행
      1. Text encoder는 phoneme sequence를 encoding 하고 expanded representation $\mathcal{H}_{c}$는 inference duraion에 따라 얻어짐
        - Style-Agnostic Pitch (ASP) predictor는 custom style과 invariant 한 linguistic content speech variation을 생성
      2. Reference speech sample이 주어지면, forced alignment를 통해 word, phoneme boundary를 얻을 수 있고, 이는 style latent representation을 모델링하기 위해 Multi-level style adaptor에 제공됨
        - Wav2vec 2.0 모델은 speaker $\mathcal{G}_{s}$, emotion $\mathcal{G}_{e}$ representation을 생성하여 global style을 제어
        - Local style encoder는 frame, phoneme, word-level fine-grained style representation $\mathcal{S}_{u}, \mathcal{S}_{p}, \mathcal{S}_{w}$를 각각 capture
        - 이후 Style-Specific Pitch (SSP) predictor가 style-sensitive variation을 생성
      3. Mel decoder는 coarse-grained mel-spectrogram $\tilde{M}$을 생성하고,
        - Flow-based Post-net은 random sampled latent variable을 $\tilde{M}$과 mel decoder input에 따라 condition 된 fine-grained mel-spectrogram $M$으로 변환

Pitch Predictor 구조

3. Experiments

- Settings

  • Dataset
    - Pre-training : IEMOCAP, VoxCeleb1
    - Training : LibriTTS
    - Evaluation : ESD, VCTK
  • Comparisons : Mellotron, FG-TransformerTTS, Expressive FS2, Meta-StyleSpeech, STYLER

- Results

  • Parallel Style Transfer
    • Text가 reference utterance에서 변경되지 않은 경우에 대해 실험 결과를 비교
    • 품질 측면에서 GenerSpeech는 VCTK에서 4.06, ESD에서 4.11의 MOS를 달성하여 가장 우수한 성능을 보임
    • Style similarity 측면에서 GenerSpeech는 VCTK에서 4.01, ESD에서 4.20의 SMOS를 달성하여 마찬가지로 가장 우수한 성능을 보임
    • Cos, FFE에 대한 정량적인 측면에서도 GenerSpeech의 custom voice style transfer 성능은 가장 우수한 것으로 나타남

Parallel Style Transfer에 대한 성능 비교 결과

  • Non-Parallel Style Transfer
    • TTS 모델이 reference signal의 prosodic style로 다양한 text를 합성하는 non-parallel style tranfer에 대한 성능을 비교
    • 결과적으로 GenerSpeech의 합성 sample이 다른 모델의 sample들에 비해 가장 선호되는 것으로 나타남
    • 추가적으로 생성된 mel-spectrogram을 비교해 봤을 때,
      - GenerSpeech는 adjacent harmonics, unvoiced frame, high-frequecny part에 대해 detail이 풍부한 mel-spectrogram을 생성함
      - GenerSpeech는 reference signal의 prosodic style과 time-aligned 되는 pitch contour를 보임

Non-Parallel Style Transfer에 대한 선호도 비교 결과
생성된 mel-spectrogram 비교

  • Ablation Study
    • Multi-level Style Encoder, MSLN, Flow-based Post-net 모두 각각 제거했을 때 품질 저하가 발생함 
    • 결과적으로 GenerSpeech에서 채택한 방법들은 모두 품질 향상에 중요함

Ablation Study 결과

  • Style Adaptation
    • GenerSpeech는 adaptation data의 양이 늘어남에 따라 더 나은 성능을 발휘함
    • 결과적으로 few-shot, zero-shot 환경에서도 GenerSpeech는 adaptive style transfer에 대한 우수한 성능을 발휘 가능

다양한 Data에 대한 Adaptation 성능

 

반응형
댓글
최근에 올라온 글
최근에 달린 댓글
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
Total
Today
Yesterday