亚马逊发表BASE TTS,首个语音大模型,语音智能涌现,10亿参数10万小时语料

BASE TTS: Lessons from building a billion-parameter Text-to-Speech model on 100K hours of data

语言大模型和视觉大模型发展如火如荼,语音大模型却迟迟未见踪影。近日,亚马逊终于发表了首个语音大模型BASE TTS,将 TTS 模型的参数规模提升到了前所未有的 10 亿级别,使用了10万个小时的录音来进行训练。

这一突破标志着文本转语音技术的发展向前迈出了重要的一步,在不久的将来有可能得到广泛的应用。然而,为了避免滥用,BASETTS不会向公众发布,而是计划作为一种学习应用。

论文地址:https://arxiv.org/pdf/2402.08093.pdf

 

摘要

BASE TTS是一个文本到语音(TTS)模型,是迄今为止最大的TTS模型,训练了100K小时的公共领域语音数据,实现了语音自然度的新的最先进水平。它采用了一个10亿参数的自回归Transformer,将原始文本转换为离散的代码(”speechcodes”),然后通过基于卷积的解码器将这些speechcodes逐步转换为波形,实现了增量和可流式传输。此外,我们的speechcodes使用一种新颖的语音标记化技术构建,具有说话人ID解缠和Byte-pair encoding的压缩。我们展示了当使用10K+小时和500M+参数构建的BASE TTS变体时,它们开始在文本上复杂的句子中展现出自然的韵律,这与大型语言模型在训练数据量增加时广泛报道的”新兴能力”相呼应。我们设计并分享了一个专门的数据集来衡量这些文本到语音的新兴能力。我们通过与包括YourTTS、Bark和TortoiseTTS在内的公开可用的大规模文本到语音系统进行评估,展示了BASE TTS的最先进的自然度。

简介

BASE TTS,它是一个大规模的多语言和多说话人的TTS系统。它通过将TTS视为下一个标记预测问题来训练模型,并使用大量的训练数据来提高多语言和多说话人的能力。该论文的目标是改进TTS的质量,并研究模型的扩展如何影响其在复杂文本输入中产生适当的韵律和表达能力。论文还提出了评估方案,以评估TTS中的潜在新能力。该论文还介绍了BASE TTS的设计,包括模型的结构和训练目标。此外,论文还提出了一种基于WavLM的speechcodes方法,并通过一个卷积模型来解码speechcodes,以减少合成时间。该论文的主要贡献是介绍了BASE TTS,并展示了其在语音合成方面的优势。

本文主要贡献如下:

  • 使用了一个基于Transformer的TTS模型(BASE TTS),并在主观评估中表现优于公开可用的LTTS基线模型。
  • 将BASE TTS扩展到更大的数据集和模型大小,以提高其处理复杂文本的能力,并提供了一个“新兴能力”测试集作为主观评估基准。
  • 引入了一种新颖的离散语音表示方法,可以捕捉语音信号的音素和韵律信息,并证明其优于基线量化方法。这种表示方法可以通过简单、快速、可流式解码器解码为高质量的波形。

BASE TTS

概述

《亚马逊发表BASE TTS,首个语音大模型,语音智能涌现,10亿参数10万小时语料》- 投稿作者:灵度智能 - 发布于:GetAI社区

本文使用了一个包含文本和音频序列的数据集,并使用Transformer模型学习文本和音频序列的联合概率。预测的语音标记与说话者嵌入进行连接,并使用一个经过训练的解码器将其解码为波形。

《亚马逊发表BASE TTS,首个语音大模型,语音智能涌现,10亿参数10万小时语料》- 投稿作者:灵度智能 - 发布于:GetAI社区

离散语音表示

LLM的成功基于离散表示,但在语音中识别紧凑且信息丰富的表示方法比在文本中更加困难。为了实现BASE TTS,研究人员首先尝试了基于向量量化变分自编码器(VQ-VAE)的方法,该方法已被证明在语音和图像表示中非常成功。然而,研究人员还提出了一种新的方法,通过WavLM-based speechcodes来学习语音表示,该方法将从WavLM SSL模型中提取的特征离散化以重构mel-spectrogram。两种表示方法都被压缩以实现更高效的自回归建模,以确保speechcodes的容量主要用于编码语音和韵律信息。

基于Autoencoder的语音标记

