微软: 用于文本到语音合成(TTS)的语言模型方法VALL-E

微软引入了一种用于文本到语音合成(TTS)的语言模型方法。具体而言,微软使用从现成的神经音频编解码器模型中得到的离散编码训练了一个神经编解码器语言模型(称为VALL-E),并将TTS视为条件语言建模任务,而不是像之前的工作那样进行连续信号回归。在预训练阶段,微软将TTS训练数据扩大到60K小时的英语语音,比现有系统大数百倍。VALL-E出现了上下文学习能力,只需一个3秒钟未见说话人的录音作为声学提示,就可以用于合成高质量的个性化语音。实验结果表明,在语音自然度和说话人相似度方面,VALL-E显著优于最先进的零样本TTS系统。此外,微软发现VALL-E可以在合成中保留声学提示中的说话人情感和声学环境。示例请见https://aka.ms/valle。

与以前的pipeline(例如音素→Mel频谱图→波形)不同,VALL-E的pipeline是音素→离散编码→波形。VALL-E根据音素和声学编码提示生成离散音频编解码器编码,分别对应于目标内容和说话人的声音。VALL-E直接支持各种语音合成应用,例如零样本TTS、语音编辑以及与GPT-3等其他生成式AI模型结合的内容创作。

在这里插入图片描述

1 引言

神经网络和端到端建模的发展在过去十年中给语音合成带来了巨大突破。目前,级联文本到语音(TTS)系统通常利用一个声学模型和一个声码器的pipeline,使用Mel频谱图作为中间表示。尽管先进的TTS系统能够从单个或多个说话人合成高质量的语音,但它仍然需要来自录音棚的高质量干净数据。从互联网爬取的大规模数据无法满足要求,而且总是导致性能下降。由于训练数据相对较少,当前的TTS系统在泛化方面仍然存在不足。在零样本场景中,说话人相似度和语音自然度会大幅下降。

为了解决零样本TTS问题,现有工作利用说话人自适应和说话人编码方法,需要额外的微调、复杂的预设计特征或繁重的结构工程。

与其为这个问题设计一个复杂而特定的网络,不如尽可能地用大量和多样化的数据训练模型,这受到文本合成领域成功的启发。近年来,随着文本语言模型中数据增加,人们见证了显著的性能提升,从16GB的未压缩文本,到160GB,再到570GB,最后是大约1TB。将这一成功转移到语音合成领域,微软引入了VALL-E,这是第一个利用大规模、多样化和多说话人语音数据的基于语言模型的TTS框架。如图1所示,为了合成个性化语音(例如零样本TTS),VALL-E以3秒钟注册录音的声学编码和音素提示为条件生成相应的声学编码,分别约束说话人和内容信息。最后,生成的声学编码用于合成最终的波形。来自音频编解码器模型的离散声学编码使我们能够将TTS视为条件编解码器语言建模,并且可以利用基于提示的大型模型技术(如GPT)用于TTS任务。声学编码还允许我们在推理期间使用不同的采样策略在TTS中生成不同的合成结果。

微软使用LibriLight训练VALL-E,这是一个包含60K小时英语语音的语料库,有7000多个独特的说话人。原始数据是纯音频的,因此微软采用语音识别模型生成转录。与之前的TTS训练数据集(如LibriTTS)相比,微软的数据包含更多噪声和不准确的转录,但提供了不同的说话人和韵律。微软相信,通过利用大数据,所提出的方法对噪声具有鲁棒性,并且泛化性能良好。值得注意的是,现有的TTS系统总是使用几十小时的单说话人数据或几百小时的多说话人数据进行训练,比VALL-E小几百倍。表1总结了VALL-E的创新,即一种用于TTS的语言模型方法,使用音频编解码器编码作为中间表示,利用大规模和多样化的数据,从而具有强大的上下文学习能力。

在这里插入图片描述

微软在LibriSpeech和VCTK数据集上评估VALL-E,其中所有测试说话人在训练语料库中都是未见过的。在语音自然度和说话人相似度方面,VALL-E显著优于最先进的零样本TTS系统,在LibriSpeech上的比较平均意见得分(CMOS)提高了+0.12,相似度平均意见得分(SMOS)提高了+0.93。VALL-E在VCTK上也以+0.11 SMOS和+0.23 CMOS的改进击败了基线。它甚至在VCTK上获得了+0.04的CMOS分数,表明未见说话人的合成语音与人类录音一样自然。此外,定性分析表明,VALL-E能够用相同的文本和目标说话人合成不同的输出,这可能有利于为语音识别任务创建伪数据。我们还发现,VALL-E可以保持声学提示中的声学环境(例如混响)和情感(例如愤怒)。

在这里插入图片描述

总之,微软做出了以下贡献:

  • 微软提出了VALL-E,这是第一个像GPT-3那样具有强大上下文学习能力的TTS框架,它将TTS视为语言模型任务,使用音频编解码器编码作为中间表示,取代传统的Mel频谱图。它具有上下文学习能力,并支持基于提示的方法进行零样本TTS,不需要像之前的工作那样进行额外的结构工程、预设计的声学特征和微调。

  • 微软通过利用大量半监督数据在说话人维度上构建了一个广义TTS系统,表明简单地扩大半监督数据的规模在TTS中被低估了。

  • VALL-E能够用相同的输入文本提供多样化的输出,并保持声学提示中的声学环境和说话人情感。

  • 微软验证了VALL-E通过提示在零样本场景中合成具有高说话人相似度的自然语音。评估结果表明,VALL-E在LibriSpeech和VCTK上显著优于最先进的零样本TTS系统。

