# [論文筆記] Transfer Learning from Speaker Verification to Multispeaker Text-To-Speech Synthesis(Part I)
###### tags: `Voice`
## TTS 架構
提出一個 TTS 的 neural network-based system,可以生成多個 speaker 的語音(train 時候沒見過的 Speaker )


1. 可以把模型看成三個部分組成,小紫和小紅一起完成了 TTS 的任務
1. all models can be trained separately and on distinct datasets.
1. 經過 pretrained 的 Speaker Encoder,可以訓練 Synthesizer 以直接預測 target audio 的 mel spectrogram(梅爾頻譜圖)
* Speaker Encoder(小綠)
* Input:接收到 Speaker 的音頻
* Output:
* 捕捉 input 中 Speaker 的音色,為任意的 unseen speaker 生成對應的 speaker embedding(Speaker ==音色的向量==)
* meaningful representation of the voice of the speaker.
* Synthesizer(小紫)
* 一個基於 Tactron2 的 Seq2seq Synthesis Net:在 Speaker embedding 的基礎上從 text(輸入一句話) 生成 mel spectrogram(梅爾頻譜)
* Assuming a pretrained encoder, the synthesizer can be trained to directly predict the mel spectrograms of the target audio
* Input:Speaker embedding(Speaker Encoder)+phoneme
* Output:mel spectrogram(梅爾頻譜)

* Vocoder(小紅):auto-regressive WaveNet-based
* 可以將 mel spectrogram(梅爾頻譜)轉成 Time domain waveform samples(時域訊號=我們將要聽到的聲音)
Single speaker TTS 的表現優異,Multi-speaker TTS 自然就是一個接下來需要解決的問題,是指生成多個不同 Speaker 聲音的語音的任務
我們證明了 speaker variability 訊息(從 Discriminatively-trained 的 speaker encoder 網路中學到的)可以轉換到的 Multispeaker TTS 任務中,並且可以==合成訓練時 unseen 的 Speaker 語音==。
```
最後,我們證明了隨機 sample 的 speaker embeddings 可以 **synthesize speech**(生成和 training 時不一樣的新 Speaker 語音),說明模型已經學到 high quality 的 Speaker 特徵。
```
---
## Speaker Encoder

$e_{j,i}$:第 $j$ 個 Speaker 的第 $i$ 個embedding,每個 Speaker 有 M 條 embedding(utterance 話語)
$c_j$:第 $j$ 個 Speaker 的 centroid(中心向量),$c_j=\frac{1}{M}\sum^{M}_{m=1}e_{jm}$
$S_{ji,k}$:$e_{j,i}$ 和 $c_k$ 的相似度,我們定義 $S$ 為相似矩陣。$S_{ji,k}=w · cos(e_{j,i}, c_k) + b$
$x_{ji}$($1\leq j\leq N$, $1\leq i\leq M$):特徵向量,從第 $j$ 個 Speaker 的 embedding $i$ 中提取的特徵。

希望同個 Speaker 說的所有話能夠聚類到一起,而又和其他 Speaker 說的話分隔的足夠遠
= 希望每個話語的 embedding 與該 Speaker 的 centroid 相似,同時遠離其他 Speaker 的 centroid
= 希望彩色區域的相似值較大,而灰色區域的相似值較小
* Loss 公式
* Softmax:$L(e_{ji})=S_{ji,j}-\log \sum_{k=1}^Nexp(S_{ji,k})$
* Contrast:$L(e_{ji})= {1-{\sigma (S_{ji,k}})+\max\limits_{\substack{1\leq k\leq N \\k\neq j}}\sigma (S_{ji,k}})$
 
## 參考資料
:::success
### Generalized end-to-end loss for speaker verification
paper:https://arxiv.org/pdf/1710.10467v1.pdf
1. 論文翻譯:Generalized end-to-end loss for speaker verification https://www.cnblogs.com/LXP-Never/p/11799985.html
2. <解析>speaker verification模型中的GE2E損失函數
https://www.cnblogs.com/dynmi/p/13343455.html
3. GE2E說話人識別論文筆記
https://twgreatdaily.com/zh-cn/obJ9g3ABjYh_GJGVG_qx.html
### Transfer Learning from Speaker Verification to Multispeaker Text-To-Speech Synthesis
paper:https://arxiv.org/pdf/1806.04558.pdf
1. SV2TTS(Real-Time-Voice-Cloning)論文簡介及中文復現
https://zhuanlan.zhihu.com/p/112627134
:::