专栏名称: 机器学习研究会
机器学习研究会是北京大学大数据与机器学习创新中心旗下的学生组织,旨在构建一个机器学习从事者交流的平台。除了及时分享领域资讯外,协会还会举办各种业界巨头/学术神牛讲座、学术大牛沙龙分享会、real data 创新竞赛等活动。
目录
相关文章推荐
爱可可-爱生活  ·  晚安~ #晚安# -20250206224457 ·  21 小时前  
爱可可-爱生活  ·  【[395星]chromem-go:为Go语 ... ·  昨天  
人工智能那点事  ·  登山助力机器人在泰山试用!网友:感觉我又行了 ·  4 天前  
51好读  ›  专栏  ›  机器学习研究会

深度 | 腾讯 AI Lab副主任俞栋:过去两年基于深度学习的声学模型进展

机器学习研究会  · 公众号  · AI  · 2017-09-15 20:23

正文

转自:腾讯AI Lab微信(tencent_ailab)

感谢阅读腾讯AI Lab微信号第七篇文章,这是一篇深度研究的概述,论文全文可在页末下载。 今年七月, IEEE/CAA Journal of Automatica Sinica发表了腾讯 AI Lab 副主任兼西雅图实验室负责人 俞栋博士 ,与微软首席应用科学家兼技术负责人李锦宇联合撰写的论文。该论文回顾了过去两年声学模型方面的新进展。本文摘取该论文主干部分进行编译介绍,希望为读者提供相关进展的概括性了解。欲知相关技术方法详情,可参阅页末论文及相关文献。


1. 引言



过去几年里,自动语音识别(ASR)已经取得了重大的进步 [1-21] 。这些进步让 ASR 系统越过了许多真实场景应用所需的门槛,催生出了 Google Now、微软小娜和亚马逊 Alexa 等服务。这些成就中很多都是由深度学习(Deep Learning)技术推动的。


在这篇论文中,我们调查了过去两年的新进展,并重点关注了声学模型。我们讨论了所调查的每一项有趣研究成果的动机和核心思想。具体而言,第 2 节中,我们阐释了使用深度循环神经网络(RNN)和深度卷积神经网络(CNN)的改进的 DL/HMM(深度学习-隐马尔可夫模型)混合声学模型。比起前馈深层神经网络(DNN),这些混合模型能更好地利用语境信息,并由此得到了新的当前最佳的识别准确度。


第 3 节中,我们描述了仅使用很少或不使用不可学习组件的以端到端方式设计和优化的声学模型。我们首先讨论了直接使用音频波形作为输入特征的模型,其特征表征层是自动学习到的,而不是人工设计的。然后我们描述了联结主义时序分类(Connectionist Temporal Classification, CTC)标准优化的模型,该模型允许序列到序列的直接映射。之后我们分析了构建于注意机制之上的序列到序列翻译模型。


第 4 节中,我们讨论了可以提升稳健性的技术,并重点关注了自适应技术、语音增强和分离技术、稳健训练技术。 第 5 节中,我们描述了支持高效解码的声学模型并涵盖了通过教师-学生训练(teacher-student training)与量化实现的跳帧和模型压缩。 第 6 节中,我们提出了正待解决的核心问题以及有望解决这些问题的未来方向。


2. 利用可变长度语境信息的声学模型


DL/HMM 混合模型 [1-5] 是第一种在 ASR 上取得成功的深度学习架构,而且仍然是这一行业使用的主导模型。几年前,大多数混合系统都是基于 DNN 的。


但是,由于音素和语速的不同,语境信息的最优长度也可能各不相同。这说明像在 DNN/HMM 混合系统中一样使用固定长度的语境窗口(context window)可能并非利用语音信息的最佳选择。近几年,人们已经提出了一些可以更有效地利用可变长度语境信息的新模型。其中最重要的两个模型使用了深度 RNN 和 CNN。


A. 循环神经网络(RNN)


