SpeechGPT:LLM与语音技术结合落地

论文SpeechGPT

 

背景

1、大语言模型为什么难以同语音相结合

  • 目前部分LLM能够理解但是难以生成多模态内容
  • 音频信号是连续的,而LLM接受的输入需要离散的,二者存在gap

2、主流的两种语音语言模型(speech-language model)范式

  • cascading paradigm:直接在LLM接入TTS和ASR模型,LLM作为一个控制中枢来处理语音任务;LLM只作为内容生成器,并不参与语音维度的生成,无法构建像情绪、韵律这样的附加信息
  • spoken language models:将语音信号编码成离散的表征并通过LLM建模;目前的方法难以理解音频语义特征,更无法理解音频文本跨模态关系

为解决上述方法的缺陷,SpeechGPT构建跨模态指令数据集SpeechInstruct和模态链路指令数据集,并且设计三阶段训练任务。

模型设计

纵观目前主要的大模型落的设计过程,无非为两个过程:预训练和指令集精调

  • 预训练:如果基座模型的训练语料同垂域模型的任务所需预料相差特别大时,需要考虑预训练任务,扩充词表,使得模型能够理解垂域专有词的表征。预训练往往需要大量无标注的领域知识,消耗大量资源
  • 指令集精调:指令集的精调通常为向模型输入(指令(问题),回答),建模自回归过程,数据的质量极大程度影响了模型的生成能力(https://arxiv.org/pdf/2306.11644.pdf

如果基座模型和垂域模型任务相差巨大的话,还需要设计更多阶段的训练任务来减少二者的gap,SpeechGPT也是遵从了大模型落地的流程,设计了三阶段训练任务帮助模型更好理解文本语音的语义特征,处理跨模态任务

因此可以这样理解:预训练帮助模型学习单词,指令集精调帮助模型更好遣词造句

跨模态数据集构造

  1. 数据收集:结合几个大型英语ASR数据集:Gigaspeech,Common Voice,LibriSpeech得到文本-音频对
  2. 离散化:使用Hidden-unit BERT (HuBERT)将语音信号编码成离散语音特征转存失败重新上传取消,最终得到9million条文本-unit对
  3. 任务描述生成:通过GPT4,对于TTS和ASR任务分别生成100条描述
  4. 指令集构造:随机组合任务描述,用户输入,和模型输出得到指令数据集(D,U,T)

对于TTS任务,指令可以是

 

对于ASR任务,指令可以是

 

 

模态链路指令数据集

  1. 使用跨模态数据集训练文本 to unit生成器
  2. 选取37,969条moss-002-sft-data集中的问答文本数据
  3. 使用生成器对于37,969条生成对应的Unit,最终得到四元组 (SpeechI, TextI, TextR, SpeechR)
  4. 构造指令数据集

训练阶段一:模态适应预训练Modality-Adaptation Pre-training

目的:将语音的离散表征嵌入LLM-13B
数据集:LibriLight which contains 60K hours of unlabelled English audiobook speech,语音离散表征
基座模型:LLama
流程
  1. 扩充词表和embedding:将LLM原有的词表V结合离散语音特征V'得到新词表V‘’,将原有的embedding矩阵随机初始化增广以适合新词表
  2. next-token预测:同其他大模型的语言任务,但时这使用训练语料为音频离散编码u
资源:96 A100,900steps,768 batchsize

训练阶段二:跨模态指令微调

目的:学习不同模态文本之间的语义对齐
数据集:跨模态数据集融合 moss-002-sft
流程:

 

资源:96 A100,2100steps,1536 batchsize

训练阶段三:模态链路指令微调Chain-of-Modality Instruction Fine-Tuning

目的:受启发于思维链COT,强化不同模态之间的语义对齐能力以及LLM本来就有的文本问答能力,训练模型的对话能力
数据集:模态链路指令数据集
资源:8 A100,4200steps,128 batchsize

结果

模型最终能够处理以下图示四种任务:TTS,ASR,语音对话,文本对话

 

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

nbyvy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值