- 新一代人工智能与语音识别
- 马延周
- 10379字
- 2021-03-31 00:39:40
第1章 语音识别技术研究综述
语音识别技术的研究起始于20世纪50年代,由于受到当时计算能力的限制,直到20世纪70年代才出现了一些实验性研究成果。自21世纪以来,语音识别技术取得了许多突破,并得到了广泛的应用。当前,尽管语音识别技术相对成熟,但在大规模语音语料的实时采集与精准标注、特定语种的音素集设计与优化、语音识别的鲁棒性增强等方面依然面临诸多难题。尤其是在多语言网络环境下,语音识别的多语种拓展成为亟待研究的时代课题。本章将结合语音识别的研究进展及发展趋势,重点梳理国内外俄语连续语音识别技术的研究状况。
1.1 语音识别的定义与分类
1.1.1 语音识别的定义
众所周知,自动语音识别(Automatic Speech Recognition,ASR)是指让机器识别人说出的话,即将语音转换成相应的文本内容,然后根据内容信息执行人的某种意图。自动语音识别又称自动言语识别(1)(2),这项任务涉及将输入声学信号与存储在计算机内存的词表(语音、音节、词等)相匹配,而匹配个别语词的标准技术则要用输入信号与预存的波形(或波形特征/参数)相比较(模型匹配)。计算机需要一段训练期,期间它接受一个或多个说话人提供的一批口语例词,将其平均后得出典型的波形。同时,还需要考虑输入时的可变语速,大多采用动态时间调整技术,将输入信号的音段与模板中的音段匹配起来。ASR更富挑战性的目标是处理连续言语(即连续语音识别),这种处理需要向计算机提供语音和音素切分的典型模式的信息,以及形态和句法信息。
语音识别是电子工程专业的一个分支学科,它与语言语音学、生理学、心理学、计算机科学和人工智能等学科存在千丝万缕的联系。俄罗斯学者Р. К. Потапова将自动语音识别归属于言语控制论的研究范围,并且指出无限制的连续言语识别问题是语音识别研究中最困难的任务。毋庸置疑,利用先进计算技术、信号处理技术和声学技术而研制的语音识别系统能够满足众多领域的现实需要。
近年来,语音识别技术在交通运输、航空航天、公共安全、国防安全等诸多领域,尤其是在计算机、信息处理、通信与电子系统、自动控制等领域有着广泛的应用。随着相关技术的不断进步和应用需求的拓展,语音识别研究已扩展至多语种,并且识别的准确率也在不断提升,比如现在利用智能手机的语音助手不仅可以通话、发信息,还能够查询各类生活信息,甚至可以进行语音聊天等。
1.1.2 语音识别的分类
语音识别根据不同的方式有不同的分类方法。
(1)根据词汇量的大小,可分为小、中和大词汇量。小词汇量定义为100个词以下、中词汇量定义为100~500个词、大词汇量定义为500个词以上。词汇量越多,语音识别的难度越大。
(2)根据发音的方式,可分为孤立词、连接词和连续语音识别。孤立词识别不考虑上下文之间的关系,只识别孤立的词。连续语音识别要考虑上下文之间的相互影响,识别的对象是连续的、没有间断的语音流。连接词识别介于孤立词识别和连续语音识别之间,音与音之间有一定的停顿。
(3)根据说话人的不同,可分为非特定人和特定人。非特定人强调只识别其发音,不确定某个人;而特定人指仅识别某个特定的人,有确定的意图。
语音识别的实现难度最小的是特定人、小词汇量、孤立词的识别,而非特定人、大词汇量、连续语音的识别的实现难度最大。顺便指出,本书主要针对俄语大词汇量连续语音识别面临的关键问题展开研究。
1.2 语音识别技术的研究进展
1.2.1 语音识别技术的发展概况
1952年,美国贝尔实验室的Davis等人率先研制出了一个针对特定人的独立数字识别系统,该系统能够成功识别10个英语数字。1956年,Olson和Belar开发出的系统能够识别10个不同音节。1959年,Fry和Denes开发的识别系统能够识别9个辅音和4个元音,他们利用模板匹配技术和谱分析技术进一步改善了音素的识别精度。同期,在美国麻省理工学院(MIT)林肯实验室设计的ForgieandForgie元音识别系统利用带通滤波器能够针对非特定人识别10个元音。
20世纪60年代初,Faut和Stevens等人对语音生成的理论方法进行了探索性研究。1962年,东京大学的Doshita和Sakai通过分析语音的过零率识别不同的音素,设计开发了一种硬件实现的音素识别系统,同期,他们推出了对近30年来的语音识别技术产生了巨大影响的三个研究项目。RCA实验室的研究人员Martin提出了基于语音信号端点检测的时间归一化方法和能够解决语音信号非匀速问题的实用方法,显著降低了语音识别得分的变化;Reddy在连续语音识别领域进行的开创性研究在连续语音识别系统领域至今仍处于领先地位。
20世纪70年代,语音识别研究领域又取得了一系列重大突破,孤立词的识别已经成为可能。模板匹配思想和动态规划方法在语音识别中得到了应用,Itakura将低比特率条件下的语音编码的LPC技术应用扩展到了语音识别领域,AT&T贝尔实验室开展了针对非特定人语音识别的实验,生成非特定人模型的技术得到了普遍认同与广泛应用。
20世纪80年代的标志性成果就是统计建模方法,研究重点由模板匹配方法逐步向统计建模方法转变,特别是HMM被广泛应用到语音识别研究中。20世纪80年代中期,HMM模型被世界各国的语音识别研究者所熟悉和采纳,神经网络也成为了一个新的研究方向,该时期对神经网络技术的优点和局限性以及该技术与经典的信号分类方法之间的关系有了深刻的理解,由此促进了神经网络技术在语音识别领域的应用。20世纪80年代后期,人们开始研制大词汇量连续语音识别系统,主要研究成果多得益于美国DAPRA的支持,研究机构主要有CMU、林肯实验室、SRI、MIT和AT&T贝尔实验室。
进入20世纪90年代,语音识别研究的成果开始走出实验室,并且达到了商用目的。这一时期的研究热点包括鲁棒的语音识别、基于语音段的建模方法、声学语音学统计模型、隐马尔可夫模型与人工神经网络的结合等,而研究重点集中在听觉模型、讲者自适应、快速搜索识别算法及语言模型。同期,最大似然线性回归(MLLR)、最大后验概率准则估计(MAP)、以决策树状态聚类等算法被提出和应用,进一步提升了系统的性能,由此催生了一批商用语音识别系统,比如DragonSystem公司的Naturally Speaking、IBM公司的ViaVoice、Microsoft公司的Whisper、Nuance公司的NuanceVoicePlatform语音平台、Sun公司的VoiceTone等。在美国DARPA和NIST研究计划的推动下,更多新的语音识别任务被不断尝试并取得了更优的识别性能,当前国外的相关应用系统以Apple公司推出的Siri(3)为龙头。
21世纪以来,语音识别在技术突破和应用研究两方面不断深入。在置信度和句子确认方面提出了针对口语的健壮性语音识别,这些技术对处理复杂的病句非常有效。利用区分性训练技术训练声学模型也取得了显著的效果。在实际应用方面,语音搜索、综合音频和视频的多模态语音识别技术受到广泛关注。
随着计算机技术和信号处理技术的快速发展,健壮性语音识别已达到真正意义上的应用,能够实现自由的人机交互。当前,作为人机交互接口的关键技术,自动语音识别已成为信息技术领域最为关注的技术之一,并逐渐形成一个颇具竞争性的新兴高技术产业,自动语音识别系统的实用化水平将成为未来的研究重点。
1.2.2 国外俄语语音识别技术的研究进展
互联网的兴起使得语音和文本资源的大规模获取变得可行,语音识别技术在一些主流语言上的研究进展迅速,如英语、法语、西班牙语、汉语和德语等,而其他语言,尤其是东欧语言较少被关注。随着经济社会的发展和科技的进步,在俄罗斯、捷克、波兰、塞尔维亚、克罗地亚等俄语区正逐渐掀起俄语语音识别技术的研究热潮,尤其是语料库的建设、语言模型的建模等。
俄语是苏联各加盟共和国的官方语言,很多研究机构,如列宁格勒的SRI、莫斯科的自动化研究所、基辅的控制论研究所等都积极开展了俄语语音技术的相关研究。大多数语音项目是由苏联和各加盟共和国的科学院主管部门发起的,并且得到了克格勃和国防部的支持。在鼎盛时期,于1984年在新西伯利亚召开的国际会议约有800人参加。
苏联后期的语音识别技术的研究水平处于世界前列,但是由于实验环境和基础设施,特别是电子产业的相对薄弱,俄语语音识别原型系统的建立显著落后于其他西方国家。基于隐马尔可夫模型(HMM)和统计方法构建的声学模型对俄语连续语音自动识别的研究成效甚微。相对落后的计算技术水平为俄语语音识别的建模和关键技术的突破带来了严重阻碍,由此制约了俄语乃至整个斯拉夫语语音识别的研究进展。
苏联解体之后,在语音识别领域长期积累的技术和经验的优势迅速失去,大部分专家放弃了语音识别研究。直到20世纪90年代末,坚持下来的部分科研人员重新开始了对语音技术的研究。在俄罗斯政府相关部门的支持下,成立了一些研究机构(4)和公司以开展语音识别技术研发,如俄罗斯科学院、普希金俄语学院、莫斯科国立大学、圣彼得堡国立大学语音技术中心等。
21世纪以来,随着计算机网络技术的飞速发展,语音和语言数据资源已成为一个国家的战略性资源,俄罗斯政府也意识到了这一点,批准了俄语国家语料库建设项目。在俄罗斯联邦教育总署“俄语联邦目标计划”等基金的支持下,由俄罗斯最大的搜索引擎Yandex公司提供搜索技术和存储空间,俄语国家语料库建设始于2003年,并于2004年4月投入试用。截至2012年,该语料库的规模达到3.64亿词次,包括元文本标注、重音标注、词法标注、句法标注、语义标注等信息,包含多个子语料库,如深度标注库、平行文本库等。但是,俄语口语语音语料库的建设相对滞后且进展缓慢,在建库过程中存在标准不统一等问题,因此未能达到当初提出的目标:建成规模为1千万词次的口语语料库,要尽可能多地体现不同领域的对话。
俄语语音识别技术的研究在结合其本身发音特点的基础上取得了一些成果,不仅开展了对基础语音技术的研究,还开展了大词汇量、连续俄语语音识别的研究。从声学角度来看,俄语语音识别的最大困难在于识别和处理大量词汇中的无重音音节和自由重音词;从俄语构词和形态角度来看,存在大量的词汇变体,进而使得采用经典理论建立语音处理模型的难度增大。在建立声学模型和语言模型的过程中,需要特别考虑俄语自身的语言特点,对于声学模型而言,需要运用语言知识和基于统计的方法建立俄语音素集。
随着语音识别技术的不断发展,对语音识别研究的两个关键问题,即声学模型和语言模型的建立得到了高度重视,一些科研机构的研究者相继提出相关算法以提高模型的效率。在语言学领域,采用经典的N-gram统计语言模型需要从超大文本语料库中获取合理数量的单词形式。对于语言模型而言,从互联网等不同渠道收集文本语料,用统计分析的方法将训练文本数据和语法特征相结合,计算不同情况下N-gram中单词的频率,优化N-gram模型,以建立更好的N-gram模型。传统的N-gram模型也产生了诸多变种,为了提高识别的准确率,例如基于词类的N-gram模型由P. F. Brown和P. V. Desouza等学者于1992年提出,他们将词类信息引入N-gram模型的构建中,将候选词集按词类划分为子集,在计算第k个词出现的概率时乘以第k个词的词类出现的概率作为最终的概率。使用这种方法对3-gram模型进行改进,困惑度仅有小幅提升,而所需的存储空间则是原3-gram模型的1/3,处理效率得到了大幅提升。
为了解决词形变化与词序的问题,I. Oparin和A. Talanov于2005年提出了基于词干(stem)的语言建模方法,利用该方法能够缩减发音词典的规模。
2007年,A. Karpov与A. Ronzhin发现实时因子能够改善基于词素(morpheme-based)的语言模型,且识别效率不变,这一方法也可用于其他斯拉夫语,如斯洛文尼亚语等。
2011年,D. Vazhenina与K. Markov使用基于语音信息和统计信息的方法用于俄语语音识别,他们首先建立了一个拥有47个音素的集合,之后根据语音识别实验从混淆矩阵中得到的语音发音规则和统计结果确定可被合并的音素对,最后将音素数量缩减。实验结果表明,在词级的语音识别中使用缩减的音素集可以达到和初始大小的音素集相同的效果。2011年,Maxim Korenevsky、Anna Bulusheva、Kirill Levin使用SRILM Toolkit训练语言模型,重点探讨了对未知词的建模。他们认为语言模型应是“开放的”,应考虑一个句子中可能出现未知词的情况,并正确估算它们的出现概率,他们向SRILM的N-gram方法中加入了分类/聚类的方法,即将词集按类切分,并将包含分类结果的概率附加到词的概率中。
2012年,Sergey Zablotskiy和Alexander Shvets等主要讨论了基于音节的语言模型,他们提出了一种音节连接和误差修正的方法,该方法基于渐近概率遗传算法,通过确定音节确定句子。
2013年,D. Vazhenina与K. Markov将基于因子的语言模型(factored LM)用于俄语语音识别,首先确定能够为语言模型提供最有用信息的因子,随后尽量延长时间历史(time history)。该方法可以减少20%的困惑度,错误率相对减少到4%。E. Shin等针对俄语形态丰富和语序自由的特点提出了最大熵语言模型,其原型是基于类(class-based)的语言模型,该模型由于语言特征限制,这些特征需要从单词序列中提取,通过计算概率并使用最大熵准则进行训练,使错误率降低了1.2%。2013年,I. Kipyatkova和A. Karpov等在研究中使用了包含句法信息的统计语言模型,首先对训练语料进行句法分析和统计分析,之后将两种分析结果结合,生成随机语言模型,该方法能够考虑词与词之间的长距离语法关系。
2014年,俄语大词汇量连续语音识别的实验研究取得了重要成果,以A. Karpov和K. Markov为首的研究小组建立了一个ASR系统,该系统结合声学特征、词汇和语言模型,特别注重俄语词汇的特点,设计开发了一个发音词典工具。在声学模型的研究中,将俄语词汇的发音特点和统计方法相结合,提出了融合训练文本数据和语法属性的统计分析方法,建立了更好的多元模型,验证了47个音素的声学模型,并进行了大约20万字的语言模型训练。
面向大词汇量的俄语连续语音识别研究已经成为热点,正在全面展开,并取得了较为明显的成效。但是,由于俄语自身的复杂性制约着语音识别系统辨识的效率和实际效果,俄语连续语音识别系统在实际使用中还存在很大的问题,比如系统的抗干扰能力较差等。因此,有学者提出需要通过在语音信号处理阶段采用麦克风定向、自适应降噪、声学模型自适应等方法对系统进行改进。当前,俄罗斯非常重视拥有自主知识产权的大词汇量连续语音识别系统的研制,一些公司和研究机构密切跟踪国外语音识别系统的核心技术,如Viavoice、Nuance、Siri等。由此可见,俄语大词汇量连续语音识别是一个值得深入研究的课题。
1.2.3 中国俄语语音识别技术的研究进展
应当指出,中国在近十年来对中英文语音识别技术的研究取得了长足进展。在国家“863”计划的大力支持下,中国的语音识别技术已与国外的研究水平相当,并且在汉语和英语的识别效果上具有较大优势,掌握了相关核心技术,真正拥有了自主知识产权,达到了国际先进水平。中国开展语音识别技术相关研究的主要单位有清华大学电子工程系、中国科学院声学研究所、中国科学院自动化研究所、模式识别国家重点实验室等。科大讯飞公司在语音技术研究领域异军突起,目前已成为中国最大的智能语音技术提供商,在语音合成、语音识别、口语评测、自然语言处理等多项技术上拥有国际领先的成果。
随着移动互联网的日益普及,语音识别在移动终端上的应用日趋火热,语音对话机器人、语音助手等工具软件层出不穷,许多互联网公司纷纷加大了对语音技术的投入力度。在中国,中国科学院声学研究所、中国科学院自动化研究所、清华大学、北京大学、中国科学技术大学、科大讯飞、云知声、捷通华声、搜狗和百度等科研院所和科技企业都采用了最新的语音识别技术,推出了以中文和英文为主的相关语音产品,市场上其他的相关电子产品也直接或间接地嵌入了语音识别技术。
相较而言,中国对俄语连续语音识别技术的研究目前尚处于探索阶段,采用基于统计的方法对俄语连续语音识别进行研究,迄今尚未发现相关的文献记录。
1.3 语音识别系统的基本原理
基于统计的语音识别可以通俗地理解为找到最相似的、可能性最大的句子,而“最相似”和“可能性最大”在数学上用概率可以表示。因此,“找出听起来最相似、可能性最大的句子”就可理解为“找出概率最高的句子”。
当输入的语音信号经过MFCC(Mel-scale Frequency Cepatral Coefficients)特征提取后,得到可观察的矢量序列Y。假设可能的词条序列为W=w1w2…wN,则语音识别的任务是找到对应于Y的最可能的词条序列。利用统计模型解决大词汇量连续语音识别的基本思路是构造简单的语音产生概述模型,从特定的词条序列W中按概率产生Y。识别目标是基于Y按照合适的准则对词条序列进行解码。
根据MAP准则,解码后的应满足:

根据Bayesian准则,有:

由于独立性假设且搜索过程不变,故可略去,则由上式得出:

式(1-3)中,P(Y|W)是特征矢量序列Y在给定词条序列W下的条件概率,由声学模型所决定,反映了词条序列为W时的声学观察序列的概率。在连续语音识别中,使用词作为基本识别单元的效果并不好,因此对P(Y|W)的计算采用基于基本单元的语音统计模型。P(W)为W独立于语音特征矢量的先验概率,它是词条序列在相应语言库中出现的概率,由语言模型决定。
语音识别系统由三个基本部分组成:声学模型、发音词典和语言模型。采用解码器将三者结合,可将语音信号识别为相应文本,语音识别基本原理如图1-1所示(5)。

图1-1 语音识别基本原理
下面介绍特征提取、声学模型、语言模型和解码的相关概念。
1.3.1 特征提取
语音信号预处理中的一个关键步骤是特征提取,即从语音文件中提取出随着时间变化能够代表语音特征的特征序列。语音在特征提取之前需要进行降噪处理,以避免因信道及说话人等因素的影响。当前,常用的提取特征参数的方法是梅尔倒谱系数法。与其他方法相比,采用MFCC能够在最大程度上模拟人的耳朵对语音感知的特点,实验表明该方法具有更好的健壮性。
MFCC特征提取过程如图1-2所示。