前馈 DNN 仅会考虑固定长度的帧的滑动窗口中的信息,因此无法利用语音信号中的长距离相关性。而 RNN 可以编码自己内部状态中的序列历史,因此有望基于截止当前帧所观察到的所有语音特征来预测音素。但不幸的是,纯粹的 RNN 难以训练。


为了克服这些问题,研究人员开发了长短期记忆(LSTM)RNN [23] 。LSTM-RNN 使用输入门、输出门和遗忘门来控制信息流,使得梯度能在相对更长的时间跨度内稳定地传播。


为了得到更好的建模能力,一种流行的做法是将 LSTM 层堆叠起来 [8] 。但带有太多 vanilla LSTM 层的 LSTM-RNN 非常难以训练,而且如果网络太深,还会有梯度消失问题。这个问题可以使用 highway LSTM 或 residual LSTM 解决。


在 highway LSTM [29] 中,相邻层的记忆单元通过门控的直接链路连接在一起,这为信息提供了一种在层之间更直接且不衰减地流动的路径。


residual LSTM [30,31] 在 LSTM 层之间使用了捷径连接(shortcut connection),因此也提供了一种缓解梯度消失问题的方法。


另外还有一种二维时频 LSTM(2-D, time-frequency (TF) LSTM) [35, 36] ,可以在时间和频率轴上对语音输入进行联合扫描,以对频谱时间扭曲(spectro-temporal warping)建模,然后再将其输出的激活(activation)用作传统的时间 LSTM 的输入。这种时间-频率联合建模能为上层的时间 LSTM 提供更好的规范化的特征。


网格 LSTM(Grid LSTM) [38] 是一种将 LSTM 记忆单元排布成多维网格的通用 LSTM,可以被看作是一种将 LSTM 用于时间、频谱和空间计算的统一方法。


尽管双向 LSTM(BLSTM)通过使用过去和未来的语境信息能得到比单向 LSTM 更好的表现,但它们并不适合实时系统,因为这需要在观察到整个话语之后才能进行识别。因为这个原因,延迟受控 BLSTM(LC-BLSTM) [29] 和行卷积 BLSTM(RC-BLSTM)等模型被提了出来,这些模型构建了单向 LSTM 和 BLSTM 之间的桥梁。在这些模型中,前向 LSTM 还是保持原样。但反向 LSTM 会被替代——要么被带有最多 N 帧前瞻量的反向 LSTM(如 LC-BLSTM 的情况)替代,要么被集成了 N 帧前瞻量中的信息的行卷积替代。


B.卷积神经网络(CNN)


卷积神经网络(CNN)是另一种可以有效利用可变长度的语境信息的模型 [42] ,其核心是卷积运算(或卷积层)。


时延神经网络(time delay neural network/TDNN)是第一种为 ASR 使用多个 CNN 层的模型。这种模型在时间轴和频率轴上都应用了卷积运算。


继DNN 在 LVCSR 上的成功应用之后,CNN 又在 DL/HMM 混合模型架构下被重新引入。因为该混合模型中的 HMM 已经有很强的处理 ASR 中可变长度话语问题的能力了,所以重新引入 CNN 最初只是为了解决频率轴的多变性 [5,7,44,45] 。其目标是提升稳健性,以应对不同说话人之间的声道长度差异。这些早期模型仅使用了一到两个 CNN 层,它们和其它全连接 DNN 层堆叠在一起。


后来,LSTM 等其它 RNN 层也被集成到了该模型中,从而形成了所谓的 CNN-LSTM-DNN (CLDNN) [10] 和 CNN-DNN-LSTM(CDL)架构。


研究者很快认识到处理可变长度的话语不同于利用可变长度的语境信息。TDNN 会沿频率轴和时间轴两者同时进行卷积,因此能够利用可变长度的语境信息。基于此,这种模型又得到了新的关注,但这一次是在 DL/HMM 混合架构之下 [13,47] ,并且出现了行卷积 [15] 和前馈序列记忆网络(feedforward sequential memory network/FSMN) [16] 等变体。


