基于前向后向算法的HMM语音识别智能门锁控制系统研究

2022-11-16 02:16左伟平
电子技术与软件工程 2022年16期
关键词:话音门锁语音

左伟平

(赣州职业技术学院电气工程系 江西省赣州市 341000)

1 引言

在新时代背景下,我国大力发展人工智能科学技术,许多用户已经能享受到语音识别技术带来的方便,比如智能手机的语音输入、智能家居的语音控制等。所以在未来语音识别技术应用的发展中,语音识别在门禁系统的应用将有着非常独特的优势和发展前景。经济社会的发展,智慧家庭已经形成了一种新产业,其市场潜力巨大,行业前途光明。从实际的生活出发,智能语音控制的研究有着非常重要的意义[1]。语言作为生活中人类运用最频繁、最简单的交流方法,语音信号成为人们表达、传递心中思想和情感的重要方法。语音识别技术也能够帮助促进在人们之间、人类与物品间的交流。以往,在不同国家、不同地区的人民使用不同的汉语沟通时,往往需要中间传译,极大地影响了人们的可选择沟通对象,同时也抑制了双方沟通机会;在语音技术尚未运用于智能产品中之前,很多电子设备的唤醒都采用了机械或人脸等方法,但如果在智能电子设备中增加语音识别技术就可以大幅增强人机交互沟通能力,当下语音识别技术已应用于各个领域,基于此我们课题组大胆的提出了在智能门锁控制系统中引入基于HMM 算法的语音识别技术,使其通过语音来唤醒智能门锁的开关。HMM 算法通过对大量语音信息进行数据统计分析,可以形成识别词条的统计模式,接着在待识别语音中抽取特性信息,和这些模型相匹配,再经过计算匹配概率可得出辨识结论,同时使用了大量的语言信息,也就可以得到一种相对稳定的统计模式,从而可以应对实际语音中的各类突发现象。“语音识别的门锁”技术相当于给家居门锁设备安装上“耳朵”,使其具备“能听”的功能。该技术经过语音信号处理、语音特征处理、模型训练及解码引擎等复杂步骤,使机器最终能够将语音中的内容、说话人、语种等信息识别出来。

针对现有情况,本论文通过改进算法将归整函数限制在一个平行四边形中,其中两条边的斜率为1/2,另外两条边的斜率为1/3;在计算总距离时只需计算平行四边形之内各交点的匹配距离和累积距离,这样减少了计算量,以提高了系统的反应速度,解决语音识别准确率和响应速度的问题;通过应用动态规划的方法解决了语音信号特征参数序列时间对准问题,解决语速的差异问题,解决了音源和麦克风之间的空间距离增大,在声波传播过程中会出现信号强度的衰减和各种噪音干扰问题;通过在 Matlab 图形用户界面(GUI)上实现语音识别系统。从而解决语音识别的门锁系统的MATLAB 仿真问题。在本论文的基础研究中,我们通过MATLAB 模拟系统来模拟仿真实现该识别系统,并且经过了进一步的试验模拟后,该系统可以在较小噪声环境中产生很好的变化鲁棒,同时产生了更多的辨识效率和算法准确性。

2 前向后向算法HMM在语音识别技术中的应用

2.1 HMM语音识别技术

在语音识别技术中,用HMM 模式描述的语音信息需要提出二种假定:一种是系统内部状态的变化值仅与上一次状态相关;另一种则是输出值仅与当前状态变化(或当前的状况转换)相关,这二个假定大大降低了建模的复杂性。将语音信息看成是连续的特殊状况,这个状况是无法被实时观察到的,只是以一种隐藏的关联与语音的检测量密切相关[2]。而这个隐藏关联在HMM 模式中又往往以概率形式显示了出来,模式的输出结果往往又以概率的形式进行[3],这就给对系统最后做出一种稳定的判断提供了必要条件。本实验目的就是利用HMM 模式来确定孤立词的语音信息。HMM 模式运用于孤立的词汇语言识别系统,第一个任务就是给每个词汇设置HMM 模式,它是用解决上述问题来实现的,也就是利用训练序列来调节模型参数值,以使其更佳,这也就是获得了每个词汇的最佳参数模型。要加深对模型现象的物理含义,就必须解决问题,应该把句子的训练顺序分为若干段(语音帧),每一段都相对于同一个现象。如果将V 个词汇的HMM 模式制定起来并且优化之后,就能够通过这种模式来对一个不确定的声音进行鉴别,而这是由提问来实现的。未知语言就是实验观测序列,用求解问题来评价各个词汇的HMM 模式与实验观察顺序的匹配状况,然后选取与匹配良好的模式所对应的词汇作为确定结果[4]。

