在人际交往中,语言是最自然并且最直接的方式之一。随着技术的进步,越来越多的人们也期望计算机能够具备与人进行语言沟通的能力。因此,语音识别这一技术也越来越受到关注。尤其,随着深度学习技术应用在语音识别技术中,使得语音识别的性能得到了显著提升,也使得语音识别技术的普及成为了现实。
语音识别技术
自动语音识别技术,简单来说其实就是利用计算机将语音信号自动转换为文本的一项技术。这项技术同时也是机器理解人类言语的第一个也是很重要的一个过程。
语音识别是一门交叉学科,所涉及的领域有信号处理、模式识别、概率论和信息论、发声机理和听觉机理、人工智能等等,甚至还涉及到人的体态语言(如人民在说话时的表情手势等行为动作可帮助对方理解)。其应用领域也非常广,例如相对于键盘输入方法的语音输入系统、可用于工业控制的语音控制系统及服务领域的智能对话查询系统,在信息高度化的今天,语音识别技术及其应用已成为信息社会不可或缺的重要组成部分。
语音识别技术的发展历史
语音识别技术的研究开始二十世纪50年代。1952年,AT&Tbell实验室的Davis等人成功研制出了世界上第一个能识别十个英文数字发音的实验系统:Audry系统。
60年代计算机的应用推动了语音识别技术的发展,提出两大重要研究成果:动态规划(Dynamic Planning,DP)和线性预测分析(Linear Predict, LP),其中后者较好的解决了语音信号产生模型的问题,对语音识别技术的发展产生了深远影响。
70年代,语音识别领域取得突破性进展。线性预测编码技术(Linear Predict Coding, LPC)被Itakura成功应用于语音识别;Sakoe和Chiba将动态规划的思想应用到语音识别并提出动态时间规整算法,有效的解决了语音信号的特征提取和不等长语音匹配问题;同时提出了矢量量化(VQ)和隐马尔可夫模型(HMM)理论。在同一时期,统计方法开始被用来解决语音识别的关键问题,这为接下来的非特定人大词汇量连续语音识别技术走向成熟奠定了重要的基矗
80年代,连续语音识别成为语音识别的研究重点之一。Meyers和Rabiner研究出多级动态规划语音识别算法(Level Building,LB)这一连续语音识别算法。80年代另一个重要的发展是概率统计方法成为语音识别研究方法的主流,其显著特征是HMM模型在语音识别中的成功应用。1988年,美国卡内基-梅隆大学(CMU)用VQ/HMM方法实现了997词的非特定人连续语音识别系统SPHINX。在这一时期,人工神经网络在语音识别中也得到成功应用。
进入90年代后,随着多媒体时代的来临,迫切要求语音识别系统从实验走向实用,许多发达国家如美国、日本、韩国以及IBM、Apple、AT&T、NTT等著名公司都为语音识别系统实用化的开发研究投以巨资。最具代表性的是IBM的ViaVoice和Dragon公司的Dragon Dectate系统。这些系统具有说话人自适应能力,新用户不需要对全部词汇进行训练便可在使用中不断提高识别率。
我国在七十年代末就开始了语音技术的研究,但在很长一段时间内,都处于缓慢发展的阶段。直到八十年代后期,国内许多单位纷纷投入到这项研究工作中去,其中有中科院声学所,自动化所,清华大学,四川大学和西北工业大学等科研机构和高等院校,大多数研究者致力于语音识别的基础理论研究工作、模型及算法的研究和改进。进入九十年代后,我国语音识别研究的步伐就逐渐紧追国际先进水平了,在“八五”、“九五”国家科技攻关计划、国家自然科学基金、国家863计划的支持下,我国在中文语音技术的基础研究方面也取得了一系列成果。在语音合成技术方面,中国科大讯飞公司已具有国际上最领先的核心技术;中科院声学所也在长期积累的基础上,研究开发出颇具特色的产品:在语音识别技术方面,中科院自动化所具有相当的技术优势:社科院语言所在汉语言学及实验语言科学方面同样具有深厚的积累。
语音识别的基本原理
对于不同的语音识别过程,人们采用的识别方法和技术不同,但所用的原理大致相同,即将经过降噪处理后的语音送入特征提取模块,然后对语音信号特征处理后输出识别结果。
在这个过程中,特征提取是构建语音系统的关键,对识别结果起到了重要作用,原理见下图:
预处理:过滤掉原始语音中的次要信息或噪音等,将语音信号转化为数字信号。
特征提取:提取语音特征参数,形成特征矢量序列。
声音的实质是波。语音识别所使用的音频文件格式必须是未经压缩处理的文件,如人类正常的语音输入等。语音输入所面对的环境是复杂的主要存在以下问题:
·对自然语言的识别和理解。首先必须将连续的讲话分解为词、音素等单位,其次要建立一个理解语义的规则。
·语音信息量大,语音模式不仅对不同的说话人不同,对同一说话人也是不同的,例如,一个说话人在随意说话和认真说话时的语音信息是不同的。一个人的说话方式随着时间变化。
·语音的模糊性。说话者在讲话时,不同的词可能听起来是相似的。这在英语和汉语中常见。
·单个字母或词、字的语音特性受上下文的影响,以致改变了重音、音调、音量和发音速度等。
·环境噪声和干扰对语音识别有严重影响,致使识别率低。
所以预处理环节需要做静音切除、噪音处理和语音增强。
01
静音切除
又称语音边界检测或者说是端点检测是指在语音信号中将语音和非语音信号时段区分开来,准确地确定出语音信号的起始点然后从连续的语音流中检测出有效的语音段。它包括两个方面,检测出有效语音的起始点即前端点,检测出有效语音的结束点即后端点。经过端点检测后,后续处理就可以只对语音信号进行,这对提高模型的精确度和识别正确率有重要作用。
在语音应用中进行语音的端点检测是很必要的,首先很简单的一点,就是在存储或传输语音的场景下,从连续的语音流中分离出有效语音,可以降低存储或传输的数据量。其次是在有些应用场景中,使用端点检测可以简化人机交互,比如在录音的场景中,语音后端点检测可以省略结束录音的操作。有些产品已经使用循环神经网络( RNN)技术来进行语音的端点检测。
02
噪音处理
实际采集到的音频通常会有一定强度的背景音,这些背景音一般是背景噪音,当背景噪音强度较大时,会对语音应用的效果产生明显的影响,比如语音识别率降低,端点检测灵敏度下降等,因此在语音的前端处理中,进行噪声抑制是很有必要的。噪声抑制的一般流程:稳定背景噪音频谱特征,在某一或几个频谱处幅度非常稳定,假设开始一小段背景是背景噪音,从起始背景噪音开始进行分组、Fourier变换,对这些分组求平均得到噪声的频谱。降噪过程是将含噪语音反向补偿之后得到降噪后的语音。
03
语音增强
主要任务就是消除环境噪声对语音的影响。目前,比较常见的语音增强方法分类很多。其中基于短时谱估计增强算法中的谱减法及其改进形式是最为常用的,这是因为它的运算量较小,容易实时实现,而且增强效果也较好。此外,人们也在尝试将人工智能、隐马尔科夫模型、神经网络和粒子滤波器等理论用于语音增强,但目前尚未取得实质性进展。
声学特征提取
人通过声道产生声音,声道的形状决定了发出怎样的声音。声道的形状包括舌头,牙齿等。如果我们可以准确的知道这个形状,那么我们就可以对产生的音素进行准确的描述。声道的形状在语音短时可以由功率谱的包络中显示出来。
因此,准确描述这一包络的特征就是声学特征识别步骤的主要功能。接收端接收到的语音信号经过上文的预处理以后便得到有效的语音信号,对每一帧波形进行声学特征提取便可以得到一个多维向量。这个向量便包含了一帧波形的内容信息,为后续的进一步识别做准备。
声学模型
通过语音特征分析以后接下来就是模式匹配和语言处理。
声学模型是识别系统的底层模型,并且是语音识别系统中最关键的一部分。声学模型的目的是提供一种有效的方法计算语音的特征矢量序列和每个发音模板之间的距离。声学模型的设计和语言发音特点密切相关。声学模型单元大小(字发音模型、半音节模型或音素模型)对语音训练数据量大孝系统识别率,以及灵活性有较大的影响。必须根据不同语言的特点、识别系统词汇量的大小决定识别单元的大校
语言模型对中、大词汇量的语音识别系统特别重要。当分类发生错误时可以根据语言学模型、语法结构、语义学进行判断纠正,特别是一些同音字则必须通过上下文结构才能确定词义。语言学理论包括语义结构、语法规则、语言的数学描述模型等有关方面。目前比较成功的语言模型通常是采用统计语法的语言模型与基于规则语法结构命令语言模型。
语法结构可以限定不同词之间的相互连接关系,减少了识别系统的搜索空间,这有利于提高系统的识别。语音识别过程实际上是一种认识过程。就像人们听语音时,并不把语音和语言的语法结构、语义结构分开来,因为当语音发音模糊时人们可以用这些知识来指导对语言的理解过程,但是对机器来说,识别系统也要利用这些方面的知识,只是如何有效地描述这些语法和语义还有困难:
·小词汇量语音识别系统。通常包括几十个词的语音识别系统。
·中等词汇量的语音识别系统。通常包括几百个词至上千个词的识别系统。
·大词汇量语音识别系统。通常包括几千至几万个词的语音识别系统。
这些不同的限制也确定了语音识别系统的困难度。模式匹配部是语音识别系统的关键组成部分。常见的语音识别算法主要有:模版匹配法,如动态时间规整(DTW);随机模型法,如隐马尔可夫模型(HMM);基于人工神经网络(ANN)的算法。
隐马尔可夫模型(HMM)是语音信号处理中的一种统计模型,是由Markov链演变来的,所以它是基于参数模型的统计识别方法。由于其模式库是通过反复训练形成的与训练输出信号吻合概率最大的最佳模型参数而不是预先储存好的模式样本,且其识别过程中运用待识别语音序列与HMM参数之间的似然概率达到最大值所对应的最佳状态序列作为识别输出,因此是较理想的语音识别模型。
动态时间归整(DTW)算法:在孤立词语音识别中,最为简单有效的方法是采用DTW,动态时间归整算法,该算法基于动态规划(DP)的思想,解决了发音长短不一的模板匹配问题,是语音识别中出现较早、较为经典的一种算法,用于孤立词识别。HMM算法在训练阶段需要提供大量的语音数据,通过反复计算才能得到模型参数,而DTW算法的训练中几乎不需要额外的计算。所以在孤立词语音识别中,DTW算法仍然得到广泛的应用。
人工神经网络(ANN):人工神经网络是计算智能中的重要部分之一,是有大量简单的基本元件-神经元相互连接,模拟人的大脑神经处理信息的方式,进行信息并行处理和非线性变换的复杂网络系统。基于ANN的语音识别系统通常由神经元、训练算法、网络结构三大要素构成,具有高速的信息处理能力,并且有着较强的适应和自动调节能力,在训练过程中能不断调整自身的参数权值和拓扑结构,这也是AI产品与传统互联网产品的的区别。
语音识别技术应用
语音识别在移动终端上的应用最为火热,语音对话机器人、智能音箱、语音助手、互动工具等层出不穷,许多互联网公司纷纷投入人力、物力和财力展开此方面的研究和应用。语音识别技术也将进入工业、家电、通信、汽车电子、医疗、家庭服务、消费电子产品等各个领域。尤其是在智能家居系统中语音识别将成为人工智能在家庭重要的入口,同时,未来随着手持设备的小型化,智能穿戴化也将成为语音识别技术的重要应用领域。