Upgrade to Pro — share decks privately, control downloads, hide ads and more …

[DL輪読会] Efficient Neural Audio Synthesis

[DL輪読会] Efficient Neural Audio Synthesis

WaveNetはSoTAな音声合成手法。
しかし、自己回帰生成モデルなので、生成が遅い。1秒の音声を生成するために24000回のサンプリングが必要。
提案手法”WaveRNN”。ネットワークを大幅に小さくした。
計算時間を短くする手法や、並列して生成可能な手法も提案。
モバイルCPUでもリアルタイムで音声合成可能にした。

Dwango Media Village

June 01, 2018
Tweet

More Decks by Dwango Media Village

Other Decks in Research

Transcript


  1. DEEP LEARNING JP
    [DL Papers]
    http://deeplearning.jp/
    &⒏DJFOU/FVSBM"VEJP4ZOUIFTJT *$.-

    )JSPTIJCB,B[VZVLJ %XBOHP.FEJB7JMMBHF

    View Slide

  2. 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.pdf


    IUUQTBSYJWPSHQEGQEG

    View Slide

  3. 目次
      概要
      背景
      WaveNet
      Parallel WaveNet
      手法
      WaveRNN
      Sparse WaveRNN
      Subscale WaveRNN
      実験・評価


    View Slide

  4. 概要
      WaveNetはSoTAな音声合成手法
      しかし、自己回帰生成モデルなので、生成が遅い
      1秒の音声を生成するために24000回のサンプリングが必要
      提案手法”WaveRNN”
      ネットワークを大幅に小さくした
      計算時間を短くする手法や、並列して生成可能な手法も提案
      モバイルCPUでもリアルタイムで音声合成可能にした


    View Slide

  5. 背景: WaveNet
      TTS(Text To Speech)分野でSoTA
      音声波形を1サンプルずつ作成する
      自己回帰モデルなのが特徴的
      精度は高い一方、生成が遅い
      Softmax分布を推定
      分布の最大値を出力


    IUUQTEFFQNJOEDPNCMPHXBWFOFUHFOFSBUJWFNPEFMSBXBVEJP

    View Slide

  6. 背景: Parallel WaveNet
      訓練済みWaveNetを教師としてParallel WaveNetを訓練
      自己回帰ではないため高速に生成可能
      局所的な独立性を仮定している
      順序モデルが崩壊してしまう


    IUUQTBSYJWPSHQEGQEG

    View Slide

  7. 手法: WaveRNN
      ネットワーク構造が小さい自己回帰モデル
      1層のGRUと2層の全結合
      Dual Softmax
      1サンプル(16bit)推定を2段階に分ける
      1段目で粗い8bitを推定
      2段目で細かい8bitを推定
      Nvidia P100 GPUでリアルタイムの4倍早く生成できた
      WaveNetは0.3倍程度
      GPUのレジスタを使って頑張って高速化している


    ૈ͍CJU
    ࡉ͔͍CJU

    View Slide

  8. 手法: WaveRNN
      GPUを使ってリアルタイム音声合成できた
      モバイルCPUを使いたい
      もっと早くしたい
      計算時間とオーバーヘッドを削減する手法を提案
      Sparse WaveRNN
      Subscale WaveRNN


    View Slide

  9. 手法: Sparse WaveRNN
      プルーニングする
      訓練が進むと重みの大きさのスパース性が増加する
      重みを大きさでソートして、小さいものからマスクをかけて省く
      マスクをかける数はステップが進むに連れて増やす
      ブロックごとにマスクをかけることで高速化
      他にもGRUのシグモイド関数がモバイルCPUだと遅いのでソフトサイン関数にする、などの工夫
      モバイルCPUでもリアルタイム音声合成可能になった


    View Slide

  10. 手法: Subscale WaveRNN
      系列データを飛ばし飛ばし生成することで、並列生成を可能にする
      Bつ飛ばしで生成すれば、B並列で生成可能


    #ฒྻ

    View Slide

  11. 手法: Subscale WaveRNN
      1×N次元の時系列データをB×(N/B)次元に変形する


    #ฒྻ

    View Slide

  12. 手法: Subscale WaveRNN
      時系列的に過去のデータ(左下)から、Bつ飛ばしに生成する


    #ฒྻ

    View Slide

  13. 手法: Subscale WaveRNN
      時系列的に過去のデータ(左下)から、Bつ飛ばしに生成する
      Fデータ生成後に、飛ばされたデータを並列して生成する


    #ฒྻ

    View Slide

  14. 手法: Subscale WaveRNN
      このxを生成するとき、生成済みのデータ(青と緑)はどれも条件として入力可能
      xより左下のデータは過去、xより右にあるデータは未来のデータ


    View Slide

  15. 手法: Subscale WaveRNN
      生成後、1×N次元の時系列データに戻す


    View Slide

  16. 実験条件
      TTS(Text To Speech)タスク
      24kHz、16bitサンプル
      学習データは44時間の読み上げ音声
      入力は ”conventional linguistic features” とピッチ
      平均オピニオン評点(MOS)やABテストで主観評価
      NLLで定性評価
      Subscale WaveRNNには、10層のDilated CNNを用いる


    View Slide

  17. 実験条件: Sparse WaveRNN


    View Slide

  18. 評価: ABテスト
      提案手法WaveRNNとのABテスト
      Sparse WaveRNNは、SparseにしていないWaveRNNより劣る
      Subscale WaveRNN(16並列生成が可能)は、WaveRNNと同等程度


    View Slide

  19. 評価: NLL・MOS


    View Slide

  20. まとめ
      WaveNetと同程度のクオリティを持つ音声を高速に生成できるネットワーク、WaveRNNを提案
      モバイルCPUでもリアルタイム音声合成できる手法、Sparse WaveRNNを提案
      WaveRNNをより高速にする手法、Subscale WaveRNNを提案


    View Slide