本语音识别系统首先利用DSP 器件中的A/D 转换器对说话人输入信息进行模拟。把连续的话音信息转换为系统可以识别的数据话音信息,随后通过对数据话音信息做出适当的预处理,以得到相对较好的话音信息,得到数据后,利用特征抽取程序进行特征矢量,获得声音信息,然后由识别程序对说话人声音进行识别,以此获得识别结果。总的来说,整个识别流程包含话音信息的预处理、话音信息的特点提炼、话音信息库的构建和话音信息的识别等多个关键阶段,如图1 显示。HMM 识别流程分为二阶段:

图1:语音识别原理

(1)训练阶段:得到HMM 话音识别模式,并构建基本的话音信息库;

(2)识别过程:产生语音的结果,如图2 所显示。

图2:HMM 识别过程

2.2 前向后向算法

前向‐后向方法可以首先通过对隐马尔科夫模型的基本参数做出一些初步的预测,接着再通过对所给出的数据评价它们参数的的价值,和降低在其中所产生的错误来进行修正HMM 参数。从这种含义上来说,它是从一次梯度下降的形态寻求每一次错误测度的平均值。至于为什么称它为先向‐后向运算,关键是因为针对网格中的每一类状况,它既估算了得到此状况的“前向”机率(给定当前模式的接近估算),又测算得到此模式最后状况的“后向”机率(给定当前模式的接近估算)。它们都能够被用递归进行有效的估计,就像人们已经发现的。我们可以通过使用近似的HMM 模型参数对提高的中间概率值进行调节,而这种调节方式也构成了先向‐后向算法迭代的核心。在本论文研究者会给出前向后向算法的一个"传统的"推导,使用概率的加法和乘积规则,并且利用由d‐划分从对应的图模型中得到的条件独立性质。

2.2.1 前向算法

给定隐马尔可夫模型λ=(A,B,π),能够定义到时间为t 部分观察序列o1o2o3...ot,且状态为qi的概率为前向概率,记作可以递推地求得前向概率及观测序列概率。

(1)初值:

(2)递推:

(3)终止:

由(2)的递推式子即可求出,表示第T 次使用qi可以产生序列O=(o1o2...oT),i 仍i 仍有在N 中可能所以相加即是最后的结果。

2.2.2 后向算法

给定隐马尔可夫模型λ,定义在时刻t 部状态为qi的前提下,从t+1 到T 的部分观测序列ot+1ot+2...oT的概率为后向概率,记作:并可递推地得到后向概率βt(i)及观测序列概率

(1)初值:

βt(i)=1

(2)递推:

(3)终止:

这样可以得到在各个时间点上全部的隐藏情况以及所相应的全部后向变量,而如若要使用后向方法统计观测序列的整体可能性概率,必须把t=1 时刻的后向变量全部加上即可。下图所表示的是t+1 时刻与t 时刻的后向变量之间的关系:

基于上述公示条件,定义:

α(zn)表示观测到时间N 及以前时间的任何数值和的和zn的值的联合概率,而β(zn)表示在既定zn的条件下,从时间n+1 到n 的任何未来数值的条件机。和之前方法相同,α(zn)和β(zn)都表示K 个数字组成的集合,每个数字都对应于二值向量zn的“1‐of‐K”表示方法的一个可能的配置。现进行递归过程,假设

这表明对于k=1,...K, α(z1k)的值为从链的第一个结点开始,通常沿着链计算各潜在结点的[5]α(zn)。由于递归的每一步涉及到与一个K×K 的矩阵相乘,故计算整个链的这些量的整体代价是O(K2N)。使用条件独立性质得到β(zn)的递归关系:

通过最大似然方法,隐马尔可夫模型能够有效地训练,只要所训练的序列够长。我们还可能使用多个相对较短的序列,但必须对隐马尔可夫模型EM 算法做出几个相对简单的调整。在从左至右模型的情形下,这个调整尤其关键,因为在每次给定的观测序列中,相对于A 的所有非对角元素之间的给定的状态转移最多发生了一次。

3 智能语音识别门锁控制系统

