MATLAB软件包括五大通用功能,数值计算功能(Nemeric)、符号运算功能(Symbolic)、数据可视化功能(Graphic)、数字图形文字统一处理功能(Notebook)和建模仿真可视化功能(Simulink) 运用MATLAB 的数字信号处理功能, 采集语音信号, 并对语音信号进行预加重,加窗分帧和端点检测、滤波及变换处理,观察其时域和频域特性。
基于统计的语音识别方法分析报告
一、摘 要 1
二、语音识别发展史及现状 1
(1)国外研究历史及现状 1
(2)国内研究历史及现状 2
三、语音识别的几种基本方法 3
(1)基于语音学和声学的方法 3
(2)模板匹配的方法 4
(3)神经网络的方法 6
四、基于统计的方法分析 6
(1)语音信号预处理与特征提取 7
(2)声学模型与模式匹配 10
(3)语言模型与语言处理 13
五、已有孤立词系统分析 13
(1)前端信号处理 13
(2)声音模型处理 14
(3)拼音汉字处理 19
六、主要参考文献 19Page 1
一、摘 要
概括语音识别的发展史及现状,总结语音识别的基本方法,并对基于统计的
方法作主要的论述, 包括语音信号预处理和特征提取的分析, 隐马尔可夫模型的
分析与在语音识别中的应用分析, 模型的训练和识别方法分析等等, 最后介绍已
有孤立词系统。
二、语音识别发展史及现状
(1)国外研究历史及现状
语音识别的研究工作可以追溯到 20 世纪 50 年代 AT&T 贝尔实验室的 Audry
系统,它是第一个可以识别十个英文数字的语音识别系统。
但真正取得实质性进展,并将其作为一个重要的课题开展研究则是在 60 年
代末 70 年代初。这首先是因为计算机技术的发展为语音识别的实现提供了硬件
和软件的可能,更重要的是语音信号线性预测编码( LPC)技术和动态时间规整
(DTW)技术的提出,有效的解决了语音信号的特征提取和不等长匹配问题。
这一时期的语音识别主要基于模板匹配原理, 研究的领域局限在特定人, 小词汇
表的孤立词识别, 实现了基于线性预测倒谱和 DTW 技术的特定人孤立词语音识
别系统;同时提出了矢量量化 (VQ) 和隐马尔可夫模型 (HMM) 理论。
随着应用领域的扩大,小词汇表、特定人、孤立词等这些对语音识别的约束
条件需要放宽, 与此同时也带来了许多新的问题: 第一,词汇表的扩大使得模板
的选取和建立发生困难;第二,连续语音中,各个音素、音节以及词之间没有明
显的边界,各个发音单位存在受上下文强烈影响的协同发音( Co-articulation )
现象;第三,非特定人识别时, 不同的人说相同的话相应的声学特征有很大的差
异,即使相同的人在不同的时间、生理、心理状态下,说同样内容的话也会有很
大的差异;第四,识别的语音中有背景噪声或其他干扰。 因此原有的模板匹配方
法已不再适用。
实验室语音识别研究的巨大突破产生于 20 世纪 80 年代末:人们终于在实验
室突破了大词汇量、 连续语音和非特定人这三大障碍, 第一次把这三个特性都集
成在一个系统中,比较典型的是卡耐基梅隆大学 (Carnegie Mellon University) 的Page 2
Sphinx 系统,它是第一个高性能的非特定人、大词汇量连续语音识别系统。
这一时期,语音识别研究进一步走向深入,其显著特征是 HMM 模型和人工
神经元网络 (ANN) 在语音识别中的成功应用。 HMM 模型的广泛应用应归功于
AT&T Bell 实验室 Rabiner 等科学家的努力,他们把原本艰涩的 HMM 纯数学模
型工程化 ,从而为更多研究者了解和认识,从而使统计方法成为了语音识别技术
的主流。
统计方法将研究者的视线从微观转向宏观,不再刻意追求语音特征的细化,
而是更多地从整体平均 (统计)的角度来建立最佳的语音识别系统。 在声学模型
方面,以 Markov 链为基础的语音序列建模方法 HMM(隐式 Markov 链)比较
有效地解决了语音信号短时稳定、 长时时变的特性, 并且能根据一些基本建模单
元构造成连续语音的句子模型, 达到了比较高的建模精度和建模灵活性。 在语言
层面上,通过统计真实大规模语料的词之间同现概率即 N 元统计模型来区分识
别带来的模糊音和同音词。 另外,人工神经网络方法、 基于文法规则的语言处理
机制等也在语音识别中得到了应用。
20 世纪 90 年代前期,许多著名的大公司如 IBM、苹果、 AT&T 和 NTT 都
对语音识别系统的实用化研究投以巨资。语音识别技术有一个很好的评估机制,
那就是识别的准确率,而这项指标在 20 世纪 90 年代中后期实验室研究中得到
了不断的提高。比较有代表性的系统有: IBM 公司推出的 Via Voice 和 Dragon
System 公司的 Naturally Speaking, Nuance 公司的 Nuance Voice Platform 语音
平台,Microsoft 的 Whisper, Sun 的 VoiceTone 等。
其中 IBM 公司于 1997 年开发出汉语 ViaVoice 语音识别系统,次年又开发
出可以识别上海话、 广东话和四川话等地方口音的语音识别系统 ViaVoice’98 。
它带有一个 32 ,000 词的基本词汇表,可以扩展到 65 ,000 词,还包括办公常用
词条,具有“纠错机制”,其平均识别率可以达到 95 %。该系统对新闻语音识别
具有较高的精度,是目前具有代表性的汉语连续语音识别系统。
(2)国内研究历史及现状
我国语音识别研究工作起步于五十年代,但近年来发展很快。研究水平也从
实验室逐步走向实用。 从 1987 年开始执行国家 863 计划后,国家 863 智能计算
机专家组为语音识别技术研究专门立项, 每两年滚动一次。 我国语音识别技术的
研究水平已经基本上与国外同步,在汉语语音识别技术上还有自己的特点与优Page 3
势,并达到国际先进水平。中科院自动化所、声学所、清华大学、北京大学、哈
尔滨工业大学、上海交通大学、中国科技大学、北京邮电大学、华中科技大学等
科研机构都有实验室进行过语音识别方面的研究, 其中具有代表性的研究单位为
清华大学电子工程系与中科院自动化研究所模式识别国家重点实验室。
清华大学电子工程系语音技术与专用芯片设计课题组, 研发的非特定人汉语
数码串连续语音识别系统的识别精度, 达到 94.8%(不定长数字串) 和 96.8%
(定长数字串)。在有 5%的拒识率情况下,系统识别率可以达到 96.9%(不
定长数字串)和 98.7%(定长数字串),这是目前国际最好的识别结果之一,
其性能已经接近实用水平。 研发的 5000 词邮包校核非特定人连续语音识别系统
的识别率达到 98.73%,前三选识别率达 99.96%;并且可以识别普通话与四
川话两种语言,达到实用要求。
中科院自动化所及其所属模式科技 (Pattek) 公司 2002 年发布了他们共同推
出的面向不同计算平台和应用的“天语”中文语音系列产品 ——Pattek ASR,
结束了中文语音识别产品自 1998 年以来一直由国外公司垄断的历史。
三、语音识别的几种基本方法
一般来说 ,语音识别的方法有三种: 基于声道模型和语音知识的方法、 模板匹
配的方法以及利用人工神经网络的方法 [1]
。
(1)基于语音学和声学的方法
该方法起步较早,在语音识别技术提出的开始,就有了这方面的研究,但由
于其模型及语音知识过于复杂,现阶段没有达到实用的阶段。
通常认为常用语言中有有限个不同的语音基元, 而且可以通过其语音信号的
频域或时域特性来区分。这样该方法分为两步实现:
第一步,分段和标号
把语音信号按时间分成离散的段,每段对应一个或几个语音基元的声学特
性。然后根据相应声学特性对每个分段给出相近的语音标号
第二步,得到词序列
根据第一步所得语音标号序列得到一个语音基元网格, 从词典得到有效的词
序列,也可结合句子的文法和语义同时进行。Page 4
(2)模板匹配的方法
模板匹配的方法发展比较成熟, 目前已达到了实用阶段。 在模板匹配方法中,
要经过四个步骤:特征提取、模板训练、模板分类、判决。常用的技术有三种:
动态时间规整 (DTW)、隐马尔可夫( hmm)理论、矢量量化( VQ)技术。
1、动态时间规整 (DTW)
语音信号的端点检测是进行语音识别中的一个基本步骤, 它是特征训练和识
别的基础。所谓端点检测就是在语音信号中的各种段落 (如音素、音节、词素) 的
始点和终点的位置, 从语音信号中排除无声段。 在早期,进行端点检测的主要依
据是能量、振幅和过零率。但效果往往不明显。 60年代日本学者 Itakura提出了
动态时间规整算法 (DTW:Dynamic Time Warping) 。算法的思想就是把未知量
均匀的升长或缩短 ,直到与参考模式的长度一致。在这一过程中,未知单词的时
间轴要不均匀地扭曲或弯折,以使其特征与模型特征对正。
动态时间规整是将时间规整和距离测度结合起来的一种非线性规整技术。 设
测试语音参数共有 N帧矢量,而参考模板共有 M帧矢量,且 N ≠M。 要找时间
规整函数 j = w(i) ,使测试矢量的时间轴 i 非线性地映射到模板的时间轴 j 上,
并满足:
式中d[ T(i) ,R(ω(i) ) ]是第 i 帧测试矢量 T(i) 和第 j 帧模板矢量 R(j) 之间的距
离测度。 D 则是在最优情况下的两矢量之间的匹配路径。 一般情况下, DTW采
用逆向思路 ,从过程的最后阶段开始,逆推到起始点,寻找其中的最优路径。
2、隐马尔可夫法 (HMM)
隐马尔可夫法 (HMM) 是70年代引入语音识别理论的,它的出现使得自然语
音识别系统取得了实质性的突破。 HMM 方法现已成为语音识别的主流技术, 目
前大多数大词汇量、连续语音的非特定人语音识别系统都是基于 HMM模型的。
HMM是对语音信号的时间序列结构建立统计模型,将之看作一个数学上的双重
随机过程:一个是用具有有限状态数的 Markov 链来模拟语音信号统计特性变化
的隐含的随机过程, 另一个是与 Markov 链的每一个状态相关联的观测序列的随
机过程。前者通过后者表现出来, 但前者的具体参数是不可测的。 人的言语过程
实际上就是一个双重随机过程, 语音信号本身是一个可观测的时变序列, 是由大
脑根据语法知识和言语需要 (不可观测的状态 ) 发出的音素的参数流。可见 HMM
))] ( ( ), ( [ min
1 ) (
i w R i T d D
M
i
i wPage 5
合理地模仿了这一过程,很好地描述了语音信号的整体非平稳性和局部平稳性 ,
是较为理想的一种语音模型。
HMM语音模型λ (π,A ,B) 由起始状态概率 (π) 、状态转移概率 (A) 和观测
序列概率 (B) 三个参数决定。π揭示了 HMM 的拓扑结构, A 描述了语音信号随
时间的变化情况, B 给出了观测序列的统计特性。
经典HMM语音识别的一般过程是:用前向后向算法 (Forward - Backward)
通过递推方法计算已知模型输出 O 及模型λ = f (π,A ,B) 时的产生输出序列的
概率P(O|λ),然后用 Baum-Welch 算法,基于最大似然准则 (ML) 对模型参数
λ(π,A ,B) 进行修正,最优参数λ *的求解可表示为λ *= argmax{P(O| λ) } 。最
后用Viterbi算法解出产生输出序列的最佳状态转移序列 X。所谓最佳是以 X 的
最大条件后验概率为准则,即 X =arg max{P(X| O , λ) }。
3、矢量量化 (VQ)
矢量量化 (Vector Quantization) 是一种重要的信号压缩方法。与 HMM相比,
矢量量化主要适用于小词汇量、 孤立词的语音识别中。 其过程是: 将语音信号波
形的 k 个样点的每一帧, 或有k 个参数的每一参数帧, 构成 k 维空间中的一个
矢量,然后对矢量进行量化。量化时,将 k 维无限空间划分为 M 个区域边界,
然后将输入矢量与这些边界进行比较, 并被量化为 “距离”最小的区域边界的中
心矢量值。矢量量化器的设计就是从大量信号样本中训练出好的码书, 从实际效
果出发寻找到好的失真测度定义公式, 设计出最佳的矢量量化系统, 用最少的搜
索和计算失真的运算量, 实现最大可能的平均信噪比。 失真测度主要有均方误差
(即欧氏距离 ) 、加权的均方误差、 Itakura2Saito 距离、似然比失真测度等。初始
码书的生成可以是随机选取、分裂生成法、乘积码书法 [4]
。在选定了失真测度
和初始码书后,就用 LBG算法,对初始码书进行迭代优化 ,一直到系统性能满足
要求或不再有明显的改进为止。
核心思想可以这样理解:如果一个码书是为某一特定的信源而优化设计的,
那么由这一信息源产生的信号与该码书的平均量化失真就应小于其他信息的信
号与该码书的平均量化失真,也就是说编码器本身存在区分能力。
在实际的应用过程中,人们还研究了多种降低复杂度的方法,这些方法大致
可以分为两类: 无记忆的矢量量化和有记忆的矢量量化。 无记忆的矢量量化包括
树形搜索的矢量量化和多级矢量量化。 [3]Page 6
(3)神经网络的方法
利用人工神经网络的方法是 80年代末期提出的一种新的语音识别方法。 人工
神经网络 (ANN)本质上是一个自适应非线性动力学系统, 模拟了人类神经活动的
原理,具有自适应性、并行性、鲁棒性、容错性和学习特性,其强的分类能力和
输入-输出映射能力在语音识别中都很有吸引力。但由于存在训练、识别时间太
长的缺点,目前仍处于实验探索阶段。
由于ANN不能很好的描述语音信号的时间动态特性, 所以常把 ANN与传统识
别方法结合,分别利用各自优点来进行语音识别。
ANN与DTW:
ANN纳入DTW框架中的最简单方法就是利用多层感知器模型 (MLP)计算
DTW搜索中的局部路径得分。
ANN与HMM:
1) 多层感知器网络来估计隐马尔可夫模型的状态概率输出的方法
2) BP算法实现 HMM模型参数的重估
3) 利用自组织神经网络 Kohonen 的学习矢量量化算法训练产生矢量量
化码本
四、基于统计的方法分析
目前几乎所有成功的语音识别方法都是基于统计的、 概率的或信息理论的方
法。其中较具代表性的方法有矢量量化法 (VQ)和隐马尔可夫模型法 (HMM)。VQ
法是由 Shore 和 Burton 首先提出的,其主要优点是无需进行时间规正或动态
时间伸缩( DTW) 。由于语音特征是时间序列,所以 Burton 等人又提出了分段
VQ 的方法,它可以看成是 VQ 法和 DTW 的统合。然而 DTW 不是一种统计
概率的方法。 HMM 作为统计概率模型已经被证明是一种很好的语音识别模型。
本文主要介绍使用 HMM 统计概率模型的语音识别方法。
一个完整的基于统计的语音识别系统可大致分为三部分:Page 7
(1) 语音信号预处理与特征提取
(2) 声学模型与模式匹配
(3) 语言模型与语言处理
(1)语音信号预处理与特征提取
语音识别一个根本的问题是合理的选用特征。选择的标准应体现对于异字
音,相应特征间的距离应大,而对于同字音,彼此间距离应小。若以前者距离与
后者距离之比作为优化准则用的“目标量” [3]
,则应使此量最大。
一般将语音信号的特征向量分为两类:第一类为时域特征向量,通常将帧语
音信号的各个时域采样值直接构成一个向量。 第二类为变换域特征向量, 即对一
帧语音信号进行某种变换后产生的特征向量。 前者的优点在于计算简单, 缺点是
不能压缩维数且不适于表征幅度谱特性。 与此对应,各种变换域特征向量的计算
比较复杂,但能从不同的角度反映幅度谱的特征。
特征的选取取决于具体的系统,下面的特征是有代表性的:
1) 幅度(或功率)
2) 过零率
3) 邻界带特征矢量
4) LPC 预测系数特征矢量
5) LPC 倒谱特征矢量
6) Mel 倒谱参数
7) 前三个共振峰 F1、F2、F3
幅度是端点检测的主要依据,也用于区分元音和辅音。过零率可以用来表示
擦音和齿音。高分辨率的谱信息 (即共振峰、 LPC 参数或滤波器组输出 ) 提供共
振峰和共振峰变迁的信息。
特征提取完成从语音信号提取出对语音识别有用的信息, 它对语音信号进行
分析处理,去掉与语音识别无关的冗余信息, 获得影响语音识别的重要信息。 对
于非特定人语音识别来讲, 希望特征参数尽可能多的反映语义信息, 尽量减少说
话人的个人信息。从信息论角度讲,这是信息压缩的过程。一般而言,由于倒频
谱(cepstrum)有着能将频谱上的高低频分开的优点, 因此被广泛地应用在语音
识别的研究上,例如过去常用的线性预测编码导出的倒频谱参数( LPCC)[4][6]
和梅尔刻度式倒频谱参数( MFCC)[4]
等都是常用的语音特征。从目前使用的情
|