APP下载

基于HMM模型的语音识别系统的研究

2017-11-03周扬孙玲玲马德

物联网技术 2017年10期
关键词:语音识别连接词

周扬++孙玲玲++马德

摘 要:文中首先提出汉语语音识别中存在的关键问题,通过对相关算法的研究,对技术进行改进,从而使语音的识别率更高、计算时识别模型收敛更快。文中使用Matlab进行程序编写,在HMM上构建了汉语数字语音识别系统,对比了HMM对于孤立词与连接词的辨别能力,同时还对比分析了其与DTW对于孤立词的识别能力,发现两种方法各有优缺点,并针对其不足之处提出了改进方法。

关键词:语音识别;HMM算法;Matlab;孤立词;连接词

中图分类号:TP39;TN912 文献标识码:A 文章编号:2095-1302(2017)10-00-03

0 引 言

当今社会人与人之间交流的方式很多,如视频、语音等。其中,语音是人们使用最频繁、最方便也是最快捷的沟通方式。语言是人类具备的一种技能,声音是语言能够存在的基础,人们依靠声音发出信息、实现相互沟通。语音信号是人类表达内心想法与情绪的重要方式。语音识别技术可以帮助促进人类之间的交流(HHC)。过去,人们通过不同的语言交流时,必须要一个人作为翻译,极大地限制了人们的可选交流对象,同时也抑制了交流机会。此外,语音识别技术也可以极大地提升人机交流(HMC)能力,包括语音搜索,个人数码助理,游戏等交互系统。语音识别技术涵盖多门学科,如今作为一种信息传递方式在信息研究领域受到较大关注。与其相似的科学技術还有语音学、语言学、数理统计学和神经生理学等。

1 语音识别系统的设计与说明

基于HMM的汉语数字语音识别系统如图1所示。

一个马尔科夫链q1T=q1,q2,…,qT,可被转移概率完全表示,定义为:

如果这些转移概率与时间t无关,则得到其次马尔科夫链。当一个离散状态的值被化为一个新的随机变量(离散或连续)时,马尔科夫链一般会被化为(离散或连续)隐马尔科夫序列,或当它用于表征或接近真实世界数据序列的统计特性时便被一般化为隐马尔科夫模型。作为马尔科夫链的一种扩展,隐马尔科夫序列在各个状态中引入了一种随机性。隐马尔科夫序列在马尔科夫链的基础上,用一个观测的概率分布与每一个状态对应,而非确定的观察值或事件。这样的马尔科夫链序列引入了双重随机性,使得马尔科夫链不再能被直接观测。隐藏在马尔科夫序列下的马尔科夫链只能通过一个单独的观测概率分布函数表现出来。假设观察概率分布为P(ot|s(i)),i=1,2,…,N。

若ot是离散的,每个状态对应的概率分布用来描述观察{v1,v2,…,vk}的概率:

在语音处理问题中,我们用HMM下的PDF(Probability Density Function,PDF)来描述连续观察向量的概率分布,其中多元高斯分布是最成功,应用最广泛的PDF:

在混合高斯HMM中,参数集Λi由混合成分的权重ci,m,高斯分布的均值向量与高斯分布协方差矩阵组成。

本文采用EM算法来训练HMM模型的参数。当统计模型中含有潜在或隐藏的随机变量时,最大似然度估计就会变得困难,而EM算法则显得更有效率。EM算法能使得我们避免直接优化观测数据o的PDF,因为直接计算太困难。EM算法的主要特征包括以下几点:

(1)它提供的仅是一个局部,而非全局针对局部观测值的似然度最优化结果。

(2)算法需要提供针对未知变量的初始化值,同时对大部分迭代过程来说,一个好的初始化值能够带来更好的收敛和最大化似然度估计结果。

(3)对完整的数据集的选择需要根据实际情况进行变更。

本文用于解码HMM状态序列所采用的算法是维特比算法(Viterbi Algorithm),该算法属于动态规划运算法则。这种算法常用于马尔科夫信息源上下文和隐马尔科夫模型,主要作用是找出维特比路径-隐含状态序列,这类序列生成观测事件的概率最高。“维特比路径”和“维特比算法”是专业用语,这两种方法主要用于找出对动态规划算法进行解释的结果。动态规划算法可以用在统计句法分析中,其能够大大提高寻找出与文章关联性较弱的派生字符串,这一过程也称为“维特比分析”。

现在假定隐马尔科夫模型(HMM)状态空间为S,部分初始状态i可能转化为状态j,这种可能性用概率ai,j表示。y1,…,yt表示通过观测与分析得到的输出。最终形成的结果中概率最大的状态序列x1,…,xt通过递推关系求解:

其中Vt,k为概率,表示范围在t之前的最终状态为k的观测结果中所对应的状态序列可能性的最大概率。操作过程中后向指针进行实时储存,以防止使用状态x遗失,从而得到维特比路径。在此强调函数Ptr(xt,t),其反馈信息中如果t>1则运算求解Vt,k所使用的x值,若t=1则计算k。如下式:

使用argmax的标准定义。算法的复杂度为O(T×|S|2)。

本文采用的维特比为对数形式,计算中出现的所有概率均换算为对数形式。其中,当概率为0时,对其取对数会导致下溢。针对这一问题,本研究将维特比程序进行了改进,建立find函数,找出不为0的元素的下标,利用下标为trans矩阵中的各个元素设定数值,从而避免出现对0取对数的错误而导致警报。

2 实验验证

2.1 实验过程