图1-2 MFCC提取特征过程
输入端采用带宽为300Hz~3.4kHz的抗混叠滤波器进行预滤波,采样频率为8kHz,线性量化精度为16b,进行A/D变换。为了避免有限字长的影响,并使语音信号的频谱趋于平坦稳定,首先通过高能滤波器进行预加重,然后根据语音的短时平稳特性,以帧为单位,选取语音帧长为25ms、帧叠为10ms对语音进行分帧处理。为了减小吉布斯效应的影响,需要首先采用哈明窗对一帧语音进行加窗,然后使用快速傅里叶变换(FFT)将语音时域信号转变为信号的功率谱,并使用线性分布的一级三角窗滤波级对语音信号的功率谱进行滤波,以此近似模拟人耳的掩蔽效应。对三角窗滤波器组的输出求对数,输出近似于同态变换的结果,再去除各维度信号之间的相关性,映射到较低维的空间中,即离散余弦变换(DCT),由于高阶参数和低阶参数的局限性,需要进行谱加权以抑制其低阶和高阶参数。为了减小语音信道输入对各特征参数的影响,需要进行倒谱均值减(CMS),而在某些语音特征中加入动态特性的参数,如一阶、二阶参数,则可以提高系统的性能。在使用MFCC进行参数提取时,通常采用一阶差分参数和二阶差分参数(6)。
1.3.2 声学模型
声学模型的主要功能如下。对于观测语句,能够针对不同的发音可能给出对应的概率或相似度,一般使用概率密度函数近似。而声学模型训练就是根据训练语料中给定的观测语句以及其对应的正确标注,在训练过程中调整声学模型参数,使得正确标注和其对应的发音产生最大的后验概率。
基于HMM的建模方法是对声学单元进行建模,每个声学单元模型均由连续的多个状态(state)及状态之间的转移(transition)组成。由于语音信号是一个时间序列,所以在语音的声学模型中,状态转移只允许停留在原状态或跳至邻接的下一状态。其中,每一个状态对一帧声学特征的观测概率(Observation Probability)均采用高斯混合模型(Gaussian Mixture Model,GMM)表示。
图1-3是一个具有6个状态的HMM模型,每个状态中都有每帧形成的语音特征向量的观测概率分布。另外,每个状态也有相对应的状态转移概率,用来控制下一个时间点是要停留还是转移到下一个状态。
根据语音特征参数是连续或离散的,HMM每个状态中的观测概率估计方式可分为离散型、半连续型和连续型。目前的语音识别系统主要以连续型或半连续型为主。就连续型而言,为了减少估算观测概率的参数量以及任何概率分布理论上皆可有多个高斯分布用来逼近的特性,一般都是采用高斯混合分布近似此概率分布。

