VALL-E 2:只做了两项改进,声音却突然与真人难以区分
让一个模型从“已经非常接近真人语音”迈到“据称已与真人语音难以区分”,并不总需要全新的架构——有时,只要修复一直悄悄拖累原版的两个具体问题就够了。作为 VALL-E 的后续版本,微软的 VALL-E 2 正是在相同核心设计上做了两项针对性改进,最终被称为首个达到人类水平的零样本文字转语音系统——这一说法并非只通过与其他模型比较得出,而是直接与真人录音进行了测试。
什么是 VALL-E 2?
VALL-E 2 直接建立在 VALL-E 的神经编解码器语言建模方法之上——其核心理念仍是把语音生成视为对离散音频代码的 token 预测,并沿用由自回归(AR)与非自回归(NAR)Transformer 组成的混合架构;两个组件共用文本嵌入层、代码嵌入层和代码预测层。改变的并不是基础,而是在其上增加的两项具体机制,每一项都针对原始模型的一个明确弱点。
带来关键差异的两项改进
重复感知采样(Repetition Aware Sampling)。 VALL-E 原本的解码过程采用直接的随机采样,偶尔会产生不稳定输出,或陷入无限循环,一直重复同一个声音或短语。VALL-E 2 会跟踪解码历史中的 token 重复情况,并在每一步自适应地切换随机采样与核采样(nucleus sampling)——如果重复率超过设定阈值,模型就不再沿着重复路径继续,而是从原始概率分布中随机重新采样一个 token。这样既能让解码明显更加稳定,又不会牺牲基于采样的生成所带来的自然变化。
分组代码建模(Grouped Code Modeling)。 VALL-E 2 不再把每一个编解码器代码都作为单独一步建模,而是将多个编解码器代码组合起来,并在 AR 生成过程中于单个帧内对每组代码进行建模。这样可以缩短模型需要处理的有效序列长度,既加快推理,也直接解决长序列给原始架构带来的困难。
这两项改变都没有触动 VALL-E 开创的神经编解码器语言模型这一根本理念——它们是针对解码稳定性与序列长度的定向工程修复,而两者结合起来,足以让结果从“非常出色”迈向一个具体且可检验的“人类水平”说法。
如何理解“人类水平”的评测结果
评估使用了两个不同的测试集,其中更难的那个结果更能说明问题。在 LibriSpeech test-clean 上,测试选取 40 名不同的说话人,并为每人使用一段参考话语作为克隆 prompt;VALL-E 2 在说话人相似度(SMOS)和语音质量(CMOS)两项评分上都超过了原始 VALL-E。在 VCTK 上——这是一个难度高得多的基准,涵盖 60 名说话人和更加多样的口音,因此零样本克隆也明显更难——VALL-E 2 不仅再次超过 VALL-E,还只用每位说话人 3 秒的 prompt,就达到或超过了真实的人类原始录音。正是这个来自难度更高、口音更多样的数据集的具体结果,构成了“人类水平”说法的依据。
论文还报告称,VALL-E 2 能够可靠地合成原始模型已知难以处理的复杂句子——包括含有不寻常措辞或困难音素序列的句子;这些内容过去会触发不稳定现象,而重复感知采样正是为解决这一问题而设计的。
为什么无法下载 VALL-E 2
这是理解该模型时最重要的实际问题,而微软对此给出了异常直接的说明:VALL-E 2 被有意限制为不公开发布的模型或产品,研究人员给出的原因,正是这样一个逼真系统可能带来的滥用风险——声音欺骗,以及在未经同意的情况下冒充特定说话人。研究论文本身以一个假设为实验前提:任何合成中的目标说话人都已同意用户这样做。研究论文如此明确地写出这条伦理护栏并不常见,也反映出团队对其成果影响的重视程度。
在实践中,这意味着 VALL-E 2 没有官方 checkpoint;而且与 VALL-E X 不同——后者已经有流行且完全可用、并发布了预训练权重的社区复现——截至撰写本文时,还没有同等完整的开源项目复现 VALL-E 2 特有的重复感知采样和分组代码建模技术。公开可用的内容只有研究论文、微软自己的项目页面及其中的演示音频,以及 ELLA-V 等评估框架;后者与 LibriSpeech、VCTK 一起用于评估模型处理复杂生成任务的能力。
如果你正在评估 VALL-E 2,这意味着什么
如果你想了解神经编解码器语言模型的技术前沿,VALL-E 2 的贡献确实值得研究:它表明,在严格且口音多样的基准上,让模型从“令人印象深刻”走到“人类水平”的关键可能是解码策略的修复,而不只是更大的模型或更多的数据。如果你真正想部署某种方案,现实可行的路径要从已经发布的模型中选择——跨语言任务可以使用 VALL-E X 的社区复现;生产用途则可以选择完全不同的开源克隆模型,如 F5-TTS、Chatterbox 或 CosyVoice3,因为 VALL-E 2 本身从未开放使用。
VALL-E 2、VALL-E 与 VALL-E X 对比
| VALL-E 2 | VALL-E(原版) | VALL-E X | |
|---|---|---|---|
| 核心改进 | 重复感知采样 + 分组代码建模 | 原始神经编解码器语言模型理念 | VALL-E 的跨语言扩展 |
| 解码稳定性 | 明显改善,修复无限循环问题 | 在部分输入上存在已知的不稳定性 | 继承 VALL-E 的方法 |
| 声称达到的结果 | 在 LibriSpeech 和 VCTK 上达到人类水平 | 超过 YourTTS 基线 | 高质量跨语言迁移 |
| 参考 prompt 长度 | 约 3 秒 | 约 3 秒 | 约 3–10 秒 |
| 官方公开发布 | 否 | 否 | 否 |
| 可用的社区复现 | 没有广泛可用的版本 | 需要自行训练 | 有,已发布预训练权重 |
VALL-E 2 真正的意义在于它是一项研究里程碑,而不是一款可以拿来即用的工具——它提供了迄今最清晰的证据,表明 VALL-E 开创的神经编解码器语言模型方法经过恰当的解码改进后,能够生成让听者无法可靠地与真人录音区分开的零样本语音。
常见问题
我可以下载或使用 VALL-E 2 吗?
不可以。微软没有发布官方代码或预训练权重;与 VALL-E X 不同,截至撰写本文时,也没有广泛可用的社区项目复现 VALL-E 2 的特有技术。公开内容只有研究论文和演示音频。
这里的“人类水平”是什么意思?
它指的是,在特定的基准评估中——即 LibriSpeech 和口音更加多样的 VCTK 数据集——听者对 VALL-E 2 生成语音的评分达到或超过了对真实基准真人录音的评分,而每位说话人只使用了 3 秒的克隆 prompt。
什么是重复感知采样和分组代码建模?
重复感知采样会根据 token 的重复历史自适应地调整解码过程,防止输出不稳定或陷入循环。分组代码建模则把多个编解码器代码组合起来,以缩短有效序列长度,从而提高推理速度,并改善模型处理更长序列的能力。
微软为什么决定不发布 VALL-E 2?
研究人员指出,克隆结果过于逼真会带来滥用风险,并特别提到声音欺骗,以及未经本人同意冒充特定说话人等问题。
VALL-E 2 与 VALL-E X 有什么不同?
VALL-E 2 通过重复感知采样和分组代码建模,改善原始 VALL-E 在同语言任务中的解码稳定性与语音质量。VALL-E X 属于另一条研究路线,专门将 VALL-E 扩展到跨语言声音迁移;与 VALL-E 2 不同,它已有发布预训练权重的可用社区复现。
在浏览器中把文字转换为语音
如果你希望完成相近的“文字 → 单人语音”流程,可以使用 Echora 的文字转语音。输入最多 5,000 个字符,选择内置音色或已保存的自定义音色,按需添加支持的表达标签并调整语音稳定度,然后试听结果并下载生成的 MP3。