티스토리 뷰
Paper/TTS
[Paper 리뷰] DPP-TTS: Diversifying Prosodic Features of Speech via Determinantal Point Process
feVeRin 2024. 12. 15. 12:04반응형
DPP-TTS: Diversifying Prosodic Features of Speech via Determinantal Point Processes
- Text-to-Speech model은 다양한 prosody를 합성할 수 있어야 함
- BUT, 기존 model은 prosody diversity를 향상하기 위해 scaled sampling temperature에 의존함
- Sampling procedure는 single speech sample에 focus 하므로 sample 간 diversity가 neglect 됨 - DPP-TTS
- Prosody diversifying module과 Determinantal Point Process에 기반한 text-to-speech model
- 여러 sample 간의 perceptual diversity를 동시에 고려하여 speech sample을 생성
- 논문 (EMNLP 2023) : Paper Link
1. Introduction
- 최근의 Text-to-Speech (TTS)는 FastSpeech2, DiffSinger, EATS, VITS 등과 같이 high-fidelity speech를 합성할 수 있음
- BUT, human speech는 fidelity 외에도 intonation, stress, rhythm 등의 다양한 prosody pattern을 가짐
- 일반적으로 해당 acoustic feature를 반영하기 위해 VAE나 flow model을 사용함
- Adequate temperature로 prior distribution을 sampling 하여 speech variation을 control 함 - 한편으로 BERT embedding의 syntax information이나 text semantic을 반영할 수도 있음
- 일반적으로 해당 acoustic feature를 반영하기 위해 VAE나 flow model을 사용함
- BUT, 해당 방식들은 다음의 한계점을 가짐:
- 다양한 prosody pattern을 생성하기 위해 high temperature를 사용하면 naturalness가 저하됨
- 각 sample을 independent 하게 처리하므로 separately generated sample 간의 diversity를 보장하지 못함
- BUT, human speech는 fidelity 외에도 intonation, stress, rhythm 등의 다양한 prosody pattern을 가짐
-> 그래서 diverse speech sample을 생성하기 위해 Determinantal Point Proecess (DPP)를 도입한 DPP-TTS를 제안
- DPP-TTS
- Determinantal Point Process (DPP)에 기반한 prosody diversifying module과 새로운 training objective를 도입
- Adpative MIC objective function과 DPP kernel을 통해 다양하고 natural 한 prosody를 합성 - 추가적으로 sophisticated prosody modeling을 위해 sampling에 대한 conditional information을 활용하는 conditional DPP를 제시
- 전체 input text를 fine-grained text segment로 segment 한 다음,
- Neighbor semgent를 반영한 targeted segement의 prosodic feature를 sampling 하여 expressive sample을 생성
- 해당 conditional DPP를 TTS model에 도입하기 위해 다음의 방법을 적용
- Prosodic Boundary Detector (PBD)를 통해 input text에서 key segment를 추출하여 conditional DPP의 sampling range를 결정
- Variable length segment 간의 similarity metric인 Soft-Dynamic Time Warping Discrepancy (Soft-DTW)를 채택하여 prosodic feature의 length 문제를 해결
- Determinantal Point Process (DPP)에 기반한 prosody diversifying module과 새로운 training objective를 도입
< Overall of DPP-TTS >
- Conditional DPP와 PBD 기반의 fine-grained prosody modeling을 통해 다양한 prosody를 반영
- 결과적으로 기존보다 뛰어난 합성 품질과 diversity를 달성
2. Background
- Determinantal Point Process
- Prosodic feature로 구성된 ground set $\mathcal{Y}$가 주어지면,
- Determinantal Point Process (DPP)는 positive semi-definite matrix $\mathbf{L}$을 통해 $\mathcal{Y}$의 모든 subset에 대한 probability distribution을 정의함:
(Eq. 1) $\mathcal{P}_{\mathbf{L}}(Y)=\frac{\det(\mathbf{L}_{Y})}{\det(\mathbf{L}+\mathbf{I})}$
- $\det(\cdot)$ : matrix determinant
- $\mathbf{L}_{Y}$ : subset $Y$에 의해 index 된 entry를 가지는 $\mathbf{L}$의 submatrix
- $\det(\mathbf{L}+\mathbf{I})$ : normalization constant로 사용되는 denominator - Item 간 diversity를 modeling 하기 위해 DPP kernel $\mathbf{L}$은 symmetric similarity matrix $\mathbf{S}$로 구성됨
- $S_{ij}$ : item $x_{i}$, $x_{j}$ 간의 similarity - 이때 kernel $L$은 quality vector를 incorporating 하여 각 item을 quality에 따라 weighting 하는 Gram matrix로 decompose 할 수 있음
- 그러면 kernel matrix는 $L_{i,j}=q_{i}\cdot S_{ij}\cdot q_{j}$로 정의되고, $q_{i}$는 item quality를 의미 - 한편으로 quality는 prosodic feature의 likelihood로 볼 수 있음
- 두 prosodic feature $Y_{1}=\{i,j\}$가 주어지면, 두 prosodic feature를 sampling 할 확률 $\mathcal{P}_{L}\left( \{i,j\}\right)$는 $\det(\mathbf{L}_{Y_{1}})=q_{i}^{2}\cdot q_{j}^{2}\cdot (1-S_{ij}^{2})$에 비례함
- 즉, 두 prosodic feature가 highly similar 하면 함께 sampling 될 가능성이 낮고, high quality value를 가지면 함께 sampling 될 가능성이 큼
- Determinantal Point Process (DPP)는 positive semi-definite matrix $\mathbf{L}$을 통해 $\mathcal{Y}$의 모든 subset에 대한 probability distribution을 정의함:
- Conditional Determinantal Point Process
- DPP를 통해 generated sample 간 diversity를 얻을 수 있지만 여전히 monotonous pattern이 존재할 수 있음
- 이를 해결하기 위해서는 target의 prosodic feature를 target의 neighboring segment로 modeling 해야 함
- 이때 $A$와 intersect 하지 않는 subset $B\subseteq Y$에 대해 DPP를 conditional DPP로 확장하면:
(Eq. 2) $\mathcal{P}(Y=A\cup B | A\subseteq Y)=\frac{\mathcal{P}(Y=A\cup B)}{\mathcal{P}(A\subseteq Y)}$
(Eq. 3) $=\frac{\det(\mathbf{L}_{A\cup B})}{\det(\mathbf{L}+\mathbf{I}_{\bar{A}})}$
- $\mathbf{I}_{\bar{A}}$ : $\mathcal{Y}-A$의 element로 index 된 diagonal element는 1이고 나머지는 0인 matrix - 해당 conditional DPP에서 ground set $\mathcal{Y}$의 element는 주어진 context $A$를 고려한 kernel에 따라 sampling 될 수 있음
- 결과적으로 target의 neighbor segment에 해당하는 prosodic feature는 conditional DPP의 condition으로 사용됨
- Prosody Phrasing
- Human speech는 일반적으로 message와 speaker intention을 전달하기 위해 pause를 사용하므로, utterance는 prosodic unit과 같은 fine-grained segment로 divde 되어야 함
- 특히 relevant text context를 반영한 prosody pattern은 TTS 성능을 향상할 수 있고 prosodic boundary 역시 naturalness와 intelligibility에 큰 영향을 미침
- 따라서 input utterance의 inherent prosodic structure를 context에 반영하기 위해, 논문은 prominence label과 large corpus로 training 된 Prosodic Boundary Detector (PBD)를 도입함
3. Method
- DPP-TTS는 FastSpeech2를 기반으로 하는 base TTS model, Prosody Diversifying Module (PDM), Prosody Boundary Detector (PBD)로 구성됨
- 이때 base TTS model이 training 되면, PDM이 prosody predictor 앞에 insert 되어 training 됨
- Main Modules of DPP-TTS
- Prosody Predictor
- Prosody predictor는 prosody의 duration과 pich의 distribution을 추정함
- 특히 human-like rhythm/pitch를 위해 stochastic prosody predictor는 normalizing flow를 활용함
- Stochastic duration predictor는 phoneme duration distribution을 추정하고, stochastic pitch predictor는 hidden sequence에서 phoneme-level pitch distribution을 추정함
- 추가적으로 Prosody Diversifying Module (PDM) training 과정에서 prosodic feautre에 대한 density estimator 역할을 수행함
- Training 시 prosody predictor는 prosodic feature distribution에서 normal distribution으로의 mapping을 학습함
- Phoneme duration/pitch likelihood의 variational lower bound를 maximize 하도록 training 됨 - 추론 시에는 learned flow를 reversing 하여 phoneme-level duration/pitch를 예측함
- Prosody Diversifying Module (PDM)
- Prosodic predictor는 likelihood의 lower bound에 대해서만 train 되므로 diverse, non-monotonous prosody pattern을 생성하기에 적합하지 않음
- 따라서 expressive speech modeling을 위해 prosody predictor 앞에 Prosody Diversifying Moudle (PDM)을 추가함
- 해당 module은 diverse prosodic feature에 대해 standard normal distribution에서 다른 distribution으로 sampling을 mapping 하는 역할을 수행함
- 이때 PDM은 conditional DPP에 기반한 objective로 training 됨
- 결과적으로 DPP-TTS는 추론 시 PDM에 의해 여러 prosodic candidate가 생성됨
- 이후 single sample이 생성되면 MAP 추론을 통해 prosodic feature를 select 하고
- Multiple sample이 생성된 경우, DPP sampling을 통해 multiple prosodic feautre를 생성함
- Prosodic Boundary Detector (PBD)
- 논문은 word prominence에 기반한 prosodic boundary를 활용함
- 이때 boundary를 결정하기 위해 pre-trained Sentence Transformer를 backbone으로 하는 Prosodic Boundary Detector (PBD)를 구축함
- 해당 PBD는 LibriSpeech script와 prominence class로 구성된 Prominence dataset을 활용하여 training 됨 - PBD는 text sequence input을 사용하여 각 word의 prominence level을 예측하고, prominence level에 따라 prosodic unit이 input utternace에서 추출됨
- Training Process of PDM
- Prosodic Diversifying Module (PDM)의 training은 다음의 3-step으로 구성되고, conditional Maximum Induced Cardinality (MIC) objective가 사용됨
- Input text segmentation
- Prosodic feature candidate generation
- Building DPP kernel
- Segmentation of the Input Text
- 해당 단계에서는 Prosody diversification을 위해 input text target을 choice 함
- 먼저 sentence가 주어지면 PBD는 prominent word의 position을 예측함
- 이후 해당 position을 사용하여 context/target sequence를 divide 함
- 여기서 각 target은 prominent word에서 시작하여 다른 prominent word 앞에서 끝남
- 추가적으로 target에 대해 동일한 수의 word가 있는 adjacent left/right context가 choice 됨
- 해당 단계에서는 Prosody diversification을 위해 input text target을 choice 함
- Generation of Prosodic Feature Candidates
- 해당 단계에서는 DPP sampling을 위해 multiple prosodic candidate를 생성함
- 먼저 text encoder를 통해 input text로부터 hidden sequence를 생성함
- 이후 pre-trained prosody predictor는 normal distribution sample을 사용하여 hidden sequence에 condition 된 $n_{c}$ prosodic feautre를 생성함
- 한편으로 normal distribution의 다른 new sample은 PDM에 전달되고 hidden sequence에 condition 된 prosodic predictor는 PDM output feature로부터 target의 new prosodic feautre를 생성함
- 최종적으로 latter-generated target prosodic feature가 former-generated target feature를 대체하여, target/context가 entangle 된 $n_{c}$ prosodic candidate를 생성함
- 해당 단계에서는 DPP sampling을 위해 multiple prosodic candidate를 생성함
- Construction of DPP Kernel
- Generated candidate는 left/right context $d_{L}, d_{R}$과 $n$개의 target $d_{1},d_{2},...,d_{n}$으로 split 되어 DPP candidate set을 구성함
- 이후 conditional DPP kernel은 각 candidate feature의 diversity와 quality (likelihood)를 incorporating 하여 구축됨
- 여기서 quality feature는 prosody의 smooth transition을 보장함 - Conditional DPP kernel은 $\mathbf{L}=\text{diag}(q)\cdot \mathbf{S}\cdot \text{diag}(q)$로 정의됨
- $\mathbf{S}$ : similarity matrix, $q$ : quality vector
- Objective Function
- Similarity Metric
- DDP kernel을 구성하기 위해서는 feature 간의 similarity metric을 정의해야 함
- BUT, target sequence와 context sequence는 length가 vary 하므로 Euclidean distance를 사용할 수 없음 - 따라서 논문은 Soft-DTW를 사용함:
(Eq. 4) $\mathbf{S}_{i,j}=\exp(-\textbf{dtw}_{\gamma}^{D}(d_{i},d_{j}))$
- $\textbf{dtw}_{\gamma}^{D}$ : metric $D$, smoothing parameter $\gamma$를 가지는 Soft-DTW discrepancy - Metric $D$가 $L_{1}$ distance $D(x,y)=\sum_{i}||x_{i}-y_{i}||$ 또는 half gaussian $D(x,y)=||x-y||^{2}_{2}$$+\log (2-\exp(-||x-y||_{2}^{2}))$인 경우, similarity matrix는 positive semi-definite가 됨
- 따라서 논문에서는 Soft-DTW의 metric으로 $L_{1}$ distance를 채택하여 $\mathbf{S}$를 positive semi-definite로 만듦
- DDP kernel을 구성하기 위해서는 feature 간의 similarity metric을 정의해야 함
- Quality Metric
- Prosodic feature의 naturalness를 반영하기 위해 predicted feature의 esitmated density에 따라 quality score를 계산함
- Feature $x$, posterior $q(z_{i}|x;\phi)$, joint likelihood $p(x,z_{i};\theta)$가 주어지면, predicted feature의 density value는 prosody predictor를 사용하여 importance sampling으로 $p(x;\theta,\phi)\approx \sum_{i=1}^{N}\frac{p(x,z_{i};\theta)}{q(z_{i}|x;\phi)}$와 같이 계산됨
- $\phi, \theta$ : variational method에 기반한 prosody predictor의 parameter
- 경험적으로 likelihood가 specific threshold보다 큰 경우, quality score에 penalty를 주지 않는 것이 더 효과적인 것으로 나타남 - 그러면 log-likelihood $\pi(x)=\log p(x)$에 대해 single sample의 quality score는:
(Eq. 5) $q(x)=\left\{\begin{matrix}
w, & \text{if} \,\, \pi(x)>=k \\
w\cdot \exp(\pi(x)-k), & \text{otherwise} \\
\end{matrix}\right.$
- $w$ : quality weight, $k$ : threshold value (training dataset의 average density로 설정됨) - PDM을 training 하기 위해서는 kernel $\mathbf{L}$에 대한 diversity를 측정해야 함
- Straightforward choice로써 Maximum Likelihood (MLE) objective $\mathcal{P}_{\mathbf{L}}(Y)=\log \det(\mathbf{L}_{Y})-\log \det(\mathbf{L}+\mathbf{I})$를 고려할 수 있음
- BUT, MLE는 almost identical prosodic feature를 예측하므로 objective value가 0이 되어 training process를 unstable 하게 만듦 - 따라서 논문은 Maximum Induced Cardinality (MIC) objecitve $\mathbb{E}_{Y\sim \mathcal{P}_{\mathbf{L}[|Y|]}}$를 사용함
- 여기서 context segment $d_{L},d_{R}$은 conditional DDP의 MIC objecitve에 대한 condition으로 사용됨
- Straightforward choice로써 Maximum Likelihood (MLE) objective $\mathcal{P}_{\mathbf{L}}(Y)=\log \det(\mathbf{L}_{Y})-\log \det(\mathbf{L}+\mathbf{I})$를 고려할 수 있음
- 결과적으로 candidate set $[d_{L},d_{R},d_{1},d_{2},...,d_{N}]$에 대한 objective function과 derivative는:
- [Proposition 1.] (MIC objective of CDPPs)
Candidate set $[d_{L},d_{R},d_{1},d_{2},...,d_{N}]$에 대하여 conditional DPP의 MIC objective와 derivative는 다음과 같다:
(Eq. 6) $\mathbf{L}_{MIC}=\text{tr}(\mathbf{I}-[(\mathbf{L}(\theta)+\mathbf{I}_{\bar{A}})^{-1}]_{\bar{A}})$
(Eq. 7) $\frac{\partial \mathbf{L}_{MIC}}{\partial \theta}=((\mathbf{L}+\mathbf{I}_{\bar{A}})^{-1} \mathbf{I}_{\bar{A}}(\mathbf{L}+\mathbf{I}_{\bar{A}})^{-1})^{\top}\frac{\partial \mathbf{L}}{\partial \theta}$
여기서 $A$는 context $(d_{L},d_{R}$의 set이고, $\bar{A}$는 set $A$의 complement, $\theta$는 PDM의 parameter이다. - [Remark 1.]
MLE objective는 2개의 similar item이 include 된 경우 determinant volume이 $0$에 가까워지므로 unstable 해진다. 반면 MIC objective는 objective gradient가 full-rank structure를 보장하므로 training stability를 보장할 수 있다. - 추론 시 single prosodic feature를 예측하기 위해 MAP inference는 $x^{*}=\arg\max_{x\in\bar{A}}\log \det(\mathbf{L}_{\{x\}\cup A})$와 같이 single item set에 대해서만 수행됨
- 그렇지 않은 경우, multiple prosodic feature를 sampling 하기 위해 $k$-DPP sampling method가 사용됨
- [Proposition 1.] (MIC objective of CDPPs)
4. Experiments
- Settings
- Dataset : LJSpeech
- Comparisons : VITS, DiffSpeech, Flowtron, SyntaSpeech
- Results
- Perceptual Diversity Results
- Side-by-Side test 측면에서 DPP-TTS가 가장 선호됨
- Paragraph 내 prosody를 비교했을 때도 DPP-TTS의 성능이 가장 뛰어남
- Quantitative Evaluation
- $\sigma_{p}$, duration, inference time을 비교해 보면, 마찬가지로 DPP-TTS가 가장 뛰어난 성능을 보임
- MIC vs MLE Objective for Training PDM
- Conditional DPP에 대한 MIC training objective의 효과를 확인해 보면
- Training loss trajectory 측면에서 candidate set의 prosodic feature가 거의 동일한 경우 MLE objective에 대한 gradient norm은 blow up 하므로 unstable training이 나타남
- 반면 MIC objective의 경우 gradient matrix의 full rank structure를 보장하므로 instability 문제가 발생하지 않음
- Effectiveness of PBD
- PBD를 사용하는 경우 perceptual diversity, MOS를 향상할 수 있음
반응형
'Paper > TTS' 카테고리의 다른 글
댓글