WaveNetはSoTAな音声合成手法。 しかし、自己回帰生成モデルなので、生成が遅い。1秒の音声を生成するために24000回のサンプリングが必要。 提案手法”WaveRNN”。ネットワークを大幅に小さくした。 計算時間を短くする手法や、並列して生成可能な手法も提案。 モバイルCPUでもリアルタイムで音声合成可能にした。
DEEP LEARNING JP[DL Papers]http://deeplearning.jp/&⒏DJFOU/FVSBM"VEJP4ZOUIFTJT *$.-)JSPTIJCB,B[VZVLJ %XBOHP.FEJB7JMMBHF
View Slide
Efficient Neural Audio Synthesis 一言で言うと WaveNetを改修して、リアルタイムで波形生成可能なWaveRNNを提案 著者 Nal Kalchbrenner (DeepMind) · Erich Elsen (Google) · Karen Simonyan (DeepMind) · Seb Noury (DeepMind) · Norman Casagrande (DeepMind) · Edward Lockhart (DeepMind) · Florian Stimberg () · Aäron van den Oord (Google Deepmind) · Sander Dieleman (DeepMind) · koray kavukcuoglu (DeepMind) ICML 2018 選択理由 最近リアルタイム声質変換をやっているので、どんな論文か気になった URL: https://arxiv.org/pdf/1802.08435.pdfIUUQTBSYJWPSHQEGQEG
目次 概要 背景 WaveNet Parallel WaveNet 手法 WaveRNN Sparse WaveRNN Subscale WaveRNN 実験・評価
概要 WaveNetはSoTAな音声合成手法 しかし、自己回帰生成モデルなので、生成が遅い 1秒の音声を生成するために24000回のサンプリングが必要 提案手法”WaveRNN” ネットワークを大幅に小さくした 計算時間を短くする手法や、並列して生成可能な手法も提案 モバイルCPUでもリアルタイムで音声合成可能にした
背景: WaveNet TTS(Text To Speech)分野でSoTA 音声波形を1サンプルずつ作成する 自己回帰モデルなのが特徴的 精度は高い一方、生成が遅い Softmax分布を推定 分布の最大値を出力IUUQTEFFQNJOEDPNCMPHXBWFOFUHFOFSBUJWFNPEFMSBXBVEJP
背景: Parallel WaveNet 訓練済みWaveNetを教師としてParallel WaveNetを訓練 自己回帰ではないため高速に生成可能 局所的な独立性を仮定している 順序モデルが崩壊してしまうIUUQTBSYJWPSHQEGQEG
手法: WaveRNN ネットワーク構造が小さい自己回帰モデル 1層のGRUと2層の全結合 Dual Softmax 1サンプル(16bit)推定を2段階に分ける 1段目で粗い8bitを推定 2段目で細かい8bitを推定 Nvidia P100 GPUでリアルタイムの4倍早く生成できた WaveNetは0.3倍程度 GPUのレジスタを使って頑張って高速化しているૈ͍CJUࡉ͔͍CJU
手法: WaveRNN GPUを使ってリアルタイム音声合成できた モバイルCPUを使いたい もっと早くしたい 計算時間とオーバーヘッドを削減する手法を提案 Sparse WaveRNN Subscale WaveRNN
手法: Sparse WaveRNN プルーニングする 訓練が進むと重みの大きさのスパース性が増加する 重みを大きさでソートして、小さいものからマスクをかけて省く マスクをかける数はステップが進むに連れて増やす ブロックごとにマスクをかけることで高速化 他にもGRUのシグモイド関数がモバイルCPUだと遅いのでソフトサイン関数にする、などの工夫 モバイルCPUでもリアルタイム音声合成可能になった
手法: Subscale WaveRNN 系列データを飛ばし飛ばし生成することで、並列生成を可能にする Bつ飛ばしで生成すれば、B並列で生成可能#ฒྻ
手法: Subscale WaveRNN 1×N次元の時系列データをB×(N/B)次元に変形する#ฒྻ
手法: Subscale WaveRNN 時系列的に過去のデータ(左下)から、Bつ飛ばしに生成する#ฒྻ
手法: Subscale WaveRNN 時系列的に過去のデータ(左下)から、Bつ飛ばしに生成する Fデータ生成後に、飛ばされたデータを並列して生成する#ฒྻ
手法: Subscale WaveRNN このxを生成するとき、生成済みのデータ(青と緑)はどれも条件として入力可能 xより左下のデータは過去、xより右にあるデータは未来のデータ
手法: Subscale WaveRNN 生成後、1×N次元の時系列データに戻す
実験条件 TTS(Text To Speech)タスク 24kHz、16bitサンプル 学習データは44時間の読み上げ音声 入力は ”conventional linguistic features” とピッチ 平均オピニオン評点(MOS)やABテストで主観評価 NLLで定性評価 Subscale WaveRNNには、10層のDilated CNNを用いる
実験条件: Sparse WaveRNN
評価: ABテスト 提案手法WaveRNNとのABテスト Sparse WaveRNNは、SparseにしていないWaveRNNより劣る Subscale WaveRNN(16並列生成が可能)は、WaveRNNと同等程度
評価: NLL・MOS
まとめ WaveNetと同程度のクオリティを持つ音声を高速に生成できるネットワーク、WaveRNNを提案 モバイルCPUでもリアルタイム音声合成できる手法、Sparse WaveRNNを提案 WaveRNNをより高速にする手法、Subscale WaveRNNを提案