Spectron

文章提出了Spectron,一个全新的使用预训练LLM去完成语音问答和语音生成的模型。通过在LLM中增加预训练的语音编码器,使模型具有了语音的输入和输出的能力。整个模型是端到端训练的,并且直接在频谱图上进行,简化了模型的结构。该方法的关键在于模型同时将语音识别,文本续写和语音生成作为训练目标,且只使用了文本-语音对数据,使得模型在只有一个解码阶段具有跨模态的思维链能力。 模型的结构如主图,使用了预训练的语音编码器和预训练的LM。编码器将一段语音作为输入进行编码,随后输入到LM中作为prefix前缀(注意模型中的LM为prefix-decoder架构),随后LM进行token预测,进行文本内容的识别与续写,随后再对语音内容进行预测。具体过程在下面介绍。 在训练阶段,一段语音被分为两段,前一段作为encoder输入,后一段作为模型预测的GT,相应的文本也会分为两段。随后语音编码器将前一段语音进行编码和维度转换输入到LM中作为prefix,LM解码生成文本内容。最后为了使LM具有输入和输出语音的能力,作者加入了Pre-net和Post-net用于处理输入和输出频谱图,有了这两个网络的处理,使得模型能够预测语音内容。模型的损失函数分成两部分,首先是语音识别和文本生成,该部分主要用于训练模型的语音识别和基于文本的问答能力,第二部分是语音生成,该部分主要训练模型的语音回答能力,式子如下: 在推理阶段,输入一段语音,该语音作为语音编码器的输入,进行编码和维度转换后输入到LM中,LM通过自回归的方式依次生成对应文本、文本续写和语音频谱,最后,声码器将频谱转化为音频输出。 作者进行了对比实验和消融实验证明了模型在语义质量,语音质量和回答准确度上的有效性。 最后,文章还指出了模型的局限性。首先是频谱图的生成的计算复杂度高,难以处理长语音,第二是文本和语音的生成不是同步的,会产生一些延迟。