大型语言模型以其强大的性能及通用性,带动了一批多模态的大模型开发,如音频、视频等。
语言模型的底层架构大多是基于transformer,且以解码器为主,所以无需过多调整模型架构即可适应其他序列模态。
最近,谷歌发布了一个统一的语音-文本模型audiopalm,将文本和音频的token合并为一个多模态联合词汇表,再结合不同任务描述标记,可以实现在任意语音和文本的混合任务上训练decoder-only模型,包括语音识别(asr)、文本到语音合成、自动语音翻译(ast)和语音到语音翻译(s2st)等,将传统上由异质模型解决的任务统一到一个架构和训练流程中。
图片
论文链接:https://arxiv.org/pdf/2306.12925.pdf
示例链接:https://google-research.github.io/seanet/audiopalm/examples/
此外,由于audiopalm的底层架构是一个大型的transformer模型,可以用对文本进行预训练的大型语言模型的权重来初始化,可以从palm等模型的语言学知识中受益。
从实现效果来看,audiopalm在ast和s2st基准上取得了最先进的结果,并且在asr基准上的性能也和其他模型不相上下。
通过利用audiolm的音频提示,audiopalm模型能够对新的说话人语音迁移来执行s2st,在语音质量和语音保存方面超过了现有的方法。
audiopalm模型也具有zero-shot的能力,可以对训练中未见过的语音输入/目标语言组合执行ast任务。
audiopalm研究人员使用一个decoder-only transformer模型对文本和语音的token进行建模,其中文本和音频在输入到模型之间已经进行分词,所以输入只是一个整数序列,在输出端再进行反分词(detokenized)操作返回给用户。
图片
音频embedding及分词
将音频的原始波形转换为token的过程中,包括从现有的语音表征模型中抽取为嵌入(embedding),并将嵌入离散为一组有限的音频token
之前的工作中从w2v-bert模型中提取嵌入,并通过k-means将其量化,而这篇论文中,研究人员试验了三种方案:
w2v-bert:使用在多语言数据上训练的w2v-bert模型,而非纯英语;并且在进行k-means聚类之前没有进行归一化处理,否则会导致在多语言环境中性能下降。然后以25hz的速率生成token,词表大小为1024
usm-v1:使用性能更强的、20亿参数的通用语音模型(usm)编码器执行类似的操作,并从中间层提取嵌入;
usm-v2:用辅助asr损失来训练,并进一步微调以支持多语言。
修改text-only解码器
在transfomrer解码器结构中,除了输入和最后的softmax输出层外,都不涉及到建模token的数量,并且在palm架构中,输入和输出矩阵的权重变量时共享的,即互为转置。
所以只需要将嵌入矩阵的大小从(t × m)扩展到(t+a)×m即可把一个纯文本模型变成一个既能模拟文本又能模拟音频的模型,其中t是文本词表的大小,a是音频词表的大小,m是嵌入维度。
为了利用预训练的文本模型,研究人员通过在嵌入矩阵中添加新的行来改变现有模型的checkpoint。
具体的实现为,前t个token对应于sentencepiece文本标记,后面a个token代表音频标记,虽然文本嵌入式复用的预训练权重,但音频嵌入是全新初始化的,必须进行训练。
实验结果显示,与从头重新训练相比,基于文本预训练模型对语音和文本的多模态任务性能提升非常有利。
音频token解码为原生音频
为了从音频token中合成音频波形,研究人员试验了两种不同的方法:
1. 类似audiolm模型的自回归解码
2. 类似soundstorm模型的非自回归解码
这两种方法都需要先生成soundstream token,再用卷积解码器将其转换为音频波形。
研究人员在multilingual librispeech上进行训练,语音条件为3秒长的语音样本,同时表示为音频token 和soundstream token
通过提供部分原始输入语音作为语音条件,模型能够在将说话人的语音翻译成不同语言时保留原始说话人的语音,当原始音频短于3秒时,通过重复播放来填充空白时间。
训练任务
使用到的训练数据集均为speech-text数据:
1. 音频audio:源语言的语音(speech)
2. 转录transcript:音频数据中语音的转录
3. 翻译音频translated audio:音频中语音的口语翻译
4. 翻译转录translated transcript:音频中语音的书面翻译
组件任务包括:
1. asr(自动语音识别):转录音频以获得转录文本
2. ast(自动语音翻译):翻译音频以获得翻译后的转录文本
3. s2st(语音到语音翻译):翻译音频以获得翻译后的音频
4. tts(文本到语音):读出转录的内容,以获得音频。
5. mt(文本到文本的机器翻译):翻译转录以获得翻译后的转录文本
一个数据集可能会用于多个任务,所以研究人员选择向模型发出信号,告诉模型应该对给定的输入执行哪项任务,具体方法为:在输入前加上一个标签,指定任务和输入语言的英文名称,输出语言也可以选择。
例如,想要模型对法语语料进行asr时,分词后的音频输入前面要加上标签[asr french];要在英语中执行tts任务,文本前面需要加上[tts english];要执行从英语到法语的s2st任务,分词后的英语音频会在前面加上[s2st english french]
训练混合
研究人员使用seqio库对训练数据进行混合,对较大的数据集进行权重降低。
图片
实验部分图片
audiopalm在ast和s2st任务上超过了其他基线模型,在asr上性能虽然不是最优,但效果也非常好。
除了评估语音内容的翻译质量外,研究人员还评估了audiopalm生成的语言是否质量足够高,并且在翻译成不同语言时能否保留说话人的声音。
客观指标
使用类似于无参考mos估计器,给定一个音频样本,在1到5的范围内提供一个感知音频质量估计。
为了测量跨语言的语音迁移质量,研究人员使用的现成的说话人验证模型,并计算源(用soundstream编码/解码)和翻译语音的嵌入之间的余弦相似度;还衡量了从源音频到目标音频的声学特性(录音条件、背景噪音)。
主观评估
研究人员进行了两项独立研究来评估生成的语音质量和语音相似度,两项研究中都使用相同的样本集合。
由于语料的质量参差不齐,有些含有响亮的重叠语音(例如,背景中播放的电视节目或歌曲)或极强的噪音(例如,衣服与麦克风摩擦),类似的失真效果使得人类评分员的工作变得复杂,因此研究人员决定通过只选择mos估计值至少为3.0的输入进行预过滤。
评分以5级量表提供,从1(质量差或完全不同的声音)到5(质量好,相同的声音)。
图片
从结果中可以观察到audiopalm在客观和主观测量中,在音频质量和语音相似度方面都明显优于基线translatotron 2系统,并且audiopalm比cvss-t中的真实合成录音具有更高的质量和更好的语音相似度,在大多数指标上有比较大提升。
研究人员还对比了高资源组和低资源组(法语、德语、西班牙语和加泰罗尼亚语与其他语言)的系统,发现这些组之间的指标没有明显差异。
以上就是谷歌audiopalm实现「文本+音频」双模态解决,说听两用大模型的详细内容。