自回归模型(如Tacotron 2)通过逐帧生成声学特征来产生高质量语音,但这种顺序依赖在推理时造成了固有的瓶颈。生成几秒钟的音频可能需要数千个顺序步骤,这使得实时合成变得困难,尤其是在资源受限的设备上。非自回归(NAR)模型直接应对这一限制,目标是并行生成所有声学特征帧。NAR TTS 背后的主要思想引人入胜:给定输入文本表示,同时预测整个梅尔频谱图序列(或大部分)。这大大减少了合成所需的顺序操作数量,从而带来了显著的速度提升。然而,这种并行性也带来了一系列自身的问题,主要集中于文本与语音之间固有的“一对多”映射问题。NAR TTS 中的一对多映射问题考虑输入序列中的一个音素。其声学表现,特别是其持续时间和精确的频谱特性,会根据上下文(周围音素)、语速、重音和整体韵律而有很大差异。自回归模型隐式处理这一点;当前帧的预测依赖于先前生成的帧,这使得模型能够学习这些复杂的时序关联。NAR 模型在并行生成过程中缺乏这种顺序条件,因此难以应对这种模糊性。如果模型只是尝试为每个音素预测一个“平均”表示,那么生成的语音通常听起来模糊不清,缺乏韵律变化,并可能表现出不自然的语调或节奏。早期对 NAR TTS 的尝试与自回归模型相比,常常存在这些质量限制。主要难点在于确定每个输入标记(音素或字符)的正确持续时间,并在没有明确的逐步指导下生成多样的声学特征。显式持续时间建模:主要促成因素NAR TTS 的一个重要进展是显式建模每个输入单元的持续时间。一个专门的组件预测每个音素应持续多久,而不是让模型隐式地推断,然后将这个预测的持续时间用于将输入表示与输出声学特征序列对齐。典型的工作流程包含以下步骤:编码器: 输入文本序列(通常是音素)由编码器(通常是基于Transformer或CNN的网络)处理,以获取每个输入标记的隐藏状态表示。持续时间预测器: 一个独立的模块接收编码器输出,并预测每个输入标记的持续时间(梅尔频谱图帧数)。该预测器经过训练以准确估算这些持续时间。长度调节器 / 上采样: 编码器输出根据预测的持续时间进行扩展。例如,如果音素/ae/被预测持续5帧,那么它在编码器中对应的隐藏状态向量将重复5次。这会生成一个扩展的隐藏序列,其长度与目标梅尔频谱图长度匹配。解码器: 扩展的隐藏序列被送入解码器(同样,通常是基于Transformer或CNN的),该解码器并行生成最终的梅尔频谱图帧。训练期间,持续时间预测器需要监督。这些目标持续时间是如何获得的?师生训练: 一种有效的方法是使用预训练的高质量自回归模型(“教师”,例如Tacotron 2)为训练数据合成语音。然后使用强制对齐技术来确定输入音素与教师生成的频谱图之间的帧级对齐,从而提供目标持续时间。外部对齐器: 另外,传统的基于HMM的对齐工具(如Montreal Forced Aligner)或专门构建的神经网络对齐器可以与真实音频一起使用以提取持续时间。FastSpeech 和 FastSpeech 2:NAR TTS 的重要进展FastSpeech 系列模型代表了实用且高质量的非自回归合成方面的一个重要进步。FastSpeechFastSpeech 是首批成功采用上述持续时间预测器和长度调节器机制的模型之一,它展现出显著的推理速度提升(比同类自回归模型快数百倍),同时保持了合理的质量。其架构通常包含:一个基于 FFT 块的编码器(使用自注意力机制和一维卷积,类似于Transformer块)。一个 持续时间预测器(通常是带有层归一化和ReLU激活的简单CNN堆栈),使用均方误差(MSE)损失进行训练,以目标持续时间(源自教师模型)为基准。一个 长度调节器,根据预测的持续时间执行上采样。一个基于 FFT 块的解码器,从扩展序列生成梅尔频谱图。digraph FastSpeech { rankdir=LR; node [shape=box, style=rounded, fontname="Arial", fontsize=10, color="#495057", fillcolor="#e9ecef", style="filled,rounded"]; edge [fontname="Arial", fontsize=9, color="#495057"]; subgraph cluster_input { label = "输入处理"; style=dashed; color="#adb5bd"; phonemes [label="音素序列"]; encoder [label="FFT 块\n(编码器)", shape=cylinder, fillcolor="#a5d8ff"]; phonemes -> encoder [label="输入标记"]; } subgraph cluster_duration { label = "持续时间控制"; style=dashed; color="#adb5bd"; duration_predictor [label="持续时间\n预测器", shape=invhouse, fillcolor="#ffec99"]; length_regulator [label="长度\n调节器", shape=cds, fillcolor="#ffd8a8"]; encoder -> duration_predictor [label="编码器输出 (梯度分离)"]; duration_predictor -> length_regulator [label="预测的持续时间"]; encoder -> length_regulator [label="编码器输出"]; } subgraph cluster_output { label = "输出生成"; style=dashed; color="#adb5bd"; decoder [label="FFT 块\n(解码器)", shape=cylinder, fillcolor="#b2f2bb"]; mel_output [label="梅尔频谱图", shape=note, fillcolor="#96f2d7"]; length_regulator -> decoder [label="扩展表示"]; decoder -> mel_output [label="输出特征"]; } subgraph cluster_training { label = "训练对齐 (教师)"; style=dashed; color="#adb5bd"; teacher_model [label="教师自回归模型\n(例如,Tacotron 2)", shape=component, fillcolor="#fcc2d7"]; forced_alignment [label="强制对齐"]; teacher_model -> forced_alignment [label="生成对齐"]; forced_alignment -> duration_predictor [label="目标持续时间 (L2 损失)", style=dotted, constraint=false]; forced_alignment -> mel_output [label="目标梅尔频谱图 (L1 损失)", style=dotted, constraint=false]; } }FastSpeech 的高级结构。输入音素被编码,持续时间被预测并由长度调节器用于扩展编码器状态,然后解码器并行生成梅尔频谱图。训练依赖于来自教师模型的对齐和频谱图。尽管有效,但FastSpeech对教师模型进行对齐(“知识蒸馏”)的依赖意味着其质量固有地受到教师模型的限制,并且两阶段训练过程可能很麻烦。持续时间预测错误也可能导致可听见的伪影。FastSpeech 2FastSpeech 2 解决了其前身的一些限制:消除对教师模型的依赖: 它直接使用真实音频特征进行训练。目标持续时间通常在训练期间使用外部对齐器或专门构建的对齐机制提取。这简化了训练流程,并可能允许超越教师模型的质量。变异适应器: 为了改善韵律和自然度,FastSpeech 2 引入了“变异适应器”模块。除了持续时间预测器之外,它还包含其他声学变异信息的预测器,例如音高(F0 轮廓)和能量(帧级幅度)。这些也按输入标记进行预测,使用预测的持续时间进行扩展,然后作为条件输入添加到解码器中。这使得语音生成更具表现力,且不那么单调。变异适应器对输出语音特征提供了更精细的控制,并有助于减轻早期 NAR 模型中常见的“平均化”效应。训练这些变异预测器通常使用MSE或L1损失,并以从训练音频中提取的真实值为基准。其他非自回归方法虽然 FastSpeech 影响较大,但还存在其他 NAR 架构:ParaNet: 一种早期 NAR 模型,使用迭代细化,生成粗略的频谱图,然后对其进行细化。Glow-TTS: 使用归一化流进行对齐和并行梅尔频谱图生成,提供了一种替代的数学框架。并行Tacotron: 使用迭代方法和注意力机制从自回归模型中提取知识,用于并行解码。VITS (用于端到端语音合成的对抗性学习变分推断): 一个值得注意的模型,它在一个单一的VAE框架内整合了并行声学特征生成和波形合成,采用对抗训练和随机持续时间预测。虽然 VITS 是端到端(文本到波形)的,但其声学生成部分与此处讨论的 NAR 模型原理相似。NAR 模型的优点与缺点优点:推理速度: 主要益处。与自回归模型相比,并行生成可使合成速度快几个数量级,使其成为低延迟应用的理想选择。稳定性: 在长篇合成过程中,不易出现自回归模型中常见的重复或跳过错误,因为每个部分都是更独立地生成的。可控性: 显式持续时间预测允许直接调整语音节奏。变异预测器(如FastSpeech 2中所示)可控制音高和能量。缺点:质量依赖于持续时间/变异预测: 整体自然度在很大程度上取决于持续时间、音高和能量预测器的准确性。这些预测中的错误可能导致不自然的节奏、音高轮廓或音量变化。这仍然是一个活跃的研究方向。数据要求: 准确的持续时间/变异目标对于训练来说非常重要。这需要可靠的对齐工具或高质量的教师模型。单调性可能(由变异预测器解决): 如果没有像变异适应器这样的机制,基本 NAR 模型有时可能生成比最佳自回归模型更平坦、表现力更差的语音,因为并行建模复杂韵律关联存在困难。实现注意事项在实现或训练 NAR TTS 模型时:对齐质量: 确保获取目标持续时间的方法(教师模型对齐、外部对齐器)是准确的。对齐不当是导致质量差的常见原因。预测器架构: 尝试针对持续时间预测器和变异预测器使用不同的架构(例如,CNN、Transformer)。正则化(如 dropout)通常很重要。损失函数: L1 或 L2(MSE)损失是频谱图和变异特征的标准选择。如果组合多个损失,请考虑适当的权重。输入表示: 由于与发音的映射更一致,音素通常比字符产生更好的结果。“非自回归声学模型代表了TTS的一个重要进展,它以自回归模型的顺序依赖为代价,换取了推理速度上的巨大提升。虽然早期模型面临质量挑战,但像显式持续时间预测和变异适应(如FastSpeech 2所示)等技术已显著缩小了差距,使NAR TTS成为许多语音合成应用中非常可行且通常受欢迎的方法。下一章将分析生成的梅尔频谱图(无论是来自自回归模型还是非自回归模型)如何使用神经声码器转换为可听波形。”