X-LANCE / UniCATS-CTX-txt2vec

[AAAI 2024] CTX-txt2vec, the acoustic model in UniCATS
https://cpdu.github.io/unicats
60 stars 8 forks source link

关于unicat在中文领域的一些疑问 #11

Closed AlexanderXuan closed 6 months ago

AlexanderXuan commented 6 months ago

大佬您好!最近在看一些zero-shot合成的方向,偶然看到你们的项目,研究了一下发现效果很不错,尤其vec2wav部分的结构,感觉相当有参考价值。我用你们提供的数据训练了txt2vec部分,结合预训练的vec2wav部分同样获得了非常好的效果,所以我想迁移到中文领域来尝试中文的合成效果。 我采用了你们的vec2wav预训练模型,并且用类似转换的方式(提取源音频的特征,使用目标人的部分音频作为参考,然后生成目标人音色的源内容)验证了一下对于中文发音好像没有太大的问题,只是偶尔有一点重音问题。所以我只用中文的aishell2数据(约2000人)训练了一下txt2vec部分的模型,但是预测结果合成的音频总是有一些音调的问题,中文的发音不是很准。 我想请教一下你们是否有尝试过这个模型对于中文合成的效果呢?我的猜想可能是英文的vq-wav2vec特征导致的合成音调问题,但是用预训练的vec2wav做类似转换的任务又似乎没有太大的问题。

cantabile-kwok commented 6 months ago

您好!我们没有试过中文数据上的效果,但是考虑到vqwav2vec确实是纯英文数据上训的,并且我们目前发现这个离散token本身即使在英文上也有一定的发音错误,所以在中文上出现发音问题是可以理解的,印象中之前也有别的研究者报告了类似的问题。不妨换用一个在中文上更加常用的token(包括HuBERT+聚类这种)?

AlexanderXuan commented 6 months ago

感谢您的回复!事实上,我也尝试过换用其他的特征,比如您提到的HuBERT + 聚类,但是在中文上仍然存在一些发音上的问题,我也曾参考过其他的一些语音合成项目,似乎对于这种离散化的特征,总是会丢失掉一些信息,导致发音错误,尤其在中文中,更多音调变化使得这个建模过程更难了一些。

cantabile-kwok commented 6 months ago

对于这种离散化的特征,总是会丢失掉一些信息,导致发音错误,尤其在中文中,更多音调变化使得这个建模过程更难了一些。

我也同意这个观点,我们用另外的离散输入TTS模型试过一个小型的中文实验,确实也有一部分发音问题。中文毕竟pitch、energy这些声学特征和发音正确性的联系更加紧密,离散化就是个很大的错误产生源。目前我们绝大部分实验都是英文,所以暂时也不清楚有什么很好的办法

AlexanderXuan commented 6 months ago

无论如何感谢您的研究成果以及无私的开源精神!祝您未来有更多更好的工作成果!