谷歌再获语音辨认新停顿:应用序列转导来完成多人语音辨认和说话人分类
作者头像
  • 韶华杂谈
  • 2019-08-26 07:11:58 7

从WaveNet到Tacotron,再到RNN-T,谷歌一直在语音人工智能领域处于领先地位。最近,谷歌又将多人语音识别和说话人分类整合到同一模型中,取得了重大突破。

在自动理解和处理人类音频的过程中,“谁说了什么”(即说话人分类)是一个重要的环节。例如,在医生和患者的对话中,医生可能会问:“你按时服用心脏病药物了吗?”而患者回答“是”。这与医生反问患者“是吗?”的意义是完全不同的。

传统的说话人分类系统通常分为两步。首先,系统会检测声谱中的变化,以确定对话中说话人何时发生切换;其次,系统会识别整个对话中的每个说话人。这种多步方法已经被应用了二十多年,但在此期间,研究者主要在“说话人变化检测”部分提高了模型性能。

近年来,随着递归神经网络变换器(RNN-T)的发展,我们现在有了一个适合的架构,可以克服之前说话人分类系统的局限,提升系统的性能。谷歌最近发布的论文《联合语音识别和说话人分类》展示了基于RNN-T的说话人分类系统。该系统将单词分类错误率从20%降低到了2%,性能提升了10倍,并将在Interspeech 2019会议上展示。

传统的说话人分类系统

传统的说话人分类系统依靠声学差异来识别对话中的不同说话人。例如,通过性别差异(如男声和女声),可以使用简单的声学模型(如混合高斯模型)轻松地区分。然而,对于声音相近的说话者,需要使用多步方法。首先,使用变化检测算法将对话分成多个片段,每个片段仅包含一个说话人。接着,使用深度学习模型将这些片段映射成嵌入向量。最后,在聚类阶段,将这些嵌入向量聚类到不同的类别中,以追踪对话中的说话人。

在实际应用场景中,说话人分类系统和声学语音识别(ASR)系统会并行运行,两个系统的输入会被结合,以对识别出的单词进行标注。

这种方法存在诸多不足,阻碍了该领域的进步:

  1. 我们需要将对话切分成仅包含一位说话人的片段。否则,这些片段生成的嵌入无法准确地反映说话人的声学特征。但实际上,变化检测算法并不完美,可能会导致片段中包含多个说话人的语音。
  2. 聚类阶段要求说话人的数量已知,并且对输入的准确性非常敏感。
  3. 系统需要在片段大小和模型准确性之间做出权衡。较长的片段可以提供更多的说话人信息,但也会增加误判的风险。
  4. 传统的说话人分类系统缺乏利用自然对话中细微语言线索的有效机制。例如,在临床对话中,“你多久服一次药?”更有可能是由医护人员说的,而非患者。类似地,“我们应该什么时候交作业?”更可能由学生提出,而非教师。语言线索表明说话人很可能发生了变化。

然而,传统的说话人分类系统也有成功案例。谷歌此前发布的一篇博客介绍了其中一个案例(博客链接:https://ai.googleblog.com/2018/11/accurate-online-speaker-diarization.html)。在这个案例中,循环神经网络(RNN)被用来追踪说话人,克服了聚类阶段的缺陷。本文介绍的模型则采用了一种不同的方法,引入了语言线索。

集成的语音识别和说话人分类系统

我们开发了一种新的模型,不仅融合了声学和语言线索,还将说话人分类和语音识别任务整合在一个系统中。与仅进行语音识别的系统相比,这种集成模型并未显著降低语音识别性能。

我们认识到,RNN-T架构非常适合融合声学和语言线索。RNN-T模型由三个网络组成:(1)转录网络(或编码器),将声帧映射到潜在表示;(2)预测网络,在给定先前目标标签的情况下,预测下一个目标标签;(3)级联网络,融合上述两个网络的输入,并生成当前输入标签的概率分布。

请注意,在下图所示的架构中存在一个反馈循环,其中先前识别出的单词被作为输入返回给模型,从而引入语言线索(如问题的结尾)。

这种集成模型可以像普通的语音识别模型一样训练。训练过程中使用的参考文本包括说话人说的单词及其对应的说话人标签。例如,“作业的截止日期是什么时候?”“我希望你们在明天上课之前提交作业。”当模型根据音频和参考文本样本训练完成后,用户可以输入对话记录,得到类似的输出结果。我们的分析显示,RNN-T系统在各种误差率方面都有所改进,包括快速的说话人转换、单词边界的切分、在语音覆盖情况下的错误对齐,以及较差的音频质量。此外,与传统系统相比,RNN-T系统在每段对话的平均误差方面表现出一致的性能,方差明显降低。

此外,该集成模型还可以预测其他标签,这些标签对于生成更友好的ASR翻译结果是必要的。例如,我们可以使用匹配的训练数据,通过标点符号和大小写标记来提升翻译质量。与之前单独训练并在ASR后处理步骤中使用的模型相比,我们在标点符号和大小写方面的错误更少。

目前,该模型已经成为我们理解医疗对话项目(链接:https://ai.googleblog.com/2017/11/understanding-medical-conversations.html)中的一个标准模块,并在我们的非医疗语音服务中广泛采用。

来源:https://ai.googleblog.com/2019/08/joint-speech-recognition-and-speaker.html 雷锋网

    本文来源:图灵汇
责任编辑: : 韶华杂谈
声明:本文系图灵汇原创稿件,版权属图灵汇所有,未经授权不得转载,已经协议授权的媒体下载使用时须注明"稿件来源:图灵汇",违者将依法追究责任。
    分享
辨认语音转导停顿序列多人说话完成应用分类
    下一篇