AudioLM: a Language Modeling Approach to Audio Generation
Abstract
介绍了AudioLM,这是一个具有长期一致性的高质量音频生成框架。AudioLM将输入音频映射到离散标记序列,并将音频生成作为该表示空间中的语言建模任务。我们展示了现有的音频标记器如何在重建质量和长期结构之间提供不同的权衡,并提出了一种混合标记化方案来实现这两个目标。也就是说,我们利用在音频上预先训练的掩蔽语言模型的离散激活来捕捉长期结构和神经音频编解码器产生的离散代码,以实现高质量的合成。通过对原始音频波形的大型语料库进行训练,AudioLM学会在短提示下生成自然连贯的连续。当对语音进行训练时,在没有任何文字记录或注释的情况下,AudioLM生成语法和语义上合理的语音延续,同时也为看不见的人保持说话人身份和韵律。此外,我们展示了我们的方法是如何通过生成连贯的钢琴音乐延续来扩展到语音之外的,尽管我们在没有任何音乐符号表示的情况下进行了训练。
INTRODUCTION
音频信号,无论是语音、音乐还是环境声音,都涉及多个抽象级别。例如,语音可以在非常局部的声学或语音水平上进行分析,也可以在韵律、语法、语法或语义方面进行分析。音乐也遵循长期结构,同时由高度非平稳的声学信号组成。
当涉及到音频合成时,这些多个尺度以这样一种方式相互作用,即在显示高水平一致性的同时实现高音频质量仍然是一个挑战,特别是在缺乏强有力监督的情况下。
最近的音频合成模型通过利用autoregressive waveform modeling、adversarial training或diffusion等方法,实现了几乎真实的信号质量。然而,当没有强大的条件反射(例如,语言特征、MIDI序列)时,即使像WaveNet 这样强大的模型也会生成非结构化音频,例如胡言乱语。另一方面,语言模型已经证明了它们对不同内容类型的高级长期结构进行建模的能力,随之而来的文本和图像生成的进步为合成自然音频铺平了道路,这种音频随着时间的推移保持可懂懂度和一致性。最近,无条件语音生成实现了朝着这个方向迈出的重要一步,被称为“无文本NLP”。特别地,离散语音单元可以在不依赖文本注释的情况下生成连贯语音。然而,声学多样性和质量仍然有限:该模型仅在干净的语音上进行训练,合成仅限于单个speaker。
在这项工作中,我们介绍了AudioLM,这是一个能够产生具有长期连贯结构的高质量音频的框架,正如我们在语音和钢琴音乐延续方面的实验所证明的那样。我们通过结合对抗性神经音频压缩、自监督表示学习和语言建模的最新进展来实现这一目标。具体来说,从原始音频波形开始,我们首先从用self-supervised masked language建模目标预先训练的模型中构建粗略的semantic tokens。这些表征的自回归建模捕捉了局部依赖性(例如,phonetics in speech,
local melody in piano music)和全局长期结构(例如,language syntax and semantic content in speech; harmony and rhythm in piano music)。然而,这些象征导致重建不力。为了克服这一限制,除了语义标记外,我们还依赖SoundStream neural codec产生的精细级别的声学标记,该标记捕获音频波形的细节,并允许高质量的合成。训练语言模型以生成语义和声学标记同时导致高音频质量和长期一致性。总之,我们作出了以下贡献:
- 我们提出了AudioLM,这是一种用于音频生成的框架,它以分层的方式结合语义和声学标记,以实现长期一致性和高质量。
- 我们在语音数据集上比较了从预训练的w2v-BERT中提取的语义标记和从SoundStream中提取的声学标记,我们表明它们在语音可辨别性和重建质量方面是互补的。
- 我们展示了AudioLM在语音、语法和语义方面生成连贯语音的能力,而不依赖于文本注释。此外,当以训练期间未看到的说话者仅3秒的语音前缀(或提示)为条件时,AudioLM在保持原始说话者语音、韵律和录音条件(例如混响水平、背景噪声)的同时产生一致的连续。
- 我们展示了AudioLM也适用于音乐生成。在钢琴录音训练中,它会产生令人信服的连续音,在旋律、和声、音调和节奏方面与提示一致。
- 我们认识到使用能够实现语音连续的生成模型的潜在风险,并通过训练能够以非常高的精度检测AudioLM生成的合成语音的分类器来减轻这些风险。
RELATED WORK
High-fidelity neural audio synthesis 高保真神经音频合成
近年来,神经网络生成的音频质量取得了巨大进步,这在很大程度上归功于引入了比简单波形回归更好的目标函数。特别是,WaveNet在语音合成中引入了一种自回归分类方法,其质量显著优于传统的串联和参数方法,但代价是推理缓慢。虽然WaveNet启发了计算效率更高的替代方案,如WaveRNN或并行WaveNet,但随着对抗性音频生成的引入,出现了显著的范式转变,这使得高保真度生成无需任何自回归分量。
此外,将这种高质量的合成系统与可微分量化相结合,可以通过压缩瓶颈层中的激活来训练端到端的神经编解码器。AudioLM利用SoundStream神经编解码器产生的令牌,不是作为有损重建的中间表示,而是作为以较低采样率操作的序列建模任务的目标,该任务可以以原始采样率解码回音频。
Self-supervised learning of audio representations 音频表征的自我监督学习
虽然神经音频合成通常侧重于对信号的精细细节进行建模,但大多数自监督学习方法的目的是发现与粗略的符号特征(例如,音素、音符、类标签)相关的高级表示。这通常是通过提出不依赖于任何转录物或标签,而是利用音频信号结构中的规律性的代理目标来实现的。在这些方法中,对比训练学习哪些正示例对比负示例对更接近的表示。例如,正对可以是在时间上接近的两个片段或同一序列的两个增广视图。
另一项工作受到NLP系统预训练的启发,探索了将音频信号离散化为有限的标记词汇表,作为掩蔽语言建模预训练的目标,即预测来自宽上下文的掩码令牌的长连续跨度。离散化策略对此类模型的下游性能至关重要。流行的量化策略包括为未来时间步长预测优化的量化表示,从量化低级别音频特征开始,然后进行量化目标细化的迭代,以及与掩蔽语言模型一起联合学习量化。
这些对比和预测目标的鉴别性,以及它们需要利用长期依赖性的事实,允许学习对信号的粗略、高级信息进行编码的表示(例如,在语音上训练时的音素和单词身份)。因此,这些表示对于判别下游任务(如语音识别或音频分类)特别有用。然而,由于它们没有被优化以编码原始音频信号的精细细节,因此它们的可逆性较差,因此不能直接用于合成。AudioLM通过利用这些高级表示作为携带语义信息并指导高质量声学标记预测的条件信号来避免这种限制。
Generating natural signals with language models 使用语言模型生成自然信号
神经语言模型在开放式对话框建模、代码完成甚至求解积分和微分方程等各种任务中都表现出了非凡的能力。这些模型中最好的模型的关键底层机制是自注意,它适用于建模丰富而复杂的长程依赖关系,但在标准形式中,其计算成本随着输入序列的长度呈二次增长。这种成本对于多达10^3个标记的序列来说是可以接受的,但是,它阻止了以原始形式对自然信号进行建模(例如,在像素级别对512×512图像进行建模)。
虽然一些工作已经探索了自注意的有效替代方案,但这个缩放问题的另一个解决方案是将自然信号映射到紧凑的离散表示空间。
一种常见的方法是用autoregressive
Transformer对该空间中的表示进行建模,然后将其预测映射回原始信号空间。这种方法已用于生成高分辨率图像和长视频。
对于音频,Jukebox采用分层方法生成各种时间分辨率的令牌,然后将其组合以重建音乐。另一个值得注意的工作是“无文本NLP”,它通过训练低比特率音频令牌的自回归生成模型,直接在语音域中对语言进行建模,而不需要任何转录。虽然Jukebox和GSM显示出高度的时间连贯性(例如,GSMM生成的口语是有意义的),但它们的音频质量仍然有限:Jukebox生成的音乐显示出显著的伪影,而从GSMM采样的语音仅限于干净设置中的单个speaker。
这与Perceiver AR不同,后者在高比特率SoundStream codec的离散代码上训练自回归模型。然后,该模型可以生成具有高信号电平质量的钢琴音乐;然而,可以进一步改进所生成的序列的时间结构。
AudioLM通过在生成框架中结合semantic and acoustic tokens来解决长期连贯性和高质量的挑战。这导致了对GSLM的改进,通过生成保留原始说话者身份和语调的语音延续,以及通过生成具有高级连贯性的钢琴序列将音频延续扩展到语音之外。
MODEL
Components
我们考虑单通道音频序列x∈R^T,它由AudioLM框架的以下三个组件处理:
-
一个tokenizer模型,它将x映射到有限词汇表中离散标记的序列h=enc(x),h=(h1,…,h^T′),其中T′≪T
-
一个decoder-only的Transformer语言模型,对离散token y进行操作,训练以使可能性最大化
在推断时,该模型自回归地预测token seqence
-
Detokenizer model,将预测的令牌序列映射回音频,产生波形
重要的是要强调以下方面:i)token的数量T′通常比T小2-3个数量级。这对于显著增加语言模型的时间上下文大小至关重要,因为标准自我注意的计算复杂性相对于序列长度呈二次方增长;ii)在训练语言模型之前,对tokenizer and detokenizer进行预训练和冻结,这将tokenizer和语言模型解耦并简化训练设置。
Trade-offs of discrete audio representations 离散音频表示的权衡
tokenizer and detokenizer模型允许我们对离散音频表示进行操作。一方面,我们希望能够以高质量重建音频波形,这引入了比特率的下限,从而引入了令牌序列的长度的下限。另一方面,我们的目标是获得一个捕获长期依赖关系的紧凑表示。为了调和这些冲突的需求,我们依赖于声学和语义标记的组合,如图1所示。在该标记化方案中,semantic tokens实现了长期的结构连贯性,而对以semantic tokens为条件的acoustic tokens进行建模实现了高质量的音频合成。
AudioLM中使用的标记器概述。声学令牌由SoundStream产生,能够实现高质量的音频合成。语义标记源自w2v BERT的中间层产生的表示,并实现长期的结构连贯性。
SoundStream
我们使用SoundStream计算声学令牌,SoundStream是一种最先进的神经音频编解码器,在低比特率下显著优于Opus和EVS等非神经编解码器。SoundStream采用convolutional encoder将输入波形映射到嵌入序列(map),嵌入序列的采样率明显低于原始音频的采样率。
我们将SoundStream配置为在50Hz(每20ms一次)下为16kHz的输入波形生成嵌入。这是采样率降低了16000/50=320倍。使用残差矢量量化器(RVQ)离散每个嵌入,该残差矢量量量化器由Q个矢量量化器的层次结构组成,每个矢量量化器使用N个符号的词汇表。例如,使用N=1024,Q=4导致2000 bps(50·4·log(2)1024)的比特率。
因此,输入音频样本x由codebook symbols的矩阵Y∈{1,…,N}^T(A)×Q表示,其中T(A)=T/320。然后,SoundStream的卷积解码器将这种离散表示映射到实值嵌入,然后重建波形。codec通过结合重建和对抗性损失进行端到端训练来实现高质量。
w2v-BERT
我们使用w2v-BERT计算语义标记,这是一种最近提出的用于学习自监督音频表示的模型。当在大型语音语料库上训练时,w2vBERT学习将输入音频波形映射到一组丰富的语言特征。这是通过使用两个自我监督目标的组合来训练基于0.6B参数一致性的模型来实现的:掩蔽语言建模(MLM)损失和对比损失。虽然该模型可以针对语音识别或语音到文本翻译等判别性任务进行微调,但AudioLM利用预先训练的w2v-BERT的表示来在生成框架中对长期时间结构进行建模。为此,我们选择w2v BERT的MLM模块的中间层,并计算该级别的嵌入。
我们在这些嵌入上训练具有k个聚类的k均值,并使用质心索引作为语义标记。我们发现,归一化w2v-BERT嵌入,使得每个维度在聚类前具有零均值和单位方差,显著提高了它们的语音可分辨性。w2v BERT沿着时间维度执行下采样,使得以25Hz的采样率(每40ms一个)计算实值1024维特征向量。因此,输入音频样本x被转换成语义标记z=(z1,…,zTS)∈{1,……,K}TS的序列,其中TS=T/640。例如,当T=16000,K=1024时,这导致比特率等于250bps。我们注意到,我们提出的从w2v-BERT中提取语义令牌的建议类似于先前工作中从HuBERT中的令牌提取.
为了激励我们的混合标记化方案,我们通过在音频质量重建和语音可分辨性方面对从SoundStream获得的声学标记和从w2v BERT获得的语义标记的不同性质进行比较。我们通过训练SoundStream解码器从令牌重建音频来评估重建质量。然后,我们计算ViSQOL得分,这是参考音频及其重建之间感知相似性的计算代理。特别是,我们使用“speech”模式,它对16kHz信号进行操作。
我们根据ABX错误率来测量语音可辨别性。它是一种基于距离的度量,考虑了一组仅在中心音素上不同的音素三角图(例如,“bit”与“bet”)。ABX错误率测量一个三元图的随机实例X(“位”)与另一个三元图的实例B(“赌注”)而不是与同一个三元素图的不同实例a(“位)更接近的频率。我们考虑的情况是,A、B和X这三个声音都是由同一个speaker发出的(在speaker内),A和B是由相同的speaker发出的,X来自不同的speaker(cross-speaker)。为了实现两种表示之间的统一比较,我们使用残差矢量量化嵌入来表示语音,其中每个帧由其对应的w2v-BERT质心或SoundStream量化器的输出来表示。
我们使用Libri Light数据集发布的脚本计算ABX,默认设置和报告分数在LibriSpeech dev-clean上获得。表I显示声学标记提供了良好的重建质量(对于2000bps为3.3,对于6000bps为3.9的ViSQOL),但语音辨别能力较差。
相反,从w2v-BERT的MLM模块中从第7层提取的语义令牌显著提高了语音可辨别性,但即使在匹配声学令牌的比特率时,它们也不能获得高重建质量。
因此,仅用一个标记器实现高质量和长期一致性是具有挑战性的。为了进一步说明这一点,我们可以对其中一个令牌类型的序列进行建模,并检查生成的模型的属性。我们在声学标记上执行此操作,因为语义标记只允许较差的音频合成。在下文中,我们省略了符号中的偏移量,并隐式地假设适当的偏移量。使用仅在声学标记上训练的模型,我们从4秒的提示开始对语音连续进行采样。虽然录音条件和提示中的说话人身份都得到了保留,但语言内容不一致,通常类似于胡言乱语。
Hierarchical modeling of semantic and acoustic tokens 语义和声学标记的分层建模
上一节中的观察结果表明,通过在同一框架内对语义和声学标记进行建模,语义标记将确保长期一致性(通过捕捉语音、旋律和音乐节奏的语言内容),而声学标记将确保高质量的音频合成(通过捕捉声学细节)。我们在这个假设的基础上构建了AudioLM框架。
具体来说,我们采用分层方法,首先对整个序列的语义标记进行建模,然后将其用作预测声学标记的条件。
这种方法有两个主要优点:i)分层建模反映了条件独立性假设,即在给定过去的语义令牌的情况下,语义令牌有望与过去的声学令牌条件独立,即p(zt|z<t,y<t)≈p(zt |z<t);ii)与诸如对语义和声学令牌的交织序列进行建模的替代方案相比,每个阶段的令牌序列被减少,从而允许计算上更有效的训练和推理。
AudioLM执行三个后续阶段,如图2所示。在所有阶段中,我们使用单独的separate decoder-only
Transformer,该Transformer经过训练,用于在相应阶段中给定所有先前的地面实况令牌的情况下预测下一个令牌。
Semantic modeling 语义建模
第一阶段建模p(zt|z<t),即语义标记的自回归预测,以捕捉长期时间结构。
Coarse acoustic modeling 粗略声学建模
第二阶段对声学标记进行类似的处理,但它仅根据语义标记从粗略的Q′SoundStream量化器中预测声学标记。由于SoundStream中的残差量化,声学令牌具有分层结构:来自粗略量化器的令牌恢复声学特性,如speaker身份和记录条件,而只将精细声学细节留给精细量化器令牌,后者由下一阶段建模。我们依赖于一种简单的方法,即按主要顺序将声学标记压平,以处理它们的层次结构。
Fine acoustic modeling 精细声学建模
第三阶段对与精细量化器相对应的声学令牌进行操作,使用Q′粗略令牌作为条件,并对Q>Q′的条件概率分布p(yq t|y≤Q′,y>Q′<t,y<Q t)进行建模。随后是先前时间步长的精细Q−Q′量化器,以及与较粗量化器相对应的当前时间步长的已解码标记。在这个阶段,我们进一步提高了音频质量,消除了第二阶段之后残留的有损压缩伪影。
尽管第二阶段和第三阶段可以合并为一个阶段,但我们采用了具有两个独立阶段的解决方案,以限制模型必须同时处理的序列长度。
首先,考虑到当以粗略声学令牌为条件时,精细声学令牌有条件地独立于语义令牌,第三阶段可以忽略语义令牌,这减少了总序列长度。此外,在精细声学细节由粗略声学令牌局部确定的假设下,我们对3秒的非重叠音频块的批次执行第三阶段,允许我们独立于目标音频序列长度来缩放该阶段,并使用更多的残差量化层Q来实现更高的质量。
Inference
train后,我们可以使用AudioLM生成音频,具体如下。根据所使用的调节信号,我们可以获得不同形式的生成。
Unconditional generation 无条件生成
在这种设置中,我们无条件地对所有semantic token z进行采样,然后将其用作声学建模的条件。随附材料中的样本表明,该模型生成了不同的、句法和语义一致的语言内容,具有不同的说话人身份、韵律和声学条件。
Acoustic generation 声学生成
在这种设置中,我们使用从测试序列x中提取的基本事实语义标记z作为条件来生成声学标记。第IV-C节和第IV-D节表明,在这种情况下,生成的音频序列的说话者身份仍然不同,但口语句子的内容保持不变,与x的基本事实记录相匹配。这表明语义标记捕获了语义内容。
Generating continuations
我们感兴趣的主要应用是从短提示x生成连续。为此,我们首先将提示映射到相应的语义标记z≤ts和粗声学标记y≤Q′≤ta。第一个阶段生成的是语义的延续基于条件z≤ts的令牌自回归。在第二阶段,我们将整个语义标记序列(z≤ts,ξz>ts)与提示y≤Q′≤ta的粗声学标记连接起来,并将其作为条件提供给粗声学模型,然后粗声学模型对相应声学标记的连续性进行采样。在第三阶段,我们用精细声学模型处理粗略的声学标记。最后,我们将提示和采样的声学令牌提供给SoundStream解码器,以重建波形。
第IV-F节显示,当一个看不见的说话者只发出3秒的语音提示时,AudioLM会生成与原始语音几乎无法区分的连续音。此外,第IV-I节通过继续钢琴表演,展示了AudioLM在言语之外的表现。