最近看了一篇2021年的新文章叫做《Expressive Neural Voice Cloning》,期间在Mellotron的基础上作了一些改进达到了不错的效果,所以从Mellotron看起,认真研究一下。
首先摘要部分就介绍了Mellotron是基于Tacotron2+GST(感觉老生常谈了),可以从音频中明确调节rhythm和continuous pitch contours,从而产生多种不同风格的声音甚至是从未在训练集中出现训练而产生的歌声。并且不需要pitch和text强对齐也可以学习到alignment的信息。
既然是TTS,那么自然重头戏在于各个变量的解离和建模,文章也采用了五个方面的信息来“描绘”一段音频,分别是:
显式建模:(Text)(speaker id)(F0基频信息)
隐式建模:(类似于GST的style token)(利用Tacotron2对齐的rhythm+alignment)
显式建模的优点:
1 提高了文本和说话人之间的解纠缠特性
2 提供了F0和语音信息,在推理时可以直接控制基音和语音决策
隐式建模的优点:
1 通过在训练过程中学习text/mel之间的对齐图,不需要提取音素对齐来进行训练,并且可以通过向模型提供对齐图来控制inference时的节奏。
2 通过为模型提供一个潜在变量字典(类似于token matrix),我们能够学习那些难以明确表达或提取的潜在因素,从而充分利用潜在变量的力量。
从而公式化Mellotron为:
其实文章最大的改进就是提高了对pitch contour也就是F0的关注程度,通过一些实时算法Yin或者Melody可以直接获得F0,从而更好的控制合成的语音效果。
文章做了一些例如rhythm||rhythm and pitch transfer的迁移实验,并且也尝试在音乐方面做了风格迁移,虽然文章阐述效果良好,但是从提供的音频数据来看,合成的效果在风格迁移方面有起色,但是噪声也确实存在,在音乐方面的效果有点类似于(淡黄的长裙,蓬松的头发~~),总之确实有改进空间,文章最后也指出了希望在rhythm和pitch contour对合成音频的影响。
以上就是对Mellotron的浅显阅读,过两天尝试读一下源码,有机会可以画一下结构图来充实一下。