这篇文章介绍了CosyVoice 2,一个基于大语言模型(LLMs)的改进版流式语音合成模型。CosyVoice 2 在流式和非流式模式下实现了与人类语音相当的合成质量,具有极低的响应延迟和几乎无损的合成效果。以下是文章的主要内容总结:
-
背景与动机:
-
传统的语音合成模型(TTS)在流式模式下存在高延迟问题,影响用户体验。
-
CosyVoice 2 旨在通过系统优化,解决流式语音合成的延迟问题,同时保持高质量的语音合成。
-
-
主要贡献:
-
统一流式与非流式合成:通过统一的文本-语音语言模型和块感知因果流匹配模型,实现了流式和非流式合成的无缝切换。
-
简化模型架构:移除了文本编码器和说话人嵌入,直接使用预训练的大语言模型(LLM)作为主干,增强了上下文理解能力。
-
有限标量量化(FSQ):用FSQ替换向量量化(VQ),提高了码本利用率,捕获更多语音信息。
-
指令生成能力升级:支持情感、口音、角色风格等细粒度控制,增强了语音合成的多样性和生动性。
-
-
模型架构:
-
文本标记器:直接使用原始文本输入,简化了数据预处理流程。
-
监督语义语音标记器:通过FSQ模块对语音进行量化,生成语义语音标记。
-
统一文本-语音语言模型:使用预训练的LLM生成语音标记,支持流式和非流式模式。
-
块感知流匹配模型:通过条件流匹配(CFM)模型生成梅尔频谱,支持流式合成。
-
-
实验与评估:
-
数据集:使用了大规模的多语言数据集进行训练和评估。
-
评估指标:包括内容一致性(WER/CER)、说话人相似度(SS)和语音质量(NMOS)。
-
实验结果:CosyVoice 2 在多个测试集上表现优异,尤其在流式模式下几乎无损,展示了其在低延迟和高语音质量方面的优势。
-
-
指令生成与多说话人微调:
-
指令生成:通过自然语言指令和细粒度控制,生成多样化的语音。
-
多说话人微调:在多个说话人上进行微调,确保韵律和发音的覆盖,避免灾难性遗忘。
-
-
强化学习:
-
使用强化学习(RL)优化模型,通过ASR和说话人相似度(SS)奖励函数,提高发音准确性和说话人相似度。
-
-
局限性:
-
目前仅支持有限的语言,且对于字符集重叠的语言(如日语和中文),合成性能可能下降。
-
无法通过文本指令控制声学特征(如音色),且在唱歌任务上表现不佳。
-
CosyVoice 2 通过系统性的优化和创新,显著提升了流式语音合成的质量和效率,适用于多种应用场景,如语音聊天和交互式语音生成。其统一的流式和非流式框架、简化的模型架构以及强大的指令生成能力,使其成为当前语音合成领域的重要进展。这里是自己的论文阅读记录,感兴趣的话可以参考一下,如果需要阅读原文的话可以看这里,如下所示:
官方项目主页在这里,如下所示:
官方项目在这里, 如下所示:
摘要:
在我们之前的工作中,我们介绍了CosyVoice,一个基于监督离散语音标记的多语言语音合成模型。通过使用两种流行的生成模型——语言模型(LMs)和流匹配(Flow Matching)进行渐进式语义解码,CosyVoice在语音上下文学习中展示了高韵律自然度、内容一致性和说话人相似性。最近,多模态大语言模型(LLMs)取得了显著进展,其中语音合成的响应延迟和实时性在交互体验中起着至关重要的作用。因此,在本报告中,我们提出了一个改进的流式语音合成模型——CosyVoice 2,它结合了全面且系统的优化。具体来说,我们引入了有限标量量化(FSQ)来提高语音标记的码本利用率。对于文本-语音语言模型,我们简化了模型架构,允许直接使用预训练的大语言模型作为主干。此外,我们开发了一种块感知因果流匹配模型,以支持各种合成场景,使得单个模型能够同时支持流式和非流式合成。通过在大型多语言数据集上进行训练,CosyVoice 2在流式模式下实现了与人类相当的合成质量、最小的响应延迟和几乎无损的合成质量。
图1:CosyVoice 2 的概述。(a) 展示了监督语音标记器,其中虚线模块仅在训练阶段使用。(b) 是用于流式和非流式合成的统一文本-语音语言模型。虚线表示推理阶段的自回归解码。(c) 展示了因果流匹配模型,该模型以说话人嵌入 v、语义标记 µ、掩码语音特征 X˜ 和时间步 t 的中间状态 Xt 为条件,作用于概率密度路径上。
1. 引言
近年来,神经文本到语音(TTS)合成模型因其超越传统的拼接和统计参数方法而受到广泛关注[1, 2, 3, 4, 5, 6, 7]。这些模型在预定义的特定说话人上实现了高保真度和自然度。最近的研究表明,零样本TTS模型能够通过模仿参考语音的音色、韵律和风格来为任何说话人合成语音[8]。除了其上下文学习(ICL)能力外,零样本TTS模型还受益于大规模训练数据,实现了几乎与人类语音无法区分的合成质量和自然度。
最近的零样本TTS模型大致可以分为三类:编解码语言模型、特征扩散模型及其混合系统。编解码语言模型利用语音编解码模型提取离散语音表示[9, 10, 11],并使用自回归[12, 13, 14, 15, 16, 17]或掩码[18]语言模型来预测语音标记,然后通过编解码器合成波形[19, 20]。连续语音表示也在[21]中进行了探索。基于语言模型的TTS可以通过自回归采样生成多样且韵律一致的语音。
受图像生成进展的启发,去噪扩散[22, 23]和流匹配模型[24]被引入到非自回归(NAR)语音合成中。早期的基于扩散的TTS模型需要为每个文本(音素)预测持续时间,以解决文本和语音特征之间的长度差异[25, 26, 27, 28]。然而,这种刚性对齐可能会影响自然度,导致韵律平坦。为了缓解这一问题,交叉注意力和扩散变换器(DiT)被引入到NAR TTS模型中[29, 30]。最近的研究表明,NAR TTS模型中的文本-语音对齐可以采用更简单的方法,例如E2 TTS[31]、F5-TTS[32]和Seed-TTS[33]。在这些模型中,输入文本通过特殊标记填充以匹配总语音长度,该长度由语音持续时间预测模块自动预测或由用户预先指定。由于NAR TTS模型不受编解码器的限制,它们可以实现更优的语音质量。
混合系统结合了文本到编解码语言模型和编解码到特征扩散模型[34, 35, 33]。语言模型处理文本和语音之间的对齐以及语音持续时间预测,而编解码到特征扩散模型基于生成的编解码和其他条件合成语音特征(梅尔频谱)。通过结合两种生成模型的优势,混合系统实现了高多样性、韵律一致性和语音质量。
尽管最近的零样本TTS模型取得了成功,但它们通常以非流式(离线)模式运行,这涉及完整的输入文本,并需要在返回波形之前合成整个语音。这导致了高延迟,对语音聊天等应用中的用户体验产生了负面影响[36, 37]。为了解决这一问题,流式合成已被探索用于基于语言模型的零样本TTS模型[38, 39, 40, 41],但基于扩散的TTS模型和混合系统缺乏成熟的流式解决方案。
基于CosyVoice的成功[34],我们引入了CosyVoice 2,一个改进的流式零样本TTS模型,具有更高的韵律自然度、内容一致性和说话人相似性。我们的贡献包括:
-
统一流式和非流式合成:在单个框架中统一流式和非流式合成,并提出了统一的文本-语音语言模型和块感知因果流匹配模型,使得流式合成与离线模式相比几乎无损。
-
简化语言模型架构:通过移除文本编码器和说话人嵌入,允许预训练的文本大语言模型(LLMs)作为主干,增强了上下文理解。
-
有限标量量化:用有限标量量化(FSQ)替换语音标记器中的向量量化(VQ),提高了码本利用率并捕获了更多的语音信息。
-
指令生成能力升级:支持更多指令,包括情感、口音、角色风格和细粒度控制。在CosyVoice 2中,指令和零样本能力集成到单个模型中,使得合成更加多样化和生动。
通过上述系统性的修改和优化,CosyVoice 2实现了与人类相当的合成质量,并且在流式模式下几乎无损。统一的框架简化了部署要求,使得单个模型能够同时支持流式和非流式合成。升级的指令生成能力为用户提供了更强大且更简便的方法来生成各种语音。此外,块感知流匹配设计也可以应用于NAR TTS模型,这表明了流式NAR模型的潜力。
2. CosyVoice 2
CosyVoice 2延续了其前身[34]的设计理念,通过分离语音信号的语义和声学信息并独立建模。语音生成过程被重新定义为渐进式语义解码过程,逐步引入条件信息。具体来说,文本-语音语言模型(LM)仅关注语义信息,将高级文本标记解码为监督语义语音标记。在流匹配模型中,通过说话人嵌入和参考语音引入声学细节(如音色),将语音标记转换为给定说话人的梅尔频谱。最后,预训练的声码器模型恢复相位,将梅尔频谱转换回原始音频信号。以下部分将从五个方面介绍CosyVoice 2的细节以及流式合成的修改:文本标记器、监督语义语音标记器、用于流式/非流式合成的统一文本-语音LM以及块感知流匹配模型。图1提供了CosyVoice 2的概述。
2.1 文本标记器
CosyVoice 2直接使用原始文本作为输入,并使用基于BPE的文本标记器进行标记。这消除了通过字素到音素(g2p)转换获取音素的前端模型的需求。这种方法不仅简化了数据预处理流程,还使得模型能够在端到端的方式下学习各种上下文中的单词发音。与文本LLM中常用的标记器不同,CosyVoice 2屏蔽了一对多的标记。这防止了标记的发音过长,并减少了由于数据稀疏性引起的极端情况。具体来说,如果一个BPE标记编码了多个中文字符,它将被屏蔽,并且在标记化过程中每个字符将单独编码。其他语言(如英语、日语和韩语)不受特殊处理。
2.2 监督语义语音标记器
如图1(a)所示,我们在SenseVoice-Large ASR模型的编码器中插入了有限标量量化(FSQ)模块[42]。在训练阶段,输入语音XX通过Encoder₁获得中间表示,其中Encoder₁由六个带有旋转位置嵌入的Transformer块组成[44]。然后,中间表示被送入FSQ模块进行量化,量化后的表示通过SenseVoice-Large的其余模块(包括Encoder₂和ASR解码器)传递,以预测相应文本标记的后验概率。
Encoder₁、FSQ模块的低秩投影器、有界舍入操作和索引计算构成了CosyVoice 2的语音标记器。我们的语音标记器以25 Hz的标记率工作,即每秒25个语音标记。
2.3 统一文本-语音语言模型
在CosyVoice 2中,预训练的文本大语言模型Qwen2.5-0.5B[45]被用作文本-语音语言模型,以输入文本为提示自回归生成语音标记。与其他LM类似,文本-语音LM也在下一个标记预测方案中进行训练,如图1(b)所示。与之前的CosyVoice不同,我们移除了说话人嵌入以避免信息泄露。更重要的是,我们发现这种话语级向量不仅包含说话人身份信息,还包含语言和副语言信息,这损害了文本-语音LM的韵律自然度和跨语言能力。此外,我们还放弃了之前CosyVoice的文本编码器,因为我们发现Qwen2.5-0.5B模型足够强大,能够对齐文本和语音标记,文本编码器不再需要。
得益于文本-语音LM的简洁性,我们可以构建一个统一的模型,同时支持流式和非流式合成。在这里,“流式模式”意味着输入文本是连续接收的,而不是预先知道完整的句子。在CosyVoice 2中,流式和非流式模式的区别仅在于LM的序列构建方式:
通过在上述两种序列上同时训练文本-语音LM,我们可以在单个统一模型中执行流式和非流式语音生成。在现实场景中,如说话人微调(SFT)和上下文学习(ICL),推理序列有所不同:
2.4 块感知流匹配
在CosyVoice 2中,我们使用梅尔频谱作为声学特征,帧率为50 Hz,采样率为24000。由于语音标记和梅尔特征之间的帧率不匹配,我们将语音标记上采样两倍以匹配梅尔频谱的帧率。在上采样操作之前,我们添加了一个额外的前瞻卷积层,为后续因果模块提供未来信息。前瞻层通过右填充的1-D卷积实现,填充大小为P,卷积核大小为P+1。之后,几个块感知因果Transformer块用于对齐语音标记的表示空间以匹配声学特征。
随后,我们的目标是将语音标记进一步解码为由说话人嵌入和参考语音指定的梅尔频谱。为此,我们采用条件流匹配(CFM)模型来采样梅尔频谱,给定语音标记、参考语音和说话人嵌入作为条件。在CFM模型中,目标梅尔频谱的分布由从先验分布p0(X)到数据分布q(X)的概率密度路径描述。概率密度路径可以通过时间相关的向量场定义。为了提高采样效率,我们采用最优传输(OT)流来匹配向量场ωtωt,该向量场由常微分方程(ODE)给出:
当前的流匹配模型通常以离线模式工作,即只有在生成所有语音标记后,才能采样梅尔频谱,这对流式合成不友好。为了解决这个问题,我们将多步流估计视为堆叠的深层神经网络,重复UNet十次。因此,通过使展开的神经网络具有因果性,我们可以将其应用于流式合成。我们构建了四种掩码以满足不同的应用场景:
-
非因果掩码:用于离线模式,通过关注所有条件帧可以实现最佳性能。非因果掩码适用于对延迟不敏感的场景。
-
全因果掩码:设计用于需要极低延迟的场景,其中只能关注过去的帧。
-
块-M掩码:在延迟和性能之间进行权衡,可以利用过去和M个未来帧的信息。此掩码更适合具有低延迟的初始生成块。
-
块-2M掩码:通过牺牲更多延迟,可以实现近似离线模式的性能,可用于级联生成块以获得更好的性能。
对于每个训练案例,我们从上述四种掩码中随机采样一个掩码,遵循均匀分布。通过这种方式,一个流匹配模型可以兼容不同的场景,降低了部署复杂性。这种块感知训练的另一个优势是,具有更多上下文的掩码可以作为具有较少上下文的掩码的教师,受益于隐式的自蒸馏方案。
2.5 流式模式的延迟分析
首包延迟是流式合成模型的重要指标,显著影响用户体验,尤其是在基于LLM的语音聊天应用中,如GPT-4o[36]。在TTS的上下文中,待合成文本是预先已知的,延迟来自语音标记生成、梅尔频谱重建和波形合成。因此,CosyVoice 2的首包延迟可以如下获得:
2.6 指令生成
为了增强CosyVoice 2的可控性,我们将指令数据集集成到基础训练集中。我们收集了1500小时的指令训练数据,包括自然语言指令和细粒度指令,如表1所示。对于自然语言指令,我们在待合成输入文本前添加自然语言描述和特殊结束标记“<|endofprompt|>”。这些描述涵盖了情感、语速、角色扮演和方言等方面。对于细粒度指令,我们在文本标记之间插入语音爆发,使用标记如“[laughter]”和“[breath]”。此外,我们还为短语应用语音特征标签;例如,“<strong>XXX</strong>”表示强调某些单词,而“<Laughter>XXX</Laughter>”表示带笑的说话。
2.7 多说话人微调
在特定说话人上微调预训练模型(SFT)可以进一步提高生成质量和说话人相似性。在本报告中,我们介绍了多说话人微调(mSFT),其中预训练模型同时在多个说话人上进行微调,而不是单个说话人。这种方法确保了多个说话人的全面韵律和发音覆盖,并减轻了预训练模型的潜在灾难性遗忘。为了避免不同说话人之间的音色混淆,我们在输入文本前添加说话人提示标签“Speaker A<|endofprompt|>”以指定特定说话人。如果训练样本未标记为特定说话人,则使用特殊标签“unknown<|endofprompt|>”。在整个多说话人微调过程中,学习率设置为1e-5。
2.8 强化学习用于SFT
强化学习是大语言模型训练中常用的方法,可以使LM输出与人类偏好对齐。在CosyVoice 2中,我们采用说话人相似度(SS)和来自ASR系统的识别词错误率(WER)作为奖励函数,以提高微调阶段的说话人相似度和发音准确性。我们使用WER和SS区分优选样本和拒绝样本
,并通过直接偏好优化(DPO)[49]优化TTS系统:
3. 实验设置
3.1 语音标记器的训练数据
使用200,000小时的数据集训练语音标记器,并使用标准化转录作为标签。详细数据信息如表2所示。训练数据来自三个不同的资源:开源ASR数据集、内部工业数据集和TTS生成数据集。尽管我们在训练语音标记器时仅使用了中文和英文数据,如表2所示,后续实验表明,语音标记器对其他语言具有零样本能力。它也可以用于日语和韩语等语言的语音合成。
3.2 CosyVoice 2的训练数据
CosyVoice 2与其前身[34]共享相同的训练数据。我们首先使用内部语音处理工具收集纯语音数据。随后,使用Paraformer[50]和SenseVoice[43]分别为中文和其他语言生成伪文本标签。我们还使用内部强制对齐模型过滤低质量数据并增强标点符号的准确性。数据详细信息如表3所示。
3.3 评估设置
我们在两个测试集上评估CosyVoice 2。第一个测试集是从Librispeech语料库的test-clean集中构建的,记为_test-clean_。此测试集用于在有限的英文领域评估CosyVoice 2。使用Whisper-large V3作为ASR模型来评估内容一致性。对于说话人相似度(SS),我们使用ERes2Net模型[52]提取提示和生成话语的说话人嵌入,并将它们的原始余弦相似度视为说话人相似度。NMOS分数[53]用于评估客观质量。
第二个评估在SEED测试集[33]上进行,该测试集广泛用于评估最近的TTS模型,涵盖各种文本领域和参考语音。在此评估中,从CommonVoice数据集中选择了约2000个中文和1000个英文样本,分别记为_test-zh_和_test-en_。此外,还包括约400个困难测试案例,以评估TTS模型在文本重复、绕口令和其他具有挑战性的合成案例上的鲁棒性,记为_test-hard_。使用Paraformer识别_test-zh_和_test-hard_的合成结果,而使用Whisper-large V3识别_test-en_以评估内容一致性。我们采用两个说话人验证(SV)模型来评估说话人相似度:WavLM微调的SV模型和ERes2Net。
3.4 日语和韩语的基准测试
我们准备了两个测试集,分别记为_test-ja_和_test-ko_,用于评估日语和韩语的语音合成。test-ja_由从CommonVoice数据集中提取的1000个样本组成,用于测量模型在各种指标上的表现,如WER、SS、MOS。具体来说,我们随机打乱并配对整个CommonVoice JA-test集作为参考话语和目标话语。考虑到JA-test集的文本长度范围广泛,我们从8到32个字符的长度范围内随机选择了1000对参考-目标话语作为最终测试集。对于_test-ko,我们选择了1000个WER低于5%且没有删除或插入错误的语音样本,使用Whisper-Large V3[54]作为ASR模型。这些样本被用作韩语语音合成的参考话语。对于输入文本,我们从剩余数据中随机选择了1000个文本样本。我们已经发布了这两个测试集的提示语音、提示转录和输入文本的列表,以方便结果复现。通过提供这些开源数据,我们旨在为评估日语和韩语TTS模型建立基准。使用Whisper-large V3作为日语和韩语评估的ASR模型。
4. 实验结果
4.1 语音标记器的评估
理想的语音标记器应有效利用码本,以高保真度保留信息,并展示说话人独立性。在本部分中,我们从四个方面评估我们的监督语音标记器:1)码本利用率;2)整个编码器内的ASR错误率;3)不同说话人的标记可视化;4)说话人识别训练。表4显示了码本利用率和ASR错误率。结果表明,基于FSQ的标记器充分利用了码本,并从ASR的角度保留了更多有效信息,表明FSQ保留了更多语义信息。
我们通过t-SNE可视化进一步分析FSQ的特性。作为TTS任务的上游模型,标记器应尽量减少说话人身份信息与语音信号的纠缠。我们从VoxCeleb1数据集中选择了三个说话人各100个语音样本,并可视化了相应的标记。如图4(a)和(b)所示,量化前,Encoder₁的输出在不同说话人之间表现出不同的分布。相比之下,量化后的表示分布几乎无法区分。此外,图4(c)还显示标记器充分利用了码本。随后,使用S3prl工具包[55]进一步评估说话人纠缠,通过执行说话人识别(SID)任务。我们使用带有FSQ的Sensevoice-large编码器作为上游特征提取器,并在量化前后训练SID任务。图5显示了训练期间的准确率曲线。使用量化标记的SID层未收敛,证明了标记器在说话人信息上的解耦功能。
图4:Voxceb1 数据集中三位不同说话人的语音表示在量化前 (a) 和量化后 (b) 的 t-SNE 可视化。(c) 展示了码本利用率,以说话人的标记百分比表示(每个区间 500 个标记)。
4.2 与基线的比较结果
我们首先在有限的英文文本领域评估了CosyVoice 2模型,并与几个开源模型进行了比较,如ChatTTS[56]、GPT-SoViTs[57]、OpenVoice[58]、ParlerTTS[59]、EmotiVoice[60]及其前身CosyVoice[34]。客观结果如表5所示,包括内容一致性(WER)、语音质量(NMOS)和说话人相似度(SS)。从表中可以看出,CosyVoice 2在Librispeech test-clean集上实现了最先进的性能,在所有评估指标上超越了所有基线模型。值得注意的是,CosyVoice 2甚至展示了比人类话语更高的内容一致性、语音质量和说话人相似度,表明其与人类相当的合成质量。
我们还在常用的测试集上评估了CosyVoice 2:SEED test-zh、test-en_和_test-hard,其中包括来自不同领域的多样化输入文本和参考语音。CosyVoice 2和基线模型的实验结果如表6所示。在_test-zh_集上,CosyVoice 2在CER和SS方面超越了所有开源模型,仅略低于商业模型SEED-TTS。在_test-en_集上,CosyVoice 2在WER和SS方面分别排名第四和第三。这可能源于中文和英文训练数据量的不平衡。我们计划在未来的工作中探索数据扩展,以增强英文内容一致性。在_test-hard_集上,离线CosyVoice 2模型在所有比较基线中实现了最先进的性能,展示了其在具有挑战性的合成场景中的鲁棒性。与人类生成的语音相比,CosyVoice 2展示了相当的内容一致性和更高的说话人相似度。考虑到识别错误也可能来自ASR模型,可以合理得出结论,CosyVoice 2实现了与人类相当的合成能力。我们还评估了流式模式,记为“CosyVoice 2-S”在表5和6中。对于两种评估设置,流式模式在典型测试案例中的性能几乎无损。仅在具有挑战性的案例中,内容一致性略有下降,突出了我们统一流式/非流式框架的优势。我们发现,不同SV模型的说话人相似度结果不一致。这可能表明了一个新的研究课题,即如何自动评估TTS模型的说话人相似度。由于不同的TTS模型可能使用不同的SV模型来提取说话人信息,使用相同的SV模型评估说话人相似度可以更准确地评估说话人信息的利用。因此,我们在后续实验中使用ERes2Net 3来评估说话人相似度。
4.3 模块化消融研究
我们对文本-语音语言模型进行了模块化消融研究,以评估我们修改的影响,包括LLM初始化、移除说话人嵌入和使用FSQ。表7展示了CosyVoice 2从其前身逐步发展的过程。通过将随机初始化的语言模型替换为预训练的LLM,我们在_test-zh_和_test-hard_集上分别实现了内容一致性的相对改进18.46%和15.40%。接下来,我们从文本到语音语言模型中移除了说话人嵌入,这有助于防止信息泄露和上下文学习中的干扰。这一变化显著减少了内容错误,同时保持了说话人相似度,表明内容信息主要由LM建模,而说话人信息主要由流匹配模型恢复。最后,通过用FSQ替换VQ,我们实现了CosyVoice 2模型,注意到内容一致性显著提高,说话人相似度保持不变。通过充分利用码本,FSQ捕获了更多的内容信息和上下文变化,从而更好地对齐文本和语音标记。此外,我们通过将音高损失作为FSQ语音标记器训练期间的约束进行了比较实验。我们发现,这种方法在下游TTS任务中提高了性能,如表7的最后一行所示。在未来的CosyVoice版本中,我们计划进行更详细的实验和分析。
我们还进行了另一项模块化分析,以评估流式模块对合成性能的影响。表8显示了内容一致性和说话人相似度的结果。我们发现,流式LM对_test-zh_和_test-en_集中的典型案例影响最小,表明我们统一训练框架的有效性。流式LM的主要影响在_test-hard_集中的具有挑战性的案例中观察到,可能是由于流式模式中上下文信息的丢失。有趣的是,流式流匹配模型导致说话人相似度略高于离线模式。这可能是由于流式模式中初始块的提示生成比率较高,而离线模式中的提示生成比率可能非常低,具有许多填充标记。流式流匹配模型对内容一致性的负面影响远小于流式LM,这得益于CosyVoice 2中的语义-声学解耦建模。
4.4 日语和韩语基准测试结果
除了中文和英文,CosyVoice 2还支持日语和韩语。我们在构建的日语和韩语测试集上评估了内容一致性、说话人相似度和语音质量。如表9所示,CosyVoice 2在韩语上的表现显著优于日语,所有评估指标均如此。这种差异主要是由于日语和中文字符集的重叠,导致在日语上下文中出现中文发音。在未来的工作中,我们计划探索增强多语言合成的语言上下文的方法。由于韩语与其他语言没有字符重叠,其语音合成表现更好。另一个问题是数据不平衡。我们相信增加训练数据量可以进一步提高日语和韩语的合成性能。
4.5 指令生成结果
为了评估指令生成的性能,我们创建了一个包含290个样本的中文测试集。该集包括29种指令,如表1所示,每种指令有10个不同的输入文本。我们使用五个音频提示和来自五个说话人(三女两男)的说话人嵌入作为流匹配模型的条件。我们的测试在离线模式下进行。我们客观评估内容一致性(CER)、说话人相似度(SS)和语音质量(NMOS)。主观上,我们使用指令的平均意见分数(MOS-I)评估指令的准确性和自然度,范围从1到5。每个样本由10名母语为中文的评估者评估,分数以0.5为增量分配。评估标准侧重于语音是否遵循所有指定的指令,如情感表达、语速调整、方言使用和角色扮演。细粒度控制,包括插入笑声、带笑说话、呼吸控制和强调,评估其自然度和准确性。如表10所示,CosyVoice 2在内容一致性(CER)、说话人相似度(SS)和指令控制的准确性和自然度(MOS-I)方面表现出色,同时保持了与CosyVoice-Instruct相当的语音质量。当从CosyVoice 2中移除输入指令时,MOS-I显著下降;然而,内容一致性(CER)、说话人相似度(SS)和语音质量(NMOS)有所提高。这表明指令可控性很难从内容文本中隐式出现。
4.6 说话人微调模型的结果
在微调阶段,我们对同一说话人的说话人嵌入进行无监督聚类,以确保说话人音色的稳定性。我们已经证明,目标说话人只需400个音频记录即可实现相当好的语音合成性能,不同说话人之间的客观指标仅略有变化,如图6所示。我们的实验表明,大多数说话人可以继承零样本TTS模型的强大上下文理解和感知能力,从而自然地表达输入文本中的各种情绪和情感。
4.7 强化学习的LM微调
尽管SFT可以提高大多数说话人的性能,但Spk E的结果仍然比基础模型差,尤其是在英文上。因为Spk E的音色更复杂,语速更快。此外,Spk E只有中文录音。因此,我们对Spk E应用强化学习以进一步改进。对于DPO,我们通过SFT模型合成了1万个样本对,通过ASR和SS奖励改变LM的偏好偏差。我们还使用可微分的ASR奖励来优化LM参数。在RL之后,我们在Spk E的测试集上评估模型的内容一致性(WER)、说话人相似度(SS)和语音质量(NMOS),并进一步在SeedTTS测试集上评估WER,以探索模型是否能够保持对域外或跨语言输入文本的鲁棒性。结果如表11所示。
与预训练的基础模型相比,SFT模型显示出更高的说话人相似度和语音质量,然而,WER可能比基础模型更差。我们发现,基础模型合成的音频总是比SFT和真实语音慢,这对ASR系统更友好。对于目标说话人数据集,偏好偏差和可微分奖励都可以减少WER,而对其他两个指标几乎没有负面影响。但对于SEED测试集,基于DPO的强化学习仅对中文和英文子集有益,而困难样本会更差。原因可能是困难样本包含许多重复的单词或短语,它们在DPO训练期间可能被视为拒绝样本。然而,可微分ASR奖励不会遇到这个问题,因为它可以直接通过ASR后验优化TTS系统。这意味着可微分ASR奖励在域外情况下具有更好的泛化能力。最后,我们可以将它们结合起来以进一步改进。
5. 结论
基于CosyVoice的成功,本报告介绍了CosyVoice 2,一个改进的流式语音合成模型,利用了大语言模型。通过在单个框架中统一流式和非流式合成,CosyVoice 2在流式模式下实现了与人类相当的合成质量、最小的响应延迟和几乎无损的合成质量。关键创新包括有限标量量化以实现全码本利用率、简化的文本到语音语言模型架构(结合了预训练的文本大语言模型),以及开发了块感知因果流匹配模型以支持多样化的合成场景。此外,指令生成能力的改进允许通过细粒度控制情感、口音、角色风格和语音爆发来生成多样化和生动的语音。通过系统性的修改和优化,CosyVoice 2不仅提供了卓越的合成质量,还简化了部署要求,使其适用于流式和非流式应用。我们相信,CosyVoice 2代表了可扩展、高质量和交互式文本到语音合成的重大进展。
6. 局限性
CosyVoice 2有几个需要解决的局限性。首先,它仅支持有限数量的语言。对于具有重叠字符集的语言,合成性能可能会下降,这为未来的研究提出了一个开放挑战。其次,CosyVoice 2无法通过文本指令控制声学特征(如音色),这可能是角色扮演应用中的一个有趣探索领域。此外,CosyVoice在唱歌任务上表现不佳。