티스토리 뷰
Paper/TTS
[Paper 리뷰] EdiTTS: Score-based Editing for Controllable Text-to-Speech
feVeRin 2024. 6. 11. 09:56반응형
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이 생성되는 한계가 있음
- 해당 방식들은 complex data distribution을 Gaussian noise로 gradually corrupt 하고 gradient field를 추정하여 noisy prior를 original distribution으로 reverse 하는 iterative training scheme을 활용함
-> 그래서 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
- : standard Wiener process,w : finite time intervalt 에서 sample 된 value[0,T]
- : 각각f(⋅,t),g(⋅,t) 의 drift와 diffusion coefficientx - 이때 해당 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
- : reverse-time Wiener processˉw - 특히 (Eq. 1)의 Kolmogorov forward equation은 simplified flow ordinary differential equation과 같음:
(Eq. 3)dx=f(x,t)dt−12∇⋅[g(x,t)g(x,t)⊤]dt−12g(x,t)g(x,t)⊤∇xlogpt(x)dt
- 즉, 두 equation 모두 다른 form을 가지지만 동일한 statistical process를 describe 함 - 따라서, score
를 근사할 수 있는 time-dependent model∇xlogpt(x) 가 주어지면,sθ(x,t) 를 sampling 하고 (Eq. 3)에 따라 reverse step을 계산하여 original data distribution으로부터xT∼pT 를 얻을 수 있음x0∼p0
- Original data distribution은 Ito SDE를 따라 Gaussian noise로 corrupt 됨:
- Grad-TTS
- EdiTTS는 score-based TTS 모델인 Grad-TTS를 기반으로 함
- 먼저 Grad-TTS의 forward SDE는:
(Eq. 4)dx=12Σ−1(μ−x)βtdt+√βtdw
- : prior distribution의 평균,μ : covariance matrix,Σ : noise scheduleβt
- 여기서 평균은 prior text encoder로부터 추정되고, covariance는 identity matrix로 가정됨 - Drift coefficient
는 affine이므로 transition kernelf(⋅,t) 는 평균과 분산을 closed form으로 얻을 수 있는 Gaussian distribution임p0t(xt|x0) - 이때
라고 하면, transition kernel은:γt=exp(−∫t0βsds)
(Eq. 5)p0t(xt|x0)=N{(I−√γt)μ+√γtx0,Σ(I−γt)}
- 인 infinite time horizon에서 transition kernel은limt→Tγt=0 로 수렴함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
와 prior distiributionsθ 가 주어지면, (Eq. 6)을 계산해 learned data distribution에서 sampling 할 수 있음N(μ,Σ)
- 먼저 Grad-TTS의 forward SDE는:
3. Method
- Standard normal
를 prior로 사용하는 score-based image model과 달리, Grad-TTS는 prior text encoder에서 예측한 spectrogram-like mean vector를 사용함N(0,I) - 따라서 input을 수정하면 text에서 예측된 prior와 input mel-spectrogram 사이에 mismatch가 발생하므로 input mel-spectrogram을 직접 수정할 수 없음
- 이를 해결하기 위해, EdiTTS는 encoded prior에 coarse edit를 적용함
- 먼저 input mel-spectrogram은 user edit 없이 diffuse 된 다음,
- 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˜μ 를 convolve 하면서, binary maskKps 을 적용해 spectrogram의 non-editable region이 변경되지 않도록 함m - 그리고
는 각각 original, perturbed prior distribution에서 sampling 됨x,xedit - Reverse step에서,
의 non-editable region은xedit 를 따르고 editable region은 perturbed prior에서 계산된 score estimates로 업데이트됨x
- 이때 gradient softening mask 를 사용하여 edited, non-edited segment 간의 juncture가 smooth 하고 continuous 하도록 보장Sg
- EdiTTS는 먼저 아래 [Algorithm 1]을 따라, prior network에서 생성된 spectrogram-like latent

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

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

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

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

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

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

반응형