基线离散化方法是使用VQ-VAE对mel频谱图进行重构。编码器和解码器是卷积神经网络,通过残差连接将语音表示降采样到25Hz的频率。为了部分地将说话者信息与语音表示分离开来,引入了一个全局参考编码器。该编码器学习一个固定大小的话语级表示,将其与speechcodes连接后再用VQ-VAE解码器进行重构。然而,通过听觉观察发现,基于自动编码器的语音分词器生成的speechcodes仍然包含说话者信息。这促使我们开发具有更好说话者分离性能的表示方法。

基于WavLM的speechcodes

《亚马逊发表BASE TTS,首个语音大模型,语音智能涌现,10亿参数10万小时语料》- 投稿作者:灵度智能 - 发布于:GetAI社区

本文旨在开发包含语音和韵律信息的speechcodes,但与说话人身份、记录条件和音频信号中的其他虚假特征相分离。本文提出一种语音分词器,基于从预训练的WavLM模型中提取的特征,用鼓励解纠缠说话人身份的损失进行进一步训练。

首先将波形通过WavLM模型并提取隐藏状态,然后这些隐藏状态通过单独的内容和说话人线性回归器传递。然后将这些回归器的输出输入到卷积残差编码器中。内容编码通过矢量量化模块传递,每个WavLM帧(即20毫秒的语音)输出一个speechcodes。

说话人编码通过基于transformer的说话人提取器获得说话人嵌入。

说话人嵌入与speechcodes连接,并使用卷积解码器解码为语谱图。然后,我们计算解码和目标语谱图之间的L1距离,并将其作为重建损失。虽然L1不是最优重建目标,但优先考虑了有利于自回归建模[45]的表示,并在第2.4节中证明,当用speechcodes解码器解码这种学习到的表示时,可以保持较高的最终音频质量。说话人嵌入用于对比损失,最大化来自同一说话人的样本之间的相似性,最小化来自不同说话人的样本之间的相似性。最大化了说话人嵌入和通过冻结的说话人提取器传递内容回归器的输出并应用梯度传播获得的嵌入之间的余弦距离。

除了更好地解缠说话人信息外,我们还认为,使用预训练的WavLM模型的特征作为输入(而不是联合学习的音频编码)可以使speechcodes对记录条件更鲁棒。我们的直觉是,WavLM是用数据增强进行训练的,以鼓励从背景噪声中解缠。总损失由这些损失的加权组合给出,另外还有矢量量化器的承诺损失:

《亚马逊发表BASE TTS,首个语音大模型,语音智能涌现,10亿参数10万小时语料》- 投稿作者:灵度智能 - 发布于:GetAI社区

speechcodes进行Byte-pair encoding

基于WavLM的语音表示以50hz的频率学习,以确保它们及时提供足够的分辨率,即使在快节奏的语音中也能够区分单个音素(英语音素的平均长度往往不会低于20ms)。应用Byte-pair encoding将speechcodes的平均序列长度减少约40%,以缓解transformer序列长度的二次记忆增加并最小化自回归模型的复杂性。与文本的BPE类似,我们迭代地将最频繁的speechcodes对加入到新的标记中,并将它们添加到词汇表中,直到达到预先确定的词汇表大小。

