티스토리 뷰

반응형

EdiTTS: Score-based Editing for Controllable Text-to-Speech


  • Text-to-Speech를 위해 score-based modeling을 기반으로 speech editing method를 적용할 수 있음
  • EdiTTS
    • Additional training이나 task-specific optimization 없이 content, pitch 측면에서 audio에 대한 targeted, granular editing을 허용
    • Gaussian prior space에서 coarse, deliberate perturbation을 적용하여 diffusion model에서 desired behavior를 유도하고, mask와 softening kernel을 통해 target region에 대한 iterative edit를 지원
  • 논문 (INTERSPEECH 2022) : Paper Link

1. Introduction

  • Score-based model과 Denoising Diffusion Probabilistic Model은 생성 작업에서 우수한 성능을 보이고 있음
    • 해당 방식들은 complex data distribution을 Gaussian noise로 gradually corrupt 하고 gradient field를 추정하여 noisy prior를 original distribution으로 reverse 하는 iterative training scheme을 활용함
      - 특히 score-based model에서 image editing은 coarse user input으로부터 realistic detail을 interpolate 하도록 유도하여 고품질의 edited image를 생성하는 방법임
    • 이와 비슷하게, speech editing을 활용하면 모델이 user instruction에 따라 selected audio segment를 modify하도록 유도할 수 있음
      - BUT, text-to-speech (TTS)에서 fine-grained generation은 여전히 non-trivial하고 prosody와 tone에 대한 요구사항을 정확히 충족하기 어려움
    • 특히 기존에는 output control을 위해 unit selection이나 context-aware prosody correction 등의 방법을 활용함
      - BUT, pipeline이 복잡해지고 낮은 품질의 output이 생성되는 한계가 있음

-> 그래서 audio에 대한 granular editing을 지원하기 위해 pretrained score-based backbone을 기반으로 editing을 수행하는 EdiTTS를 제안

 

  • EdiTTS
    • User edit로 input을 직접 modify하는 score-based image editing과 달리, diffused Gaussian prior에 coarse perturbation을 적용하여 editing을 유도
    • Score estimator는 data distribution에 대한 trajectory를 따라 perturbed latent를 denoise 하여 edited sample을 생성

< Overall of EdiTTS >

  • Score-based TTS 모델을 기반으로 coarsely modified mel-spectrogram prior를 refine 함
  • Robust denoising process를 활용하여 pitch와 같은 conditional input 없이도 자연스러운 음성 합성이 가능
  • 결과적으로 pitch shift, content replacement에 대해 기존보다 뛰어난 성능을 달성

2. Background

- Score-based Generative Modeling

  • Score-based generative model에서,
    • Original data distribution은 Ito SDE를 따라 Gaussian noise로 corrupt 됨:
      (Eq. 1) dx=f(x,t)dt+g(x,t)dw
      - w : standard Wiener process, t : finite time interval [0,T]에서 sample 된 value
      - f(,t),g(,t) : 각각 x의 drift와 diffusion coefficient
    • 이때 해당 reverse 역시 diffusion process를 따르므로, reverse-time SDE는 다음과 같이 나타낼 수 있음:
      (Eq. 2) dx=[f(x,t)g(x,t)g(x,t)xlogpt(x)]dt+g(x,t)dˉw
      - ˉw : reverse-time Wiener process
    • 특히 (Eq. 1)의 Kolmogorov forward equation은 simplified flow ordinary differential equation과 같음:
      (Eq. 3) dx=f(x,t)dt12[g(x,t)g(x,t)]dt12g(x,t)g(x,t)xlogpt(x)dt
      - 즉, 두 equation 모두 다른 form을 가지지만 동일한 statistical process를 describe 함
    • 따라서, score xlogpt(x)를 근사할 수 있는 time-dependent model sθ(x,t)가 주어지면, xTpT를 sampling 하고 (Eq. 3)에 따라 reverse step을 계산하여 original data distribution으로부터 x0p0를 얻을 수 있음

- Grad-TTS

  • EdiTTS는 score-based TTS 모델인 Grad-TTS를 기반으로 함
    • 먼저 Grad-TTS의 forward SDE는:
      (Eq. 4) dx=12Σ1(μx)βtdt+βtdw
      - μ : prior distribution의 평균, Σ : covariance matrix, βt : noise schedule
      - 여기서 평균은 prior text encoder로부터 추정되고, covariance는 identity matrix로 가정됨
    • Drift coefficient f(,t)는 affine이므로 transition kernel p0t(xt|x0)는 평균과 분산을 closed form으로 얻을 수 있는 Gaussian distribution임
    • 이때 γt=exp(t0βsds)라고 하면, transition kernel은:
      (Eq. 5) p0t(xt|x0)=N{(Iγt)μ+γtx0,Σ(Iγt)}
      - limtTγt=0인 infinite time horizon에서 transition kernel은 N(μ,Σ)로 수렴함
      - 따라서 forward process는 diffusion이 prior distribution에서 sample을 생성하는 것을 보장
    • Grad-TTS의 reverse SDE는 (Eq. 2)(Eq. 4)를 통해 유도됨:
      (Eq. 6) dx=12(Σ1(μx)xlogpt(x))βtdt
    • 결과적으로 score estimator sθ와 prior distiribution N(μ,Σ)가 주어지면, (Eq. 6)을 계산해 learned data distribution에서 sampling 할 수 있음