首先通过麦克风与PC机手机录音机录入语音信号。参数设置如下:采样频率与精度分别取11 025 Hz与16 b。建立多个内容相同的语音样本,这一步骤通过要求多人依次读出 “0~9”的各个数字并进行录入实现,获取的样本存放在语音库中,用于孤立数字识别。连续读出5~7的样本,通过处理后得到的波形如图2所示。

进行端点检测,在端点检测之前,需要对采样后的语音进行分帧操作。通过这项处理后才能算出短时能量和过零率参数,之后,通过过零率的端点检测算法对端点进行检验测试。求解短时能量前必须对语音信号进行处理:将信号送入一阶滤波装置,过滤掉低频部分以突出高频信息,之后对信息进行分帧。在本研究中,将能量取绝对值以表示平均幅度。部分结果如图3所示。endprint

选取LPCC参数、MFCC参数作为特征参数,两者均为12阶。另外对两者进行一阶差分(共24维)计算,求得的参数也作为特征参数。求解MFCC参数时,人的发声系统被视作由滤波器组成的系统,MFCC参数就是这其中具有不同功能的滤波器参数。

依次求解序列组中各参数的输出概率,并进行相加得到总概率,叠加过程中设定一参数作为运算中止依据,当概率的相对变化小于该参数时运算不再继续。本研究中选用除0之外的自然数并将其自由组合为多组,因此需要建立单元数组,规格为1行10列。之后启动录音设备进行录音,再通过循环程序将录入的语音信号导入数组中,数组中包含了观察序列的信息。然后在Matlab软件中使用训练函数em train进行训练仿真,最终得到一组结构数组,其中各元素即每一个数字均为HMM型构造。图4所示为运算收敛后的最终结果。

将HMM模型的参数与语音样本观察序列导入识别程序,通过计算求解得到这一序列成功输出的概率,同时提供输出的最优路径。HMM通常采用维特比算法进行识别,包含这一算法的软件有Matlab,算法存在于该软件語音工具箱的程序viterbi.m中。

2.2 识别仿真结果

表1为用Matlab对数字0~9识别模拟的结果。其中,各行中的数字即为相对应的语音应用在不同数学模型时被成功解码的概率。表中的概率为负值,这与一般意义上的概率不同。导致概率为负的原因是操作过程中为了避免数据下溢而对维特比算法进行了修改,将求得的参数进行了对数换算,由于概率值小于1,因此取对数后为负值。从表中可以看出,各行最大值呈对角线分布,这一现象反应语音被成功识别。

本文研究了孤立数字和连接数字串的语音识别,特征提取选用了两种方法,分别为12维的LPCC、24维的MFCC,表2所列为验证结果。

根据表中数据分析,HMI法能够成功识别大部分连接词,但是对孤立词的识别能力较弱。对于选用不同参数得到的识别结果,使用MFCC方法时语音识别率高,但计算程序繁琐,识别过程需消耗大量时间。

2.3 基于HMM和DTW条件的识别对比

DTW主要用于识别孤立元素,本研究对这一方法进行了实验模拟,以检验其对孤立词的识别能力。特征参数选用12维LPCC系数和24维MFCC系数,实验结果见表3所列。

对于不同的算法DTW与HMM,本研究中均使用相同的特征矢量进行实验,现将使用两种方法得到的实验结果表进行合并得到表4。由表4可知,使用MFCC方法的识别结果普遍优于LPCC。此外,使用两种参数时,HMM法的语音辨别能力均高于DTW法。使用MFCC参数时两者相差不大,使用LPCC参数时两者相差大于10%。但DTW法相比与HMM法更适合用于孤立词的辨别。

3 结 语

语音识别技术涵盖多门学科,如今作为一种信息传递方式在信息研究领域受到较大关注,具有很高的研究价值与商业使用前景。与其相似的科学技术还有语音学、语言学、数理统计学和神经生理学等。本文将汉语数字语音识别作为研究对象,通过对系统的研究与应用,提出了若干使语音识别效果提升的方法。研究的主要内容与目前收获的成果有:对隐马尔科夫模型(HMM)原理进行了探索,并将其用于语音识别的研究。通过仿真模拟,得到了使用HMM法的语音识别结果,过程中进行了程序设置,并研究了人机交互界面。通过分析实验数据总结出一些规律。MFCC参数法比LPCC法更适用于语音识别。DTW法相比HMM法更适合用于辨别孤立词。HMM法在连接词的识别中具有优势。

参考文献

[1]易克初,田斌,付强.语音信号处理[M].北京:国防工业出版社,2000.

[2]蔡莲红,黄德智,蔡锐.现代语音技术基础与应用[M].北京:清华大学出版社,2003.

[3]赵力.语音信号处理[M].北京:机械工业出版社,2013.

[4]胡光锐.语音处理与识别[M].上海:上海科学技术文献出版社,1994.

[5]何英,何强.MATLAB扩展编程[M].北京:清华大学出版社,2002.

[6] Lawrence Rabiner, Biing-Hwang Juang. Fundamentals of Speech Recognition[M]. Beijing:Tsinghua University Press , 1999.

[7]杨行峻,迟惠生.语音信号数字处理[M].北京:电子工业出版社,1995.

[8]李虎生.汉语数码串语音识别及说话人自适应[D].北京:清华大学,2012.

[9]俞栋,邓力,俞凯.解析深度学习:语音识别实践[M].北京:电子工业出版社,2016:17-38.endprint

猜你喜欢

语音识别连接词
连动结构“VP1来VP2”的复句化及新兴小句连接词“来”的形成
宾语从句的语序
通话中的语音识别技术
吸引阅卷老师的“连接词”
基于LD3320的非特定人识别声控灯系统设计
英语连接词:传统与反思
英语连接词的显功能初探