天天看点

FastSpeech: Fast, Robust and Controllable Text to Speech

  • Abstract:

    • 提出一种基于transformer的新型前馈网络FastSpeech,和自回归的Transformer TTS相比 将梅尔谱的生成速度提高了近270倍。端到端的语音合成速度提高了38倍,大gpu上语音合成速度达到实时语音速度的30倍
  • Introduction:

    • 基于神经网络的tts和传统语音合成的拼接法和参数法相比,end to end的TTS通常具有更好的声音自然度。
    • 但在基于NN的tts面临的问题:
      • 合成语音的速度较慢:端到端模型通常以自回归(Autoregressive)的方式生成梅尔谱(Mel-Spectrogram),再通过声码器(Vocoder)合成语音,而一段语音的梅尔谱通常能到几百上千帧,导致合成速度较慢
      • 合成语音的稳定性较差:通常采用encoder-attn-decoder机制自回归。由于序列生成的错误传播,以及注意力对齐不准,导致出现重复的吐词和漏词。
      • 缺乏可控性:自回归的网络自己决定生成的语音的长度,无法显示的控制语音的语速或韵律停顿等
    • FastSpeech和Tacotron2或者Transformer TTS的优势:
      • 1.快速:和自回归的transformer TTS相比 ,生成梅尔谱速度快了270倍,将TTS合成速度快了近38倍,单GPU语音合成速度快30倍
      • 2.鲁棒:几乎完全消除了吐词了漏词现象
      • 3.可控:可以平滑调整语音速度和控制停顿 提升韵律
  • Model:

    • Figure1:
      FastSpeech: Fast, Robust and Controllable Text to Speech
    • FFT:
      • FastSpeech采用新型的前馈神经网络,丢弃掉了en-atten-de。主要模块采用Transformer的self-attn+一维卷积,称之为FFT块。通过叠加多个FFT块,用于将音素到梅尔谱变化。中间有个长度调节器(LengthRegulator),用来调节音素序列到梅尔谱序列之间的长度差异。
    • The length regulator:
      • 通常音素长度小于梅尔谱长度,即一个音素对应几个梅尔谱长度。将每个音素对齐的梅尔谱长度成为音素持续时间。
      • 长度调节器通过每个音素的持续时间将音素序列平铺以匹配到梅尔谱序列的长度。
      • 通过等比例的延长或者缩短音素的持续时间,用于声音速度的控制。
      • 通过调节句子中空格字符的持续时间,来控制单词之间的停顿,从而调整声音的部分韵律。
    • Duration predictor:
      • 音素持续时间对长度调节非常重要;
      • 包括:一个两层的一维卷积,然后叠加一个线性层输出标量,预测音素的持续时间。
      • 这个模块叠加在音素侧上面,使用MSE作为loss。
      • 真实标签是通过Transformer TTS从en-de模型中抽取出注意力对齐信息得到。
  • 实验评估:

    • 声音质量:
      • 使用LJSpeech数据集,长度约24小时; 分为三组300验证集,300测试集,剩下的12500作为训练
      • 对测试集采用MOS测试:
        • Mos测试:
          FastSpeech: Fast, Robust and Controllable Text to Speech
        • demo:https://speechresearch.github.io
    • 合成速度:
      • 合成速度与Transformer对比:
        FastSpeech: Fast, Robust and Controllable Text to Speech
    • 鲁棒性:
      • 自回归的en-attn-de机制可能导致音素和梅尔谱之间的错误对齐,导致语音出现吐词和漏词现象,评估鲁棒性:
        FastSpeech: Fast, Robust and Controllable Text to Speech
      • demo:https://speechresearch.github.io
    • 语速调节:
      • FastSpeech可以通过长度调节器很方便地调节音频的语速。通过实验发现,从0.5x到1.5x变速,FastSpeech生成的语音清晰且不失真。
        FastSpeech: Fast, Robust and Controllable Text to Speech
        FastSpeech: Fast, Robust and Controllable Text to Speech
      • demo:https://speechresearch.github.io
  • 消融实验对比:
    • 通过CMOS评估FastSpeech重要模块和方法:
      FastSpeech: Fast, Robust and Controllable Text to Speech
  • 下一步研究:
    • 应用在多说话人,其他语言,和低资源的场景中
    • 或者将FastSpeech和并行神经解码器结合在一起训练,形成一个完全端到端的语音到文本并行架构

继续阅读