语音识别技术发展的历史背景和研究现状
浏览量:5,334(在苹果系统下,如果文章中的图片不能正常显示,请升级Safari浏览器到最新版本,或者使用Chrome、Firefox浏览器打开。)人类对于语音识别领域相关技术的研究,从上世纪的50年代初就已经开始了,当时的科研人员就曾对语音发音的音素特征做了相关研究。在1952年时,贝尔(Bell)实验室的研究人员,通过使用模拟的电子器件,实现了针对特定说话人说英文数字的孤立词进行语音识别的功能。这个系统主要是提取发音中每个元音的共振峰信息,然后通过简单的模板匹配,从而实现的。该系统得到了98%的正确率[1]。
1960年代,语音识别领域引入了人工神经网络。苏联的研究者Vintsyuk提出了用DynamicProgramming(动态规划算法)实现DynamicTimeWarp(动态时间规整),该算法可以将两个长度不同的语音进行时间上的对齐,从而可以使得两端语音在相同时间长度下得到更有意义的相似度度量。该技术在小规模词语环境下取得了很大的成功,一度成为自动语音识别技术中的主流[2]。
上世纪70年代,卡内基梅隆大学的李开复将隐马尔可夫模型在语音识别中进行了应用,实现了第一个基于HMM的大词汇量的语音识别系统Sphinx[3],对此后的语音识别技术产生了持续的影响。到了80年代,语音识别的研究重心从孤立词的识别转向连续词汇,主要是在孤立词的基础上,通过单个词进行模式匹配实现。并且,语音识别技术的重心从模式匹配的方案逐渐转移到了统计模型的方法上来,尤其是基于隐马尔可夫模型的方案得到了长足的发展。
在2010年之前,基于隐马尔可夫模型的高斯混合模型(GMM-HMM模型)通常代表着最先进的语音识别技术,这类的模型通常采用的特征提取算法是梅尔频率倒谱系数(即MFCC)算法,常用的还有fBank等特征提取算法。而人们也开展了很多研究工作来模仿人类听觉过程,后来通过引入DNN自动学习特征表示,直接取代GMM。深度学习还可以应用于给传统的HMM模型提供强大的具有判别性的特征。DNN和HMM结合的语音识别系统,大大降低了识别错误率[4]。
2010年以来,随着大数据和深度学习的发展,CNN、RNN、LSTM和GRU等网络结构也应用到语音识别中,使得语音识别技术取得了又一次巨大的突破。连接时序分类(ConnectionistTemporalClassification,CTC)方法,端到端(End-to-End)结构模型,和DFCNN、DeepSpeech、WaveNet、DFSMN等模型的出现,将语音识别的准确率一次又一次地推向巅峰。大多数的语音识别系统,目前仍然使用基于概率统计的N元语言模型,和相关变体模型。
近几年来,残差网络(ResNet)、注意力机制(Attentionmechanism)和RNNTransducer的出现,又将语音识别技术带领到发展的新阶段。当前,国内外几种主流的语音识别系统的准确率均超过了90%,有的甚至超过了95%。其中,85%准确率是评价一个语音识别系统是否可实际使用的分水岭。
自2016年以来,AI柠檬博主在研究针对中文的语音识别实践中,通过采用深度卷积神经网络,融合CTC方法进行声学建模,并使用统计语言模型,得到最终我们所需要的汉字文本。基于此,由AI柠檬博主开发的ASRT开源语音识别项目可取得80%的识别准确率。该开源项目的GitHub仓库链接为:https://github.com/nl8590687/ASRT_SpeechRecognition
当前,除了直接使用一些主流的深度学习框架实现语音识别以外,有很多用来实现语音识别的技术都是基于Kaldi进行开发的。众所周知,Kaldi是一个用C++编写的语音识别工具包,供语音识别研究人员使用[5]。Kaldi集成了包括数据预处理、声学特征提取、声学模型建模、声学解码、语言模型建模和并行计算、Cuda计算库等。对于多数传统的语音识别技术,Kaldi均能胜任,其中阿里巴巴的DFSMN模型就是使用Kaldi实现的。
不言而喻,语音识别技术对于人类很重要。在人与人的交流以及传播知识过程中,大约70%的信息是来自于语音。未来,语音识别将必然成为智能生活里重要的一部分,它可以为个人语音助手、语音输入、智能音箱等应用场景提供相关必不可少的技术基础,而且,这还将会成为未来一种新的人机交互方式。
参考文献[1] DavisKH,BiddulphR,BalashekS.Automaticrecognitionofspokendigits[J].TheJournaloftheAcousticalSocietyofAmerica,1952,24(6):637-642.[2]Wikipedia.SpeechRecognition[EB/OL].https://en.wikipedia.org/wiki/Speech_recognition[3] LeeKF.Automaticspeechrecognition:thedevelopmentoftheSPHINXsystem[M].SpringerScience&BusinessMedia,1988.[4] 俞栋,邓力,俞凯,等.解析深度学习语音识别实践[M].北京:电子工业出版社,2016.[5]KaldiASR.http://www.kaldi-asr.org/
版权声明本博客的文章除特别说明外均为原创,本人版权所有。欢迎转载,转载请注明作者及来源链接,谢谢。本文地址:https://blog.ailemon.net/2019/06/20/history-and-research-status-quo-of-speech-recognition/AllarticlesareunderAttribution-NonCommercial-ShareAlike4.0发表你的看法“点击发表你的看法”
关注“AI柠檬博客”微信公众号,及时获取你最需要的干货。
AI柠檬博主正在阿里云上出售域名“y403.com”,感兴趣就快去看看吧打赏赞(1)微海报分享语音识别研究综述
语言是人类最原始直接的一种交流方式,通俗易懂、便于理解.随着科技的发展,语言交流不再只存在于人与人之间,如何让机器“听懂”人类的语言并做出反应成为人工智能的重要课题,语音智能交互技术应运而生.作为其中重要一环的语音识别技术近年来不断发展,走出了实验室,随着人工智能进入人们的日常生活中.当今市场上语音识别技术相关的软件、商品涉及人类生活的方方面面,语音识别的实用性已经得到充分的印证.如今语音识别技术已经成为人类社会智能化的关键一步,能够极大提高人们生活的便捷度.
1语音识别技术的发展历程语音识别技术始于20世纪50年代,贝尔实验室研发了10个孤立数字的语音识别系统,此后,语音识别相关研究大致经历了3个发展阶段.第1阶段,从20世纪50年代到90年代,语音识别仍处于探索阶段.这一阶段主要通过模板匹配—即将待识别的语音特征与训练中的模板进行匹配—进行语音识别.典型的方法包括动态时间规整(dynamictimewarping,DTW)技术和矢量量化(vectorquantification,VQ).DTW依靠动态规划(dynamicprogramming,DP)技术解决了语音输入输出不定长的问题;VQ则是对词库中的字、词等单元形成矢量量化的码本作为模板,再用输入的语音特征矢量与模板进行匹配.总体而言,这一阶段主要实现了小词汇量、孤立词的语音识别.20世纪80年代至21世纪初为第2阶段,这一阶段的语音识别主要以隐马尔科夫模型(hiddenMarkovmodel,HMM)为基础的概率统计模型为主,识别的准确率和稳定性都得到极大提升.该阶段的经典成果包括1990年李开复等研发的SPHINX系统[1],该系统以GMM-HMM(Gaussianmixturemodel-hiddenMarkovmodel)为核心框架,是有史以来第一个高性能的非特定人、大词汇量、连续语音识别系统.GMM-HMM结构在相当长时间内一直占据语音识别系统的主流地位,并且至今仍然是学习、理解语音识别技术的基石.此外,剑桥推出了以HMM为基础的语音识别工具包HTK(hiddenMarkovmodeltoolkit)[2].21世纪至今是语音识别的第3阶段.这一阶段的语音识别建立在深度学习基础上,得益于神经网络对非线性模型和大数据的处理能力,取得了大量成果.2009年Mohamed等[3]提出深度置信网络(deepbeliefnetwork,DBN)与HMM相结合的声学模型在小词汇量连续语音识别中取得成功.2012年深度神经网络与HMM相结合的声学模型DNN-HMM在大词汇量连续语音识别(largevocabularycontinuousspeechrecognition,LVCSR)中取得成功[4],掀起利用深度学习进行语音识别的浪潮.此后,以卷积神经网络(convolutionalneuralnetwork,CNN)、循环神经网络(recurrentneuralnetwork,RNN)等常见网络为基础的混合识别系统和端到端识别系统都获得了不错的识别结果和系统稳定性.迄今为止,以神经网络为基础的语音识别系统仍旧是国内外学者的研究热点.
我国的语音识别则起步于国家的“863计划”和“973计划”,中科院声学所等研究所以及顶尖高校尝试实现长时语音的汉语识别工作,如今中文语音识别技术已经达到了国际水准.2015年清华大学建立了第一个开源的中文语音数据库THCHS-30[5].2016年上海交通大学提出的非常深卷积网络(verydeepconvolutionalneuralnetworks,VDCNN)[6]提高了噪声语音识别的性能,并在此基础上进一步提出了非常深卷积残差网络(verydeepconvolutionalresidualnetwork,VDCRN)[7].百度于2014年、2016年依次推出了DeepSpeech[8]及其改进版本[9],并在2017年提出ColdFusion[10]以便于更好地利用语言学信息进行语音识别,该系统以LSTM-CTC(longshort-termmemory-connectionisttemporalclassification)的端到端模型为基础,在不同的噪声环境下实现了英语和普通话的语音识别.2018年科大讯飞提出的深度全序列卷积神经网络(deepfull-sequenceconvolutionneuralnetworks,DFCNN)[11]直接对语音信号进行建模,该模型采用的大量叠加卷积层能够储存更多历史信息,获得了良好的识别效果.同年,阿里巴巴提出低帧率深度前馈记忆网络(lowerframerate-deepfeedforwardsequentialmemorynetworks,LFR-DFSMN)[12],将低帧率算法和DFSMN算法相结合,使错误率降低了20%,解码速度却提升了近3倍.
总体而言,当前主流语音识别技术主要在大词汇量连续语音数据集上,基于深度神经网络进行模型构建和训练,面向不同应用场景需求和数据特点对现有的神经网络不断改进,相比于传统的统计方法取得了极大的性能提升.
2语音识别基础2.1语音识别概念语音识别是利用机器对语音信号进行识别和理解并将其转换成相应文本和命令的技术,涉及到心理学、信号处理、统计学、数学和计算机等多门学科.其本质是一种模式识别,通过对未知语音和已知语音的比较,匹配出最优的识别结果.
根据面向的应用场景不同,语音识别存在许多不同的类型:从对说话人的要求考虑可分为特定人和非特定人系统;从识别内容考虑可分为孤立词识别和连续语音识别、命令及小词汇量识别和大词汇量识别、规范语言识别和口语识别;从识别的速度考虑还可分为听写和自然语速的识别等[13].
2.2传统语音识别基本原理通常,语音识别过程大致分为两步:第1步,首先对语音信号提取特定的声学特征,然后对声学特征进行“学习”或者说是“训练”,即建立识别基本单元的声学模型和进行语言文法分析的语言模型;第2步是“识别”,根据识别系统的类型选择能够满足要求的识别方法,采用语音分析方法分析出这种识别方法所要求的语音特征参数,按照一定的准则和测度与系统模型进行比较,通过判决得出识别结果.
设一段语音信号经过特征提取得到特征向量序列为X=[x1,x2,…,xN],其中xi是一帧的特征向量,i=1,2,…,N,N为特征向量的数目.该段语音对应的文本序列设为W=[w1,w2,…,wM],其中wi为基本组成单元,如音素、单词、字符,i=1,2,…,M,M为文本序列的维度.从贝叶斯角度,语音识别的目标就是从所有可能产生特征向量X的文本序列中找到概率最大的W*,可以用公式表示为式(1)优化问题:
$egin{split}{W^*}=&argmathop{max}limits_WPleft({Wleft|X ight.} ight)=argmathop{max}limits_Wfrac{{Pleft({Xleft|W ight.} ight)Pleft(W ight)}}{{Pleft(X ight)}}\&proptoargmathop{max}limits_WPleft({Xleft|W ight.} ight)Pleft(W ight)end{split}$(1)由式(1)可知,要找到最可能的文本序列必须使两个概率P(X|W)和P(W)的乘积最大,其中P(X|W)为条件概率,由声学模型决定;P(W)为先验概率,由语言模型决定.声学模型和语言模型对语音信号的表示越精准,得到的语音系统效果越准确.
从语音识别系统的构成来讲,一套完整的语音识别系统包括预处理、特征提取、声学模型、语言模型以及搜索算法等模块,其结构示意图如图1所示.其中较为重要的特征提取、声学模型和语言模型将在第2.2节中详细阐述.
图1Fig.1图1语音识别系统结构图预处理包括预滤波、采样、模/数转换、预加重、分帧加窗、端点检测等操作.其中,信号分帧是将信号数字化后的语音信号分成短时信号作为识别的基本单位.这主要是因为语音信号是非平稳信号,且具有时变特性,不易分析;但其通常在短时间范围(一般为10–30ms)内其特性基本不变,具有短时平稳性,可以用来分析其特征参数.
搜索模块是指在训练好声学模型和语言模型后,根据字典搜索最优路径,即最可能的输出词序列.传统的语音识别解码建立在加权有限状态转换器(weightedfinitestatetransducer,WFST)所构成的动态网络上,将HMM状态、词典和语法等结合起来.目前端到端模型中主流的搜索算法为BeamSearch等.
2.2.1特征提取通常,在进行语音识别之前,需要根据语音信号波形提取有效的声学特征.特征提取的性能对后续语音识别系统的准确性极其关键,因此需要具有一定的鲁棒性和区分性.目前语音识别系统常用的声学特征有梅尔频率倒谱系数(Mel-frequencycepstrumcoefficient,MFCC)、感知线性预测系数(perceptuallinearpredictivecepstrumcoefficient,PLP)、线性预测倒谱系数(linearpredictioncepstralcoefficient,LPCC)、梅尔滤波器组系数(Melfilterbank,Fbank)等.
MFCC是最为经典的语音特征,其提取过程如图2所示.MFCC的提取模仿了人耳的听觉系统,计算简单,低频部分也有良好的频率分辨能力,在噪声环境下具有一定的鲁棒性.因此,现阶段语音识别系统大多仍采用MFCC作为特征参数,并取得了不错的识别效果.
图2Fig.2图2MFCC的特征提取过程2.2.2声学模型声学模型是对等式(1)中的P(X|W)进行建模,在语音特征与音素之间建立映射关系,即给定模型后产生语音波形的概率,其输入是语音信号经过特征提取后得到的特征向量序列.声学模型整个语音识别系统中最重要的部分,只有学好了发音,才能顺利和发音词典、语言模型相结合得到较好的识别性能.
GMM-HMM是最为常见的一种声学模型,该模型利用HMM对时间序列的建模能力,描述语音如何从一个短时平稳段过渡到下一个短时平稳段;此外,HMM的隐藏状态和观测状态的数目互不相干,可以解决语音识别中输入输出不等长的问题.该声学模型中的每个HMM都涉及到3个参数:初始状态概率、状态转移概率和观测概率,其中观测概率依赖于特征向量的概率分布,采用高斯混合模型GMM进行建模.
GMM-HMM声学模型在语音识别领域有很重要的地位,其结构简单且区分度训练成熟,训练速度也相对较快.然而该模型中的GMM忽略时序信息,每帧之间相对孤立,对上下文信息利用并不充分.且随着数据量的上升,GMM需要优化的参数急剧增加,这给声学模型带来了很大的计算负担,浅层模型也难以学习非线性的特征变换.
深度学习的兴起为声学建模提供了新途径,学者们用深度神经网络(deepneuralnetwork,DNN)代替GMM估计HMM的观测概率,得到了DNN-HMM语音识别系统,其结构如图3所示.DNN-HMM采用DNN的每个输出节点来估计给定声学特征的条件下HMM某个状态的后验概率.DNN模型的训练阶段大致分为两个步骤:第1步是预训练,利用无监督学习的算法训练受限波尔兹曼机(restrictedBoltzmannmachine,RBM),RBM算法通过逐层训练并堆叠成深层置信网络(deepbeliefnetworks,DBN);第2步是区分性调整,在DBN的最后一层上面增加一层Softmax层,将其用于初始化DNN的模型参数,然后使用带标注的数据,利用传统神经网络的学习算法(如BP算法)学习DNN的模型参数.相比于GMM-HMM,DNN-HMM具有更好的泛化能力,擅长举一反三,帧与帧之间可以进行拼接输入,特征参数也更加多样化,且对所有状态只需训练一个神经网络.文献[4]证实了神经网络在大词汇量语音识别领域的出色表现.
图3Fig.3图3基于DNN-HMM的语音识别系统框架通过将DNN取代GMM对HMM观测概率进行声学建模,DNN-HMM相比GMM-HMM在语音识别性能方面有很大提升;然而,DNN对于时序信息的上下文建模能力以及灵活性等方面仍有欠缺.针对这一问题,对上下文信息利用能力更强的循环神经网络RNN[14]和卷积神经网络CNN[15]被引入声学建模中.在RNN的网络结构中,当前时刻的输出依赖记忆与当前时刻的输入,这对于语音信号的上下文相关性建模非常有优势.然而,RNN存在因梯度消失和梯度爆炸而难以训练的问题,于是研究人员引入门控机制,得到梯度传播更加稳定的长短时记忆(longshort-termmemory,LSTM)网络.LSTM-RNN对语音的上下文信息的利用率更高,识别的准确率与鲁棒性也均有提升,这些在文献[16]中能得到证实.CNN的优势在于卷积的不变性和池化技术,对上下文信息有建模能力,对噪声具有鲁棒性,并且可以减少计算量.时延神经网络(timedelayneuralnetwork,TDNN)是CNN对大词汇量连续语音识别的成功应用[17].CLDNN(CNN-LSTM-DNN)综合了三者的优点,实验结果也证明了三者的结合得到了正向的收益[18].
总体而言,近年来语音识别中对声学模型的研究仍集中在神经网络,针对不同的应用场景和需求对上述经典网络结构进行综合和改进[19-21],以期训练更复杂、更强大的声学模型.
2.2.3语言模型语言模型是用来预测字符(词)序列产生的概率,判断一个语言序列是否为正常语句,也就是解决如何计算等式(1)中的P(W).传统的语言模型n-gram[22]是一种具有强马尔科夫独立性假设的模型,它认为任意一个词出现的概率仅与前面有限的n–1个字出现的概率有关,其公式表达如下:
$egin{split}Pleft(W ight)=&prodlimits_{i=1}^m{P({w_i}|{w_1},{w_2},cdots,{w_{i-1}})}\&proptoprodlimits_{i=1}^m{P({w_i}|{w_{i-n+1}},cdots,{w_{i-1}})}end{split}$(2)$egin{split}&Pleft({{w_i}|{w_{i-n+1}},{w_{i-n+2}},cdots,{w_{i-1}}} ight)=hfill\&frac{{countleft({{w_{i-n+1}},{w_{i-n+2}},cdots,{w_{i-1}},{w_i}} ight)}}{{countleft({{w_{i-n+1}},{w_{i-n+2}},cdots,{w_{i-1}}} ight)}}hfillend{split}$(3)然而,由于训练语料数据不足或者词组使用频率过低等常见因素,测试集中可能会出现训练集中未出现过的词或某个子序列未在训练集中出现,这将导致n-gram语言模型计算出的概率为零,这种情况被称为未登录词(out-of-vocabulary,OOV)问题.为缓解这个问题,通常采用一些平滑技术,常见的平滑处理有Discounting、Interpolation和Backing-off等.n-gram模型的优势在于其参数易训练,可解释性极强,且完全包含了前n–1个词的全部信息,能够节省解码时间;但难以避免维数灾难的问题,此外n-gram模型泛化能力弱,容易出现OOV问题,缺乏长期依赖.
随着深度学习的发展,语言模型的研究也开始引入深度神经网络.从n-gram模型可以看出当前的词组出现依赖于前方的信息,因此很适合用循环神经网络进行建模.Bengio等将神经网络用于语言模型建模[23],提出用词向量的概念,用连续变量代替离散变量,利用神经网络去建模当前词出现的概率与其前n–1个词之间的约束关系.这种模型能够降低模型参数的数量,具有一定的泛化能力,能够较好地解决数据稀疏带来的问题,但其对取得长距离信息仍束手无策.为进一步解决问题,RNN被用于语言模型建模[24].RNNLM中隐含层的循环能够获得更多上下文信息,通过在整个训练集上优化交叉熵来训练模型,使得网络能够尽可能建模出自然语言序列与后续词之间的内在联系.其优势在于相同的网络结构和超参数可以处理任意长度的历史信息,能够利用神经网络的表征学习能力,极大程度避免了未登录问题;但无法任意修改神经网络中的参数,不利于新词的添加和修改,且实时性不高.
语言模型的性能通常采用困惑度(perplexity,PPL)进行评价.PPL定义为序列的概率几何平均数的倒数,其公式定义如下:
$egin{split}&Pleft({{w_i}|{w_{i-n+1}},{w_{i-n+2}},cdots,{w_{i-1}}} ight)hfill\&=frac{{countleft({{w_{i-n+1}},{w_{i-n+2}},cdots,{w_{i-1}},{w_i}} ight)}}{{countleft({{w_{i-n+1}},{w_{i-n+2}},cdots,{w_{i-1}}} ight)}}hfillend{split}$(4)PPL越小表示在给定历史上出现下一个预测词的概率越高,该模型的效果越好.
2.3端到端语音识别传统的语音识别由多个模块组成,彼此独立训练,但各个子模块的训练目标不一致,容易产生误差累积,使得子模块的最优解并不一定是全局最优解.针对这个问题,学者们提出了端到端的语音识别系统,直接对等式(1)中的概率P(W|X)进行建模,将输入的语音波形(或特征矢量序列)直接转换成单词、字符序列.端到端的语音识别将声学模型、语言模型、发音词典等模块被容纳至一个系统,通过训练直接优化最终目标,如词错误率(worderrorrate,WER)、字错误率(charactererrorrate,CER),极大地简化了整个建模过程.目前端到端的语音识别方法主要有基于连接时序分类(connectionisttemporalclassification,CTC)[25]和基于注意力机制(attentionmodel)[26]两类方法及其改进方法.
CTC引入空白符号(blank)解决输入输出序列不等长的问题,主要思想是最大化所有可能对应的序列概率之和,无需考虑语音帧和字符的对齐关系,只需要输入和输出就可以训练.CTC实质是一种损失函数,常与LSTM联合使用.基于CTC的模型结构简单,可读性较强,但对发音词典和语言模型的依赖性较强,且需要做独立性假设.RNN-Transducer模型[27]是对CTC的一种改进,加入一个语言模型预测网络,并和CTC网络通过一层全连接层得到新的输出,这样解决了CTC输出需做条件独立性假设的问题,能够对历史输出和历史语音特征进行信息累积,更好地利用语言学信息提高识别准确率.
基于注意力机制的端到端模型最开始被用于机器翻译,能够自动实现两种语言的不同长度单词序列之间的转换.该模型主要由编码网络、解码网络和注意力子网络组成.编码网络将语音特征序列经过深层神经网络映射成高维特征序列,注意力网络分配权重系数,解码网络负责输出预测的概率分布.该模型不需要先验对齐信息,也不用音素序列间的独立性假设,不需要发音词典等人工知识,可以真正实现端到端的建模.2016年谷歌提出了一个Listen-Attend-Spell(LAS)模型[28],其结构框图如图4所示.LAS模型真正实现了端到端,所有组件联合训练,也无独立性假设要求.但LAS模型需要对整个输入序列之后进行识别,因此实时性较差,之后也有许多学者对该模型不断改进[29-31].
图4Fig.4图4LAS模型框架图目前端到端的语音识别系统仍是语音识别领域的研究热点,基于CTC[32-34]、attention机制[35]以及两者结合的系统[36,37]都取得了非常不错的成果.其中Transformer-Transducer模型[38]将RNN-T模型中的RNN替换为Transformer提升了计算效率,还控制attention模块上下文时间片的宽度,满足流式语音识别的需求.2020年谷歌提出的ContextNet模型[39],采用Squeeze-and-Excitation模块获取全局信息,并通过渐进降采样和模型缩放在减小模型参数和保持识别准确率之间取得平衡.在Transformer模型捕捉长距离交互的基础上加入了CNN擅长的局部提取特征得到Conformer模型[40],实现以更少的参数达到更好的精度.实际上端到端的语音识别系统在很多场景的识别效果已经超出传统结构下的识别系统,但距其落地得到广泛商业应用仍有一段路要走.
3语音识别的难点与热点语音识别作为人机交互的关键技术一直是科技应用领域的研究热点.目前,语音识别技术从理论研究到产品的开发都已取得了很多的成果,然而,相关研究及应用落地仍然面临很大挑战,具体可归纳为以下几方面:
鲁棒性语音识别:目前,理想条件下(低噪声加近场)的语音识别准确率已经达到一定程度.然而,在实际一些复杂语音环境下,如声源远场等情景,低信噪比、房间混响、回声干扰以及多声源信号干扰等因素,使得语音识别任务面临很大挑战.因此,针对复杂环境研究鲁棒语音识别是目前语音识别领域的研究难点和热点.当前,针对复杂环境下的语音识别研究大致可以分为4个方向:(1)在语音识别前端,利用信号处理技术提高信号质量:采用麦克风阵列技术采集远场声源信号,然后通过声源定位[41]、回声消除[42]、声源分离或语音增强[43]等提高语音信号质量.例如,文献[44]在基于深度学习的自适应声学回声消除(acousticechocancellation,AEC)中加入了背景关注模块以适应部署环境的变化,以提高语音信号质量;文献[45]以深度聚类为框架提出了结合频谱和空间信息的盲源分离方法;文献[46]利用以基于生成式对抗网络(generativeadversialnetworks,GAN)为基础框架的增强网络进行噪声抑制,从而提高目标语音信号质量;(2)寻找新的鲁棒性特征,尽可能消除非目标语音信号的影响:例如,伽马通滤波器倒谱系数(Gammatonefrequencycepstrumcoefficient,GFCC)[47]等听觉特征参数更适合拟合人耳基底膜的选择性,符合人耳听觉特征;或者,采用自动编码器[48]、迁移学习[49]等多种方式提取更鲁棒的特征;(3)模型的改进与自适应[50]:上海交通大学提出的VDCNN[6]以及VDCRN[7]通过加深卷积层提升算法的鲁棒性,文献[51]利用GAN中生成器与判别器的相互博弈和瓶颈特征构建声学模型,文献[52]采用teacher-studentlearning的方式以干净语音训练的声学模型作为教师模型训练噪声环境下的学生模型;(4)多模态数据融合[53]:当在高噪声环境或多说话人造成语音重叠的情况下,目标语音信号容易被噪声或其他非目标声源(干扰信号)“淹没”,这时仅凭拾音设备捕捉的“语音”信号往往无法获得良好的识别性能;这时,将语音信号和其他信号如声带的振动信号[54]、嘴部的图像信号[55]等进行融合,更好地提升识别系统的鲁棒性.例如,文献[56]以RNN-T为框架,提出多模态注意力机制对音频和视频信息进行融合,以提高识别性能;文献[57]同样基于RNN-T,但利用vision-to-phonememodel(V2P)提取视觉特征,连同音频特征以相同的帧频输入至编码器,取得了良好的识别性能.
低资源语音识别:这是对各种小语种语言识别研究的统称.小语种不同于方言,有独立完整的发音体系,各异性较强但数据资源匮乏,难以适应以汉语、英语为主的语音识别系统,声学建模需要利用不充分的数据资源训练得到尽可能多的声学特征.解决这一问题的基本思路可以概括为从主流语言的丰富资源中提取共性训练出可以公用的模型,在此基础上训练小语种模型.文献[58]为解决共享隐藏层中会学到不必要的特定信息这一问题,提出了一个共享层和特有层平行的模型,它通过对抗性学习确保模型能够学习更多不同语种间的不变特征.然而,小语种种类繁多,为了单独一种建立识别系统耗费过多资源并不划算,因此现在主要研究多语种融合的语音识别系统[59,60].
语音的模糊性:各种语言中都存在相似发音的词语,不同的讲话者存在不同的发音习惯以及口音、方言等问题,母语者和非母语者说同一种语言也存在不同的口音,难以针对单独的口音构建模型.针对多口音建模[61]的问题,现有的方法一般可以分为与口音无关和与口音相关两大类,其中与口音无关的模型普遍表现更好一些.文献[62]尝试通过特定口音模型的集合建立统一的多口音识别模型;文献[63]通过多任务学习将声学模型和口音识别分类器联合;文献[64]则基于GAN构建了预训练网络从声学特征中区分出不变的口音.
低计算资源:精度高效果好的神经网络模型往往需要大量的计算资源且规模巨大,但移动设备(如手机、智能家居等)计算能力和内存有限,难以支撑,因此需要对模型进行压缩及加速.目前针对深度学习模型采用的压缩方法有网络剪枝、参数量化、知识蒸馏等.文献[65]采用网络剪枝的方法构建了动态稀疏神经网络(dynamicsparsityneuralnetworks,DSNN),提供不同稀疏级别的网络模型,通过动态调整以适应不同资源和能量约束的多种硬件类型的能力.文献[66]通过量化网络参数减少内存占用并加快计算速度.知识蒸馏能够将复杂模型的知识迁入小模型,已应用于对语音识别系统的语言模型[67]、声学模型[68]和端到端模型[29,69,70]等进行压缩.文献[71]利用知识蒸馏将视听两模态的识别系统迁移至单听觉模型,缩小了模型规模,加快了训练速度,却并不影响精度.
4总结与展望4.1总结本文主要对语音识别的发展、系统结构研究、热点及难点进行了阐述.目前主流的语音识别方法大多基于深度神经网络.这些方法大体分为两类:一类是采用一定的神经网络取代传统语音识别方法中的个别模块,如特征提取、声学模型或语言模型等;另一类是基于神经网络实现端到端的语音识别.相比于传统的识别方法,基于深度神经网络的语音识别方法在性能上有了显著的提升.在低噪音加近场等理想环境下,当前的语音识别技术研究已经达到了商业需求.然而,在实际应用中存在各种复杂情况,如声源远场、小语种识别、说话人口音、专业语言场景等,这些情况使得复杂场景下的语音识别应用落地仍面临挑战.此外,尽管当前深度学习在语音识别的应用确实提高了识别率等性能,但效果好的模型往往规模复杂且庞大、需要的数据资源较为冗余,不适合用于移动设备(如手机、智能穿戴设备等);此外,小语种、多口音、不同方言等的识别性能仍然差强人意.总之,当前语音识别领域已取得丰富的研究成果,但仍有很长一段路要走.
4.2展望在未来很长一段时间内,基于深度神经网络的语音识别仍是主流;面向不同应用场景,根据语音信号特点对现有神经网络结构进行改进仍是未来研究重点.大体上,未来语音识别领域的研究方向可大致归纳如下.
(1)模型压缩与加速.尽管当前深度学习在语音识别的应用确实提高了识别率等性能,但效果好的模型往往规模复杂且庞大、需要的数据资源较为冗余,不适合用于移动设备(如手机、智能穿戴设备等),因此对基于深度神经网络的语音识别系统进行网络模型压缩和加速,将是未来语音识别的研究方向之一.
(2)数据迁移.在面对小样本数据或复杂问题时,迁移学习是一种有效的方式.在语音识别领域中,采用迁移学习的方式对小语种、方言口音或含噪语音进行识别也是未来的研究方向之一.
(3)多模态数据融合.对于一些复杂的语音场景(高噪声、混响、多源干扰等),可以利用语音信号和其他信号(如图像信号、振动信号等)进行融合,以提高语音识别性能,也是未来研究研究方向之一.
(4)多技术融合,提高认知智能.当前大多数语音识别算法只关注识别文字内容的正确性;然而,许多智能语音交互的应用(如QA问答、多轮对话等)还涉及到语义的理解.因此,将语音识别技术结合其他技术[72-75]如自然语言处理(naturallanguageprocessing,NLP)相结合以提升识别性能也是未来研究方向之一.
语音识别的发展过程
目录上世纪50年代:上世纪60年代:上世纪70年代:上世纪80年代:上世纪90年代:20世纪头10年:2006年:语音识别技术伴随着计算机科学和通信等学科的发展逐步成长,至今已经有超过六十年的历史。
上世纪50年代:早在上世纪50年代,贝尔实验室就开始进行语音识别的研究。当时研究的主要是基于简单的孤立词的语音识别系统。例如,1952年贝尔实验室采用模拟电子器件实现了针对特定说话人的十个英文数字的孤立词语音识别系统(Daviseta1.,1952)。该系统提取每个数字发音的元音的共振峰特征,然后采用简单的模板匹配的方法进行针对特定人的孤立数字识别。1956年普林斯顿大学的RCA实验室利用模拟滤波器组提取元音的频谱,然后再用模板匹配,构建了针对特定说话人的包括十个单音节单词的语音识别系统。1959年,伦敦大学的科学家第一次使用统计学的原理构建了可以识别四个元音和九个辅音的音素识别器(Fry,1959)。同年,来自麻省理工的林肯实验室的研究人员首次实现了针对非特定人的十个元音的识别器。
上世纪60年代:上世纪60年代,三个关键技术的出现对于语音识别的发展奠定了基础。首先是针对语音时长不一致的问题,来自RCA实验室的Martin提出了一种时间规整的机制(Martineta1.,1964),可以有效的降低时长不一致对识别得分计算的影响。其次是来自前苏联的Vintsyuk提出采用动态规划算法实现动态时间规整(DynamicTimeWarping,DTW)(Vintsyuk,1968)。DTW可以有效的解决两个不同长度的语音片段的相似度度量,一度成为语音识别的主流技术。最后是来自卡耐基梅隆大学Reddy利用音素动态跟踪的方法进行连续语音识别的开创性工作(Reddy,1966)。这三个研究工作,对于此后几十年语音识别的发展都起到了关键的作用。虽然60年代语音识别获得了长足的发展,但是人们认为实现真正实用的语音识别系统依旧非常困难。
上世纪70年代:上世纪70年代是语音识别技术快速发展的一个时期。这时期三个关键的技术被引入到语音识别中,包括模式识别思想(VelichkoandZagoruyko,1970),动态规划算法(SakoeandChiba,1978)和线性预测编码(LinearPredictiveCoding,LPC)(1takura,1970)。这些技术的成功使用使得孤立词语音识别系统从理论上得以完善,并且可以达到实用化的要求。此后研究人员将目光投向了更具有实用价值也更加具有挑战性的连续语音识别问题。其中以Bell、IBM实验室为代表的研究人员开始尝试研究基于大词汇量的连续语音识别系统(LargeVocabularyContinuousSpeechRecognition,LVCSR)。当时主要有两种流派:一种采用专家系统的策略,目前已经被淘汰:还有一种是采用统计建模的方法,该方法目前依旧是主流的建模方法。这时期美国国防部高级研究计划署(DefenseAdvancedResearchProjectsAgency,DARPA)介入语音领域,设立了语音理解研究计划。该研究计划包括CMU、IBM等研究机构。在DARPA计划的催动下诞生了很多具有一定实用价值的语音识别系统。例如卡耐基梅隆大学的Harpy系统(Lowerre,1976),能够用来识别1011个字,并且获得不错的准确率。Harpy系统的一个主要的贡献是提出了图搜索的概念。Harpy系统是第一个利用有限状态网络(FiniteStateNetwork,FSN)来减少计算量并有效的实现字符串匹配的模型。DARPA计划下诞生的语音识别器还包括卡耐基梅隆大的Hearsay和BBN的HWlM系统(K1att,1977)。
上世纪80年代:上世纪80年代是语音识别发展取得突破的一个关键时期。两项关键技术在语音识别中得到应用,分别是基于隐马尔科夫模型(HiddenMarkovModel,HMM)(GauvainandLee,1994,Rabiner,1989,Schwartzeta1.,1985)的声学建模和基于n.gram的语言模型。这时期语音识别开始从孤立词识别系统向大词汇量连续语音识别系统发展。HMM的应用使得语音识别获得了突破,开始从基于简单的模板匹配方法转向基于概率统计建模的方法.此后统计建模的框架一直沿用到今天。这一时期.DARPA所支持的研究催生了许多著名的语音识别系统。其中一个具有代表性的系统是李开复研发的SPHINX系统。该系统是第一个基于统计学原理开发的非特定人连续语音识别系统,其核心技术技术采用HMM对语音状态的时序进行建模,而用高斯混合模型(GaussianMixtureModel,GMM)对语音状态的观察概率进行建模。直到最近的深度学习出来之前,基于GMM.HMM的语音识别框架一直是语音识别系统的主导框架。同时神经网络也在80年代后期被应用到语音识别中(Lippmann,1987,Waibeleta1.,1989),但是相比于GMM-HMM系统并未没有展现出优势。
上世纪90年代:上世纪90年代是语音识别技术基本成熟的时期,基于GMM-HMM的语音识别框架得到广泛使用和研究。这一时期语音识别声学模型的区分性训练准则和模型自适应方法的提出使得语音识别系统的性能获得极大的提升。首先基于最大后验概率估计(MaximumAPosteriori,MAP)(GauvainandLee,1994)和最大似然线性回归(MaximumLikelihoodLinearRegression,MLLR)(LeggetterandWoodland,1995)技术的提出用于解决HMM模型参数自适应的问题。一系列声学模型的区分性训练(DiscriminativeTraining,DT)准则(JuangandKatagiri,1992)被提出、例如最大互信息量(MaximumMutualInformation,MMI)(WoodlandandPovey,2002)和最小分类错误(MinimumClassificationError,MCE)准则(Juangeta1.,1997)。在基于最大似然估计训练GMM.HMM的基础上再使用MMI或者MCE等区分性准则对模型参数进行更新可以进一步显著的提升模型的性能。这一时期出现了很多产品化的语音识别系统,例如DRAGON系统.IBM的Via-vioce系统,微软的Whisper系统(Huangeta1.,1995),英国剑桥大学的HTK(HiddenMarkovToolKit)系统(Youngeta1.,2002)等。其中HTK工具包的开源对于语音识别技术的发展起到了巨大的贡献。HTK为语音研究人员提供了一套系统的软件工具,极大的降低了语音识别的研究门槛,促进了语音识别的交流和发展。
20世纪头10年:进入20世纪的头10年,基于GMM-HMM的语音识别系统框架已经趋于完善,相应的区分性训练和模型自适应技术也得到了深入的研究(Jiang,2010,Machereyeta1.,2005,PoveyandWoodland,2002,Schliiter,2000)。这阶段语音识别开始从标准的朗读对话转向更加困难的日常交流英语,包括电话通话,广播新闻,会议,日常对话等。但是基于GMM.HMM的语音识别系统在这些任务上表现却不怎么理想,语音识别系统的错误率很高,远远达不到实用化的需求。从而语音识别的研究陷入了一个漫长的瓶颈期。
2006年:语音识别技术的再次突破和神经网络的重新兴起相关。2006年Hiton提出用深度置信网络(DeepBeliefNetworks,DBN)(Hintoneta1.,2006b)初始化神经网络,使得训练深层的神经网络变得容易,从而掀起了深度学习(DeepLeaming,DL)(Bengioeta1.,2009,2007b,LeCuneta1.,2015)的浪潮。2009年,Hinton以及他的学生D.Mohamed将深层神经网络应用于语音的声学建模(Mohamedeta1.,2009),在音素识别TIMIT任务上获得成功。但是TIMIT是一个小词汇嚣的数据库,而且连续语音识别任务更加关注的是词甚至句子的正确率。而深度学习在语音识别真正的突破要归功于微软研究院俞栋,邓力等在2011年提出来的基于上下文相关(ContextDependent,CD)的深度神经网络和隐马尔可夫模型(CDDNN.HMM)的声学模型(Dahleta1.,2012)。CD.DNN—HMM在大词汇量连续语音识别任务上相比于传统的GMM—HMM系统获得了显著的性能提升。从此基于GMM.HMM的语音识别框架被打破,大研究人员开始转向基于DNN-HMM的语音识别系统的研究。
从蒙昧到智能:语音技术发展历程
个性化URL链接我们有时可能会针对某些访客个性化和定制网站。如果您访问这些网站,您会发现它们是经过定制的,它们含有我们基于您以前与Lenovo的互动以及您提供给我们的信息认为您可能感兴趣的产品及/或服务的参考。在您访问这些网站时,我们可能会收集关于您的访问的信息,以更好地按您的兴趣定制站点。访问这些网站的邀请的显示形式有电子邮件中的个性化URL、网站注册页面上的通知或者您登录到某个网站时的响应。
Lenovo是否会出售我的个人信息?
不会。Lenovo不会出售个人信息。如上节所述,Lenovo可能会与联想的第三方服务提供商和合作伙伴分享个人信息,以便他们支持我们的产品和网站,或向Lenovo及其客户和产品用户提供其他服务。在分享信息时,Lenovo会采取适当步骤来确保这些服务提供商和合作伙伴符合我们严格的隐私和安全标准。但是,Lenovo不会出售个人信息;在2022年2月1日之前的12个月内,我们没有出售过任何个人信息。如果Lenovo在任何时候决定出售个人信息,我们将根据适用法律的要求提供适当的事先通知并获取相关方的同意。
Lenovo会跨国转移我的个人信息吗?
联想是一个全球性组织,其法律实体、业务流程、管理结构和技术系统遍布全球。因此,在法律允许的情况下,我们可能会在联想内部(包括子公司、附属公司和母公司)或者与我们的服务提供商和业务合作伙伴分享您的个人信息,并且可能会将信息转移到我们开展业务的国家或地区(包括但不限于美国和中国)。无论您的信息被转移到哪里和存放在哪里,我们的隐私和安全做法旨在为您的个人信息提供全球性保护。
一些国家或地区的隐私法律与您所在国家或地区的隐私法律并不对等,这些司法管辖区的执法机构可能会要求提供您的数据。在这些国家或地区中,联想将仍然以我们在这里描述的方式处理信息,并且在转移和处理您的信息时,将采取为遵守适用的数据保护法律而必要的措施。必要时,联想还将在联想集团公司之间或者与联想合作伙伴或服务提供商签订协议,以管控个人信息的转移、处理和保护。
联想使用标准合同条款作为一种手段,帮助实现来自欧盟、欧洲经济区、英国及该地区内部之间的个人信息传输。
我的个人信息会保留多久?
Lenovo将只在业务或其他令人信服的目的所必需的期限内保留信息,包括个人信息;在满足这些使用目的时将会安全地删除个人信息。只要符合以下任何情况,我们将保留您的信息,包括个人信息:
•您的帐户或订阅处于活动状态•为您提供您可能已经请求的服务或支持•确保Lenovo产品和网站的必要功能和性能,包括我们的产品保修条款规定的责任•遵守适用法律,包括税务和审计目的•行使我们的权利,包括诉讼和债务催收
如何保护我的信息?
在我们将信息从我们的网站传输到我们的服务器时、在我们储存数据时以及在我们与第三方分享信息时,我们使用标准的技术和组织措施。例如,在传输敏感信息时,我们使用数据加密来保护您信息的安全。在与第三方分享您的信息时,我们采取合理恰当的步骤确保第三方将负责任地保护和使用您的信息。
但是,请记住,没有任何网站、服务或数据传输可以保证100%安全。因此,虽然我们采取了适当的步骤来保护您的产品和信息,但是Lenovo不能确保或以其他方式担保我们的网站或者您提供给我们的任何信息的安全。使用我们的网站,风险自担。
如何保护我孩子的隐私?
我们的网站面向成年人以及使用网站得到家长或法定监护人允许的未成年人。Lenovo不会主动收集未成年人的信息。Lenovo鼓励家长主动监督未成年子女使用互动资源并告知他们提供关于自己信息的潜在危险。
我的数据保护权利有哪些?
适用的数据保护法律可能会赋予您控制我们使用和处理您的个人信息的权利。该等权利可能包括:(i)要求访问和复印您的个人信息,(ii)要求更正或清除您的个人信息;(iii)反对处理您的个人信息;(iv)限制处理您的个人信息或选择不允许出售您的个人信息;以及(v)数据可携性。在我们征得您同意而使用您的个人信息的情况下,您有权随时撤销您的同意,但这并不影响我们在您撤销您的同意之前使用您的个人信息。此外,如果您具有Lenovo帐户,则可以通过该账户查看、更正或删除某些个人信息。
要行使上述权利,请联系我们。我们将根据适用的数据保护法律对任何此类请求进行审查、做出响应及采取行动。
请注意,我们将根据适用法律以及我们的隐私和安全标准采取措施验证您的身份,然后再授权您访问您的个人信息或以其他方式配合您的请求。如果您具有Lenovo帐户,我们可能会要求您登录您的帐户,以此来验证您的身份。如果您没有Lenovo帐户或者我们没有将您的电子邮箱地址存档,我们可能会请求您提供其他有限信息以验证您的身份。请注意,如果您没有Lenovo帐户或没有电子邮箱地址存档,或者我们无法在我们的记录中验证您的身份,我们可能会拒绝您的请求。
您也可以使用授权代理代表您提交本部分中说明的请求。如果您选择让授权代理代表您提交此类请求,Lenovo需要:(i)您向授权代理提供允许其代表您提交此类请求的书面许可;(ii)您的代理直接向Lenovo验证其身份。Lenovo可能会拒绝不符合这些要求的代理提交的请求。
此外,您还有权随时向相关的国家/地区数据保护当局提出问题或投诉。
如何联系Lenovo隐私计划部门?
若您要行使上述权利,或者对本隐私声明有其他疑问,可通过privacy@lenovo.com联系Lenovo,或将问题邮寄到以下地址:
北京市海淀区西北旺东路10号院联想总部西区法务部100094
其他Lenovo客户服务信息,包括电话和聊天联系,可在www.lenovo.com/contact上找到。
我们的网站隐私声明(见下文)最近进行了更新。查看以前的版本。