1、论文概括
基于知识蒸馏(KD)的思路,该文引入teacher-student的训练方法对Tacotron2模型进行改进。
知识蒸馏相关介绍(简而言之,知识蒸馏即是通过学习将“知识”从一个庞大复杂的模型迁移到一个更小的模型,通过训练让新模型的输出分布接近原模型的输出分布,它可以压缩模型大小、降低部署复杂度、去除冗余信息,其中引入温度T等概念用“蒸馏”来形容非常形象)
2、要解决的问题
在自回归模型中,由于training和inference阶段的不匹配导致exposure bias问题,当模型在测试时若出现out-of-domain的数据,合成结果表现将会较差。
自回归TTS模型中:训练阶段,decoder是将上一时刻的真实语音帧作为输入来产生预测帧,这叫做tecacher forcing mode;推断阶段,decoder则是用上一时刻的预测语音帧作为输入来产生预测帧,这叫做free running mode。因此,就会存在训练(使用真实帧)与推断(使用预测帧)过程中的不匹配,特别是测试out-of-domain数据时,预测结果可能将与期望的真实结果大相径庭(比如略过skipping、重复repeating words、不完整的合成incomplete synthesis和不合适的韵律中断inappropriate prosody phrase breaks等)。
3、主要贡献
①提出一种端到端TTS模型的压缩方法(知识蒸馏的作用)。
②首次将teacher-student训练方法应用到Tacotron2模型中,teacher模型以teacher forcing mode从训练数据中学习text和speech的映射关系;student模型结合teacher模型中的概率分布和按照free running mode的方式进行训练。该方法在中文和英文的out-of-domain测试数据中已被验证可行。
4、模型原理
首先介绍下scheduled sampling,它也是用于解决exposure bias问题方法之一,即RNN网络在训练时会以概率p选取真实值或者预测值作为下一时刻的输入,初始选取真实值的概率p设置较大,随着训练次数增大减小p来保证模型训练和预测一致。在本文中Tacotron2-SS作为参考basline之一。
接下来是本文提出的teacher-student训练方式:
如图所示,以teacher forcing mode训练一个Tacotron2的teacher模型,它使用真实帧作为下一时刻预测的输入,可以学习到训练语音数据的真实分布。其中y^代表预测值,y代表目标值,θ是模型参数。
然后以free running mode训练一个student模型,student模型的网络结构与teacher模型类似,但在decoder阶段使用预测帧作为下一时刻的输入,这样可以使training更接近inference。
在训练中,输入文本序列经过encoder编码成为隐状态ht,然后Decoder-T在每一时刻t输出隐状态st。
Decoder-S同样得到隐状态s^t。
按照知识蒸馏的思路,student模型将会学习teacher模型(或者说用训练好的teacher模型指导student模型的训练),通过训练使它的隐状态接近teacher模型的隐状态。对于teacher模型,定义了一个损失函数——feature loss;对于student模型则设计了两个损失函数——一个是与teacher一样的feature loss,另一个是KD的distillation loss。
feature loss是计算生成语音与真实语音误差的函数:
distillation loss是计算知识蒸馏过程中student隐状态与teacher隐状态误差的函数:
student模型的总loss由feature loss和distillation loss构成:
5、实验结果
准备
语料数据:中文(12h DataBaker),英文(LJSpeech)。
baseline:Tacotron2-SS,Tacotron2-FR(free running mode)。
vocoder:Griffin-Lim。
主观评价
测试out-of-domain数据,对于中文:测试Blizzard Challenge 2019 Chinese dataset中的500个样例;对于英文:测试FastSpeech中的50个样例和额外的30个长句。邀请了20个英语说话人和15个中文说话人参与合成结果的评价。
自然度
对三个模型采用MOS评分,其中Tacotron2-FR由于质量过差被剔除。
然后对KD和SS模型的语音质量进行AB preference test,显然KD模型不管是中文还是英文上的表现都比SS好。
鲁棒性
如表1中所示,KD模型相比SS模型也显著降低了WER(repeat和skip在合成文本总字符中占的比例),其中KD模型的结果里未出现repeat。
6、结论
本文结合知识蒸馏研究了一个能提高out-of-domain文本的语音合成质量的Tacotron2训练方法,teacher-student的训练策略,解决了exposure bias问题。通过一系列实验评估中文、英文语音合成的自然度和鲁棒性,发现设计的Tacotron2-KD模型在两种语言上都比baseline表现更好。并且,我们还发现Tacotron2-KD模型能够提高韵律渲染(prosody renderings)效果。