|
传统的自动语音识别 (ASR) 系统用于 Google 的各种语音搜索应用,由声学模型 (AM)、发音模型 (PM) 和语言模型 (LM) 组成,所有这些模型都是在不同的数据集上独立训练的,并且通常是手动设计的 [1]。AM 采用声学特征并预测一组子词单元,通常是上下文相关或上下文无关的音素。接下来,手工设计的词典 (PM) 将声学模型产生的音素序列映射到单词。最后,LM 为单词序列分配概率。训练独立组件会增加复杂性,并且与联合训练所有组件相比并不是最优的。在过去几年中,开发端到端系统越来越受欢迎,这些系统试图将这些独立的组件作为一个系统联合学习。虽然这些端到端模型在文献中已经显示出有希望的结果 [2, 3],但目前尚不清楚这种方法是否可以改进当前最先进的传统系统。
今天,我们很高兴与大家分享“基于序列到序列模型的最先进的语音识别[4]”,它描述了一种新的端到端模型,其性能超越了传统生产系统 [1]。我们表明,我们的端到端系统实现了5.6% 的词错误率(WER),这相当于比强大的传统系统(WER 为 6.7%)提高了 16%。此外,用于输出初始词假设的端到端模型(在任何假设重新评分之前)比传统模型小 18 倍,因为它不包含单独的 LM 和 PM。
我们的系统建立在 Listen-Attend-Spell (LAS) 端到端架构之上,该架构首次出现在 [2] 中。LAS 架构由 3 个组件组成。监听器编码器组件与标准 AM 类似,它获取输入语音信号x的时频表示,并使用一组神经网络层将输入映射到更高级别的特征表示henc 。编码器的输出被传递给注意器,后者使用henc来学习输入特征x与预测子词单元 {yn , …y0 }之间的对齐,其中每个子词通常是一个字素或词块。最后,注意模块的输出被传递给拼写器(即解码器),类似于 LM,它会对一组假设的单词产生概率分布。
LAS 端到端模型的组件。
LAS 模型的所有组件都作为单个端到端神经网络进行联合训练,而不是像传统系统那样作为单独的模块进行训练,这使得它变得更加简单。
此外,由于 LAS 模型是完全神经化的,因此不需要外部的、手动设计的组件,例如有限状态转换器、词典或文本规范化模块。最后,与传统模型不同,训练端到端模型不需要从决策树或从单独系统生成的时间对齐中进行引导,并且可以在给定文本转录对和相应的声学的情况下进行训练。
在 [4] 中,我们引入了各种新颖的结构改进,包括改进传递给解码器的注意力向量和使用更长的子字单元(即单词片段)进行训练。此外,我们还引入了许多用于训练的优化改进,包括使用最小字错误率训练 [5]。这些结构和优化改进是获得比传统模型高 16% 的相对改进的原因。
这项研究的另一个令人兴奋的潜在应用是多方言和多语言系统,其中优化单个神经网络的简单性使这种模型非常有吸引力。在这里,可以将所有方言/语言的数据组合起来训练一个网络,而无需为每种方言/语言单独设置 AM、PM 和 LM。我们发现这些模型在 7 种英语方言 [6] 和 9 种印度语言 [7] 上效果很好,同时优于针对每种语言/方言单独训练的模型。
虽然我们对结果感到兴奋,但我们的工作还没有完成。目前,这些模型无法实时处理语音 [8、9、10],而这对于语音搜索等延迟敏感型应用来说是一项迫切的要求。此外,在实时生产数据上进行评估时,这些模型与生产相比仍然表现不佳。此外,我们的端到端模型是在 2200 万个音频文本对话语上学习的,而传统系统通常在更大的语料库上进行训练。此外,我们提出的模型无法学习专有名词等很少使用的单词的正确拼写,这通常需要使用手工设计的 PM 来完成。我们现在正在进行的努力集中在应对这些挑战上。
致谢
这项工作是 Google Brain 和 Speech 团队通力合作的成果。贡献者包括 Speech 团队的 Tara Sainath、Rohit Prabhavalkar、Bo Li、Kanishka Rao、Shankar Kumar、Shubham Toshniwal、Michiel Bacchiani 和 Johan Schalkwyk;以及 Google Brain 团队的 Yonghui Wu、Patrick Nguyen、Zhifeng Chen、Chung-cheng Chiu、Anjuli Kannan、Ron Weiss、Navdeep Jaitly、William Chan、Yu Zhang 和 Jan Chorowski。论文 [4-12] 中更详细地描述了这项工作。
|
|