mega-TTS2

文章目录

  • method
  • 项目参与者记录

method

mega-TTS2_第1张图片

项目参与者记录

mega-tts2,一来建立的是prompt和target之间的联系(噪声、背景音也在这种联系中);二来VQVAE会吸收掉一定程度的噪声。所以在测试过程中,有尝试过用一些名人的综艺进行生成,这些音频带有背景音乐。会发现生成的样本中也有微弱的背景音乐。并且prompt是音乐,生成的就是音乐,prompt是底噪,生成的也会有一定底噪。

可以理解成训练数据中,有噪声样本wenetspeech,有相对干净样本librilight和一些其他的中文数据。mega-tts2希望能够尽可能模仿prompt,所以噪声样本是有必要存在数据集中的。个人观点是这样的

MRTE:兼顾计算效率和生成效果,一般1000~2000帧比较合适,可以设置一个定值;inference的时候,太短就repeat,太长就截断;

抛开LM(因为推理过程才用到,可以用真实mel输入prosody encoder替换) 这个框架就是一个带prosody encoder的ganspeech 想复现 可以直接fastspeech+gan+prosodyencoder 在开源数据上训 然后推理用真实mel就好
Mega2的prosody encoder采用的不是phoneme pooling了,用的是stride=8(统计中数据集的平均phoneme长度约等于9.1);PLM 输入是文本+音色+韵律。真值是用GT mel,使用prosody encoder提取出来的code

megaTTS没有做降噪,会在mfa阶段丢弃一些不好的数据;大数据是关键,pooling的结构是关键----prosody encoder选择mean-pooling=8,因为统计数据集的phn-dur平均值为9.1(phoneme pooling或者8倍pooling,个人认为8倍会好一点,比phoneme更鲁棒,因为脏数据提取的phoneme边界不太准确),content length需要用对齐信息扩展到T,然后//8。 乍一听这两套方案应该是差不多的,我们也是都做了实验才发现prosody code=T//8会更好一些;
推理时PLM的文本输入是prompt文本和target文本,plm是有prompt依据的一对多,prompt信息在大数据量脏数据的时候是特别关键的;训练的时候也是 目标文本+很多prompt文本+很多prompt韵律–>目标韵律;感觉plm利用了大量的prompt对处理带噪数据很有用,如果噪声被prosody vq建模,训练PLM时,大量的prompt中有干净的数据有噪声数据。PLM可以将赶紧数据和脏数据隔离开—这个结论是建立在vq能对噪声建模的假设之上,如果vq的信息能很好的表示干净数据和带噪数据,那么llm很容易学到;
加适当英文是对中文有提升的,但是英文数据尽量不要远大于中文;

  • 分离Demcus 可以选质量低点的
  • wenet说话人分类&降噪

你可能感兴趣的:(paper笔记,人工智能,深度学习)