自回归语音建模(SpeechGPT

该模型是一个基于GPT2架构的自回归模型,名为”SpeechGPT”。它通过文本和参考语音来预测语音编码。参考语音是从同一说话者中随机选择的一句话,并被编码为固定大小的嵌入。参考语音嵌入、文本和语音编码被连接成一个序列,由基于Transformer的自回归模型进行建模。模型使用单独的位置嵌入和单独的预测头来处理文本和语音。该模型是从头开始训练的,没有在文本上进行预训练。为了保留文本信息以指导韵律,还使用了一个目标来预测输入序列中文本部分的下一个标记,因此SpeechGPT在一定程度上也是一个仅针对文本的语言模型。与语音损失相比,我们对文本损失应用了较低的权重。

Waveform生成

《亚马逊发表BASE TTS,首个语音大模型,语音智能涌现,10亿参数10万小时语料》- 投稿作者:灵度智能 - 发布于:GetAI社区

使用speechcodes作为输入,通过卷积层解码中间表示,再使用HiFi-GAN和BigVGAN生成波形。与传统的扩散模型相比,该系统具有更高的可扩展性和更高的语音质量。在训练过程中,使用SpeechGPT生成speechcodes,并将最后一个隐藏状态作为输入。该系统的局限性是必须与SpeechGPT顺序构建,需要进一步改进。

实验设置

首先比较了基于自编码器和WavLM的语音编码模型的质量。然后评估了两种声学解码方法:扩散解码器和语音编码解码器。接着,通过专家语言学家的评估,对3种数据集大小和模型参数的BASE TTS的新能力进行了评估。最后,进行了主观MUSHRA测试以测量自然度,以及自动可懂度和说话人相似度的测量。同时,还报告了与其他开源文本到语音模型的语音比较质量。

数据集

本文介绍了一种使用大规模语音数据集训练语音合成模型的方法。作者使用了包含100K小时无标签语音数据的数据集,并避免了信号处理或降噪,以测试模型在嘈杂背景数据中生成清晰语音的能力。作者还使用了ASR模型和语音活动检测(VAD)进行语音分割和自动语音识别,并将语音片段分为30秒或更短的片段。作者还将长句子分割为20秒以下的句子,并在训练期间重新组合它们,以使模型对非常短的输入具有鲁棒性,并从更长的上下文中学习。

作者发现自动语音识别(ASR)生成的标点符号较少,例如过多使用逗号而不是冒号和分号,并且很少生成括号。因此,作者采用了部分文本恢复的方法,通过在互联网上搜索源文本并将其与每个录音相关联,然后将ASR转录与源文本逐句匹配,如果它们之间的差异足够小(长度不超过3倍或缩短,且在一定的编辑距离内),则用后者替换前者。这样可以将约一半的文本恢复到“原始”状态,从而使转录中引号和括号的数量大大增加。这样可以避免模型在处理括号等“罕见”标点符号时出现频繁的声学伪影。

训练

模型分为三个步骤:训练两个语音分词器变体,训练SpeechGPT模型,训练语音编码器。SpeechGPT模型使用自回归Transformer结构,通过随机参考语音片段、文本和相应的目标语音片段进行训练。模型的参数和语音数据量可以根据需要进行调整。最终,训练语音编码器以生成语音。

《亚马逊发表BASE TTS,首个语音大模型,语音智能涌现,10亿参数10万小时语料》- 投稿作者:灵度智能 - 发布于:GetAI社区

评估

本文介绍了三种测试方法来评估TTS模型的质量:MUSHRA测试、语言专家评估和自动客观评估。MUSHRA测试通过多个听众对50-100个文本片段的评分来评估模型的质量。语言专家评估通过手动创建的“新兴能力测试集”来评估模型对于文本的理解能力。自动客观评估通过ASR模型计算词错误率和说话人相似度来测试模型的鲁棒性。为了可视化,使用t-test来确定两个系统之间的显著性差异。

《亚马逊发表BASE TTS,首个语音大模型,语音智能涌现,10亿参数10万小时语料》- 投稿作者:灵度智能 - 发布于:GetAI社区

结果

VQ-VAE speechcode vs. WavLM speechcodes

通过MUSHRA评估对6名美国英语和4名西班牙语(卡斯蒂利亚和美国)说话者进行了测试,以全面测试两种语音标记化方法的质量和普适性,使用了训练中见过的说话者的保留测试数据(“已见”条件)和未见过的说话者(“一次性”条件)。在英语声音的平均MUSHRA分数方面,VQ-VAE和WavLM基于系统表现相当(VQ-VAE:74.8 vs WavLM:74.7,差异在统计上不显著)。然而,对于西班牙语声音,WavLM基于模型优于VQ-VAE(VQ-VAE:73.3 vs WavLM:74.7),差异在统计上显著。请注意,英语数据占我们数据集的约90%,而西班牙语数据仅占2%。我们假设对于资源有限的语言,语音编码改进更为关键,而庞大的数据量可以弥补不完美的表示。对这个假设的进一步验证需要在未来的工作中解决。由于基于WavLM的系统至少与VQ-VAE基线一样好甚至更好,我们在进一步的实验中使用它来代表基线TTS。

《亚马逊发表BASE TTS,首个语音大模型,语音智能涌现,10亿参数10万小时语料》- 投稿作者:灵度智能 - 发布于:GetAI社区

Diffusion-based解码器 vs. speechcode解码器

BASE TTS通过提出端到端的语音编码解码器简化了基线扩散解码器,提高了推理速度。通过对比基线进行评估,发现对于4个美国英语和2个西班牙语的说话者中的4个声音,使用语音编码解码器的BASE TTS变体在平均MUSHRA评分方面优于基线。对于剩下的说话者,差异没有统计学意义。研究结果表明,语音编码解码器是首选方法,它不会降低质量,并且对于大多数声音来说,它提供了质量改进,同时提供更快的推理速度。研究结果还表明,将两个强大的生成模型用于语音建模是多余的,可以通过放弃扩散解码器来简化。

《亚马逊发表BASE TTS,首个语音大模型,语音智能涌现,10亿参数10万小时语料》- 投稿作者:灵度智能 - 发布于:GetAI社区

消融分析

本文验证了在LTTS中进行数据和参数缩放会带来质的不同结果的假设。通过MUSHRA和语言专家判断“Emergent abilities”的方法,对两个美式英语语音进行评估。结果表明,从BASE-small到BASE-medium,语音自然度显著提高,但从BASE-medium到BASE-large的提高不太明显。同时,从BASE-small到BASE-medium,模型在所有类别中都有显著提高,但从BASE-medium到BASE-large,除了复合名词外,其他类别的提高有所减缓。情感和语音语调仍然是所有模型变体中最具挑战性的任务。作者认为,将基于GPT的TTS模型从1000+小时和100万个参数缩放到10000+小时和500万个参数是出现“Emergent abilities”的关键点。作者希望进一步扩展模型规模和注入文本知识可以帮助弥补性能差距。

《亚马逊发表BASE TTS,首个语音大模型,语音智能涌现,10亿参数10万小时语料》- 投稿作者:灵度智能 - 发布于:GetAI社区

《亚马逊发表BASE TTS,首个语音大模型,语音智能涌现,10亿参数10万小时语料》- 投稿作者:灵度智能 - 发布于:GetAI社区

与基线比较

BASE TTS在MUSHRA测试中获得了比基准系统更高的自然度分数。在10个说话者和307个样本上进行的客观评估中,BASE TTS产生了最自然的语音,与输入文本的不匹配程度最小,并且与参考说话者的语音最相似。相对而言,Tortoise在自然度和WER方面与BASE TTS相差不大。Bark和YourTTS在自然度和WER方面表现较差,尽管Bark在说话者相似度方面与BASE TTS相对较接近。

《亚马逊发表BASE TTS,首个语音大模型,语音智能涌现,10亿参数10万小时语料》- 投稿作者:灵度智能 - 发布于:GetAI社区

speechcode解码器带来的合成效率提高

speechcode解码器能够实现流式生成语音,结合自回归SpeechGPT模型,其首字节延迟仅为100ms,比扩散式解码器更加高效。在基准测试中,SpeechGPT模型使用语音编码解码器的合成速度比扩散式解码器快3倍。

总结

BASE TTS是一个使用新颖的基于SSL的语音编码作为中间表示和语音编码解码器的GPT风格TTS系统。它是我们所知的同类模型中最大的,无论是参数还是训练数据。我们展示了与Tortoise、Bark和YourTTS等基线相比的最新TTS结果。我们提出了一种衡量TTS模型文本理解能力的新方法,并展示了使用10K小时数据和4亿参数构建的LTTS模型开始展现出对文本的高级理解,从而实现了上下文适应的韵律。从BASE TTS在英语和西班牙语上的出色表现中,我们初步看到了一种多语言TTS方法,它具有高表现力,能够适应文本线索,数据效率高,只使用公共领域数据,并且适用于流式TTS用例,如发声LLM输出。我们的方法指向了LTTS模型的潜在扩展规律,即需要更多的语音和其他(文本、图像)数据来支持多模态目标,并在TTS领域取得新的突破。然而,我们的方法仍然存在一些局限性:a) BASE TTS偶尔会产生幻觉和截断,即产生的音频与文本意图不符合。这是自回归语言模型方法的固有问题,由于音频数据与ASR生成的文本之间的不对齐而变得更糟;b) 选择适合GPT风格TTS的正确离散表示对于系统质量至关重要。需要进行更多的研究来确定语音编码的不同属性如何转化为端到端系统质量。我们只报告了一个语音编码配置的结果,将更全面的研究留给未来的工作。

0

评论0

请先
显示验证码