微软鼓励读者在示例页面 https://aka.ms/valle 上听样本。

3 背景:语音量化

由于音频通常存储为一系列16位整数值,生成模型需要在每个时间步输出 2 16 = 65 , 536 2^{16}=65,536 216=65,536 个概率才能合成原始音频。此外,超过万赫兹的音频采样率导致了极长的序列长度,使得原始音频合成更加难以处理。为此,需要进行语音量化以压缩整数值和序列长度。μ-law 变换可以将每个时间步量化为256个值并重建高质量的原始音频。它在语音生成模型(如WaveNet)中被广泛使用,但由于序列长度没有减少,推理速度仍然很慢。最近,矢量量化在自监督语音模型中被广泛应用于特征提取,如vq-wav2vec和HuBERT。后续工作表明自监督模型中的编码也可以重建内容,并且推理速度比WaveNet更快。然而,说话人身份已经被丢弃,重建质量也很低。AudioLM在自监督模型的k-means令牌和神经编解码器模型的声学令牌上训练语音到语音语言模型,从而实现高质量的语音到语音生成。

在本文中,微软沿用AudioLM的做法,利用神经编解码器模型将语音表示为离散令牌。为了压缩音频以进行网络传输,编解码器模型能够将波形编码为离散声学编码并重建高质量波形,即使说话人在训练中是未见过的。与传统的音频编解码器方法相比,基于神经网络的编解码器在低比特率下明显更好,微软相信量化后的令牌包含了关于说话人和录音条件的充分信息。与其他量化方法相比,音频编解码器具有以下优势:1)它包含丰富的说话人信息和声学信息,与HuBERT编码相比,可以在重建中维持说话人身份。2)有一个现成的编解码器解码器将离散令牌转换为波形,不需要像在频谱上操作的基于VQ的方法那样额外训练声码器。3)它可以减少时间步长以提高效率,解决μ-law变换中的问题。

微软采用预训练的神经音频编解码器模型EnCodec作为标记器。EnCodec是一个卷积编码器-解码器模型,其输入和输出都是可变比特率的24 kHz音频。编码器为24 kHz的输入波形生成75 Hz的嵌入,这是采样率的320倍减少。每个嵌入由残差矢量量化(RVQ)建模,其中选择了8个具有1024个条目的层次量化器,如图2所示。此配置对应于用于24 kHz音频重建的6K比特率下的EnCodec。在此设置下,给定一个10秒的波形,离散表示是一个 750 × 8 750 \times 8 750×8 的矩阵,其中 750 = ⌊ 24 , 000 × 10 320 ⌋ 750 = \lfloor \frac{24,000 \times 10}{320} \rfloor 750=32024,000×10 是下采样的时间步,8是量化器的数量。选择其他比特率设置也是可以的。更大的比特率对应更多的量化器和更好的重建质量。例如,如果选择12K比特率下的EnCodec,则需要16个量化器,10秒波形对应一个 750 × 16 750 \times 16 750×16 的矩阵。使用所有量化器的离散编码,EnCodec的卷积解码器生成实值嵌入并以24 kHz重建波形。

4 VALL-E

4.1 问题公式化:将TTS视为条件编解码器语言建模

给定一个数据集 D = x i , y i \mathcal{D}=\\{x^i,y^i\\} D=xi,yi,其中 y y y 是一个音频样本, x = x 0 , x 1 , … , x L x=\\{x_0,x_1,\ldots,x_L\\} x=x0,x1,,xL 是其对应的音素转录,微软使用预训练的神经编解码器模型对每个音频样本进行编码为离散声学编码,表示为 Encodec ( y ) = C T × 8 \text{Encodec}(y)=C^{T\times 8} Encodec(y)=CT×8,其中 C C C 表示二维声学编码矩阵, T T T 是下采样的话语长度。每个声学编码矩阵的行向量 c t , : c_{t,:} ct,: 表示第 t t t 帧的8个编码,每个声学编码矩阵的列向量 c : , j c_{:,j} c:,j 表示来自第 j j j 个码本的编码序列,其中 j ∈ 1 , … , 8 j\in\\{1,\ldots,8\\} j1,,8。量化后,神经编解码器解码器能够重建波形,表示为 Decodec ( C ) ≈ y ^ \text{Decodec}(C)\approx\hat{y} Decodec(C)y^

