📄 掩码与替换扩散做零样本语音合成:增益是否必须改写已生成的词元
英文题目:Beyond Token Revision: Investigating Mask-and-Replace Diffusion for Zero-Shot Text-to-Speech
标签:#文本到语音 | #扩散模型 | #数据增强 | #语音 | #零样本
评分:6.7/10 | 创新 1.2/2 | 技术严谨 1.2/1.5 | 实验充分 1.2/1.5 | 清晰度 0.8/1 | 影响力 1/1.5 | 开源 0/1.5 | 可复现 0.3/0.5 | 工程/实践 1/1.5
👥 作者与机构
- Hounsu Kim:机构信息未在 arXiv HTML 中可靠披露
- Joonyong Park:机构信息未在 arXiv HTML 中可靠披露
- Yuki Saito:机构信息未在 arXiv HTML 中可靠披露
- Satoru Fukayama:机构信息未在 arXiv HTML 中可靠披露
- Juhan Nam:机构信息未在 arXiv HTML 中可靠披露
📌 核心摘要
零样本文本到语音合成(Zero-shot text-to-speech)根据输入文本和一段参考语音生成目标语音,输出是离散语音 token 序列再经波形解码器转成波形,难点是并行生成时错误会在上下文中传播。掩码加替换扩散(Mask-and-replace diffusion)训练时既遮蔽部分目标 token,也把另一部分替换成词表内随机 token,模型要从被破坏序列重建原始序列,常见解释是它学会了推理期自我修正。论文提出的解耦掩码加替换(Decoupled mask-and-replace,DeMaR)保留这种训练破坏,但在采样时把掩码概率与替换概率合并后只用掩码,并引入只提交(Commit-only)采样,即 token 一旦从掩码中解出就不再改动,以检验增益是否必须依赖推理期修正。与只用掩码训练的掩码扩散语言模型(Mask-only diffusion language model,Mo-DLM)相比,DeMaR 在 CosyVoice3 分词器上把词错误率(Word error rate,WER)从 6.05% 降到 4.95%,在 FlexiCodec 上从 5.39% 降到 4.89%。匹配训练条件的对照显示,随机替换提供的含噪上下文和替换位置重建监督分别带来增益,且在禁止修正时依然存在,说明训练侧作用独立于推理期修正。结论适用于 LibriTTS 训练、两种给定分词器和 32 次去噪器调用的解码设置,替换监督在个别种子上增益较小。训练步数、批量大小和训练时长未说明,每次运行使用两块 NVIDIA RTX 4090 GPU,解码均为 32 次调用。
🔗 开源与复现资源
本次未形成可展示的已核验资源记录,开放状态尚未核实。
可达状态仅表示本次链接检查结果,不代表许可证、本文权重或运行复现已验证。
🧭 深度解读
零样本语音合成要从什么输入生成什么输出
零样本语音合成的输入有三部分:需要朗读的目标文本、提供音色的参考语音及其对应的提示文本,目标是在不针对该说话人做微调的前提下,生成内容与目标文本一致、声音像参考说话人的语音。论文把这个问题做成文本条件下的语音词元续写:条件序列是提示文本与目标文本拼接,再加上未经破坏的提示语音词元;需要生成的是一段目标语音词元序列,之后交给冻结的波形解码器变成波形。
必须保留的信息包括文本的语言内容和参考语音的音色特征,输出则用可懂度、自然度和说话人相似度衡量。可以把语音词元理解成把连续语音先离散化成一串编号,语言模型负责排出这串编号,解码器负责把编号还原成声音。后续所有训练破坏、采样掩码和修订操作,都是在这串目标编号上进行,文本条件和提示语音词元保持干净。
理解这个分工很重要,因为后文比较可懂度时,文本条件、参考前缀和解码器都是固定的,差异只能来自目标词元序列排得好不好。
自回归与离散扩散在已有研究里如何分工
已有零样本语音合成路线主要有两条。自回归语言模型从左到右逐个生成语音词元,每一步都依赖前面已生成的词元,优点是生成顺序明确,缺点是一旦前面出错,后面容易沿着错误继续。离散扩散语言模型则从受损序列出发,经过多轮并行预测恢复干净序列,文本提供语言内容,非自回归并行生成被认为可能减少对前面预测的依赖。原文回顾的掩码解码器做法中,标准做法是一旦解开掩码就不再改动,例如只复制可见词元或从不在已解开位置上重新掩码。
另一些工作允许推理时修订:把可见词元退回掩码的词元到掩码降级,把可见词元直接改成另一个词元的词元到词元改写。训练侧也有掩码与替换训练,即训练时不仅掩码,还把部分位置换成随机词元,既作为重建目标,也作为预测其他掩码位置时的上下文。本文的特殊之处在于,它不把替换训练的增益直接归因于推理时改写,而是追问如果推理时完全不改写,增益是否还在。这个追问决定了后文为什么要固定模型和掩码数量,只切换采样策略。
论文要回答的疑问是替换增益是否必须靠推理改写
掩码与替换训练比纯掩码训练多做了两件事。第一,在被替换位置上要求恢复原始词元,这就是替换监督,可能教会模型在推理时自我纠正;第二,被替换的错误词元会留在上下文里,用来预测其他掩码位置,这就是含噪上下文增强。常见解释把增益归于第一种机制,即推理时改写此前预测的能力。但第二种机制提出另一种可能:仅仅在训练时见过带错的上下文,生成就会变好,即使推理时从不改写已定词元。
为了区分这两种解释,论文需要固定训练好的模型和掩码数量,只切换采样时是否允许改写,并进一步把是否在替换位置加损失分开。关键检验条件是提交式采样,即每个词元在第一次被解除掩码后保持不变。如果在该限制下替换训练仍优于纯掩码训练,就说明至少部分增益来自训练侧,而不完全依赖推理时修订。后文的解耦采样、3 条件对照和两条修订路径的单独开关,都是为这个检验服务的。
DeMaR 的整体流程是如何把训练与采样解耦的
DeMaR 的全称含义是解耦的掩码与替换方法,整体流程分训练和采样两段。训练时同时使用掩码和随机替换;采样时把训练中掩码与替换的合并概率全部交给掩码,采样过程只出现掩码符号,这种推理时改变破坏过程的做法称为解耦采样。生成从全掩码的目标序列开始,经过固定次数的去噪器调用,每轮根据置信度决定下一轮保留哪些预测、掩掉哪些位置,最后一轮不再掩码。
默认的重访策略允许已可见词元被改写或重新掩码,而提交式变体只填充当前掩码位置,不改动已可见词元。下面这张官方原图把训练受损、基于置信度的采样循环和 3 条可见词元路径画在了一起,例子中的词元取值和置信度分数只是示意,重点看箭头表示的数据流向和掩码操作的位置。
读图时请先区分图 a 中替换与掩码的图例差异,再看图 b 每轮掩码数量由计划决定而具体掩哪些位置由置信度决定,最后对照图 c 中重访允许的两条修订路径与提交式保持不变的路径。
看图路径: 1. 先沿图 a 从干净目标到受损输入再到去噪器预测的箭头看,区分橙色替换与蓝色掩码图例;2. 再看图 b 从全掩码出发经过去噪器、置信度条形到下一轮掩码的循环;3. 最后对照图 c 三条可见词元路径在下一轮是直接改值、退回掩码还是保持不变
论文图 1。原论文 Figure 1::“DeMaR training and sampling. Panels (a) and (b) show the proposed method; (c) the three paths that distinguish the update policies we compare.”。
图 a 显示干净目标序列经过随机破坏变成含掩码与替换的输入,送入去噪器后预测干净序列,紫色箭头表示去噪器预测,蓝色箭头表示掩码操作;图 b 显示从全掩码出发,去噪器给出预测与每个位置的置信度,置信度最低的一批位置在下一轮被重新掩码;图 c 显示重访允许词元到词元修订和词元到掩码降级,而提交式只保留已可见词元并填充掩码位置,被忽略的候选和被改变的预测用不同符号区分。理解这张图后,就能明白后文为何说掩码数量相同但选哪些位置掩码取决于置信度排序。
去噪器每轮看到什么并给出什么
去噪器是论文中实际学习的模型,输入是受损的目标序列、文本与提示语音组成的条件以及扩散时间,输出是每个目标位置上对原始词元的类别分布。训练时扩散时间在区间内均匀抽取的离散时刻中抽一个,所有目标位置在该时刻独立地按保留、掩码、随机替换 3 种概率被破坏。采样时去噪器被调用多轮,每轮先从采样分布中为每个位置选一个候选词元,再给出置信度,置信度取候选在该分布下的概率或分布负熵。
下一轮输入的掩码数量由破坏概率决定,掩哪些位置由置信度排序决定。需要强调的是,去噪器每轮都对全序列运行,但在提交式采样下,只有当前为掩码的位置才会采用新的候选与置信度,已可见位置的取值被保留。
掩码 × 替换 × 去噪器: 掩码是把目标位置换成特殊掩码符号,让模型必须靠上下文重建;替换是把目标位置换成词表中随机抽到的其他词元,输入中留下错误但可见的词元;去噪器是根据受损序列和文本条件逐位置预测原始词元分布的模型。掩码与替换共同构成训练的受损输入,去噪器同时学会补缺和纠错,两者搭配才出现后文区分的含噪上下文与替换监督两种作用。
这种设计把破坏操作、预测分布和掩码选择分开,使得训练侧可以只改破坏与损失,而采样侧可以只切换是否允许改写,从而支撑后文的对照。
重访与提交式在掩码选择上有何不同
两种采样策略使用相同的掩码数量计划,区别在于候选掩码集合不同。重访策略在全部目标位置中选置信度最低的一批掩回去,因此已可见位置也可能被选中,这就带来两条修订路径:直接把可见词元换成另一个词元,或先退回掩码以后再重新预测。提交式采样只在当前掩码集合中选需要继续掩码的位置,把其中置信度最高的一批填上预测,其余保持掩码,已可见词元完全不动。
为了进一步分离两条路径的作用,论文还评估了只开一条的变体:仅词元到词元允许可见词元直接改变但掩码只在当前掩码集合里选,仅词元到掩码允许在全序列选掩码但不直接改写未被选中的可见词元取值。所有策略的每轮掩码数保持一致,因此差异只能来自选位范围和是否改值。
重访采样 × 提交式采样 × 置信度排序: 重访采样是每轮都对全部位置给出预测,再把置信度最低的一批位置掩回去,允许已可见词元被直接改写或重新掩码;提交式采样是一旦某个位置被填上就不再改动,只在仍为掩码的位置里填入高置信度预测;置信度排序是决定哪批位置保留、哪批位置掩码的依据。论文用同一掩码数量对比两者,才能判断增益是否依赖推理时改写。
词元到词元修订 × 词元到掩码降级: 词元到词元修订是把已可见词元直接换成另一个词表词元,下一轮输入仍为可见词元;词元到掩码降级是把已可见位置退回掩码符号,之后再重新预测。两者都是重访采样允许的推理时修订路径,提交式采样同时关闭这两条路径,论文又用只开一条的变体分离各自影响。
固定码率词元 × 可变码率内容与跨度序列: 固定码率词元是 CosyVoice3 每秒输出固定数量词元的单序列表示;可变码率内容与跨度序列是 FlexiCodec 用内容词元加跨度词元表示合并长度的双流表示,跨度说明多少个预合并词元被合成一个内容词元。两者码率、词表大小和序列结构不同,论文在两种分词器上重复实验,是为了检验结论是否只适用于某一种离散语音表示。
这里固定码率与可变码率两种分词器的差异也很重要:前者是单序列固定速率,后者是内容与跨度双流,破坏与损失需要对双流分别处理,但采样时的掩码计数与置信度排序思想相同。
含噪上下文与替换监督在训练中如何分离
论文把训练时抽到的位置分成 3 类:掩码位置集合、替换候选位置集合和其余不变位置。在无替换条件下,替换候选位置保持原值且损失权重为零;在替换但无损失条件下,这些位置被换成均匀抽样的词元但仍不计损失;在替换加损失即 DeMaR 条件下,输入与前者相同,但在这些位置上加单位权重的重建损失。3 种条件在掩码位置上都是单位权重,在其余位置都是 0.1 权重,分母中把替换候选计数固定计入,以保证加上替换监督时分母不变。
与之对照的纯掩码基线则把掩码与替换候选位置都掩码并都按单位权重监督。3 种条件的采样掩码预算都按掩码与替换合并概率确定,因此采样侧完全相同,差异只来自训练输入是否有随机替换以及是否监督这些位置。
含噪上下文增强 × 替换监督: 含噪上下文增强指被替换的位置虽然自身不计损失,但作为上下文影响掩码位置的预测,模型被迫在邻居有错时仍能重建;替换监督指在被替换位置上也计算重建原始词元的交叉熵损失,直接教模型把错误可见词元恢复成原词元。前者只改变输入分布,后者同时增加监督位置,论文用三种匹配训练条件把两者分开。
这种匹配设计使得比较替换但无损失与无替换时,测到的是含噪上下文增强的作用;比较替换加损失与替换但无损失时,训练输入分布相同,测到的是在替换位置加监督的作用,但原文也说明该比较没有把重建替换词元本身的好处与增加监督位置数量的好处进一步分开。
训练破坏概率与损失是如何计算的
训练破坏由保留概率、掩码概率和替换概率组成,三者之和为一,扩散时间为零时为干净输入,为一时为全掩码输入。论文沿用已有工作的设定,用扩散时间的函数给出三者的具体比例,纯掩码基线则把掩码与替换的合并概率全部用作掩码概率,因此两种模型选中位置进行破坏的概率相同,只是破坏操作不同。损失是对目标位置加权交叉熵的归一化形式,权重在被选中掩码或替换的位置为一,其余位置为 0.1,分母为权重之和。
在分离增强与监督的 3 条件对照中,分母改写为掩码数加替换候选数加 0.1 倍的其余位置数。对于可变码率分词器,内容流与跨度流在同一扩散时间独立破坏,再对每条流按上式计算归一化损失后相加。训练时还在序列前部保留一段干净前缀,或以一定概率破坏全序列,检查点按开发集字错率选择。
\[q(x_{t}\mid x_{0})=a_{t}\delta_{x_{0}}+m_{t}\delta_{\textsc{mask}}+r_{t}\mathcal{U}(\mathcal{V}),\]上式说明每个目标词元如何按 3 类概率被破坏,其中均匀分布包括抽中原始词元本身的可能,符号含义与输入在上文已交代。
\[\mathcal{L}=-\frac{\sum_{i\in\mathcal{I}}w_{i}\log p_{\theta}(x_{0,i}\mid\mathbf{x}_{t},c,t)}{\sum_{i\in\mathcal{I}}w_{i}}.\]上式说明去噪器在受损输入与条件下预测原始词元的加权对数似然目标,权重区分被破坏位置与未被破坏位置。
\[k_{j}=\operatorname{round}\!\left[L\rho_{t_{j+1}}\right],\qquad j=0,\ldots,N-2.\]上式说明采样时下一轮掩码数量如何由目标长度与下一时刻的合并破坏概率决定,最后一轮掩码数为零。公式的计算目标与实现都按原文描述理解,原文未说明的梯度路径不做猜测。
数据模型与评测条件是如何对齐的
所有语音词元生成器都在 LibriTTS 的 585 小时数据上从头训练,使用冻结的 CosyVoice3 与 FlexiCodec 分词器和波形解码器,主干为 12 层、隐维度 768、12 注意力头,除词表相关嵌入外共 84.95M 参数。自回归模型用因果注意力预测语音词元,扩散模型用双向注意力重建受损词元,两者都以完整文本为条件。解码超参数按开发集字错率用高斯过程贝叶斯优化搜索,包括重复惩罚、温度和核采样阈值,自回归还考虑重复感知采样,扩散固定用 32 次去噪器调用并比较两种置信度规则。
评测用 LibriTTS 测试集的全部 4835 条干净语句,同一分词器内所有系统共享评测对、文本条件、完整参考语音词元前缀和冻结波形解码器。自回归以结束符终止,扩散用基于提示的长度规则预测目标词元数。可懂度用生成语音经 HuBERT 大模型识别后与规范文本之间的按语句平均字错率衡量,字错率越低越好;自然度用 UTMOS22 强模型估计,越高越好;说话人相似度用 WavLM 大模型衡量与参考语音的相似性,越高越好。
扩散用 32 次去噪调用与预测目标长度是已披露的运行条件,自回归按词元依次解码,两者运行方式不同,原文未报告实际延迟或计算成本对比,不能仅据调用次数断言谁成本更高。
主结果中字错率与自然度相似度各说明什么
主比较要回答的问题是:在各自调优解码设置后,DeMaR 相对自回归与纯掩码扩散基线是否更可懂,以及自然度和相似度是否同步变化。公平条件是同一分词器内共享评测集、文本条件、参考前缀和波形解码器,指标方向为字错率越低越好,自然度与相似度越高越好。下表整理原文连续句子中有证据的字错率对照,括号内为提交式采样即不再改写已定词元时的字错率,运行方式差异与成本缺失见上节说明,表中不比较延迟。
| 分词器与指标方向 | 系统与采样说明 | 重访字错率 | 提交式字错率 | 运行备注与解码条件 |
|---|---|---|---|---|
| FlexiCodec 字错率越低越好 | DeMaR 训练含替换采样只用掩码 | 4.89% | 5.03% | 32 次去噪调用共享评测条件 |
表中最直接的收益是 DeMaR 把纯掩码的字错率从 6.05% 降到 4.95%,把 5.39% 降到 4.89%,提交式下仍以 5.23% 对 5.97% 和以 5.03% 对 5.38% 领先。
从重访切换到提交式,DeMaR 字错率仅上升 0.29 个百分点与 0.14 个百分点,而纯掩码在同样切换下略有下降,分别从 6.05% 到 5.97% 和从 5.39% 到 5.38%。原文还报告自然度与相似度方面两种扩散模型都优于自回归,CosyVoice3 上 DeMaR 相对自回归提高自然度与相似度,而 FlexiCodec 上两种扩散模型自然度与相似度接近,说明主要差异体现在字错率而非这两项。该表的限制是单一种子与调优解码设置下的结果,且提交式使用与重访相同的检查点与解码设置,跨种子稳定性需看下一节消融。
含噪上下文与替换监督各自带来多少字错率变化
该消融要回答的问题是:训练侧的增益中有多少来自只加噪声上下文,有多少来自在替换位置加监督,且这些增益是否需要推理时改写。比较条件是同一分词器、同一种子各自的无替换解码设置,采样掩码预算相同,只改变训练输入与损失,分别在重访与提交式下报告字错率。下表整理种子 1 与 3 种子均值,括号内为提交式,表中数值均有原文连续句证据,标准差反映种子间波动而非部署保证。
| 训练条件与分词器 | 种子 1 重访字错率 | 种子 1 提交式字错率 | 3 种子重访均值字错率 | 适用条件与监督说明 |
|---|---|---|---|---|
| CosyVoice3 替换加损失 | 5.08% | 5.07% | 5.02% | 同输入并加单位权重监督 |
具体到种子 1 的提交式,从无替换到替换无损失,CosyVoice3 从 6.87% 降到 5.73%,FlexiCodec 从 5.61% 降到 5.27%,说明不加监督的随机替换已能降低字错率;再加替换监督进一步降到 5.07% 与 5.03%。
3 种子均值上,重访下从 6.91% 降到 5.61% 与从 5.75% 降到 5.50%,再加监督降到 5.02% 与 4.98%,增强在 3 个种子与两种采样下都降低字错率,替换监督在 FlexiCodec 3 个种子与 CosyVoice3 两个种子下进一步改善,例外是 CosyVoice3 种子 2 在重访上升 0.06 个百分点、提交式上升 0.24 个百分点。因此增强作用更一致,监督带来额外但不完全均匀的增益,且两者在提交式下依然可见,支持训练侧增益不依赖推理改写。
只开一条修订路径时推理改写能否带来额外增益
该对照要回答的问题是:学会重建替换词元后,是否还需要靠推理时的两条路径兑现效果。实验用 CosyVoice3 种子 1 的设置,固定模型与掩码数,只切换提交式、仅词元到词元、仅词元到掩码和完整重访 4 种策略。结果是无替换时仅词元到词元把提交式的 6.87% 提高到 7.20%,替换无损失时把 5.72% 提高到 6.27%,即直接改写反而变差;有替换监督时仅词元到词元为 5.02% 对提交式 5.07%,惩罚消失但并未大幅领先。
仅词元到掩码与提交式的差异在 3 种模型下都不超过 0.04 个百分点,有替换监督时 4 种策略的字错率仅在 5.02% 到 5.08% 之间。也就是说,即使模型学过纠正被替换词元,推理时再做改写也没有实质超越提交式,结合上一节提交式下训练增益依然存在,说明重建替换词元的学习好处体现在生成质量本身,而不只是为了在推理时执行改写。该结论的适用条件是当前置信度排序与掩码数量计划,换一种重掩码规则可能不同,原文未评测其他规则下的路径收益。
未胜出项也很清楚:无监督时的直接改写明显有害,有监督时的改写也只是持平。
这些结论在什么条件下才成立
首先,所有主结果与消融都限定在 LibriTTS 训练、测试干净集评测、冻结分词器与解码器、同一分词器内共享文本条件与参考前缀的条件下,换数据集、换噪声或混响、换分词器与解码器后是否成立尚未评测。其次,解码设置经过按开发集字错率的贝叶斯优化选择,消融中 3 种训练条件共用无替换模型的解码设置,因此数字反映的是该选择下的可比性,不是所有可能解码设置下的最优差距。
再次,替换监督的比较没有分离重建替换词元本身与增加监督位置数量两种因素,增益中各占多少仍待验证。最后,自然度与相似度在同一分词器与种子内变化很小,原文明确字错率之外的差异不明显,不能把字错率下降自动理解为听感或音色相似度同步大幅提升。未胜出项也应记住:纯掩码在提交式下反而略好于重访,无替换与替换无损失下直接改写会升高字错率,CosyVoice3 种子 2 加监督后出现小幅回升,这些反例说明修订路径并非总是有益。
复现第一步要固定哪些信息与超参数
复现应先固定信息条件:文本预处理与分词、提示文本与目标文本拼接、完整参考语音词元前缀、目标长度预测规则,以及冻结的分词器与波形解码器,否则字错率、自然度与相似度不可比。模型侧固定 12 层、隐维度 768、12 头的主干与优化器学习率等训练设置,扩散训练按均匀抽取的扩散时刻破坏目标输入,保留前部干净前缀或以 0.15 概率破坏全序列。
关键超参数包括破坏概率随扩散时间的函数、损失中被破坏位置权重一与其余位置权重 0.1、采样掩码数由合并概率决定的计划、32 次去噪器调用、温度与核采样阈值、重复惩罚与置信度规则。采样对照必须保持掩码数相同,只切换重访与提交式,并分别记录两条修订路径的开关。来源方面,本次未发现来源绑定且完成安全状态验证的资源,不得声称代码模型或数据已公开,复现需按论文文字与公式自行实现并核对评测脚本。
训练资源、推理开销、输出帧率与实际延迟要分开记录,原文未报告延迟对比,复现时应补测真实运行时间而非仅数调用次数。
什么时候值得尝试还需要补哪项验证
当你的离散语音或音频生成已用纯掩码扩散并发现对上下文错误敏感时,值得尝试在训练中加入随机替换:一是即使不监督这些位置,也可能因含噪上下文而提高鲁棒性;二是在相同输入下再加替换监督,可能进一步降低字错率,且两者在不再改写已定词元时仍可能保留。但不要把该方法理解为推理改写方法的替代品,它在当前置信度排序下并未证明推理改写能带来额外大增益,只是证明训练侧本身有益。
还需要补的验证包括:在更多种子与未见说话人上的统计显著性、对自然度与相似度的人听评测、其他掩码数量计划与置信度规则下的路径收益,以及真实延迟与计算成本的实测对比。容易产生的误解是把替换训练等同于推理时一定会自我纠正,本文证据恰好说明增益可以在完全不改写已定词元时存在;另一个误解是把字错率下降等同于整体质量全面提升,而原文显示自然度与相似度差异远小于字错率差异。
📎 论文与评分元数据
排名:前50% | 文档类型:方法研究 | arXiv 原文
⚖️ 评分明细
评分属于系统判断,不是论文实验结果;八维数值与总分见页首,原始审计记录保留在后端。
评分规则:type-aware-v1
评分模型:muse-spark-1.3-contributor
评分请求协议:openai_responses