本语音门锁控制系统主要分两部分:语音识别部分和语音控制部分。门锁的语音识别部分的核心功能首先是处理来自麦克风或其他语音设备传输过来的语音信号,然后将识别结果传输给DSP 控制芯片;门锁的语音控制部分是指DSP处理器通过语音识别电路传输过来的识别结果做出相应的响应[6]。在本文中设计了一种非特定人词汇量的语言识别系统,使用的处理器是16 个DSP,该芯片不需对所拥有的语音录音训练,就可以达到令人满意的语言识别效果,如图3 所示。本论文设计的智能语音门锁的控制系统,除包含视图内容还包括红外传感器及锁体控制器,其控制系统的原理如下:红外传感器用于检测门前人体信号,其输出端与锁体控制器连接,锁体控制器的输出端与语音识别系统连接,语音识别系统用于根据语音信号进行识别并输出识别结果至锁体控制器,锁体控制器根据当无法手动开锁时,对语音控制模块进行语音控制,语音控制模块将信号传递给控制主板,控制主板处理完成后,将对小型马达进行供电处理,小型马达的启动通过齿轮带动齿条移动,齿条的移动带动了锁杆的移动,从而使锁头收缩进门锁本体的内部,使房门打开识别结果控制锁体的开锁上锁。当锁头损坏时,通过拉杆带动抵持杆的移动,且抵持杆在移动过程中将会压缩第一复位弹簧,且由于抵持杆的前端设置为倾斜状态,当抵持杆移动时,抵持杆的端部将不会再对固定杆进行顶持,在第二复位弹簧的作用下,固定杆收缩进通孔的内部,当固定杆不再对锁头进行限位卡持时,即可将锁头从锁杆的端部取出。

图3:语音门锁控制系统

4 实验结果

本试验是在Windows 平台上,在MATILAB 平台编写软件,进行检验、性能分析和结果评定以及程序开发和实现。本试验采用的取样频段是16kHz;分帧为二百五十六点,帧移为128 点;本论文实验的特征参数主要采用了24 维,其主要由12 维的MFCC、一阶差分、二阶差分三部分,矢量量化码本数为64,然后经过矢量量化的语音特征参数为36×64 的矩阵;采用了连续概率密度的左右型无跨越的隐马尔科夫模型(CHMM),各单词训练后可获得一个模型[7]。在模块建立过程中需要构建一个语言信息库,包含二十四条语言指令。在语言指令的选取上需要把发音接近或差异很大等问题考虑进来。对语言的选取既要有随机性也要有适应性[8]。其次,对所录语音进行端点检索,从而实现语音信息的特征提炼。在鉴别过程中,在待鉴别的语音信号中进行特征提取之后,可以得出该声音的特性参数

序列,即对给定的观测序列零。进而求得P(O|λ)的平均值。并通过此大值得出鉴别结论。经试验证明,鉴别时限一般在1~3s,表1、表2 所示显示了改进型与原始算法的仿真测试结果。

表1:状态训练集和测试集5 次识别率

表2:在同一条件下两种算法的平均语音识别唤醒率

本论文通过对HMM 和改进HMM 两种算法在同一条件下进行语音识别实验,实验的测试结果如表1 和表2 所示,根据表的实验结果,得出在一定条件下,改进型的HMM 的语音识别唤醒率高于HMM 算法。

5 结束语

HMM 算法目前在语言识别系统中运用的十分普遍,是一个相对较好的语言识别算法,本论文大胆尝试了将HMM语音识别技术运用到门锁控制系统。并在论文中通过提出建立系统仿真模型的过程中收集产生的语音数据并建立数据库,并根据该数据训练出符合用户使用环境的语音识别模型,从而提高语音识别引擎的准确率;论文研究提出了仿真模拟改进型的前向‐后向算法,并使改进后的HMM 算法能够大幅度的提升唤醒率;建立的语音智能门锁控制系统语音智能化、唤醒率高、准确率高、抗干扰性强,并在现有的门禁系统上能够实现语音控制。在该论文中介绍了先向后向方法,并根据方法的缺点做出了修改。修正后的HMM 算法在一定程度上地提升了识别质量,降低了运行时间。在HMM 计算中,关于HMM 存在的三个重要问题逐一提供了求解途径。最通过优化后的算法在MATLAB 仿真软件中进行了语音识别系统的模拟。由运算结果可得相对于未改进前算法,改进后的算法可用最短的识别时间达到最高的识别效率,是更为快速有效的识别算法[9]。实验结果表明,该技术适合于应用于智能门锁控制系统中,并且符合实际的需要。

猜你喜欢
话音门锁语音
一种简易气门锁夹安装设备
魔力语音
6款热门智能门锁推荐
基于MATLAB的语音信号处理
基于MQ3与MP3的价廉物美的酒驾语音提醒器
对方正在输入……
钥匙门锁对对碰
IP语音报头压缩设计与实现
丰田威驰车门锁随速锁止功能失效
基于网优平台的数据话音均衡分析