图1-3 隐马尔可夫模型示意图
一般要对每个声学单元建立一个HMM模型。声学单元一般可以分为句子、词、音节、音素等。声学单元的选取一般要遵从以下两条规则:声学特性要尽可能稳定;数量不能太多。这两者往往相互矛盾,音节、音素等小的声学单元虽然数量符合要求,但是声学稳定性不足;句子、词等声学单元的稳定性虽然强于音素和音节,但是数量太多,导致没有足够的训练数据对模型进行训练,从而降低了模型的健壮性。因此,根据不同的识别任务,往往要在二者之间寻求平衡。一般来说,中小词表识别可以选择较大的声学单元,而大词表识别往往选择音素作为声学单元。
在面向汉语的大词汇量连续语音识别中,声母和韵母被定义为最佳的声学基本识别单元。同时,连续语音中存在协同发音的现象,单音子(monophone)作为声学建模单元在不同上下文的情况下往往有很大区别。声学建模一般采用上下文相关的声学单元,如双音(biphone)或者三音素(triphone)。
1.3.3 语言模型
声学模型的特点决定了其只能识别某一段语音信号的音素序列,而不能确认其对应的词,而且句子中的词语与词语的连接存在一定的语法规则,因此需要语言模型解决这些问题。由于语言模型的概率分布是离散型的,在估计语言模型的概率时,并不使用概率密度分布函数,而是直接估算词条序列的概率函数P(w1,w2,…,wN),其中w1,w2,…,wN为词条序列包含的词。但整个词条序列的估计参数会随着词条数量的增加呈指数增长,因此会遇到训练语料数据稀疏的问题。为解决此问题,将语言模型的公式展开为概率的连乘式,再利用n-1阶的马尔可夫假设做简化,如式(1-4)所示。

