[論文メモ] UnivNet: A Neural Vocoder with Multi-Resolution Spectrogram Discriminators for High-Fidelity Waveform Generation

arxiv.org
github.com

INTERSPEECH 2021

高速・高品質なVocoder、UnivNetを提案

多くのVocoderは帯域制限したメルスペクトログラムから音声波形を生成する。
しかし、一部のモデルでは生成結果のスペクトログラムがオーバースムージングされる問題がある。
これをなんとかしたい。


手法

主にDiscriminatorを使って解決する。

Generator  Gについて

 Gは図1(a)でMelGANに倣った形式。
ノイズ  \textbf{z}を入力、ログメルスペクトログラム  \textbf{c}を条件として音声波形  \hat{\textbf{x}}を生成する。
 \textbf {z} \textbf{c}は同じ長さ。

生成を高速かつ高品質にするためにlocation-variable convolution (LVC)を導入。
LVCは \textbf cを入力としたKernel Predictorによって生成されたカーネルを使ってconvolutionを行う。
LVCは \textbf cによる局所的な情報を適切に扱えるらしい。

residual connectionの前に活性化関数としてgated activation unit(GAU)を追加することでマルチスピーカーの性能が改善。

Discriminator  Dについて

図1(b)のようにDiscriminatorは複数ある。
大まかには2つあり、1つ目はmulti-resolution spectrogram discriminator (MRSD)。
 M個のSTFTのパラメータを用意し、それらでSTFTした結果を各Disciriminatorの入力とする。
既存手法はフィルタバンクを利用して一つのスペクトログラムを分割し識別するが、
提案手法はフルバンドで高解像の音声を生成することを目的としている。

2つ目はHiFiGANで提案されたmulti-period waveform discriminator(MPWD)。

loss

least-squares GANのadversarial lossとauxiliary loss  L_{aux}
 L_{aux}はspectral convergence loss  L_{sc}と log STFT magnitude loss  L_{mag}からなる。これはMulti-band MelGANと同じ。

 ||\cdot||_{F}はフロベニウスノルム、 ||\cdot||_1はL1ノルム。

全体として以下のlossになる。

 D_k k番目のMRSDとMPWDで KはDiscriminatorの合計、 \lambdaはハイパラ。

実験・結果

データセットはLibriTTSデータセット
 Gの中間のチャンネルサイズ違いで2つモデルを用意(UnivNet-c16とUnivNet-c32)
評価指標はPESQ(高いほど良い)、スペクトログラムでのRMSE(小さいほどいい)、MOSの3つ。
結果が表2で、既存手法より優れていそう。速度もそれなり。

ablations。
コンポーネントの有無での性能を評価(MOS)。

MRSDの効果。より細かいスペクトログラムになっていそう。

所感

TorToiSe TTSに採用されていたので読んだ。
個人的にHiFiGANがベースラインなのでそれより高速かつ高精度そうなので良さそう。
ただ、HiFiGANはどうやら自前で学習したっぽいので比較の信頼度は微妙かも。
また、個人的にVocGANもかなり良かったので、VocGANとも比較して欲しかった(あとBDDM)。