3. Method

  • Standard normal N(0,I)를 prior로 사용하는 score-based image model과 달리, Grad-TTS는 prior text encoder에서 예측한 spectrogram-like mean vector를 사용함
    • 따라서 input을 수정하면 text에서 예측된 prior와 input mel-spectrogram 사이에 mismatch가 발생하므로 input mel-spectrogram을 직접 수정할 수 없음
    • 이를 해결하기 위해, EdiTTS는 encoded prior에 coarse edit를 적용함
      1. 먼저 input mel-spectrogram은 user edit 없이 diffuse 된 다음,
      2. Score estimator가 reverse SDE를 simulation 하기 전에 sampled prior에 perturbation을 직접 반영함
        - 해당 coarse perturbation은 editing effect를 근사하는 역할을 수행

- Pitch Shift

  • Pitch shifting은 audio segment의 pitch가 user demand에 따라 modifiy 되는 것을 의미함
    • EdiTTS는 먼저 아래 [Algorithm 1]을 따라, prior network에서 생성된 spectrogram-like latent ˜μ를 frequency axis를 따라 shift 함
      - Upward shift는 higher pitch와 연관되고 down shift는 lower pitch와 연관됨
    • 이때 prior를 pad 하고 frequency axis를 따라 ˜μ에 대한 weighted averaging kernel Kps를 convolve 하면서, binary mask m을 적용해 spectrogram의 non-editable region이 변경되지 않도록 함
    • 그리고 x,xedit는 각각 original, perturbed prior distribution에서 sampling 됨
    • Reverse step에서, xedit의 non-editable region은 x를 따르고 editable region은 perturbed prior에서 계산된 score estimates로 업데이트됨
      - 이때 gradient softening mask Sg를 사용하여 edited, non-edited segment 간의 juncture가 smooth 하고 continuous 하도록 보장 

Pitch Shift Algorithm

- Content Replacement

  • Content replacement는 어떤 source의 audio segment를 다른 source의 audio segment로 대체하는 것을 의미함 
    • 먼저 아래 [Algorithm 2]를 따라, 2개의 input waveform을 slice 하여 ˜μasrc,˜μbtrg,˜μcsrc를 얻음
      - b : editable region, a,c : adjacent segment
    • 다음으로 soft mask Sc를 사용해 세 chunck를 concatenate 하고, perturbed prior ˜μedit를 생성함 
    • 최종적으로 pitch shifting과 유사하게 x,xedit를 동시에 denoise 하고, reverse process 전체에 걸쳐 gradient softening mask를 적용함 
    • 이때 soft concatenation은 coda와 combined segment의 onset 간의 infelicitous mixing을 줄일 수 있음
      1. 일반적으로 mispronunciation은 text encoder가 local, global level 모두에서 token mixing을 수행하는 self-attention과 convolution을 사용하기 때문에 발생함
        - 따라서 single frame은 immediate index에 속하는 phoneme information 뿐만 아니라 adjacent phoneme에 대한 hint까지 유출함
      2. 반면 soft concatenation을 사용하면 near frame juncture에서 발생하는 non-immediate component를 weakening 할 수 있음 

Content Replacement Algorithm

4. Experiments

- Settings

- Results

  • Pitch Shift
    • Pitch shift 측면에서 EdiTTS는 FastPitch보다 뛰어난 성능을 보임
    • EdiTTS와 mel-shift 간의 성능 차이는, post-synthesis denoising edit가 필수적임을 나타냄
      - 즉, spectral perturbation 만으로는 충분한 output 품질을 달성하기 어려움

Pitch Shift 성능 비교

  • 추가적으로 CREPE를 통해 edited region의 f0를 추출해 보면, EdiTTS에서 pitch shift kernel을 통해 pitch shift를 직접적으로 control 할 수 있는 것으로 나타남

Edited Sample의 f0 비교

  • Discrete editable region에 대한 up-down/down-up alteration sequence를 비교해 보면, EdiTTS는 unspecified region에는 영향을 주지 않으면서 single sample에 multiple edit를 적용할 수 있음

Up-Down/Donw-Up sample 비교

  • Editing의 granularity를 확인해 보기 위해 문장의 각 단어별로 pitch-up shift를 적용해 보면, EdiTTS는 문장의 다른 부분의 변경 없이 target 단어의 pitch만 적절하게 증가시킬 수 있음

Word-level Pitch Shifting 결과

  • Content Replacement
    • Content edit 측면에서 EdiTTS는 Grad-TTS에 비해 훨씬 낮은 WER과 CER을 달성함

Content Replacement 성능

 

반응형
최근에 올라온 글
최근에 달린 댓글
«   2025/04   »
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
Total
Today
Yesterday