其中,N为词条的个数,wk-1,wk-2,…,wk-N+1则是wk的历史词条序列,式(1-4)即常见的N-grams语言模型表示法。为减少参数量的复杂度,通常使用二元(bigram)模型或三元(trigram)模型(对应于一阶和二阶马尔可夫假设)。如同声学模型,语言模型也需要大量的文本语料作为训练集。N-grams语言模型的训练方法有最大化相似度估算法、最大熵值法、神经网络法等。
由于训练语言模型的语料无法达到无限大,所以训练语料中不能包含所有合理词条的搭配关系。为了处理某些词条在训练语料中没有出现的问题,一般利用数据平滑技术对概率原本为零的部分进行平滑处理,以使模型参数的概率分布更加均匀。
1.3.4 解码
给定声学模型的参数为λ,观察序列为O,希望找到λ中的最佳状态序列X=(x1,x2,…,xT),使其对应O的概率最大,应满足

这一过程是HMM的一个基本问题。通过给定已知的观察序列O和模型参数λ寻找最优的不可观测的状态序列,其实质就是解码问题。其中,最为经典的解决方案是采用维特比(Viterbi)算法,该算法也是动态规划在HMM中的重要应用。具体解码过程如下。
Viterbi算法。
定义δt(i)为t时刻沿着一条路径x1,x2,…,xt且xt=i输出观察序列o1,o2,…,ot的最大概率,即

