音声合成
テキストから音声波形を生成する。 TTS の中核。
2 段構成#
テキスト → [音響モデル] → メルスペクトログラム → [ボコーダ] → 波形直接波形を作るのではなく、 中間表現(メルスペクトログラム)を挟むのが標準的。
理由は次元の差にある。 1 秒の音声は 24,000 サンプルだが、 メルスペクトログラムなら 80×86 程度。 音響モデルは扱いやすい低次元を扱い、 波形の細部はボコーダに任せる。
ボコーダの変遷#
| モデル | 原理 | 速度 |
|---|---|---|
| WaveNet | 自己回帰的に 1 サンプルずつ | 極めて遅い |
| Parallel WaveGAN、HiFi-GAN | GAN で並列生成 | 実時間より速い |
| 拡散ボコーダ | 拡散 | 高品質、中程度 |
WaveNet(2016)は品質で従来手法を大きく超えたが、 16,000 回の逐次計算で 1 秒を生成するため実用に耐えなかった。 並列化がその後の主題になった。
難しさは韻律にある#
音素の並びを音にするだけなら難しくない。 自然さを決めるのは
- イントネーション、アクセント
- 間の取り方、話速
- 感情、強調
これらはテキストに書かれていない。 文脈から推定する必要があり、 曖昧性が残るため one-to-many の問題になる。
日本語では特にアクセント(高低)の推定が難しく、 「橋 / 箸 / 端」のような同表記語の判別が課題になる。
参考文献#
- Aäron van den Oord et al. WaveNet: A Generative Model for Raw Audio. 2016. https://arxiv.org/abs/1609.03499
- Jonathan Shen et al. Natural TTS Synthesis by Conditioning WaveNet on Mel Spectrogram Predictions (Tacotron 2). ICASSP, 2018. https://arxiv.org/abs/1712.05884
- Jungil Kong, Jaehyeon Kim, Jaekyoung Bae. HiFi-GAN. NeurIPS, 2020. https://arxiv.org/abs/2010.05646