最近以来,主要受图像处理领域的成功的激励,研究者提出和评估了多种用于 ASR 的深度 CNN 架构 [14,17,46,48] 。其前提是语谱图可以被看作是带有特定模式的图像,而有经验的人能够从中看出里面说的内容。 在深度 CNN 中,每一个更高层都是更低层的一个窗口的非线性变换的加权和,因此可以覆盖更长的语境以及操作更抽象的模式。和有长延迟困扰的 BLSTM 不一样,深度 CNN 的延迟有限,而且如果可以控制计算成本,那就更加适用于实时系统。


为了加速计算,我们可以将整个话语看作是单张输入图像,因此可以复用中间计算结果。还不止这样,如果深度 CNN 的设计能保证每一层的步幅(stride)长到能覆盖整个核(kernel),比如基于逐层语境扩展和注意(layer-wise context expansion and attention/LACE)的 CNN [17] 和dilated CNN [46] ,它仅需更少数量的层就能利用更长范围的信息,并且可以显著降低计算成本。


3. 使用端到端优化的声学模型


在 DNN/HMM 混合模型中,DNN 和 HMM 两个组件通常是分别进行优化的。然而,语音识别是一个序列识别问题。如果模型中的所有组件都联合进行优化,那就很可能得到更好的识别准确度。如果模型可以移除所有人工设计的组件(比如基本特征表征和词典设计),那结果甚至可以更好。


A.自动学习到的音频特征表征


对语音识别而言,人工设计的对数梅尔滤波器组特征(log Mel-filter-bank feature)是否最优还存在争议。受机器学习社区内端到端处理的启发,研究者们一直在努力 [49-52] 试图用直接学习滤波器替代梅尔滤波器组提取。直接学习滤波器就是使用一个网络来处理原始的语音波形,并且与识别器网络联合训练而得到滤波器。


远场 ASR 领域当前的主导方法仍然是使用传统的波束成形方法来处理来自多个麦克风的波形,然后再将经过波束成形处理过的信号输入给声学模型 [54] 。在使用深度学习执行波束成形以及波束成形和识别器网络的联合训练上,都已经有了一些研究工作 [55-58]


B.联结主义时序分类(CTC)


语音识别任务是一种序列到序列的翻译任务,即将输入波形映射到最终的词序列或中间的音素序列。声学模型真正应该关心的是输出的词或音素序列,而不是在传统的交叉熵(CE)训练中优化的一帧一帧的标注。为了应用这种观点并将语音输入帧映射成输出标签序列,联结主义时序分类(CTC)方法被引入了进来 [9,60,61] 。为了解决语音识别任务中输出标签数量少于输入语音帧数量的问题,CTC 引入了一种特殊的空白标签,并且允许标签重复,从而迫使输出和输入序列的长度相同。


CTC 的一个迷人特点是我们可以选择大于音素的输出单元,比如音节和词。这说明输入特征可以使用大于 10ms 的采样率构建。 CTC 提供了一种以端到端的方式优化声学模型的途径。在 deep speech [15, 63] 和 EESEN [64,65] 研究中,研究者探索了用端到端的语音识别系统直接预测字符而非音素,从而也就不再需要 [9,60,61] 中使用的词典和决策树了。


确定用于 CTC 预测的基本输出单元是一个设计难题。其中,预先确定的固定分解不一定是最优的。 [68] 中提出了 gramCTC,可以自动学习最适合目标序列的分解。但是,所有这些研究都不能说是完全端到端的系统,因为它们使用了语言模型和解码器。


因为 ASR 的目标是根据语音波形生成词序列,所以词单元(word unit)是网络建模的最自然的输出单元。 [18] 中表明通过使用 10 万个词作为输出目标并且使用 12.5 万小时数据训练该模型,发现使用词单元的 CTC 系统能够超越使用音素单元的 CTC 系统。








请到「今天看啥」查看全文