①初始化。
δ1(i)=p(x1=i,o1|λ)=πibi(o1),1≤i≤N
回溯变量
ψ1(i)=0,1≤i≤N(1-7)
②递归。


③终结。


④回馈状态序列。

通过Viterbi解码算法,可在t时刻获得使δt(j)值最大的隐含状态,然后通过回溯变量ψt(j)反向找出最优的状态序列,即得到最终的解码结果。此外,搜索空间随着时间的增加呈指数增长,常采用剪枝技术终止寻找一些概率较低的词条序列,以减少其计算的复杂度和内存使用量。
图1-4是Viterbi算法的一个图形示例,展示了识别时模型内部的搜索过程。

图1-4 Viterbi算法简单示意图
1.4 语音识别技术研究所关注的关键问题
当前,语音识别技术发展迅速,衡量语音识别系统优劣的最直观标准就是识别率,而决定识别率的因素有很多种,如声学模型、语言模型、发音词典、声学模型训练语料的规模、语言模型训练语料的规模及纯净度、字音转换的效率、拉丁转换的效率、语音语料的采集环境、发音词典的规模、文本语料的采集领域、识别应用的环境等。本书主要针对其中的关键问题进行研究,例如声学模型的建立、语言模型的建立、模型训练语料的预处理、俄语语音识别原型系统的建立等。
1. 声学模型的建立
声学模型(Acoustic Model,AM)的主要功能是能够针对观测语句不同的发音可能给出对应的概率或相似度,一般使用概率密度函数近似。声学模型训练则主要根据训练语料中给定的观测语句以及其对应的正确标注,在训练过程中调整声学模型参数,使得正确标注和其对应的发音产生最大的后验概率。因此,声学模型单元的选择是重点研究的内容。声学模型单元增多,用于训练的数据就会成倍增长,容易导致声学模型出现稀疏。
2. 语言模型的建立
语言模型(Language Model,LM)用来建立一个概率的分布,能够描述给定词条序列在自然语言中出现的概率。计算机根据统计语言模型的概率参数,估计出自然语言中每个句子出现的可能性,而不仅仅是简单地判断这个句子是否符合语法。在语音识别中,通过对声学模型识别结果的N-gram分析给出出现概率最大的语句。而语言模型最关注的内容是模型的平滑、剪枝与优化,以期在尽可能小规模的模型下尽可能降低系统的错误识别率。
3. 语料的加工处理
声学模型和语言模型的建立都需要大规模的语料作为支撑,特别是声学模型训练所需的语料不仅规模庞大,而且要求标准较高,目前多采用人工标注的方法进行处理,存在速度慢(一般为10倍实时)、效率低、质量难于控制等问题。在较短时间内高效、高质量地获取大规模标注语音/文本语料数据是连续语音识别系统研发的重要基石。
4. 连续语音识别原型系统
连续语音识别系统一直都是研究的热点,由于需要语音学、语言学、计算机学、信号处理学、统计分析学等领域的知识,众多研究者均被拒之门外。近年来,国内外许多研究者通过会议研讨、论文交流、开源代码发布等多种方式积极推进了语言识别技术的纵深研究,例如InterSpeech、ICASSP、NCMMSC、CMU Sphinx、HTK、Julius、Kaldi、Microsoft、CNTK、Simon等,降低了技术门槛,让众多感兴趣的研究者都可以有机会深入语音识别系统的研究与应用中。
本章小结
本章首先介绍了语音识别技术的定义和分类,回顾了语音识别技术在国内外的研究历史,对语音识别技术的研究现状进行了分析,重点评述了俄语连续语音识别技术的研究进展、俄语语言模型和声学模型的研究成果;然后,阐述了语音识别系统的基本原理、语音特征提取的理论方法、声学模型和语言模型的建模方法与解码算法;最后,指出了语音识别技术研究需要关注的关键问题,如语音建模和语言建模及其优化、大规模语音和文本语料的加工处理和原型系统的设计开发等,进一步明确了本研究的目标和主要任务。
(1) http://baike.baidu.com/view/652891.htm.
(2) https://en.wikipedia.org/wik/iSpeech_recognition.
(3) https://www.apple.com/ios/siri/.
(4) http://www.ras.ru/、http://www1.pushkin.edu.ru/、http://www.msu.ru/、http://spbu.ru/.
(5) http://www.afzhan.com/Tech_news/Detail/99675.html.
(6) http://baike.baidu.com/view/587944.htm.