时间:2022-03-30 13:23:18
开篇:写作不仅是一种记录,更是一种创造,它让我们能够捕捉那些稍纵即逝的灵感,将它们永久地定格在纸上。下面是小编精心整理的12篇语音识别技术,希望这些内容能成为您创作过程中的良师益友,陪伴您不断探索和进步。
【关键词】语音识别 语言模型 声学模型 人工智能
使用智能手机的朋友们都会对语音助手产生极大的兴趣,不管是微软的Cortana,还是苹果的Siri,都是将语音识别融入现代技术的典范。Z音识别是解决机器“听懂”人类语言的一项技术,也是人工智能重要部分。
语音识别技术(speech recognition),也被称为自动语音识别 (ASR),其目标是将人类的语音中的词汇内容转换为计算机可读的输入,例如按键、二进制编码或者字符序列。与说话人识别及说话人确认不同,后者尝试识别或确认发出语音的说话人而前者的目标是语音中所包含的词汇内容。
探究语音识别技术的框架、应用与发展有利于全面了解语音识别。本文将从语音识别简介、主流语言识别框架以及语言识别近年来的发展三个方面探究语音识别。
1 语音识别简介
1.1 传统语言识别技术发展
对语音识别技术的研究可以追述到上世纪五十年代,1952年贝尔研究所Davis等人研究成功了世界上第一个能识别10个英文数字发音的实验系统,开创了语音识别的先河。上世纪六十年代,人工神经网络被引入了语音识别。上世纪七十年代以后,大规模的语音识别在小词汇量、孤立词的识别方面取得了实质性的进展。传统语音识别技术最大突破是隐式马尔可夫模型的应用,这一模型极大提高了语音识别的准确率[1]。
1.2 语言识别的应用
作为智能计算机研究的主导方向和人机语音通信的关键技术,语音识别一直受到各国科学界的广泛关注。如今,随着语音识别技术的研究的突破,其对计算机发展和社会生活的重要性日益凸现出来。在现实生活中,语音识别技术的应用相当广泛,它改变了人与计算机交互的方式,使计算机更加智能。和键盘输入相比,语音识别更符合人的日常习惯;使用语言控制系统,相比手动控制,语音识别更加方便快捷,可以用在工业控制、智能家电等设备;通过智能对话查询系统,企业可以根据用户的语音进行操作,为用户提供自然、友好的数据检索服务。
2 语音识别框架
目前主流的语音识别框架可以分为以下几个模块:信号处理,特征提取,声学模型,语言模型,解码器。
2.1 信号处理
信号处理模块是对语音文件进行预处理。声音是一种纵波,在识别语音时,输入为WMV,MP3等格式的文件会被转换成非压缩的纯波文件wav格式。然后在进行语音识别前,需要检测该文件中的语音信号,该技术被称之为语音活性检测[2]。使用语言活性检测技术可以有效降低噪音,去除非语音片段,提高语音识别的准确率。经典的语音活性检测算法由如下步骤组成:
(1)使用spectral subtraction等方法对语言序列进行降噪。(2)将输入信号的分成区块并提取特征。(3)设计分类器判断该区块是否为语音信号。
2.2 特征提取
特征提取目的是提取出语音文件的特征,以一定的数学方式表达,从而可以参与到后续模块处理中。在这一模块,首先要将连续的声音分成离散的帧。每一帧的时间既要足够长,使得我们能够判断它属于哪个声韵母的信息,若过短则包含信息过少;每一帧时间也要尽量短,语音信号需要足够平稳,能够通过短时傅里叶分析进行特征提取,过长则会使信号不够平稳。分帧时使用如下改进技术可以有效提高识别准确率:相邻的两帧有所重叠减少分割误差,将与临近帧之间的差分作为额外特征,将多个语音帧堆叠起来。通过分帧处理,连续的语音被分为离散的小段,但还缺乏数学上的描述能力,因此需要对波形作特征提取。常见的方法是根据人耳的生理特征,把每一帧波形变换成一个多维向量。因此,这些向量包含了这些语音的内容信息。该过程被称为声学特征提取,常见的声学特征有MFCC、CPE、LPC等。
MFCC是目前最常用、最基本的声学特征,提取MFCC特征可以分为如下四个步骤:首先对每一帧进行傅里叶变换,取得每一帧的频谱。再把频谱与图1中每个三角形相乘并积分,求出频谱在每一个三角形下的能量,这样处理可以减少数据量,并模仿人耳在低频处分辨率高的特性。然后取上一步得到结果的对数,这可以放大低能量处的能量差异。最后对得到的对数进行离散余弦变换,并保留前12~20个点进一步压缩数据。通过特征提取,声音序列就被转换为有特征向量组成的矩阵。
2.3 声学模型
声学模型是语音识别中最重要的组成部分之一,其用于语音到音节概率的计算。目前主流的方法多数采用隐马尔科夫模型,隐马尔可夫模型的概念是一个离散时域有限状态自动机。
隐马尔可夫模型HMM如图2所示,是指这一马尔可夫模型的内部状态x1,x2,x3外界不可见,外界只能看到各个时刻的输出值y1,y2,y3。对语音识别系统,输出值通常就是从各个帧计算而得的声学特征,输入是由特征提取模块提取的特征。用HMM刻画语音信号需作出两个假设,一是内部状态的转移只与上一状态有关,另一是输出值Y只与当前状态X(或当前的状态转移)有关,这两个假设大大降低了模型的复杂度。HMM的打分、解码和训练相应的算法是前向算法、维特比算法和前向后向算法。
早期的声学模型使用矢量量化(Vector Quantification)的方法,使其性能受到VQ算法的极大影响。对于连续取值的特征应当采用连续的概率分布如高斯混合模型或混合拉普拉斯模型等。为了解决模型参数过多的问题,可以使用某些聚类方法来减小模型中的参数数量,提高模型的可训练性。聚类可以在模型层次,状态层次乃至混合高斯模型中每个混合的层次进行。
2.4 语言模型
语言模型音节到字概率的计算。 语言模型主要分为规则模型和统计模型两种。相比于统计模型,规则模型鲁棒性较差,对非本质错误过于严苛,泛化能力较差,研究强度更大。因此主流语音识别技术多采用统计模型。统计模型采用概率统计的方法来揭示语言单位内在的统计规律,其中N-Gram简单有效,被广泛使用。
N-Gram基于如下假设:第N个词的出现只与前面N-1个词相关,而与其它任何词都不相关,整句的概率即为各个词出现概率的乘积。词与词之间的概率可以直接从语料中统计N个词同时出现的次数得到。考虑计算量和效果之间的平衡,N取值一般较小,常用的是二元的Bi-Gram和三元的Tri-Gram。
2.5 解码器
解码器是语音识别系统的核心之一,其任务是对输入信号,根据声学、语言模型及词典,寻找能够以最大概率输出该信号的词串。在实践中较多采用维特比算法[3]搜索根据声学、语言模型得出的最优词串。
基于动态规划的维特比算法在每个时间点上的各个状态,计算解码状态序列对观察序列的后验概率,保留概率最大的路径,并在每个节点记录下相应的状态信息以便最后反向获取词解码序列。维特比算法在不丧失最优解的条件下,同时解决了连续语音识别中HMM模型状态序列与声学观察序列的非线性时间对准、词边界检测和词的识别,从而使这一算法成为语音识别搜索的基本策略。
维特比(Viterbi)算法的时齐特性使得同一时刻的各条路径对应于同样的观察序列,因而具有可比性,Beam搜索在每一时刻只保留概率最大的前若干条路径,大幅度的剪枝提高了搜索的效率。Viterbi-Beam算法是当前语音识别搜索中最有效的算法。
3 语音识别技术的发展
近几年来,特别是2009年以来,借助机器学习领域深度学习研究的发展,以及大数据语料的积累,语音识别技术得到突飞猛进的发展。
在模型方面,传统语音识别模型逐步被神经网络替代,使用神经网络可以更好地提取特征,拟合曲线。使用人工神经网络来提高语音识别性能的概念最早在80年代就提出了,但当时高斯混合模型在大词汇语音识别上表现得更好,因此人工神经网络并没有进行商业应用。随着相关技术的进一步发展,微软研究院利用深度神经网络建立了数千个音素的模型,比传统方法减少了16%的相对误差。其在建立起有超过660万神经联系的网络后,将总的语音识别错误率降低了30%,实现了语音识别巨大的突破[4]。
同时目前多数主流语言识别解码器采用了基于有限状态机的解码网络,该网络将语音模型、词典、声学共享音字集统一为大的解码网络,大幅度提高了解码速度。
在数据量上,由于移动互联网的急速发展,从多个渠道获取的海量语言原料为声学模型和语言模型的训练提供了丰富的资源,不断提升语音识别的准确率。
4 结语
语音是人们工作生活中最自然的交流媒介,所以语音识别技术在人机交互中成为非常重要的方式,语音识别技术具有非常广泛的应用领域和非常广阔的市场前景。而随着深度神经网络发展,硬件计算能力的提高,以及海量数据积累,语音识别系统的准确率和实用性将得到持续提高。
参考文献:
[1]S基百科编者.语音识别[G/OL].维基百科,2016(20160829)[2016-08-29].
[2]维基百科编者.语音活性检测[G/OL].维基百科,2016(20160629)[2016-06-29].
[3]维基百科编者.维特比算法[G/OL].维基百科,2016(20160920)[2016-09-20].
[4] Dahl G E, Yu D, Deng L, et al. Context-dependent pre-trained deep neural networks for large-vocabulary speech recognition[J]. IEEE Transactions on Audio, Speech, and Language Processing, 2012, 20(1):30-42.
[摘要]各个部门和领域对语音识别系统的需求不同,使得语音识别系统的特性和指标表现出的差异性非常大,所以语音识别系统要依据特定的指标和需求进行相关的设计。本文就语音识别系统相关的技术进行了分析,供大家借鉴与参考。
[关键词]语音识别系统;差异性;指标需求
一、引言
语音作为语言的声学体现,也是人类进行信息交流最自然、和谐的手段。与机械设各进行语音的沟通,让机器可以明白人类在说什么,并理解这是人类长期的梦想。语音识别技术,也被称为自动语音识别Automatic Speech Recognition,(ASR),其目标是将人类的语音中的词汇内容转换为计算机可读的输入,例如按键、二进制编码或者字符序列。语音识别技术的应用包括语音拨号、语音导航、室内设备控制、语音文档检索、简单的听写数据录入等。语音识别技术与其他自然语言处理技术如机器翻译及语音合成技术相结合,可以构建出更加复杂的应用,语音识别技术所涉及的领域包括:信号处理、模式识别、概率论和信息论、发声机理和听觉机理、人工智能等等。
二、语音信号分析与特征提取
1.基于发音模型的语音特征。(1)发音系统及其模型表征。其发声过程就是由肺部进行收缩,并进行压缩气流由支气管通过声道和声门引起的音频振荡所发生的。气流通过声门时使得声带的张力刚好使声带发生比较低的频率的振荡,从而形成准周期性的空气脉冲,空气脉冲激励声道便会产生一些浊音;声道的某处面积比较小,气流冲过时便会产生湍流,会得到一种相似噪声的激励,对应的则是摩擦音;声道完全闭合并建立起相应的气压,突然进行释放就是爆破音。(2)语音信号线性预测倒谱系数。被广泛应用的特征参数提取技术的就是线性预测分析技术,很多成功的应用系统都是选用基于线性预测技术进而提取的LPC倒谱系数作为应用系统的特征。LPC倒谱就是复倒谱。复倒谱就是信号通过z进行变换以后再取其对数,求反z变换所得到的谱。线性预测分析方法其实就是一种谱的估计方法,所以其声道模型系统函数H(z)反映的就是声道频率激励和信号的谱包络,对IHg(z)作反z变换就可以得出其复倒谱系数。改复倒谱系数是依据线性预测模型直接获得的,而又被称为LPC倒谱系数(LPCC)。
2.基于听觉模型的语音特征。(1)听觉系统模型。一是人类的听觉系统对于声音频率高低和声波实际的频率高低不是线性的关系,它对不同声音频率信号的敏感度是不一样的,也可看成是对数关系。二是关于掩蔽效应指的就是声音A感知的闭值因为另外的身影的出现出现增大的现象。其生理依据主要是频率群,对频率群进行划分会出现许多的很小的部分,每一个部分都会对应一个频率群,掩蔽效应就发生在这些部分过程中。所以在进行相应的声学测量时,频率刻度一般取非线性刻度。语音识别方面,主要的非线性频率刻度有Mel刻度、对数刻度和Kon~nig刻度。其中Mel刻度被广泛的应用,其是最合理的频率刻度。(2)语音信号Mcl频率倒谱系数。Mel频率倒谱系数利用人们耳朵的听觉特性,在频域将频率轴变换为Mcl频率刻度,再变换到倒谱域得到倒谱系数。MFCC参数的计算过程:
一是对语音信号进行相应的预加重,从而确定了每一帧的语音采样的长度,语音信号通过离散FFT变换得到其频谱。二是求频谱幅度的平方,得到能量谱,并选用一组三角滤波器在频谱域对能量进行带通滤波。带通滤波器中心频率一般是按照Mcl频率刻度排列的(间隔为150Mel,带宽为300Mel),其每个三角形滤波器的两个底点频率和相邻的两个滤波器的中心频率相等,频率响应之和为l。滤波器的个数一般和临界带数比较相近,设滤波器数是M,滤波后得到的输出为:X(k),k=1,2,…,M。
3.语音的端点检测。语音的端点检测就是对语音的起点和终点的确认,由于汉语语音的声母是清声母,有着送气和不送气的塞音,和环境噪声接近比较进行分辨。语音信号有短时稳定性的特性,可选用平稳过程的分析方法进行相应的处理,对语音端点检测进行分帧的处理,再依次对每一帧是否正确进行处理。每一帧的帧长如果比较大,计算量比较小的,可进行端点检测就比较快,但其误差会相应的增加。
语音识别技术发展到今天,对特定人语音识别系统的识别精度就更高。调查统计表明多达85%以上的人对语音识别的信息查询服务系统的性能表示满意。可以预测在近五到十年内,语音识别系统的应用将更加广泛。各种各样的语音识别系统产品将出现在市场上。人们也将调整自己的说话方式以适应各种各样的识别系统。在短期内还不可能造出具有和人相比拟的语音识别系统,要建成这样一个系统仍是人类面临的一个大的挑战。
此外,对于超声科等医技科室,由于医生工作的特殊性,大多通过“一对一”聘请专业录入员的方式提高检查报告录入效率。有些医院为了节约人力,让医生把给病人检查时的语音通过录音设备录制下来,后续通过录入员测听音频文件进行转录,实现一个录入员服务多个医生,以此在一定程度上节约人力,但同时也延长了输出检查报告的时间。 在电子文本的录入过程中基于模板填写具体信息工作量还是比较大的。
另外,模板仅能解决一些常规情况的描述,如果完全按照模板填写,对每位患者的情况记录就缺少了个性化描述,不利于后续诊断使用。为提高文本录入效率,有些医生会使用“复制”、“粘贴”方式,通过在相似患者的病历上进行修改完成病历记录,但有漏改、漏删情况,这种方式在很大程度上增加了病历记录的出错率,对医疗文本录入的准确性是一个比较大的挑战。
语音识别技术在医疗领域的应用越来越多
语音识别技术在欧美国家医疗领域已使用将近10年,主要用于节约医生电子文本录入的时间,降低文本录入工作难度,提高医生工作满意度,让医生把更多时间和精力用在与患者及家俟低交流、为更多患者诊断等事情上。
美国Nuance公司的英文语音识别技术及电脑辅助病历抄写系统,医生可使用掌上移动型设备将病患看诊状况口述下来,存成语音档案,直接传送到语音识别服务器,10小时的语音可在5分钟内完成转录,大大缩短音频文件转录文本的时间。皇家飞利浦电子公司推出的面向医疗领域实时语音识别的专用麦克风,表面采用符合医疗专业要求的防菌抑菌材质,并定制了针对实时语音识别所需的声学硬件模块,使医院工作站实时语音识别实现成功应用,并已在欧美医院成功推广。在放射科等文本录入工作量很大的医技科室尤其受到欢迎。
从统计资料看,美国临床中使用语音识别录入的应用比例已达到10%~20%,主要用于放射科、病理科、急诊室等部门,有效控制电子文本记录及诊断报告生成时间和质量,明显提高工作效率。
语音识别技术是理想的人机交互方式之一,它能够让机器通过识别和理解过程把语音信号转变为相应的文本或命令。北京协和医院在国内首先提出使用语音识别技术录入医疗领域电子文本时,医生纷纷表示担忧,在国内的医疗中语音识别技术的使用和推广面临以下几个难点。
目前国内主流的HIS系统已做了大量工作减少医生输入病历、医嘱时的工作量,如提供大量结构化的病历。医生已习惯这种工作模式。通过语音识别来录入电子文本,尤其在超声科、门诊等环节,医生需要一个熟悉过程。
国内医生的工作环境较复杂,口音等问题也较国外更加突出,医疗特殊单位特殊符号较多,如何保证识别的准确率,让医生用的更加流畅,也是这个项目面临的重要挑战之一。国内移动医疗的趋势越来越明显,基于移动端小屏幕的文本输入一直是语音识别应用致力于解决的问题。如何保障医院复杂环境下移动端的语音识别效果是需要探讨的问题之一。
由于医疗行业的专业性较强,每个学科差异较大,所使用的信息化系统也比较分散,如影像科使用PACS,内科使用HIS等。需要录入文字的工作量较大,但使用的信息化系统较多,要求提供的语音录入文本解决方案,需同时支持多个信息化系统使用,且最大限度降低与原有系统的耦合性。
以上问题,经过为期1年的医疗领域语音识别应用探索和实践,都得到较好解决,超过95%的中文医疗垂直领域语音识别准确率已达到实用水平,中文医疗语音识别技术探索应用方案得到北京协和医院医生认可。
北京协和医院语音识别应用探索和实践
医疗语音识别技术的应用,能将医生口述的语音转成准确度高、完全格式化的初步文件,医生可快速加以核对、编辑,每天可节约1小时左右时间。医生普遍认为语音录入病历可提高文字输入效率,降低工作难度,从总体上提高医院收容处理病人的能力,同时缩短病人的无效等待时间,增加病人满意度。
针对中文医疗语音识别的技术难点,北京协和医院做了很多探索实践工作。
一是定制医疗领域语言模型:针对各科室业务进行梳理,整理了超过30G的医疗文本资料,并对这些资料进行分类、检索等处理。使得定制语音模型覆盖各个科室常用的病症、药品名称、操作步骤等关键信息,使语音识别准确率超过95%的水平。 二是定制个性化语言模型:不同科室的医生在录入医嘱时说的话也不同。北京协和医院语音录入系统和用户的账号系统绑定。医生登录HIS时会加载所在科室的语言模型,这样就可以有效降低模型大小,提高识别准确度。同时医生也可根据自己的使用习惯,向系统中添加自己常用的词汇。 三是一体化私有建设:实现一套私有化部署的语音云支持多渠道多终端的一体化建设。除支持HIS、PACS等PC端应用,还支持移动查房等pad端应用,真正实现跨平台的多渠道互联互通应用,大大降低医疗信息化建设成本。 医疗语音识别系统采用分布式计算,具有高健壮性、高度灵活性、高性价比等特点,主要包括操作系统层、引擎层、资源包和管理工具4个层次。操作系统层提供开发接口,以及开发人员关注的接口定义、功能和使用方法;引擎层提供核心的语音处理功能,作为应用接口的功能实现者;在引擎层之上提供覆盖医疗领域的资源包,为科室提供语音识别优化的功能。同时系统完美地支持传统API调用和手机APP开发,为医院原有信息化系统提供了相关接口和SDK。
北京协和医院医疗语音识别应用效果初现
据了解,医疗语音识别已在北京协和医院病房、医技科室、手术休息区进行了尝试使用。为更好地测试语音识别效果,北京协和医院组织医生进行了语音识别系统测试和主观体验,随机抽样了135例样本进行精确统计。
已上线科室使用医疗语音识别系统的医生表示,该系统的语音识别效果较好,可以有效提高工作效率,降低工作强度,减轻工作量,尤其对长段信息、自由医嘱录入的效果明显。超过50%的大夫认为语音识别技术每天可节约1小时左右时间。超过90%的大夫希望使用语音录入方式,以提高工作效率。
关键词:语音识别;研究趋势
一、语音识别技术简介
语言是人类的基本功能,也是展现思维、进行沟通的重要载体。而语音,是由人类人体天赋转化下,所形成一种表达方式。在科学视野中,这种天赋的转化,被称之声学表现。然而,不可否认的是,虽然语音仅作为一种“天赋表象”,却是人类目前最为有效的交流手段。
二、语音识别技术的发展历史
科技引入到声音的声学研究,在人类历史上发起较晚,始于上世纪50年代,研究人员才致力于声学和语音学的基本概念。第一次实现研究突破是在1952年,学者AT& T Bell在其实验室,进行了一组当前视野来看,并不复杂的实验工作。但最终实现了一个单一发音人,孤立发音10个英文数字的语音识别系统,方法主要是度量每个数字的元音音段的共振峰;1956年,RCA Lab 基于Bell的人的研究基础,寻求另一个方向的实践研究工作,力求识别单一发音的10个不同的音节,同样采用了度量共振峰的方法;1959年,组织University College的研究学者,以谱分析和模板匹配的方式,借助构建音素识别器的理念,实现了识别4个元音和9个辅音;1962年,东京大学相关研究部门,对音素识别器的硬件进行实践性研究工作。以过零率方法分离语音信号的不同部分的识别方式,成为目前较为理想的研究手段之一;1963年,日本NEC Lab对数字进行语音识别技术进行尝试,并获得了相对可靠的研究成果。并创造NEC研究语音识别的模板,由此开创了语音识别技术的新领域。值得注意的是,在近四十年来,语音识别技术并未出现质的突破。但是,上述内容60年代所进行的研究,却成为了支撑人类语言识别技术近半个世纪的基础。而其最为重要的贡献,便是通过理论深度研究,于1969年提出时间归正法。
三、语音识别技术的应用及前景
随着声学研究的发展,语音识别技术已然具备了应用的基础。从现状来看,中小词汇量非特定人语音识别系统识别精度已经大于98%,对特定人语音识别系统就更高。随着科学技术的发展,集成电路的应用,帮助以往过度复杂的识别体系,能在更小的空间的内实现。从在西方经济发达国家来看,大量的语音识别产品已经进入市场和服务领域。包括手机等移动电子设备,多配备了相对完善的语音机制。并且盲人所使用的电子设备中的语音识别系统,已经达到了以往的军用标准。用户将借助移动通讯网络,以语音识别的口语对话系统,完成日常生活中,如订购票务、酒店等事宜。据调查统计结果,目前85%以上的使用者,对语音识别信息查询服务系统的功能性、准确性表示满意。由此,也可以进行预测:在未来的十年内,语音识别系统的应用范围将逐渐扩大,而基于各类语言、需求的产品涌现,或借助市场调节机制,有效降低此类系统的应用成本。由此更进一步满足各类语音需求。但是,以当前的技术来看,语音识别系统的局现性,或将成为阻碍其发展的根本原因。
四、语音识别技术的系统结构
不可否认,语音识别系统是复杂的。但是,在人类漫长研究中,不断的归纳和总结,最终找到可以大范围区分的“节点”。由此,帮助语言识别系统的构成更加清晰化。从相关研究发现,一个完整的基于统计的语音识别系统可大致分为两个部分:
1、语音信号预处理与特征提取
语音识别的基本工作特征,在于识别单元的选择,这也是能否获得识别结果的重要基础。然而,对于单元的选择,需要合理的区分各个要素,包括单词(句)、音节和音素三种。在选择适合的要素后,才能够进行后续的识别工作。
单词(句)单元广泛应用于中小词汇语音识别系统,但不太适合大词汇系统,原因在于模型库太庞大,训练模型任务繁重,模型匹配算法复杂。故此,看似简单识别通道,却因为复杂性降低了时效,最终导致难以准确的完成识别任务。
音节单元是基于我国语言特征,所提出的特殊识别要素。由于汉语言与英语等拉丁语系语种的差异性。我国发展语音识别技术,或难以借助他国成熟经验。但是,由于汉语音节总数为1300余个,其中包括408个无调音节,对比于大量多音节的拉丁语系,汉语言基础上的音节单元要素识别,将具备更高的时效性。这也是我国语音识别技术能够“后发制人”的关键。
音素的识别,主要借助线性预测(LP)实现。LP分析技术是目前应用广泛的特征参数提取技术,许多成功的应用系统都采用基于LP技术提取的倒谱参数。但线性预测模型为纯数学模型,未考虑人类听觉系统对语言的处理特点。
2、声学模型与模式处理
作为语音识别系统的第二个模块,也是其重要的基底模块。声学模型主要用于搭建声音体系,并借助特征算法,帮助后续的模式处理,对语音进行深度识别。而模式处理的重要性,在于保证识别结果的准确。通常对语音模型的处理,在理论和数据参数上,已经具备良好的基础。但是,在识别方面,却一直难以达成成效。这也是模式处理能力不足所带来的主要困境。从基本理论层面来看,声学模型作为语音识别系统底层模型,其关键性不言而喻。而声学模型存在的意义,在于提供计算语言的特征矢量序列,以及合理区分每个发音模板之间的距离。声学模型的设计和语言发音特点密切相关。声学模型单元体积对语音训练数据量大小、系统识别率,以及灵活性有较大影响。
五、语音识别技术的发展障碍
1、技术智能化不足。例如,同一说话者在不同语态时,语音信息有所差异;即使同一说话者以相同方式说话时,其语音模式也受长期时间变化的影响。
2、缺乏模糊语音处理能力。说话者在讲话时,不同的语词可能听起来很相似。
3、无法兼顾发音变化。单词或单词的一部分在发音过程中其音量、音调、重音和发音速度可能不同,使得测试模式和标准模型不匹配。
4、无法消除环境音响。为了提升语音识别技术的准确性,必须提升其收纳声音的范围。而这样的选择,无疑会放大环境因素的影响。原因在于语音识别系统的声音基础,是在相对安静的环境中创造。所以,无法应对自然环境中的噪声和干扰。而且,在采用抗干扰模式下,语言识别和接受能力又会大幅度下降。这也让技术遇到两难的选择。
参考文献:
[1] 施超群,陈坚刚.浅析语音识别原理[J].浙江工商职业技术学院学报,2011(03):94-96.
语音识别是指用计算机对人的语音信号进行分析处理,从而得到其对应文字的过程。其最终目的就是实现一种自然的人机交互方式,使机器能听懂人的语言,辨明话音的内容,将人的语音正确地转化为对应的文本,或者根据语义做出相应的动作。常见的应用系统有语音输入系统、语音控制系统、智能对话查询系统等。而语音识别评测是指针对语音识别的某项应用,创建评测语料库,提出评测指标和对应算法,用评测语料训练和测试各参评系统,并对其识别结果进行比较和分析的过程。
实际上,从1987年起,美国国家标准技术局就开始组织对各大学和公司研发的语音识别系统进行评测。十几年间,根据技术的现状,组织了多次不同任务的评测,促进了领域内的竞争和交流,对语音识别技术的进步和发展起到了巨大的引领和推动作用。
当前,国际上知名的语音识别评测主要有: 美国NIST(国家标准技术局)评测、欧洲TC-STAR评测和中国的863评测。美国NIST评测是开展历史最久、项目设置最全也最负盛名的评测,近20年来,每年都针对语音识别方向的热点技术组织国际性评测,涉及的语言有英语、汉语普通话和阿拉伯语,涉及的任务有孤立词识别、关键词识别和大词汇量连续语音识别,涉及的语音包括了朗读语音、自然语音、对话语音、广播语音、会议语音等各种常见的语音类别。TC-STAR语音识别评测是欧盟TC-STAR项目的一部分。该项目主要针对语音到语音的机器自动翻译。其语音识别评测任务为连续语音识别,针对英语、西班牙语和汉语普通话,处理的语音为会议发言(英语、西班牙语)或新闻广播(汉语)。863语音识别评测是类似NIST评测的综合性评测,语言以汉语为主,任务和通道多样,根据语音识别技术的现状和发展趋势不断调整。
语音识别的主要技术
近年来,由于大规模语料库的支持,基于统计的语音识别方法逐渐发展成熟,取得了较好的识别结果,成为当前语音识别技术的主流。基于隐马尔可夫模型(HMM)的统计语音识别在各个通道,各种任务的语音识别中得到了广泛应用。
图1所示为当前大多数语音识别系统采用的框架和流程。原始语音经前端处理后,从中提取出若干维的特征向量用于识别。识别时,声学模型和语言模型共同作用,得到使某一概率最大的字串作为识别结果。
前端处理是指在特征提取之前,先对原始语音进行处理,部分消除噪声和不同说话人带来的影响,使处理后的信号更能反映语音的本质特征。最常用的前端处理有端点检测和语音增强。端点检测是指在语音信号中将语音和非语音信号时段区分开来,准确地确定出语音信号的起始点。经过端点检测后,后续处理就可以只对语音信号进行,这对提高模型的精确度和识别正确率有重要作用。语音增强的主要任务就是消除环境噪声对语音的影响。目前通用的方法是采用维纳滤波,该方法在噪声较大的情况下效果好于其他滤波器。
在特征提取阶段,一般是把语音信号切分成几十毫秒的帧,对每一帧提取一个特征向量。但这样会丢失帧与帧之间的联接信息,无法反映帧之间的变化过程,因此,还应该加上向量的一阶差分和二阶差分(相当于连续函数中的一阶导数和二阶导数)共同构成特征。
如上文所述,目前主流的语音识别系统大多基于统计模式识别原理,其基础是由声学模型和语言模型共同构成的统计模型。
声学模型是识别系统的底层模型,其目标是通过模型度量,寻找语音特征向量序列对应的发音。当前常用的声学模型是隐马尔可夫模型(HMM)。HMM模型可以看成一个双重随机过程,一个马尔可夫链的各个状态可以产生出各种输出。这种机制较合理地模仿了人类语言活动的过程,对孤立词和连续语音识别来说都是较理想的声学模型。
语言模型的作用是通过提供字或词之间的上下文信息和语义信息。对于大词汇量连续语音识别,语言模型是必不可少的关键模块之一。目前比较成熟的方法是统计语言模型,当前的主流方法是N元文法(N-gram),其主要思想是根据已知前(N-1)个字或词,预测第N个字或词出现的概率。由于训练语料的限制,目前主要采用三元语法。
训练统计模型
对于统计模型,要想使得它能够识别语音,必须对模型进行训练。所谓训练,是指对大量的训练语料进行统计和处理,计算和调整模型的参数,使模型对未训练过的数据也能达到理想的识别结果。语音识别系统的训练主要包括声学模型的训练和语言模型的训练。对于广泛采用的HMM声学模型,其训练主要是获取HMM中的状态转移概率、各状态的输出概率分布等参数。常用的方法是基于最大似然估计原理的迭代算法(如Baum-Welch算法)。对于基于三元文法的语言模型,其训练主要是从大量的文本中计算三元组的概率。
当模型训练好以后,就可以进行识别了。语音识别算法的主要思路是在侯选的词串中搜索使声学模型和语言模型的概率乘积最大的词串。因此,识别过程也常称作搜索(Search)或解码(Decoding)。当前常用的搜索算法是Viterbi算法,其本质是一种动态规划方法。
当前的语音识别系统大都是说话人无关(Speaker Independent)系统,即事先并不知道要识别的语音的说话人特征。但是,对于某个说话人,如果能够适当学习他(她)的发音特点,调整模型参数,显然会使得识别效果更好。这就是说话人自适应的主要原理。所谓说话人自适应,是指对大训练集上得到的模型参数进行调整,使之对当前说话人产生更好地识别效果。可以说,说话人自适应实际上是希望通过少量数据的增强训练(即所谓的自适应过程),使非特定人系统接近特定人系统的性能。常用的说话人自适应方法主要有两种: 最大后验概率(MAP)方法和最大似然线性回归(MLLR)方法。MPA算法采用基于最大后验概率准则,具有理论上的最优性,因此在小词表的语音识别任务中具有相当好的性能。其缺点是对大词汇量的任务自适应速度缓慢,无法满足应用的要求。因此,当前的大词汇量连续语音识别系统大多采用MLLR方法,或将MAP与MLLR结合。从评测结果来看,如果有充分的时间调整说话人自适应模型,连续语音识别中的字错误率可以下降1至4个百分点。
从几年来各参评系统采用的主要技术来看,当前语音识别系统中的技术严重趋同。几乎所有的参评系统都采用上述框架和基本模块,区别主要在于模块内部的细化程度,或者把某模块中的几种技术做些组合。例如,采用不同的前端处理方法,对男女声和有无噪声的语音分类处理,以及同时采用多种声学特征和不同的搜索策略构造多个识别子系统,最后对各子系统的识别结果做一种类似投票的表决(ROVER技术),得到最终识别结果。
由于863语音识别评测并不限制训练数据的使用,各单位可以使用自备的所有数据。因此,从评测结果及各单位的研讨中可以看到,训练数据的数量和质量对系统的性能有很大的影响。为了使评测更公平,2005年的评测中提供了一定量的统一训练集,但规模还较小。在以后的评测中,将考虑提供大量的训练集,希望能够避免因训练数据不同而造成的性能差异。
863计划中语音识别评测
从2003年起,中国科学院计算技术研究所连续三年承办863计划中文信息处理与智能人机接口技术评测,语音识别评测始终是其中的一个主要分项。三年间,863语音识别评测受到了国内外语音识别研究者的关注,参加单位数逐年递增,成为国内语音识别领域最高级别的交流平台,在国际上也具备了相当的影响力。
2003年和2004年度语音识别评测采用现场评测方式,即各参评系统的运行在评测现场同时进行。这种组织形式比较严格,一旦参评系统运行出现故障将无法继续。而且,要求所有参评单位必须到场,其成本也较高。为了避免这些问题,2005年的863评测采用目前国际通用的网上评测的方法,即在网上数据,各参评单位在自己的运行环境上运行参评系统后将识别结果通过网络提交给评测单位。
863语音识别评测最大的特色在于测试数据的选取。文本语料的选取采用从大规模原始语料库中筛选的方法,充分考虑到了对各种韵律学特征(音节、二音子、三音子、音连关系等)、语法特征(句型和句法结构等)和各种领域、各种文体(散文、小说、实事新闻等)的覆盖。录音时不是采用实验室加噪声,而是在完全真实的场景中录制数据,并且充分考虑到了说话人、信噪比等因素的覆盖,在实验的基础上提出了真实环境中信噪比的分布模型,并在此模型的指导下录制数据。这种以实验和理论为依据、以算法为支撑,控制各种语音属性,从而最大限度地拟合真实应用的数据采集方法,在国际上也是很有特色的。目前国际上的同类评测,录音场景多为实验室,对各种影响因素一般只做宽泛的覆盖,几乎没有按理论模型控制的方法。
863语音识别评测的另一个特点是对结果做了充分的统计分析。目前的国际评测一般除给出相应的指标外,还会做一些统计分析,而之前的国内评测却很少这么做。从2004年开始,863语音识别评测也开始对结果进行统计分析,而在2005年的评测中,更是采用专业统计学方法,采用实验设计、假设检验、回归分析、方差分析、协方差分析等一系方法对结果及影响结果的因素进行了深入分析,对各评测单位认清自己系统的优势和缺点,进一步改进起到了很大作用。
另外,在电话连续语音关键词识别评测中,在2004年尝试了以语义槽为单位的基于语法关键词识别任务和评测指标,在2005年首次使用了两个说话人一起录制的自然对话语音,更加符合真实应用的特点,这在国际同类评测中都是没有的。
从评测结果看语音识别技术现状
863语音识别评测,包括PC、电话、嵌入式设备三个语音通道,涉及听写机、对话查询、命令词识别等多种任务,基本上涵盖了当前语音识别的主要研究和应用方向。而参评的又大都是国内长期进行该项研究、有较高水平的单位和系统,因此,无论是采用的方法还是识别的效果,本次评测都可以真实反映出国内语音识别技术的现状。这里结合2004年的评测,对评测结果进行分析。之所以选择2004年的评测结果,是因为它的评测分项最全,几乎覆盖了语音识别的各种应用。
1. 识别结果的评价
评测的主要目标就是通过对识别结果的评价、分析了解参评系统的性能的和语音技术的现状。因此,制订有效的、能够真实反映出系统性能的评价指标也是很重要的研究任务。
对于大词汇量连续语音识别来说,国际上通用的指标是文字错误率(对于英语,文字指单词; 对于汉语,文字指字,下同)。其基本思想为采用动态规划算法将标准答案与识别结果对齐,以得到“正确文字数”、“替换文字数”、“插入文字数”、“删除文字数”四项参数,然后计算文字错误率。
错误文字数 = 替换 + 插入 + 删除文字数
文字错误率 = 错误文字数 / 原文答案文字数
下面给出一个例子:
LAB: 新 增 四 百 万 千 瓦 时 的 强 大 电 流 输 入 云 南 的 电 网
REC: 新 增 四 百 花 钱 忙 时 的 枪 打 电 流 于 树 绿 云 南 电 网
C C C C N N N C C N N C C I N N C C D C C
其中,LAB是标准答案,REC是识别结果,上面的格式是根据编辑距离最小对齐的结果,第三行标记了各类文字,C表示正确文字,N表示替换文字,I表示插入文字,D表示删除文字。
2004年863语音识别评测中的电话连续语音识别评测分项采用的主要指标是语义槽识别正确率,即用语料文本解析得到的标准答案和识别结果相比较,完全匹配的槽认为是识别正确的,定义槽识别正确率为:
槽识别正确率 = 正确识别的槽的个数 / 标准答案中槽的总数
对于嵌入式设备命令词识别,由于是孤立词识别,因此采用命令词识别正确率即可:
命令词识别正确率 = 正确识别的命令词数 / 命令词总数
2. 识别系统性能
对各系统给出的识别结果计算上述指标,得到对各系统识别性能的评价。表1给出了每个分项中识别效果最好的系统的指标,以及前三名系统的平均指标。为了统一,将电话连续语音识别中的槽识别正确率和嵌入式设备命令词识别中的命令词识别正确率统称为正确率。对桌面(这里指PC,以下同)连续语音识别,采用文字正确率,定义为(目前研究者对文字正确率定义稍有不同,本文中一律以下面的定义为准):
文字正确率 = 1 - 文字错误率
表中的最高正确率基本可以代表该分项的最高水平,前三名的正确率均值可以一定程度上反映该分项的平均水平,而前三名正确率的方差可以反映该分项中各系统的性能差异程度。
从表中可以看到,桌面连续语音识别分项中,汉语的识别效果远远好于英语(文字正确率最多相差20个百分点)。其原因显然在于国内对汉语语音识别的研究比英语多而且深入。另外,英语训练语料的相对缺乏,也是一个重要原因。
在采用了语法限制的语义槽识别任务和槽识别正确率作为评测指标后,电话连续语音的槽识别正确率较低。事实上,由于电话语音的录制环境为办公室环境,其噪音比桌面语音要小得多,所以正确率较低的原因主要在于对语法的处理和槽识别正确率较低。
嵌入式设备命令词识别的正确率与桌面语音字正确率大致相当。一方面,连续语音识别要比孤立词识别困难,另一方面,嵌入式设备的语音通道和计算资源都比PC差得多,从结果可以看出,这两方面的因素基本抵消。
从各分项前三名的正确率方差可以看出,汉语桌面连续语音识别和嵌入式设备命令词分项中各系统的性能差异较小,而英语桌面连续语音识别,特别是一倍实时任务中各系统性能差异较大。这是因为当前语音识别的研究重点在于前者,研究者较多,研究也比较深入,而英语的识别相对来说研究者较少。
3. 影响系统识别性能的因素
从上面的识别结果评价可以看出,对真实噪音环境下录制的语音数据,当前的语音识别系统识别正确率偏低,还很难达到实用。
从语音识别产生以来,噪音一直是影响识别效果的主要因素。为了分析噪音对识别的影响,将评测数据按信噪比(SNR)分段,从参评系统选取三个,分别计算其在各段内的识别正确率,可以看出,识别正确率基本上随着SNR的增大而提高,SNR在20dB以上的数据正确率比SNR在5~10dB的数据高近30个百分点。对桌面连续语音识别的其他分项和嵌入式命令词识别的结果分析也得到类似的结果。
对于电话连续语音识别来说,由于录制环境是办公室真实环境,因此噪音并不是影响性能的主要因素。电话连续语音识别分为5个子领域,每个子领域各有一套语法。评测句子由语法生成的有效成分在前后加上任意长的填充词(filler)构成,如语法生成的句子为“从天安门到中关村怎么坐公交车”,而实际录制的句子是“你好,请问从天安门到中关村怎么坐公交车,可以查到吗?”,其中的“你好,请问”和“可以查到吗”就是filler。由分析可以发现,不同领域内的槽识别正确率相差很大。这主要有两个原因,一是不同领域的语法复杂度不同,二是不同领域内有filler的句子所占比例不同。为了进一步衡量filler对识别的影响,选取三个识别系统,将有filler的句子和没有filler的句子分别计算识别率,统计结果如图2所示。从图中可以看出,filler对识别的影响是相当大的,无filler的句子比有filler的句子识别正确率可以高几十个百分点。
语音识别技术的应用非常广泛,可应用在运营商、呼叫中心、汽车、GPS导航等凡是需要输入文字、但又不方便输入,只能用语音代替文字的地方。因此,语音识别技术被很多专家认为是下一代通信技术,具有广阔的市场前景。但由于语音识别技术难度非常大,语音识别率不高,让很多人不喜欢使用,因此,目前应用并没有想象中那么大,市场也没有预期中的爆炸式发展。那么,目前全球的语音识别技术究竟发展到什么程度了呢?
5月22日,在全球语音识别市场占据80%以上市场份额的语音识别技术和产品供应商Nuance通信公司在北京举办了一场语音企业解决方案高峰会。会上,Nuance公司展示了最新的语音识别技术以及各种成功应用案例,令人惊叹语音技术的发展速度之快。
据Nuance大中华区总经理郑裕庆介绍,目前,Nuance已经在全球部署了3000多个基于语音识别技术的解决方案,客户范围覆盖移动运营商、汽车制造商、医院、移动电话等各个行业。在金融领域,Nuance 拥有超过500家金融客户,其中包括 Wells Fargo、美国银行、花旗银行、德意志银行、汇丰银行、友邦保险、安联保险、美林证券等;而电信行业,全球前15大电信公司有超过10家为 Nuance 用户,其中包括英国电信、Verizon、Vodafone、Cingular 等,另外还包括电视购物、航空、医药、汽车、科技企业等数千家企业,在全球《财富》100强企业中有三分之二为 Nuance 的用户。
“Nuance在语音识别技术上具备1000项专利权、可识别全球50多种语言,包括方言,采用我们的语音输入技术,其速度比99%的人的打字速度都快,且准确率非常高。”郑裕庆说。“我们拥有全球最大的客户交互解决方案顾问及系统整合团队,通过领先的语音及文字技术,可为企业量身定做各种客户关怀方案。”他举例:Nuance为中国移动、中国联通、中国电信提供的个性化语音识别应用,就让这三家运营商对客户的关怀达到一个新高度。中国移动和中国联通的客户在下载彩铃时,只需拨打特服号码,并根据提示直接用语音说出想要的歌名或歌手名,系统就会听懂你的话并搜索出你想要的铃声,这极大地解决了人们搜索自己喜爱歌曲的难度。中国电信的用户则可以利用该技术,有效接通只记得人名、不记得号码的人,在中国电信的号码百事通和商务领航品牌上的个人通信助理中,人们可以将自己的个人电话簿通过多种途径上传到运营商的服务器,使用时只需要拨通缩位特服号码后直接说出要找的人名,系统就会自动帮你接通电话。使用过程中,用户还可随时用语音方式添加或修改个人电话簿。
“客户关怀”实际上是Nuance公司的一个语音识别解决方案的名称,通过为企业定制这一方案,越来越多的企业在其客服中开始采用语音识别技术。
技术为王。百度与微软双雄鼎立
去年10月中旬,微软人工智能与研究部门的一个研究者和工程师团队报告出他们的语音识别系统实现了和专业速录员相同甚至更低的误字率(word error rate,简称WER),降到了5.9%,而一个月前这一数字还是6.3%。微软首席语音工程师黄学东表示,“我们已经达到了人类水平,这是一项历史性的成就。”
有意思的是,百度首席科学家吴恩达(Andrew Ng)立即在Twitter上表示祝贺,并毫不掩饰地摆出了百度的战绩,“在2015年我们就超越了人类水平的汉语识别;很高兴看到微软在不到一年之后让英语也达到了这一步。”时隔一年,百度和微软两大人工智能科技巨头先后分别在汉语和英语语音识别研究方面取得了超越人类的成果,轰动业界。
近年来,随着数据量的丰富和计算能力的提升,语音识别行业迅速崛起。据统计,仅美国至少就有26家公司在开发语音识别技术。
2015年之前,Nuance是当之无愧的全球语音领域老大。随着Google、微软和苹果都选择自己建立团队开发语音业务,在此之后,Nuance的市场份额节节下跌,2014年还高达60%的市场份额,一年过去只剩下31.1%。相比之下,Google语音识别的市场份额增长明显,逐渐占据了英语领域的主导权。
尽管Google、微软和苹果这些巨头在语音识别技术上的技术积累和先发优势让后来者似乎难望其项背,但因为一些政策和市场方面的原因,这些巨头的语音识别主要偏向于英语,这给中国互联网企业在中文领域崛起提供了机会,百度就是其中的佼佼者。百度收集了大量中文(尤其是普通话)的音频数据,这给其Deep Speech 2技术成果提供了基本的数据优势。
事实上,在当前的发展脉络下,语音识别的准确率和通用性的本质就在于三个方面:数据量的多少、算法的优劣和计算能力的水平。在这三个方面的比拼中,互联网巨头拥有很大的优势,因为它们拥有最多的数据,最顶级的人才以及最强大的计算能力水平。所以当Google开放语音识别API后,在英语语音识别的市场中,Google比Nuance有更大的优势。而在中文市场中,百度也扮演着和Google在英语市场相似的角色,甚至更为出色。
2015年12月,在Deep Speech 2首次时,吴恩达称其识别精度已经超越了Google Speech API、wit.ai、微软的Bing Speech以及苹果的Dictation至少10个百分点。2016年2月,百度表示Deep Speech 2的短语识别误字率已经降到了3.7%。
群雄逐鹿,中文领域的生死战
毫无疑问,微软和百度的语音识别技术水平都很惊人,但一项技术终究要变成产品和服务才能实现价值,所以在英语语音识别市场占据主导地位的是Google而非微软。在中文语音识别市场,这方面做得最好的公司莫过于科大讯飞。
Google是最早在全球范围内大规模使用深度神经网络的公司,而科大讯飞是中国第一个在商用系统里使用深度神经网络的公司。2010年,科大讯飞率先将语音输入功能引入到了手机当中,截至2016年6月,《讯飞输入法》已经拥有3.6亿用户,活跃用户更是超过1亿人,其中,语音用户渗透率高达59%。在国内语音行业,科大讯飞已是不折不扣的龙头企业。而不久之前,《讯飞输入法》还因在锤子手机会上的惊艳表现备受关注。
在2016年10月18日晚上的锤子手机会上,罗永浩现场展示了科大讯飞97%正确率的语音输入。一夜之间,科大讯飞几乎成了所有科技媒体人所讨论的话题和关注的焦点。其实,除了锤子手机的Smartisan OS之外,华为、小米和魅族等厂商的语音服务或者输入法都在使用或曾经使用过科大讯飞的技术。据悉,在未来的三年中,科技巨头英特尔也将与科大讯飞合作,一起研究机器学习和深度学习项目。
除了科大讯飞,国内在语音识别领域有所建树的大公司还有不少。在2016年4月中旬举行的“云栖大会南京峰会”上,阿里云总裁胡晓明率先进行演讲,阿里云的“小Ai”机器人全程对胡晓明的语音进行了实时翻译文字,这也是阿里巴巴第一次对外公布阿里云人工智能的能力。其实,这并非“小Ai”首次展示自己的速记能力。在阿里云2016年年会上,“小Ai”曾打败了世界中文速记大赛亚军。阿里云人工智能技术专家陈一宁透露,“在阿里云大数据平台数加上,智能语音交互产品就是采用的“小Ai”的技术。目前,阿里云还在探讨同各类直播平台的合作,以后所有的直播都能具备实时加字幕功能。
除了阿里云,搜狗也是国内语音识别领域不容忽略的一方诸侯。在去年11月中旬举行的第三届世界互联网大会上,搜狗CEO王小川首秀搜狗“黑科技”――机器同传,展示了实时机器翻译技术,将演讲嘉宾的中文讲话实时语音识别并同步翻译为英文上屏显示,引起轰动。这是全球首次基于神经网络的实时机器翻译技术在大型活动上的展示,效果可靠、准确率已接近人类同传翻译结果。而在近期人工评测中,搜狗机器翻译在演讲、旅游、闲聊和日常口语等领域,采用5分制人工评分能达到4.4分,走向实用化。目前,搜狗语音识别准确率已超过97%,识别速度达到了400字每分钟。
除了科大讯飞、阿里云和搜狗等互联网大佬,国内还有不少专注自然语言处理技术的创业公司,如云知声和思必驰等。云知声CEO黄伟表示,云知声的识别准确率已经能达到97%,属于业内一流水平。相比之下,思必驰做的是语音对话交互技术的整体解决方案,而不是单纯的语音识别解决方案。因此在场景应用中,思必驰的系统和科大讯飞的系统多有比较,可相互媲美。
毫无疑问,面对拥有领先优势的科大讯飞,以及阿里云和搜狗等实力雄厚的互联网大佬,还有云知声和思必驰这类不容小觑的创业公司,百度虽然拥有做人的技术和财力,但想在中文语音识别领域独霸江湖仍有不小的难度。未来难测,深挖场景是必经路
未来5年,语音市场将显著增长,到2020年,全球语音市场规模预计将达到191.7亿美元。语音识别之所以潜力巨大,很大程度上源于它是最便捷的人机交互方式,也是人工智能的重要入口。近年来,国内外互联网巨头们都在发力人工智能,虽然各自的侧重点不同,但都极为倚靠语音识别技术。毕竟,语音输入本身只是一个途径,它最终仍然要和实际操作相结合。
语音识别技术要在现实生活中落地,必须与场景结合,这需要吸纳来自各种场景的数据去训练语音技术,让其更加智能化。这也是为什么“微软小冰”每周都要上线新功能,努力刺激用户贡献更多聊天数据,而科大讯飞则不断扩大包括长虹等智能电视在内的合作名单,吸纳来自入口级硬件的数据。数据显示,与讯飞人工智能连接的应用,日均访问量为30亿次。
与科大讯飞相比,百度在海量用户数据和人工智能技术上的优势,能让他们迅速发展出优秀的语音智能。从这个角度来说,百度的发展道路比科大讯飞更宽。在百度生态内部,目前语音技术的落地渗透在《百度地图》、《手机百度》和《百度输入法》等产品中。而在外部,截至2016年年中,使用百度语音技术的APP数量超过8万款,大型合作厂商包括中兴、魅族和联想等。百度语音如今能获取的数据规模非常庞大,据吴恩达透露,在线识别请求量2016年每天达到1.4亿次,在线语音合成请求量则达到2亿次。
除依靠产品收集用户数据之外,各大厂商还在积极与数据资源商合作,以更快捷地获得庞大的数据支撑。随着这些数据的输入,每分每秒,人工智能的模型会迅速迭代和升级,就像Google的AlphaGo在每一场棋局的每一步对决中都在学习。
作为底层技术,语音识别未来的发挥空间极大,将广泛出现在手机、智能家居、医疗、教育和司法等各种场景。当然,这还有很长的一段路要走,想要在这条路上脱颖而出的公司,―方面要面对同行的生死竞争,另―方面还需努力解决语音识别技术仍然存在的一些瓶颈。
关键词:语音识别;LD3320;STM32F407;W25Q128
随着科技的发展,人们的操作模式从最初的按键操作到触屏操作,再到现在的语音操作,其越来越便捷,越来越人性化。语音操作的基础就是语音识别技术(Automatic Speech Recognition),简称ASR,其目标就将人类语言转换为计算机可读的输入。语音识别作为一门交叉学科,从产生到现在已取得了显著的进步,现在已逐步走向市场,并且人们预计,语音识别技术在未来10年将会应用于人们生活的各个领域。
根据发音人的不同,语音识别技术可分为特定人语音识别和非特定人语音识别两类,前者只能识别一个或几个人的语音,而后者则能被任何人使用。本文设计的多鼍坝镆羰侗鹣低尘褪粲诜翘囟ㄈ擞镆羰侗鹫庖焕啵其以嵌入式微处理器STM32F407为核心,采用ICRoute公司的LD3320语音识别芯片,并配以存储空间为16M字节的W25Q128芯片,能够实现2000个场景共计识别句100000条的语音识别操作。
1 系统整体结构
如图1所示,整个系统主要是由STM32F407处理器、LD3320语音识别芯片以及W25Q128Flash芯片构成。其中STM32F407处理器用于切换场景和场景关键词更改;LD3320语音识别芯片用于语音识别,W25Q128Flash芯片用于存识别句,两种都是通过SPI总线与处理器相连。整套系统与外部其他系统则是通过串口进行通信。
2 系统硬件介绍及存储空间设计
2.1 系统硬件介绍
2.1.1 STM32F407ZGT6处理器
STM32F407ZGT6采用Cortex_M4内核,集成FPU和DSP指令,具有192KB SRAM、1024KB FLASH、3个SPI、6个串口等。基于其强大的配置,所以本系统的处理器选用该芯片。
2.1.2 LD3320语音识别模块
LD3320语音识别模块是ICRoute公司的一款产品,其特有的快速而稳定的优化算法,能够完成非特定人语音识别,识别准确率高达95%。该模块每次最多可以设置50条候选识别词或识别句,只要单个词或句长度不超过10个汉字和79字节的拼音串,同时我们可以对识别内容动态编辑。模块的通讯方式有并行和串行两种,根据需求的不同可以选择不同的通讯方式。除了语音识别这一功能之外,模块还支持MP3播放功能,只要MCU将MP3数据依次送入芯片,就能够从芯片的PIN引脚输出声音。
2.1.3 W25Q128Flash芯片
W25Q128是华邦公司推出的大容量SPIFLASH产品,容量为128Mbit,即16M。该芯片将16M空间分为256块,每块64KB,每块又分为16个扇区,每个扇区4KB。由于W25Q128的最小擦除单位为一扇区,也就是说每次擦除4KB。
2.2 存储空间设计
由于W25Q128芯片每次擦除的单位为4KB,而每句识别语句至少有80字节,一个场景有50句识别语句,所以一个扇区用于一个场景是不够的,因此我们将两个扇区划为一个场景;图2是单个场景数据存储关系图,图中每个场景占8192字节,每条识别语句占100个字节,其中第一个字节为识别语句编号,范围为1-50;单个场景的第一个扇区可以存储40条识别语句,第二个扇区可以存储10条识别语句,其中第4000B-4096B和5096B-8190B保留,不存储数据,整个场景的最后两个字节用于存储场景编号,范围为1-2000。W25Q128共有4096个扇区,理论上可以划分2048个场景,但是我们只划分2000个场景,也就是4000个扇区;还剩下96个扇区,剩下的第1-50扇区用于存放每个场景的相关信息,计算可以得到每个场景有1KB的存储空间,然后我们将最后一个扇区的最后两个字节存储现在所在场景编号,剩下的空间保留。
3 系统软件设计
3.1 通讯协议格式设置
整个系统主要具有场景切换和场景识别语句存取功能,表1是部分对应协议格式。
3.2 初始化函数及操作函数介绍
STM32处理器与其他各个模块建立通信连接,除了连接好对应IO口后,还需要对各个IO进行初始化,这样才能进行数据的收发,以下是主函数中相关初始化函数:
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//首先设置系统中断优先级分组
delay_init(168); //初始化延时函数
LED_Init();//指示灯初始化
KEY_Init();//按键初始化
IWDOG_Init();//看门狗初始化
USART1_Init(9600);//初始化串口1
W25QXX_Init();//W25Q128初始化
LD3320_Init();//LD3320初始化
while(W25QXX_ReadID()!=W25Q128) //检测是否存在W25Q128
{
LED0=!LED0; //如果检测不到W25Q128指示灯1会不停闪烁
}
关键词:智能;语音遥控系统;语音识别
所谓语音识别技术指的是设备经过识别过程以及理解环节将用户声音信号转换成对应的命令信号或是文本信息的一类高新技术[1]。近年来,语音识别不断被运用在科研领域事业,使得语音识别技术不断得到完善、成熟,而语音识别技术在日常生活中的应用具有很大的发展空间,为人们的日常工作、生活提供了很大的便利。
1 语音系统工作原理简单介绍
系统通过向使用者提供一定的语音命令学习以及识别功能,使用者事先针对家电设备的遥控语音信号以及红外或RF无线信号完成配对学习以及存储操作。控制台在进行运作中,语音系统利用输入进来的语音信号来完成命令识别,按照识别所得结果来进行动作查找,查找位置为内部结构的动作库,然后通过指定的红外或RF无线信号输出通道输出配对精确的控制信号,再对各种家电设备实行遥控,从而实现语音系统控制台的功能作用。
2 语音识别系统中简单命令菜单分析
这个命令菜单主要包括:读取命令、删除命令以及添加命令三个不同内容。使用者可以按照实际需要来选择命令,其中Cancel键可以返回上级菜单命令,现主要分析删除和添加命令。
2.1 分析删除命令
这个命令的操作较简单,使用者需要将待删除命令的相关口令输入进去并按下OK键就能完成。这一过程中若系统寻找到对应的命令内容就会出现“删除成功”提示,否则系统就会提示“删除失败”信息。
2.2 分析添加命令
首先实现一个新命令的添加操作包括:口令录入以及红外线信号录入。使用者可以通过麦克风设备进行多次口令录入操作,而系统会显示已经完成录入的口令内容,例如:关闭空调、开空调等。除此之外,使用者也应使该遥控系统记录好与该口令内容相对的红外线信号,在红外线遥控器中按下关闭按钮。完成这两个操作内容,新命令内容就添加成功完成了。
3 语音识别系统中的关键技术介绍
3.1 语音识别技术
整个系统结构的核心内容是语音识别技术,大部分系统功能均可以通过语音识别系统来帮助推动各系统运作[2]。而语音识别模块设计质量以及运行有效性会对整个系统功能运行情况产生重要影响。该系统设计工作包括很多学科内容以及很多技术难点,并且一个企业在短期内自行投入资金研究语音识别相关技术算法要花费很多费用,这种做法不现实。可以在已有语音识别系统基础上,采用该系统的API来实现系统功能。在进行研发过程中,可以选用SAPI15.0来充当技术研发平台。其中,SAPISDK产品是微软公司开发的一个语音应用方面的开发工具包,该工具包中包括有SAPI、语音合成引擎以及语音识别引擎等。而SAPI内容中含有训练导向、语音识别管理、资源以及语法编译等设计接口。
其中,语音引擎可以通过SAPI和DDI层实现交互工作,而应用程序可以通过这两个接口来实现通信。熟悉使用API,可以使设计者更好、更快的实现语音识别应用系统。为了提高系统底层结构能力,可以在系统中增加命令列表识别以及语音模糊化功能。前者是采用SAPIA所具有的语法构造能力,而构造仅会识别特定命令列表内容的一种识别设备。其中语音模糊化是通过采用某一个算法程序把一个精确的汉子变化为一个读音信息从而实现模糊匹配。
3.2 2.4G无线通信技术
随着无线通信技术的发展,2.4G无线通信技术日益受到重视和使用,原因有三:首先它是一个全球性的频段,开发的产品具有全球通用性;其次,它整体的频宽胜于其他ISM频段,这就提高了整体数据传输速率,允许系统共存;第三就是产品尺寸,2.4GHz通信芯片和天线的体积相当小。
2.4G无线技术采用全双工模式传输,传送速率高达2 Mbps,抗干扰性能比之前的315、433、868、915MHz有绝对的优势;对于较大容量的数据传输更具吸引力,如双向语音传输、光标控制、游戏手柄等功能。
2.4G无线通信技术中常用的芯片有挪威Nordic公司的nRF24LE1无线芯片模组、以色列RFWave公司的RFW102无线芯片模组等。例如根据设计需求、性能及成本估算,可以采用nRF24LE1和nRF24LU1+作为处理主芯片进行数据传输。nRF24LE1用作每个节点的收发主控芯片,其内部有增强型的8051 MCU和内嵌2.4G低功耗无线收发内核nRF24L01P两个部分,传输速率最高达到2 Mbps,保证大容量数据的无线快速传输。MCU和无线收发内核之间通过SPI接口进行通信。
4 结语
综上所述,智能家庭语音识别系统在日常应用过程中不仅方便,而且其软硬件还具有较大范围的扩张作用。其中搜索引擎与系统相互结合能具备一个功能强大的语音搜索功能。若能深入识别该系统的加密功能,然后对各命令内容实现安全等级划分,例如帮助禁止一些特定命令内容的使用,帮助识别儿童的声音,防止儿童启动电气设备等。该系统中还可以在硬件设备上进行扩展,比如:通过语音来帮助控制门的开关以及窗帘的伸展和拉紧。
[参考文献]
语音识别技术成为21世纪“数字时代”的重要开发领域,在计算机的多媒体技术应用和工业自动化控制应用等方面,成果令人属目。语音识别技术是指用电子装置来识别某些人的某些特征语音,语音识别的手段一般分为二大类,一类利用在计算机上开发语音识别系统,通过编程软件达到对语音的识别,另一类采用专门的语音识别芯片来进行简单的语音识别。利用专门的语音识别芯片应用在地铁车辆上,具有结构简单、使用方便,并且语音识别器有较高的可靠性、稳定性的特点,是简单语音识别在自动控制应用上的一种优先方案。
目前上海地铁一、二、三、五、六、八号线在车辆信息显示系统的设计上缺少实用性和操作性,对乘客来讲缺少在实时报站时的人性化。如:地铁车厢内的乘客信息显示系统和车厢外侧的列车信息显示系统。如果在每个车门的上方安装车站站名动态显示地图,实时显示与车厢广播同步的信息,以及在每节车厢外侧显示列车的终点站,良好的工业设计不仅能给广大的乘客带来非常大的帮助,而且能够提升上海地铁服务的形象。由于在设计以上地铁列车时,受科技发展的限制。现在上海地铁4号线在车辆信息显示系统的设计上满足了广大的乘客的需求,
增加了车站站名动态显示地图。
如何在现有的地铁车辆上增加地铁车厢内的乘客信息显示系统和车厢外侧的列车信息显示系统,如图1、2,首先考虑其实用性和性价比,同时安装、操作要方便,在不影响列车的性能的前提下,完成本乘客信息显示系统的应用,设计方案的选择极其重要,目前的乘客信息显示系统比较复杂,例如:对于应用在某条线路上的声音识别系统,不仅要修改原语音文件,而且声音识别器不容易操纵,
对使用者来讲仍然存在比较多的问题。对于应用在某条线路上数字传输显示系统,其操作方法不仅给司机带来了任务,每站需要手动操作二次,同时显示的相关内容没有实时性,总之乘客信息显示系统比较落后。
设计一种符合现代化要求的乘客信息显示系统是非常必要。
2.设计
地铁车辆乘客信息显示系统的设计,采用CMOS语音识别大规模集成电路,识别响应时间小于300 ms。HM2007芯片采用单片结构,如图3。将语音识别需要的全部电路:CPU、A/D、ROM、语音的AMP放大器、压缩器、滤波器、震荡器和接口界面等集中在一片芯片内,这样外围电路就非常少,外接64K非易失性SRAM,最多能识别40个车站站名语音(字长0.9秒),或(字长1.92秒)但识别仅20个车站站名语音。按正常人的讲话速度,0.9秒一般每秒吐字1到3个为宜。
针对目前上海地铁列车在车厢内外无LED动态站名显示而设计,通过将列车车厢广播的模拟信号转换成数字信号,自动控制LED发光二极管,在列车在车厢内使得广播的内容(每个车站站名)与发光二极管显示面板声光同步,将显示面板放置地铁车辆的每扇车门上方,并且显示面板以地铁运营线路为背景,达到列车进站和出站时能分别指示。在列车车厢外让乘客非常直观地、一目了然地了解车辆的终点站方向,从而方便乘客的上下车,提高了地铁服务水平。在国外的地铁列车上应用已相当普遍。
语音识别显示器①的输入端与车载广播功放器相连接,实现广播模拟信号发出的语音进行车站名的自动识别。不需要编程技术和修改文件等方法,全部采用硬件方法设计。整个系统分为5部分:(1)输入控制部分;(2)噪音滤波部分;(3)语言识别部分;(4)执行显示部分;(5)录音功能部分。
(1)输入控制部分:
通过麦克风或(结合器)连接,如图4所示,要求模拟语音输入点的电压必须控制在大约20mv左右,以确保后期语音识别的正确性。在输入电路中增加了声音控制部分的电路,即将模拟信号转变成数字方波信号,对语音输入进行开关量的控制,确保在T
(2)语音识别部分:
利用语音识别芯片HM2007和外接6264SRAM存储器组成为主要部分,(HM2007中ROM已经固化了语音语法技术)对语音的存储及语音语法算法进行控制。HM2007的详细内容见产品说明书。
(3)噪音滤波部分:
滤波功能是自动识别(阻挡)我们在设计阶段设计好的各个工况的语音情况,例如:司机的讲话及车辆杂音等(在麦克风的工况下),以确保输入语音的可靠性、稳定性,特采用UM3758串行编译码一体化进行滤波电路。如图5。
(4)执行显示部分:
将车厢广播喇叭的模拟信息通过语音识别器转变成数字信息,最终经过译码电路、4/16多路数据选择器及RS485接口,去控制车厢内车门上十个LED显示面板,如图6。
(5)录音功能部分:
在进行广播内容更改时,本项目最大的特点是:不需要任何手段的手工软件编程的修改,而是通过远程音频电路控制技术进行按动相关按钮,选择地址然后自动录入内容,如图6。
3. 结论
语音识别器及LED显示面板的设计,能应用到以前没有LED显示面功能的地铁车辆上,与其他所设计的方式相比较,语音识别控制简单、可靠性好、安装方便、相对投资最小和不改动车厢内任何电器为特点,仅提供110VDC电源和音频输入接口。
本项目的开发具有一定社会效益,得到国内外乘客和残疾人员的欢迎,提高了地铁服务质量。
参考文献:
1. HUALON MICRELECTRONICS CORPORATION TIWAN
PRODUCT NUMBER: HM2007
2. 555集成电路实用大全
上海科技普及出版社
3.①获得“2003年上海市优秀发明选拔赛三等奖”
4.①编入《中国科技发展精典文库》第四辑
关键词:机器人;语音识别;端点检测;语音合成
中图分类号:TP311文献标识码:A文章编号:1009-3044(2011)30-7498-03
Intelligent Voice of the Robot Design and Implementation
GUAN Hong, ZHANG Shuai, LEI Hong-le
(Shandong University of Science and Technology, Qingdao 266510, China)
Abstract: Introduces the overall design of the intelligent voice robot, including hardware design and software design, this paper analyzes the methods of speech recognition, the process of speech recognition, and speech synthesis process, introduces the method of Endpoint detection of speech recognition ,and test results are given.
Key words: robot; speech recognition; endpoint detection; speech synthesis
语音识别技术是通过机器人的理解和识别将人类的语音中的词汇内容转换为计算机可读的输入,例如文本或者命令,是一种多维模式识别和智能计算机接口的范畴。语音识别技术主要包括模式匹配准则、特征提取技术、及模型训练技术3个方面,所涉及的领域很广泛,包括模式识别、信号处理等。
让机器人能够听懂人类的语言并且能够按照人的口头命令行动,从而实现人际交往一直以来都是人类的梦想,本文所研究的机器人语音识别,对于服务机器人的应用领域具有重要的现实意义。
1 机器人整体设计
整个系统采用CPU作为核心控制,外加音频输入输出模块、视频输入输出模块、触屏模块、显示模块、电源模块和电机驱动模块。
运动模块主要由一系列电机驱动器组成,通过CAN总线与CPU进行通信,音频模块用来采集音频信息,视频模块用来采集视频图像信息,触屏模块和显示模块为机器人提供了良好的人机交互方式。各个部分的相互关系如图1所示。
1.1 机器人的硬件设计
机械动作模块(即硬件设计)包括左右手、左右肘、左右肩、腰部、头部的直流电机控制器,配合语音能够完成“握手”、“再见”、“两手自然交叉,放在腹前”等等正式的迎宾动作及舞蹈表演,机械动作模块通过CAN总线通信模块与主控器联系。机械动作模块关系如图2所示。
1.2 机器人的软件设计
该机器人的实现其全部功能的过程就是整个软件的实现过程,系统软件设计的基本流程,如图3。
2 语音识别和端点检测的实现
语音识别系统本质上是一种多维模式识别系统,语音识别主要包括预处理、特征提取、模式匹配三个部分。语音识别系统中最基本的模块就是语音端点检测,从一段语音信号中找出语音的终点和起点,使得计算机只处理和保存有用的语音信号。
2.1 端点检测
端点检测(end-pointer detection)是将语音数据(speech)从背景噪声中分离出来的一项技术,主要应用于语音识别领域,可以很大程度地降低识别器的运算量,从而能有效地提高识别效率以及识别效果。下面描述两级判别法定义和检测方法:
1)短时能量
语音端点检测一般是按照帧进行处理,每帧的长度各不相等。每个语音帧的短时平均能量En为:
其中Wγ为帧长,Sw(n)为时刻n的加窗语音,但为了节约时间,减少计算量,而是采用每个点上幅度值的绝对值之和作为短时能量值:
。
2)短时平均过零率
每个语音帧的短时平均过零率Zn为:
,其中是符号函数。
3)两级判别法
两级判别法是利用语音的短时能量和平均过零率的性质进行的端口检测的,其步骤可以归结为:
A.定阈值
预先设定阈值Eh、El、Zth,其中Eh、El分别为高、低能量阈值,Zth为过零率阈值。由于采集的声音信号中最初的短时段多为无声或背景噪音,这样就可以利用已知为“静态”的最初几帧信号计算其过零率阈值Zth以及高、低能量阈值Eh、El。
在计算Eh、El、Zth时,每一帧的时间选取为20ms,并设定语音的前10帧为静音阶段,通过这10帧计算出Eh、El、Zth的值。
前10帧短时能量最高的帧的短时能量为Emax、最低的为Emin、平均能量为Z、前10帧的能量的方差为F。
B.寻找语音的起始点和终止点
首先用时平均幅值进行第一次判别,然后在此基础上用短时平均过零率进行第二次判。在用短时能量进行第一次判别时,为了不会将语音能量的局部下降点错误地作起止点,常采用双门限比较的方法。
图5为平均幅值(能量)一过零率的端点检测判决示意图。首先根据语音时能量En的轮廓先取一个较高的门限Eh,语音短时能量大多数情况下都在此限之上。这样可以进行一次粗判:语音起止点位于该门限与短时能量包络交点对应的时间间隔之外(即AB段之外)。然后,根据背景噪声的平均能量确定一较低的门限El,并从A点往左、B点往右搜索,分别找到短时能量包络第一次门限El相交的两个点:c和D,CD段就是采用双门限方法根据短时平均幅值所判定的语音段。以上只是完成了第一级判决。
接着要进行第二级判决,这次是以短时平均过零率Zth。为标准,从C点往左D点往右搜索,找到短时平均过零率第一次低于某个门限Zth点:E和F,这便语音段的起始点。
C.检测结果
图6和图5是对“你又去哪里”这句话的检测,分别是经过语音端点检测之后的语音示意图和原始的语音示意图。从上面两个图上可以看到:通过端点检测之后的语音,除去了背景语音而且基本上完好的保留了真语音部分。
2.2 语音识别的开发接口
本系统利用语音识别应用开发接口和端点检测开发接口相结合进行开发,这样既可以保证开发软件的识别率,又可以防止噪音的干扰。两个接口相结合的语音识别开发过程,如图7。
2.3实验结果
我们随机的选择了5个人对该系统做了测试,长词语的识别率要比短词的识别率高,而且该系统可以实现对于整句的识别。结果如表1。
3 语音合成的实现
语音系统采用了科大讯飞的ViviVoice 2.1语音合成系统,系统拥有18个人的音库,能够根据实际需要,灵活地选机器人的发音人,可供选择的分类有男声和女声、童音和成年人声音、普通话和闽南话、中文和英文。语音合成系统的合成引擎在完成文本到语音数据的转化过程中可以简单分解为两个步骤的处理。在整个转化处理的过程中牵涉到大量的中英文语法和韵律知识的运用,以及语法和语义分析的算法,最佳路径搜索,单元挑选和 调整的算法,语音数据编码方面的知识。语音合成技术涵盖了语音文字的社会科学、数字信号处理等自然科学,是跨学科高新技术。
4 总结
该机器人系统有硬件系统和软件系统组成。硬件系统包括机器人载体和机械运动,系统的软件部分由人脸识别模块、语音识别模块等组成。主程序模块实现机器人的全面控制功能,并调用语音模块和人脸识别模块等进行人机交互。语音模块包括语音识别和语音合成功能:语音模块使用语音识别功能将接收到的语音信号转换成文本系统,便于系统对用户声音指令进行识别和处理,语音识别采用了端点检测算法能正确地从背景噪音中找出语音的开始和终止;语音模块使用语音合成功能将文本转换为音频信号,使机器人发出语音。在这个系统中还利用了远程控制,来确保程序的稳定性和可靠性。
参考文献:
[1] 乔兵,吴庆林,阴玉梅.语音识别算法的VC++实现[M].长春:中国科学院,长春光学精密机械与物理研究所,2011.
[2] 韩玉强.用于家电控制的语音识别方法的研究[D].山东大学,2010.
[3] 肖利君.基于DTW模型的孤立词语音识别算法实现研究[D].中南大学,2010.
它满足了人类对于“语音识别”技术的终极幻想。你可以把这位智能管家想象成Siri的未来升级版,它不但能够完美执行指令,还能根据设备的工作情况甚至主人的心情提出建议。
下面回到现实。Siri眼下能做的最棒的事情,就是帮忙预订某个酒店房间—诸如此类。不过不用悲观,还有个好消息是,语音识别已经成为众多科技公司的优先发展计划。
2012年3月,一项能够即时语音翻译26种语言的技术被微软研究院推出。与其他语言翻译产品不同的是,这项技术除了翻译多种语言之外,输出的语音还可以模仿说话人的音色和音调,使它们听起来接近使用者的真实声音。当然了,现在它听上去还有些生硬,感彩还不够丰富。
这项技术的第一步仍然是语音识别,后者正被越来越广泛的应用在众多不同的领域。微软用它来翻译,在将语音进行识别之后,变成一项名为“跨语言的文语转换”(Cross-Language Text-to-Speech,简称TTS)的技术。使用者只需要预先录下几十分钟的母语作为训练语音。软件在进行识别、翻译之后,就可以模仿说话人的音调和音色将翻译好的、其他语种的文本说出 来。
此前早已有苹果Siri,它一度是iPhone 4S手机用户的最大乐趣之一。另外在Android 4.1系统中,Google Now除了让用户实现语音搜索,还包含一个自动填充卡片的功能。当用户搜索了一个地点、天气或是航班时间,Google Now会自动建立一个卡片存储细节,供用户以后查阅。
人们对于语音识别的迷恋由来已久,甚至在计算机发明之前。早期的声码器,可以看作是语音识别技术的雏形。1920年代生产的“Radio Rex”玩具狗是眼下有据可查的最早的语音识别器,当这只狗听到自己的名字时,它就会从底座上弹出来,吓人一跳。
作为诸多后继的复杂应用的第一步,语音识别—让机器读懂你在说什么,迄今为止仍然是一个大工程。你甚至也可以把它视为众多语音类智能应用向前发展的绊脚石之一。
现在语音识别的主流技术,由数据统计模型和算法组成。如果把数据统计模型比喻成一个仓库的话,那么算法则是一只机械手臂,从仓库中“抓”出合适的数据进行匹配。算法包括了对数据存放位置的判断等行为规则。数据越多,模型也就越大。
再简单一点说,当你说了一句话之后,算法会从数据库中抓取可能最符合你意思的那句解释。因此模型中包含的数据越多,通常也就意味着识别能力越强。但问题来了。就像没有一个仓库可以存放世界上所有的货品一样,没有一个模型可以解释所有数据。人们可以说任何话,因此数据变化无穷。
所以你应该不难理解,以往一些初级的语音控制类的应用,比如导航、语音拨号等等,人们要启动服务必须按照产品手册的说明,完整地说出固定格式的句子,才能被机器所识别。在这些应用中,数据库是简单而又原始的,在识别过程中也没有太多算法可言,它们只是负责“搬运”。
包括Siri和微软TTS在内,语音识别被发展到了眼下的第二个阶段:它们可以通过一定的规则和算法,将那些事先没有包含在数据统计模型中的“话”也解释出来,并且足够简单。
要实现这一点,仍然必须要有一个基础的数据库。在微软的TTS技术中,那几十分钟的“训练”,也就成了一种搜集数据建立数据库的方式。建立数据库的好处在于,“它不能够保证你肯定对,但它能够保证最可能对,或者说可能最好的答案。”微软亚洲研究院语音组首席研究员和负责人宋謌平对《第一财经周刊》说。
当训练完成之后,语音识别就变成了一个排序过程。当一段语音被输入,模型会通过自己的算法,从数据库中寻找匹配度最大的那一句。各家公司不同的“算法”,以及建立起来的基础数据库,成了它们各自在语音识别上的核心技术。
一段话是谁说的并不重要,更重要的是它的文本识别率。按照宋謌平的说法,一般能达到90%以上的识别率,大部分的用户都可以接受。
要提高准确率,除了数据库和算法,另一个必须解决的问题就是在噪音环境中更准确地分辨出输入的语 音。
眼下要解决噪音问题一般通过两种办法,一是在训练素材中包括噪音数据,让模型“记住”声音在不同环境下的差异,并在最终识别的时候,对噪音进行降噪处理;另外一种办法,则是识别同样噪声环境里的、没有经过降噪处理的语言。
在数据库有可能建立得比较大的情况下,搜集到足够的噪音数据、并在噪音中进行识别是一种最好的办法。但现实是,一般意义上的“噪音”太多。比如汽车的引擎、餐厅中的各种声音,本质上并不相同,但都会对说话人的语音输入造成干扰。对于手机而言,计算和存储能力都有限,建立庞大和复杂的模型并不现实,一般会直接使用降噪处理的办法。
早在1992年,一家名为Nuance的公司就看到了语音识别技术的商机。目前Nuance在美国已经开辟出两部分主要市场,包括咨询业务和医疗诊断记录的听写。2011财年,Nuance的营收共计13.18亿美元,其中产品销售及授权收入占比46%,产品的使用人数已有1600 万。
这家拥有近4000项专利的公司通过提供面向医疗、手机、汽车等企业的语音解决方案盈利。在美国昂贵的人工费用压力之下,包括美联航和大部分医院在内的机构,都开始选择语音听写引擎这样的识别设备,解决部分客户服务和书写病历的问题。
将默默埋头赚钱的Nuance推向前台的正是苹果。由于Siri使用了Nuance的语音识别引擎,这家公司开始获得越来越多的曝光。Siri曾在起步阶段使用过其他平台,但最终切换到了Nuance,不知这是否与Siri和Nuance同样出自斯坦福研究院有关。
曾有传言苹果与Nuance进行了几个月的接触,试图收购后者,但因其价值连城的专利,以及“在谈判时近乎于乔布斯级别难缠的CEO”,这场收购后来不了了之。苹果通过引入Nuance的语音识别,再将识别之后的信息与其他“知识和资讯类数据库”连接,在人机交互领域发起了一场革命。
2011年,通过云端访问Nuance的语音数据库的访问量达到了20亿次。眼下,它们也开始进入中国市场,最新版本的Siri将提供包括普通话、广东话和台湾地区国语的识别。不过中文与英文的识别引擎完全不同,需要重新开发。
在中国,还没有形成大规模的语音识别应用市场。国内语音市场占有60%以上份额的是科大讯飞,主要营收也只是来自于语音合成技术。它只是让电脑“念”出文本,在电信公司和银行的呼叫中心里较为常用。
微软创始人比尔·盖茨曾在2008年预测,五年之内互联网的搜索大部分将通过语音完成。现在看来,他或许乐观了一些。即使语音识别技术已经能够适于应用,真正的人机交互还有待于语音识别的更深层—语义识别技术的发展。
如果从字面上解释,语义识别的意义在于能让机器真正明白信息的含义。当机器听到一个名为“意大利菜”的关键词时,技术优良的语音识别可能会做出搜索意大利菜的反应、或者帮你预订好常去的餐厅,但语义识别则意味着,它还可能明白意大利菜会有什么样的口感、或者探知餐厅的氛围。
语义识别的终极梦想是让机器完全辨知人类说话的语义和情绪,就像“钢铁侠”的那位智能助手一样。
与发展相对迅速的语音识别不同,现有的语义识别仍然处于基础阶段,是一种机械的识别过程。“这一类的技术基本上还是填空法。”宋謌平说。当机器听到语音,进行识别之后,会从“语义数据库”中搜索出与其相匹配的关键词,与人的语义理解还有很大区别。
不过在一些垂直领域,语义识别已经获得了一定程度的发展和应用。中华英才网的控股公司、美国最大的人力资源网站Monster,最近开始在中国市场推出一种名为6Sense的语义搜索专利技术。它能将求职者的工作经历、技能、教育背景和所在地区,与目标职位匹配起来,再对他们进行分析、评级和排序,从而提高HR筛选简历的效率。在人力资源领域,“甲骨文”意味着那家国际知名的企业软件公司,而不是中国古代文字。如果仅仅是围绕在一个特定领域内,系统判断和识别的难度要小得多。
从长远来看,语义识别目前还有很多尚未突破的难点。最大的障碍事关情感,机器还没有办法理解人类的情感,它们只能通过语音信号的声学变化去捕捉人类的情绪,比如频率和时长这样的参数;此外,因为语言本身的模糊性,识别过程中的关键词抽取也经常出现不准确的现象。
小i机器人的创立者袁辉说,语义识别的下一步发展,需要长期的、系统的平台去处理每天进来的海量知识和信息,经过长期的集聚,形成工程化的产品,最后才能对知识进行筛选,甚至能够学习新的知识点。
看起来,“云”或许会是一个解决办法。因为云服务器可以容纳规模足够大的模型。如果能有一种算法,使这种模型具有学习能力,就可以将用户的语义在云端服务器中进行分析,再借助网络将指令和文本回传。