零样本TTS要求模型为未见过的说话人合成高质量的语音。在这项工作中,微软将零样本TTS视为条件编解码器语言建模任务。微软训练了一个神经语言模型,以在给定音素序列 x x x 和声学提示矩阵 C ~ T ′ × 8 \tilde{C}^{T'\times 8} C~T×8 的条件下生成声学编码矩阵 C C C,优化目标是 max ⁡ p ( C ∣ x , C ~ ) \max p(C|x,\tilde{C}) maxp(Cx,C~)。这里, C ~ \tilde{C} C~ 是通过相同的神经编解码器从注册录音中得到的。微软期望神经语言模型分别从音素序列和声学提示中学习提取内容和说话人信息。在推理期间,给定一个音素序列和一个未见过的说话人的3秒钟注册录音,声学编码矩阵首先由训练好的语言模型估计,然后神经编解码器解码器合成高质量的语音。

4.2 训练:条件编解码器语言建模

神经语音编解码器模型允许我们对离散音频表示进行操作。由于神经编解码器模型中的残差量化,令牌具有分层结构:来自先前量化器的令牌恢复声学属性(如说话人身份),而连续的量化器学习精细的声学细节。每个量化器都经过训练以对来自先前量化器的残差进行建模。受此启发,微软以分层方式设计了两个条件语言模型。

对于来自第一个量化器 c : , 1 c_{:,1} c:,1 的离散令牌,微软训练了一个自回归(AR)解码器语言模型。它以音素序列 x x x 和声学提示 C ~ : , 1 \tilde{C}_{:,1} C~:,1 为条件,公式为:

p ( c : , 1 ∣ x , C ~ : , 1 ; θ A R ) = ∏ t = 0 T p ( c t , 1 ∣ c < t , 1 , c ~ : , 1 , x ; θ A R ) p(c_{:,1}|x,\tilde{C}_{:,1};\theta_{AR})=\prod_{t=0}^T p(c_{t,1}|c_{<t,1},\tilde{c}_{:,1},x;\theta_{AR}) p(c:,1x,C~:,1;θAR)=t=0Tp(ct,1c<t,1,c~:,1,x;θAR)

由于VALL-E是一个仅解码器LM,所以 c ~ : , 1 \tilde{c}_{:,1} c~:,1 c : , 1 c_{:,1} c:,1 的连接是一个完整的序列,在训练中微软不区分它们或插入特定的令牌。在推理中只预测 c : , 1 c_{:,1} c:,1 而前缀 c ~ : , 1 \tilde{c}_{:,1} c~:,1 是给定的。

在这里插入图片描述

对于第二个到最后一个量化器的离散令牌 c : , j ∈ [ 2 , 8 ] c_{:,j\in[2,8]} c:,j[2,8],微软训练了一个非自回归(NAR)语言模型。由于令牌在NAR方式下无法相互访问,为了约束说话人身份,声学提示矩阵 C ~ \tilde{C} C~ 被用作声学提示。因此,该模型以音素序列 x x x、声学提示 C ~ \tilde{C} C~ 和属于先前码本的预测声学令牌 C : , < j C_{:,<j} C:,<j 为条件:

p ( C : , 2 : 8 ∣ x , C ~ ; θ N A R ) = ∏ j = 2 8 p ( c : , j ∣ C : , < j , x , C ~ ; θ N A R ) p(C_{:,2:8}|x,\tilde{C};\theta_{NAR})=\prod_{j=2}^8 p(c_{:,j}|C_{:,<j},x,\tilde{C};\theta_{NAR}) p(C:,2:8x,C~;θNAR)=j=28p(c:,jC:,<j,x,C~;θNAR)

AR模型和NAR模型的组合在语音质量和推理速度之间提供了很好的权衡。一方面,生成的语音速率应该与注册录音一致,并且由于不同说话人的说话速度可能非常不同,因此很难为不同的说话人训练长度预测器。在这种情况下,AR模型在声学序列长度预测方面具有更大的灵活性,是一个更自然的选择。另一方面,对于连续阶段,由于输出槽的数量遵循第一阶段的序列长度,NAR可以将时间复杂度从 O ( T ) O(T) O(T) 减少到 O ( 1 ) O(1) O(1)。总的来说, C C C 的预测可以建模为:

p ( C ∣ x , C ~ ; θ ) = p ( c : , 1 ∣ C ~ : , 1 , X ; θ A R ) ∏ j = 2 8 p ( c : , j ∣ c : , < j , x , C ~ ; θ N A R ) p(C|x,\tilde{C};\theta)=p(c_{:,1}|\tilde{C}_{:,1},X;\theta_{AR})\prod_{j=2}^8 p(c_{:,j}|c_{:,<j},x,\tilde{C};\theta_{NAR}) p(Cx,C~;θ)=p(c:,1C~:,1,X;θAR)j=28p(c:,jc:,<j,x,C~;θNAR)

4.2.1 自回归编解码器语言建模

自回归语言模型生成来自第一个量化器的令牌。它包括音素嵌入 W x W_x Wx、声学嵌入 W a W_a Wa、transformer解码器和预测层。为了生成具有特定内容的语音,微软使用音素序列作为语言模型的音素提示。因此,模型输入是 x x x c : , 1 c_{:,1} c:,1 的连接,在每个序列之后附加两个特殊的 令牌。微软分别为提示和输入令牌计算正弦位置嵌入。对于因果transformer模型,每个令牌 c t , 1 c_{t,1} ct,1 可以参与 ( x , c ≤ t , 1 ) (x,c_{\leq t,1}) (x,ct,1),如图3的左侧所示。该模型被优化以最大化第一个码本中下一个令牌的概率。微软共享输出投影层的参数与声学嵌入 W a W_a Wa 的参数。

在AR模型中,微软没有在训练中明确提取音频片段作为提示。训练过程是纯因果语言模型训练。通过这种方式,任何前缀序列 c < t , 1 c_{<t,1} c<t,1 都被视为序列 c ≥ t , 1 c_{\geq t,1} ct,1 后面部分的提示。在推理过程中,给定注册录音,应该将注册录音的音素序列和要合成的音素序列连接在一起。同时,注册录音的声学令牌序列被用作AR解码中的前缀,如公式1所示。微软将在实验中研究这种设置的优越性。

4.2.2 非自回归编解码器语言建模

当微软通过AR模型获得第一个量化器编码时,使用非自回归(NAR)模型生成其他七个量化器的编码。NAR模型的架构与AR模型类似,只是它包含八个独立的声学嵌入层。在每个训练步骤中,随机采样一个训练阶段 i ∈ [ 2 , 8 ] i\in[2,8] i[2,8]。模型被训练以最大化来自第 i i i 个量化器码本的声学令牌。来自第1阶段到第 i − 1 i-1 i1 阶段的声学令牌被嵌入并相加作为模型输入:

e c t , j = W a j c t , j e_{c_{t,j}}=W_a^j c_{t,j} ect,j=Wajct,j

e c t = ∑ j = 1 i − 1 e c t , j e_{c_t}=\sum_{j=1}^{i-1} e_{c_{t,j}} ect=j=1i1ect,j

其中表示索引选择。音素序列也被视为语言模型的提示。此外,为了克隆给定说话人的独特声音,微软还使用来自注册语音的声学令牌作为声学提示。具体来说,首先用神经编解码器模型将注册语音标记为 C ~ T × 8 \tilde{C}^{T\times 8} C~T×8。来自所有八个码本的嵌入表示相加为声学提示 e c ~ t = ∑ j = 1 8 e c ~ t , j e_{\tilde{c}_t}=\sum_{j=1}^8 e_{\tilde{c}_{t,j}} ec~t=j=18ec~t,j。为了预测来自第 i i i 个码本的声学令牌,transformer输入是 ( e x , e c ~ , e c : , < i ) (e_x,e_{\tilde{c}},e_{c_{:,<i}}) (ex,ec~,ec:,<i) 的串联。位置嵌入也是分别为提示和声学序列计算的。当前阶段 i i i 通过自适应层归一化(AdaLN)算子注入到网络中,即 AdaLN ( h , i ) = a i LayerNorm ( h ) + b i \text{AdaLN}(h,i)=a_i\text{LayerNorm}(h)+b_i AdaLN(h,i)=aiLayerNorm(h)+bi,其中 h h h 是中间激活, a i a_i ai b i b_i bi 是从阶段嵌入的线性投影获得的。与AR不同的是,NAR模型允许每个令牌在自注意力层中参与所有输入令牌。微软还共享声学嵌入层和输出预测层的参数,这意味着第 j j j 个预测层的权重与第 j + 1 j+1 j+1 个声学嵌入层相同。

4.3 推理:通过提示进行上下文学习

上下文学习是基于文本的语言模型的一种令人惊讶的能力,它能够在不进行额外参数更新的情况下预测未见输入的标签。对于TTS而言,如果模型能够在没有微调的情况下为未见说话人合成高质量的语音,则认为该模型具有上下文学习能力。然而,现有TTS系统的上下文学习能力并不强,因为它们要么需要额外的微调,要么在未见说话人上显著下降。

对于语言模型,提示是在零样本场景中实现上下文学习所必需的。微软设计提示和推理如下。首先将文本转换为音素序列,并将注册录音编码为声学矩阵,形成音素提示和声学提示。AR模型和NAR模型都使用这两个提示。对于AR模型,微软在给定提示的条件下使用基于采样的解码,因为观察到beam search可能会导致LM陷入无限循环。此外,基于采样的方法可以显著增加输出的多样性。对于NAR模型,微软使用贪心解码来选择概率最高的令牌。最后,使用神经编解码器解码器在给定八个编码序列的条件下生成波形。声学提示可能与要合成的语音在语义上相关或不相关,从而产生两种情况:

VALL-E:微软的主要兴趣是为未见过的说话人生成给定的内容。给模型一个文本句子、一段注册语音及其相应的转录。将注册语音的转录音素附加到给定句子的音素序列前作为音素提示,并使用注册语音的第一层声学令牌 c ~ : , 1 \tilde{c}_{:,1} c~:,1 作为声学前缀。使用音素提示和声学前缀,VALL-E生成给定文本的声学令牌,克隆该说话人的声音。

VALL-E-continual:在此设置中,使用整个转录和话语的前3秒作为音素和声学提示,并要求模型生成后续内容。推理过程与VALL-E设置相同,只是注册语音和生成的语音在语义上是连续的。

5 实验

5.1 实验设置

数据集:微软使用LibriLight作为训练数据,其中包含60K小时来自英语有声读物的未标记语音。LibriLight中不同说话人的数量约为7000。微软在960小时带标签的LibriSpeech上训练了一个混合DNN-HMM ASR模型。一旦训练了混合模型,就对未标记的语音数据进行解码并转换为最佳的音素级别对齐路径,其中帧移为30ms。EnCodec模型用于为60K小时的数据生成声学编码矩阵。

模型:AR模型和NAR模型具有相同的transformer架构,包括12层、16个注意力头、1024维嵌入维度、4096维前馈层和0.1的dropout。LibriLight中波形的平均长度为60秒。在训练期间,随机将波形裁剪为10秒到20秒之间的随机长度。其相应的音素对齐用作音素提示。微软删除了力对齐音素序列中的连续重复。对于NAR声学提示令牌,从同一话语中选择3秒的随机片段波形。

使用16个NVIDIA TESLA V100 32GB GPU对模型进行了800k步的训练,每个GPU的批量大小为6k个声学令牌。微软使用AdamW优化器优化模型,在前32k次更新中将学习率预热到 5 × 1 0 − 4 5\times 10^{-4} 5×104 的峰值,然后线性衰减。

基线:微软选择SOTA零样本TTS模型YourTTS作为基线,该模型在VCTK、LibriTTS和TTS-Portuguese的组合数据集上进行训练。微软使用其发布的检查点。

自动指标:微软使用SOTA说话人验证模型WavLM-TDNN来评估提示(解压缩的注册语音)和合成语音之间的说话人相似度。WavLM-TDNN在VoxSRC Challenge 2021和2022排行榜上获得第一名。它在Vox1-O、Vox1-E和Vox1-H上分别达到了0.383、0.480和0.986的平均等错误率(EER)。WavLM-TDNN预测的相似度分数在 [ − 1 , 1 ] [-1,1] [1,1] 的范围内,其中较大的值表示输入样本的相似度较高。

微软还评估了模型的合成稳健性。神经TTS系统存在稳健性问题,由于注意力对齐错误,有时会出现删除、插入和替换错误。微软对生成的音频执行ASR,并计算相对于原始转录的字错误率(WER)。在此实验中,微软使用在LibriSpeech 960h上微调的HuBERT-Large模型作为ASR模型,这是一个没有语言模型融合的基于CTC的模型。

人工评估:微软通过众包计算比较平均意见分数(CMOS)和相似度平均意见分数(SMOS),其中12名和6名母语者分别被邀请为CMOS和SMOS贡献者。SMOS的量表从1到5,增量为0.5。CMOS的范围从-3(新系统比基线差得多)到3(新系统比基线好得多),间隔为1。CMOS是语音自然度的指标,SMOS衡量语音是否与原始说话人的声音相似。

5.2 LibriSpeech评估

微软首先使用LibriSpeech进行零样本TTS评估,因为LibriLight训练数据和LibriSpeech test-clean数据之间没有说话人重叠。微软使用LibriSpeech test-clean中长度在4到10秒之间的样本,得到2.2小时的子集。对于每个样本合成,VALL-E随机选择同一说话人的另一个话语,并裁剪3秒的语音片段作为注册语音。每个实验运行三次,报告平均分数。VALL-E-continual使用真实语音的前3秒作为注册语音。

在这里插入图片描述

表2显示了客观评估结果。微软首先计算真实语音的WER分数和说话人相似度分数作为上限。为了比较说话人相似度,微软使用测试集中来自同一说话人的语音对。与YourTTS基线相比,微软的模型在稳健性和说话人相似度方面都有显著优势,表明生成的语音高度忠实于给定文本和给定注册语音。此外,在VALL-E-continual设置中,字错误率可以进一步降低,因为前3秒的声学令牌是从真实语音中提取的。微软还将稳健性与其他基于语音到语音LM的生成模型(如GSLM和AudioLM)进行了比较,这些模型使用音频潜在编码作为输入。GSLM使用HuBERT编码作为输入,并使用Tacotron2模型和WaveGlow声码器重建波形。微软运行其开源代码使用发布的模型并评估结果。由于HuBERT编码丢弃了说话人身份,因此它在说话人得分方面表现很差。对于AudioLM,微软列出了他们论文中报告的WER分数,该分数是由Conformer Transducer模型获得的。实验结果表明,在稳健性方面,VALL-E优于其他基于语音到语音LM的生成系统。一个主要原因是VALL-E使用伪音素进行训练,而不是HuBERT/w2v-BERT编码,这与输入文本相比具有更好的对齐质量。

微软随机采样LibriSpeech test-clean中每个说话人的一个话语进行人工评估,得到40个测试用例。表3显示了人工评估结果。在SMOS方面,VALL-E非常接近真实语音,表明合成语音与测试中给定的未见说话人相似。它以+0.93 SMOS显著优于基线,证明了VALL-E在零样本场景中的有效性。在自然度方面,VALL-E以+0.12 CMOS击败基线,表明所提出的方法可以合成比基线更自然和逼真的语音。

在这里插入图片描述

消融研究:在本节中,微软进行了详细的消融实验。首先研究NAR模型。微软训练了具有不同数量提示的三个NAR模型。设置NAR-no prompt在没有任何提示的情况下进行训练。设置NAR-phn prompt仅使用音素序列作为提示进行训练,设置NAR-2 prompts同时使用音素提示和声学令牌提示作为条件。在评估中,使用真实的第一级声学令牌作为模型输入,并计算WER和说话人相似度分数。结果列于表4中。结果表明,即使声学输入令牌是真实的,没有任何提示的模型在ASR和说话人相似度评估方面的表现都很差。当添加音素提示时,WER从19.6大幅降低到3.0。这表明音素提示主要有助于生成的内容。在NAR-2 prompts中,模型可以从声学令牌提示中学习说话人信息,从而提高说话人评估质量。

在这里插入图片描述

微软进一步对AR模型进行了消融实验。在这些实验中,始终使用NAR-2 prompts设置作为NAR模型。在表5中,可以看到,当移除声学提示(w/o声学提示)时,它只能获得0.236的说话人相似度得分,表明提示对于说话人身份极其重要。即使NAR模型可以看到提示,AR模型的提示也对说话人相似度有很大贡献。

在这里插入图片描述

5.3 VCTK评估

微软在包含108个说话人的VCTK上评估模型,其中没有一个说话人在训练期间被观察到。由于YourTTS在VCTK中将97个说话人视为训练,微软分别评估了YourTTS在全部107个说话人和11个未见说话人上的性能。对于每个说话人,随机选择三个3s/5s/10s的话语作为提示,另一个话语的文本作为文本提示。

在这里插入图片描述

微软首先使用前面描述的说话人验证指标评估两个模型。从表6可以看出,即使基线在训练中看到了97个说话人,VALL-E也优于基线,表明微软的模型能够合成具有更高说话人相似度的语音。当在公平设置下(11个说话人)与基线进行比较时,性能差距变得更大,尤其是当只有3s提示可用时。通过比较不同长度的提示,可以看出微软的模型能够在提示变长时生成更相似的语音,这与直觉一致。

微软采样60个说话人进行人工评估,每个说话人一个话语,其中11个是未见说话人,49个说话人在YourTTS中被视为已见。VALL-E没有看到任何60个说话人。在模型合成期间,每个说话人有一个3秒的注册录音。表7显示了微软的方法与基线和真实语音的比较。SMOS的比较表明,VALL-E的说话人相似度优于基线,即使基线在训练中看到了一些说话人。并排CMOS评估表明,VALL-E比YourTTS高+0.23,在语音自然度方面表现明显更好。此外,VALL-E在真实语音上获得+0.04 CMOS,表明在该数据集上与人类录音没有统计学上的显著差异。与LibriSpeech上的评估结果相比,VALL-E在与真实语音的比较中表现出更好的CMOS分数,主要原因是VCTK中平均句子长度更短,并且一些真实话语也有嘈杂的环境。在说话人相似度方面,VCTK更具挑战性,因为它包含具有各种口音的说话人,而训练数据和LibriSpeech测试数据不包含各种口音的说话人。

在这里插入图片描述
在这里插入图片描述

5.4 定性分析

多样性:以前的TTS系统在输入文本和输出波形之间具有强的一对一映射,因为Mel频谱生成基于每一步的重建,没有随机性。由于VALL-E使用基于采样的方法生成离散令牌,对于相同的输入文本,其输出由于推理中的随机性而多样化。给定一个句子和一个注册录音,微软运行推理过程两次并在图4中可视化其波形。在图4(a)中,可以观察到两个样本具有不同的长度和短语持续时间,其中第一个具有更快的语音速率。在图4(b)中,可以观察到两个样本的重音不同。第二个输出用更大的振幅强调单词"must",而第一个输出没有。微软在演示页面上提供了更多样本。

多样性对某些下游场景很重要。例如,语音识别总是从具有不同说话人和声学环境的多样化输入中受益,而以前的TTS系统无法满足这一点。考虑到VALL-E的多样性特点,它是生成语音识别伪数据的理想候选。

声学环境维持:另一个有趣的发现是声学提示和生成之间的声学环境一致性。当声学提示有混响时,VALL-E也可以合成有混响的语音,而基线输出干净的语音。微软的解释是,与基线使用的数据相比,VALL-E在包含更多声学条件的大规模数据集上进行训练,因此VALL-E可以在训练期间学习声学一致性,而不仅仅是干净的环境。微软在演示页面上展示了一致性。

说话人情感维持:情感TTS是语音合成的一个经典子主题,它合成具有所需情感的语音。传统方法总是在有监督的情感TTS数据集上训练模型,其中语音对应于转录和情感标签。微软发现VALL-E可以在零样本设置下保留提示中的情感。微软从EmoV-DB中选择声学提示,这是一个包含五种情感语音的数据集,VALL-E能够在语音合成中保持与提示相同的情感,即使模型没有在情感TTS数据集上进行微调。微软在演示页面上放置了音频样本。

6 结论、局限性和未来工作

微软引入了VALL-E,这是一种使用音频编解码器编码作为中间表示的TTS语言模型方法。微软使用60K小时的语音数据对VALL-E进行了预训练,并展示了在零样本场景中的上下文学习能力。微软在LibriSpeech和VCTK上实现了新的最先进的零样本TTS结果。此外,VALL-E可以在合成中保持声学环境和说话人情感,并在不同的基于采样的解码过程中提供多样化的输出。

尽管取得了显著进展,VALL-E仍然存在几个问题。

合成稳健性:微软观察到,在语音合成中,某些词可能不清楚、遗漏或重复。这主要是因为音素到声学语言部分是一个自回归模型,其中存在无序的注意力对齐,并且没有解决该问题的约束。在基于普通Transformer的TTS中也观察到了这种现象,通过应用非自回归模型或修改建模中的注意力机制来解决。未来,微软希望利用这些技术来解决这个问题。

数据覆盖:即使微软使用60K小时的数据进行训练,它仍然无法覆盖每个人的声音,尤其是口音说话人。在VCTK上的结果比在LibriSpeech上的结果差,也暗示了对口音说话人的覆盖不足。此外,说话风格的多样性还不够,因为LibriLight是一个有声读物数据集,其中大多数话语都是朗读风格。未来,微软将进一步扩大训练数据,以提高模型在韵律、说话风格和说话人相似度方面的性能。微软相信,通过我们的方法,通过模型和数据的扩展,零样本TTS任务几乎可以解决。

模型结构:现在,微软使用两个模型来预测不同量化器的编码。一个有前途的方向是使用一个大型通用模型来预测它们。另一个有趣的方向是在框架中使用完全NAR模型来加速模型推理。

更广泛的影响:由于VALL-E可以合成保持说话人身份的语音,它可能存在滥用模型的潜在风险,例如欺骗声音识别或模仿特定说话人。为了降低此类风险,可以构建检测模型来区分音频片段是否由VALL-E合成。在进一步开发模型时,微软也将付诸实践微软AI原则。

以下是我的一些思考:

从技术伦理的角度,我们要警惕 VALL-E 被滥用的风险,如用于制造虚假语音、侵犯他人隐私等。这需要研发人员保持警惕,并制定相应的防范机制。
语音合成只是人机交互的一个方面,如何将其与语音识别、自然语言理解等技术更好地结合,来创造无缝的交互体验,还有待进一步探索。
从产业化的角度,VALL-E 在定制语音、有声内容创作等领域有广阔的应用前景。但是,如何平衡模型性能和部署成本,如何适配不同的硬件环境,也是工程师们需要考虑的问题。
从学术研究的角度,VALL-E 提出的一些思路,如语言模型范式、提示学习等,可能启发其他领域的研究,如计算机视觉、机器翻译等。交叉学科的创新,往往能产生意想不到的火花。
展望未来,随着模型和数据规模的进一步增长,以及范式的不断创新,人工智能生成语音与真人的差距会越来越小。这对传统的配音行业、有声内容生产模式,都会带来深远的影响。我们要积极拥抱变革,也要未雨绸缪,做好应对准备。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/623097.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

JavaSE——集合框架一(2/7)-Collection集合的遍历方式-迭代器、增强for循环、Lambda、案例

目录 Collection的遍历方式 迭代器 增强for循环&#xff08;foreach&#xff09; Lambda表达式遍历集合 案例 需求与分析 代码部分 运行结果 Collection的遍历方式 迭代器 选代器是用来遍历集合的专用方式&#xff08;数组没有选代器&#xff09;&#xff0c;在Java中…

git-将本地项目上传到远程仓库

在gitee中新建一个远程仓库。 填写对应内容。 打开你想上传的文件夹&#xff0c;比如我想上传yuanshen 右击&#xff0c;打开git bash 输入git init初始化仓库 git init 添加项目所有文件 git add . 将添加的文件提交到本地仓库&#xff08;提交说明必填&#xff09; git …

怎么获得公网IP?

什么是公网IP 在计算机网络中&#xff0c;公网IP&#xff08;Internet Protocol&#xff09;是指可以直接被互联网访问和通信的IP地址。相对应的&#xff0c;私网IP则是在局域网内使用的IP地址&#xff0c;无法直接被互联网访问。获得公网IP对于一些特定的网络需求非常重要&am…

主机扫漏:Apache Tomcat 环境问题漏洞(CVE-2023-46589)

文章目录 引言I 修复此安全问题see also引言 Apache Tomcat存在环境问题漏洞,该漏洞源于存在不正确的输入验证漏洞,可能会导致将单个请求视为多个请求,从而在反向代理后面出现请求走私。 Tomcat did not correctly parse HTTP trailer headers. A specially crafted traile…

【LAMMPS学习】八、基础知识(6.5)PyLammps 教程

8. 基础知识 此部分描述了如何使用 LAMMPS 为用户和开发人员执行各种任务。术语表页面还列出了 MD 术语&#xff0c;以及相应 LAMMPS 手册页的链接。 LAMMPS 源代码分发的 examples 目录中包含的示例输入脚本以及示例脚本页面上突出显示的示例输入脚本还展示了如何设置和运行各…

Poetry Camera照相机将照片转换成诗歌并打印出来;吴恩达新课程深入了解Mistral;科学研究AI小助手data-to-paper

✨ 1: Poetry Camera 将拍摄的照片转换成诗歌并打印出来 Poetry Camera——一个能够把它所见之物转化成诗歌并打印出来的相机。你在一个美丽的公园&#xff0c;或者是一个充满故事的老街道。只要用Poetry Camera拍下这一刻&#xff0c;它就能立刻给你一首关于这个场景的诗。 …

(项目)-KDE巡检报告(模板

金山云于12月26日对建行共计【30】个KDE集群,合计【198】台服务器进行了巡检服务。共发现系统风险【135】条,服务风险【1912】条,服务配置风险【368】条。 一、系统风险 1、风险分析(图片+描述) (1)磁盘使用率高 问题描述多个集群的多台服务器磁盘使用率较高,远超过…

ModuleSim 仿真找不到模块 module is not defined

提示如下&#xff1a; # vsim -t 1ps -L altera_ver -L lpm_ver -L sgate_ver -L altera_mf_ver -L altera_lnsim_ver -L cycloneive_ver -L rtl_work -L work -voptargs""acc"" pulse_generator_tb # Start time: 14:26:25 on May 10,2024 # ** Note: (…

图的概念、性质和存储与简单遍历

前置知识&#xff1a;树的基本概念及性质 为了保证学习效果&#xff0c;请保证已经掌握前置知识之后&#xff0c;再来学习本章节&#xff01;如果在阅读中遇到困难&#xff0c;也可以回到前面章节查阅。 学习目标 掌握图的基本概念掌握图的一些性质 图的概念 基本概念 图 (…

绝地求生:经典艾伦格即将回归!绝地求生艾伦格进化史

29.2版本经典艾伦格地图将会回归&#xff0c;让我回顾一下艾伦格地图的改动历史吧&#xff01; 回归时间 2016年早期A测 A测 4.1版本&#xff1a;艾伦格-新视界 主要区域变动 Military Base(军事基地) Military Base Mylta Power&#xff08;大电&#xff09; Mylta Power …

Adobe After Effects AE v24.3.0 解锁版 (视频合成及视频特效制作)

Adobe系列软件安装目录 一、Adobe Photoshop PS 25.6.0 解锁版 (最流行的图像设计软件) 二、Adobe Media Encoder ME v24.3.0 解锁版 (视频和音频编码渲染工具) 三、Adobe Premiere Pro v24.3.0 解锁版 (领先的视频编辑软件) 四、Adobe After Effects AE v24.3.0 解锁版 (视…

笔记:完善python selenium 讯飞写作的整体自动化

昨天做得不太好,今天再来一次,我发现,只要写得多,一定会有发现。 1、加入本地目录,不要一直登录。 # 定义Edge浏览器的用户数据目录edge_user_data_dir = r"C:\Users\Administrator\AppData\Local\Microsoft\Edge\User Data\Default"# 设置Edge选项edge_optio…

解锁AI写作新纪元的文心一言指令

解锁AI写作新纪元的文心一言指令 在人工智能&#xff08;AI&#xff09;飞速发展的今天&#xff0c;自然语言处理&#xff08;NLP&#xff09;技术取得了显著的进步。文心一言&#xff0c;作为NLP领域的一颗璀璨明星&#xff0c;以其强大的文本生成和指令理解能力&#xff0c;为…

广东省网络安全竞赛部分web,misc wp

我的队伍只做了5题&#xff0c;还是太菜了&#xff0c;本来不想发的&#xff0c;但是写都写了&#xff0c;还是水一篇博客吧 这里是我们队的wp misc1 给了一个压缩包&#xff0c;解压需要密码&#xff0c;用纯数字密码没跑出来&#xff0c;感觉可能不是要强跑&#xff0c;看…

UIKit常用API:Transform

需求 使用Transform系列的API&#xff0c;该API中提供了旋转、平移等功能。其中函数中带make的效果是只变化一次&#xff0c;不带make可变化多次。此外&#xff0c;还有恢复函数&#xff1a;CGAffineTransformIdentity。 代码实现 注意按钮绑定的是同一个响应事件&#xff0…

详细分清Session,Cookie和Token之间的区别,以及JWT是什么东西

Cookie Cookie是一种小型的文本文件&#xff0c;由网站在用户访问时存储在其计算机或移动设备上&#xff0c;Cookie主要用于跟踪、识别和存储有关用户的信息。 简单来说Cookie就是用来存储某些后端发送给前端的数据&#xff0c;例如我们登陆后&#xff0c;后端会返回一个登录…

PythonStudio 控件使用常用方式(十一)MessageBox

PythonStudio是一个极强的开发Python的IDE工具&#xff0c;它使用的是Delphi的控件&#xff0c;常用的内容是与Delphi一致的。但是相关文档并一定完整。现在我试试能否逐步把它的控件常用用法写一点点&#xff0c;也作为PythonStudio的参考。 MessageBox是一个消息对话框&…

AI图书推荐:ChatGPT等生成式AI在高等教育中的应用

自2022年11月以来&#xff0c;ChatGPT及其在高等教育各个层面的影响已成为所有教育对话的核心内容。Chan和Colloton所著的书籍是首批全面探讨ChatGPT与生成式人工智能&#xff08;GenAI&#xff09;在高等教育中应用及影响的作品之一。 该书深入研究了针对专业环境定制的AI素养…

CHATGLM3应用指南(三)——模型微调

CHATGLM3的本地部署可以见博客&#xff1a;CHATGLM3应用指南&#xff08;一&#xff09;——本地部署_chatglm3需要多大内存-CSDN博客 一、微调数据集制作 数据集的形式如下图所示&#xff1a; 可使用下面代码对数据集格式调整 #! /usr/bin/env python print(!!!!!) import …

AI办公自动化-用kimi自动清理删除重复文件

在kimichat中输入提示词&#xff1a; 你是一个Python编程专家&#xff0c;要完成一个编写Python脚本的任务&#xff0c;具体步骤如下&#xff1a; 1、打开文件夹D:\downloads&#xff1b; 2、哈希值比较比较里面所有的文件&#xff0c;如果文件相同&#xff0c;那么移动多余…