首页> 中国专利> 一种融合数据归一化的自适应变异鸟群语音识别系统

一种融合数据归一化的自适应变异鸟群语音识别系统

摘要

本发明涉及语音识别技术领域,一种融合数据归一化的自适应变异鸟群语音识别系统,通过采用自适应变异的方法对鸟群个体更新方法进行改进,在鸟群算法在迭代更新初期,引入一种变异操作,对参数自适应过程进行优化,并结合数据归一化方法,简化了数据结构和算法复杂度,有效提高了算法的种群多样性,增强了模型的泛化能力,解决了算法早熟收敛以及搜索能力随代数增加而逐渐下降的问题,改善了易陷入局部最优的缺陷。本发明识别准确率更高,收敛速度更快,鲁棒性更强,寻优效果更好。

著录项

  • 公开/公告号CN107195297A

    专利类型发明专利

  • 公开/公告日2017-09-22

    原文格式PDF

  • 申请/专利权人 太原理工大学;

    申请/专利号CN201710584790.6

  • 发明设计人 白静;郭倩岩;薛珮芸;史燕燕;

    申请日2017-07-18

  • 分类号

  • 代理机构太原市科瑞达专利代理有限公司;

  • 代理人李富元

  • 地址 030024 山西省太原市万柏林区迎泽西大街79号

  • 入库时间 2023-06-19 03:20:27

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2022-07-08

    未缴年费专利权终止 IPC(主分类):G10L15/06 专利号:ZL2017105847906 申请日:20170718 授权公告日:20200211

    专利权的终止

  • 2020-02-11

    授权

    授权

  • 2017-10-24

    实质审查的生效 IPC(主分类):G10L15/06 申请日:20170718

    实质审查的生效

  • 2017-09-22

    公开

    公开

说明书

技术领域

本发明涉及语音识别技术领域。

背景技术

随着信息时代发展,人机交互给现代社会带来巨大的改变,语音识别作为人机交互技术的基础,已是当今信息领域的研究热点。支持向量机通过其卓越的分类能力和良好的泛化性能,成为语音识别技术中较常用的分类模型。

支持向量机(Support Vector Machine,SVM)是基于结构风险最小化原则的一种新的机器学习技术。它可以更好的解决小样本、非线性、高维度等分类问题,并且具有良好的泛化性,广泛应用在模式识别、分类估计等问题当中。SVM的拟合性能和泛化能力依赖于相关参数的选择,选择的结果直接关系到分类效果。因此,支持向量机的参数选择在实际应用中是一个关键问题。

目前,国际上并没有公认的统一的SVM参数的优化选取方法,较为常用的方法有:网格寻优方法、遗传算法、粒子群算法等。网格寻优(Grid Search,GS)算法是一种实用的参数寻优方法,该方法将待搜索参数在给定范围中划分为网格,通过遍历网格中所有的参数组合来寻找最优参数组,具有寻优速度快的优点,但是网格寻优对参数寻优范围和寻优步距依赖性较大。遗传算法(Genetic Algorithm,GA)是J.H.Holland于20世纪70年代提出的一类基于自然选择和遗传学原理的有效寻优方法,它模拟生物进化过程,是一种全局优化搜索算法,具有简单通用、鲁棒性强的优点,但是搜索后期效率低下易早熟。粒子群优化算法(Particle Swarm Optimization,PSO)由Kennedy和Eberhart于1995年提出,源于对鸟群捕食行为的研究,通过个体间的协作来寻找最优解,具有算法简单实现容易的优点,但是PSO算法对于有多个局部极值点的函数容易陷入局部最优。

2015年由Xian-Bing Meng等人提出的鸟群算法(Bird Swarm Algorithm,BSA),是一种生物启发式智能算法,该算法具有很好的多样性,并且能有效的避免过早收敛,与传统的群智能算法相比准确率更高、鲁棒性更强。

文献《基于鸟群算法的微电网多目标运行优化》将鸟群算法应用于微电网多目标优化问题,构建了以微电网运行成本及环境污染度为目标的微电网多目标优化模型,与粒子群算法和微分进化算法比较,验证了鸟群算法更强的最优解搜索能力。

文献《基于群智能算法的光OFDM系统PAPR抑制研究》提出利用非线性反余弦的方法动态调整加速因子,通过对鸟群算法中觅食行为的学习因子动态调整,使其自身与群体对迭代过程中的粒子位置产生不同的影响程度,以此来丰富粒子的多样性,从而缓解粒子陷入局部最优的情况,改善了易陷入局部最优的缺陷,改进了算法的有效性。

发明内容

本发明所要解决的技术问题是:克服现有技术不足,提供一种融合数据归一化的自适应语音识别系统,通过对支持向量机参数寻优,提高语音识别准确率。

本发明所采用的技术方案是:一种融合数据归一化的自适应变异鸟群语音识别系统,其特征按照如下的步骤进行:

步骤一、用录音设备收集语音数据,对收集的语音数据进行特征提取,将特征提取后的数据作为输入样本,把输入样本划分为训练集(train_data)和测试集(test_data)两部分,分别给两个集合加注标签,得到训练集标签(train_label)和测试集标签(test_label);

步骤二、采用数据归一化方法,对原始数据进行归一化处理;

步骤三、采用融合数据归一化自适应变异鸟群算法对SVM参数进行寻优,求得最佳参数组(c,γ),用该参数组建立SVM模型model;

步骤四、将测试集带入SVM模型,得到语音识别准确率。

步骤二中利用数据归一化方法处理数据按照如下的步骤进行:

由于语音样本特征的差异性,特征提取后得到的数据参差不齐,数据水平差别较大,采用这样数据进行识别,会突出数值较高的特征在识别过程中的作用,而相对降低数值较低的特征在综合分析中的作用。因此,为了保证识别效果的可靠性,采用数据归一化方法,对原始数据进行归一化处理。

将每列数据样本设为yi,归一化后的数据样本为:

其中yi是原始数据,是归一化后的数据,ymin和ymax代表yi各自的极小值和极大值。

作为一种优选方式:步骤三中,利用自适应变异鸟群算法优化SVM按照如下的步骤进行:

a、设置鸟群的种群数量P、最大迭代次数M和迁徙频率FQ,初始化认知系数C和社会加速系数S、影响因子a1和a2以及参数组(c,γ)的最大值ub和最小值lb,随机产生P个参数组(c,γ)作为鸟群的初始状态:

其中,表示鸟群个体的初始位置,i为1到P的整数,j为1到M的整数,rand(0,1)是一组(0,1)之间的随机数;

b、将初始参数组代入libsvm工具箱中的svmtrain函数,得到初始适应值fit(i):

fit(i)=svmtrain(train_label,train_data,′-v-c-g′)

其中,'-v'表示交叉验证的次数,’-c’和’-g’分别代表参数组(c,γ)中的c和γ;

c、在第j次迭代更新时,自适应调整鸟群个体:

其中,分别表示鸟群个体的初始速度和自适应变异后的速度,分别表示鸟群个体的当前位置和更新后的位置,用pi.j记录个体最佳位置,gj记录群体最佳位置,r1为(0,1)之间的随机数,r2为随机变量,小于0.5时为1,大于0.5时为-1;

d、在第j次迭代更新时,依次对鸟群执行自适应鸟群算法的觅食、警觉和迁徙行为,生成新一代种群:

觅食行为,鸟群中的个体通过一个随机决策来选择觅食还是警觉,当一个(0,1)之间的随机数rand小于常数R(R∈(0,1)),选择觅食:

警觉行为,当随机数rand大于常数R,鸟群中的个体选择警觉,试图飞往中心的个体受到种群竞争行为的影响,具有高储备量的个体比具有低储备量的个体更易接近种群中心:

其中,meanj表示整个鸟群第j个元素的平均位置,A1为周边环境引起的间接影响因子,A2为特定干扰引起的直接影响因子,pFiti表示第i只鸟的最佳适应值,sumFit表示整个种群的适应值之和,ε用于避免零分割,是计算机里最小的常数;

迁徙行为,由于觅食或躲避捕食威胁等原因,鸟群会飞向其它地方,当到达一个新的地方,它们会继续觅食,并被分为生产者和乞食者。具有最高储备量的鸟为生产者,最低储备量的鸟为乞食者,其他储备量介于二者之间的鸟随机选择作为生产者或者乞食者。生产者主动搜索食物,乞食者随机跟随一位生产者搜寻食物:

其中,表示第k只鸟儿在t时刻的位置,k∈[1,2,…,N],k≠i,randn(0,1)表示均值为0方差为1的高斯分布,FL(FL∈[0,2])表示乞食者将跟随生产者搜索食物的概率;

比较三种行为所得鸟群个体所处状态的适应度值,选择适应度值最大的行为执行,并与历史记录进行比较,记录适应度值最大的个体。判断迭代次数是否已经达到最大迭代次数M,如果满足则执行步骤e;否则返回步骤c,继续下一次迭代寻优;

e、寻优得到最佳适应值所对应的位置即为参数组(c,γ)的值,利用libsvm工具箱中的svmtrain函数得到SVM模型model:

model=svmtrain(train_label,train_data,′-c-g′)

其中'-c'对应最优参数组(c,γ)中c的值,'-g'对应最优参数组(c,γ)中γ的值。

本发明的有益效果是:通过采用自适应变异的方法对鸟群个体更新方法进行改进,鸟群算法在迭代更新初期,引入一种变异操作,对参数自适应过程进行优化,并结合数据归一化方法,简化了数据结构和算法复杂度,有效提高了算法的种群多样性,增强了模型的泛化能力,解决了算法早熟收敛以及搜索能力随代数增加而逐渐下降的问题,改善了易陷入局部最优的缺陷。将融合数据归一化的自适应变异鸟群算法优化的SVM模型应用于语音识别系统,识别准确率更高,收敛速度更快,鲁棒性更强,寻优效果更好。

具体实施方式

本发明以windows 7系统作为程序开发软件环境,使用MATLAB R2010a作为程序开发平台,本例通过9个人对10个孤立词在信噪比为15db条件下,每词发音三次的270个语音样本作为训练集,对应7个人在相应的词汇量和信噪比下的210个语音样本作为测试集,样本经过录音设备收集后作为输入数据,然后通过语音识别系统对输入的语音信号进行预处理,再从处理过的语音信号中提取能够代表该语音信号的特征,每个样本从语音信号中获得的60维特征矩阵,最终获得训练集特征矩阵train_data和测试集特征矩阵test_data以及对应的类别标签train_label和test_label,如表1和表2列出部分数据如下:

表1训练集样本

表2测试集样本

对训练集和测试集数据进行归一化处理,将每列数据样本设为yi,归一化后的数据样本为:

其中yi是原始数据,是归一化后的数据,ymin和ymax代表yi各自的极小值和极大值,归一化后的数据如表3,表4所示:

表3归一化后训练集样本

表4归一化后测试集样本

设置鸟群的种群数量P=30,最大迭代次数M=100,迁徙频率FQ=10,初始化认知系数C=1.5,社会加速系数S=1.5,影响因子a1=1,a2=1,令参数组(c,γ)的最大值ub=100,最小值lb=-100,鸟群的30组个体初始状态如表5:

表5鸟群初始状态

计算每个鸟群个体的适应度值fit(i):

将表1中训练集样本的语音特征矩阵train_data和类别标签train_label代入公式:

fit(i)=svmtrain(train_label,train_data,′-v-c-g′)

其中,i为1到30的整数,'-v'表示交叉验证的次数,’-c’和’-g’分别代表参数组(c,γ)中的c和γ,所得每个鸟群个体的适应度值如表6:

表6适应度值(%)

通过比较,记录最大的适应度值fit(16)=66.2963%,对应参数组(15.7697,97.0596);

自适应更新种群个体:

在第j次迭代更新时,自适应调整鸟群个体:

其中,分别表示鸟群个体的初始速度和自适应变异后的速度,分别表示鸟群个体的当前位置和更新后的位置,pi.j表示个体最佳位置,gj表示群体最佳位置,r1为(0,1)之间的随机数,r2为随机变量,小于0.5时为1,大于0.5时为-1,个体更新结果如表7:

表7个体自适应变异更新结果

在第j次迭代更新时,依次对鸟群执行自适应鸟群算法的觅食、警觉和迁徙行为,生成新一代种群:

觅食行为,鸟群中的个体通过一个随机决策来选择觅食还是警觉,当一个(0,1)之间的随机数rand小于常数R(R∈(0,1)),选择觅食:

警觉行为,当随机数rand大于常数R,鸟群中的个体选择警觉,试图飞往中心的个体受到种群竞争行为的影响,具有高储备量的个体比具有低储备量的个体更易接近种群中心:

其中,meanj表示整个鸟群第j个元素的平均位置,A1为周边环境引起的间接影响因子,A2为特定干扰引起的直接影响因子,pFiti表示第i只鸟的最佳适应值,sumFit表示整个种群的适应值之和,ε用于避免零分割,是计算机里最小的常数;

迁徙行为,由于觅食或躲避捕食威胁等原因,鸟群会飞向其它地方,当到达一个新的地方,它们会继续觅食,并被分为生产者和乞食者。具有最高储备量的鸟为生产者,最低储备量的鸟为乞食者,其他储备量介于二者之间的鸟随机选择作为生产者或者乞食者。生产者主动搜索食物,乞食者随机跟随一位生产者搜寻食物:

其中,表示第k只鸟儿在t时刻的位置,k∈[1,2,…,N],k≠i,randn(0,1)表示均值为0方差为1的高斯分布,FL(FL∈[0,2])表示乞食者将跟随生产者搜索食物的概率;

比较三种行为所得鸟群个体所处状态的适应度值,选择适应度值最大的行为执行,并与历史记录进行比较,记录适应度值最大的个体。

判断迭代次数是否已经达到最大迭代次数M,如果满足则执行步骤e;否则返回步骤c,继续下一次迭代寻优;

本实施例仅例举说明表5中序号为1的鸟群个体在迭代次数M分别为1、2、3时的状态更新,其他鸟群个体和其他迭代次数鸟群个体状态更新过程类似。

M=1时,由以下公式进行初始化:

初始化后鸟群个体对应参数c的取值为92.0958,γ的取值为80.8212,其适应值fit(1)=51.8519%;

通过以下公式执行自适应变异:

个体对应参数c的取值变为42.1819,γ的取值变为91.5744,其适应值变为fit(1)=59.6296%;

判断是否符合觅食条件,满足条件,鸟群执行觅食行为:

个体对应参数c的取值变为53.8389,γ的取值变为99.6135,其适应度值变为fit(1)=67.0370%,选取为种群最佳个体,并与历史最佳适应值59.6296%比较,保留最佳适应值67.0370%和对应参数组(53.8389,99.6135);

M=2时,将上一代的鸟群个体进行自适应变异,鸟群个体对应参数c的取值变为60.3307,γ的取值变为1.5026,其适应值变为fit(1)=70.3704%;

判断是否符合警觉条件,满足条件,鸟群执行警觉行为:

个体对应参数c的取值变为0.0838,γ的取值变为67.6717,其适应度值变为fit(1)=89.6296%,选取种群最佳个体,并与历史最佳适应值比较,保留最佳适应值和对应参数组;

M=3时,将上一代的鸟群个体进行自适应变异,鸟群个体对应参数c的取值变为47.7860,γ的取值变为0.0912,其适应值变为fit(1)=90.3704%;

判断是否满足迁徙条件,满足条件,鸟群执行迁徙行为,将鸟群划分为生产者或者乞食者:

个体对应参数c的取值变为63.1943,γ的取值变为0.0801,其适应度值变为fit(1)=93.3333%,选取种群最佳个体,并与历史最佳适应值比较,保留最佳适应值和对应参数组;

迭代次数i=i+1,判断迭代次数是否已经达到最大迭代次数M,如果满足则继续执行下一步骤;否则返回进行新一次迭代更新。

得到最大适应度值94.4444%所处状态对应的最优参数组(c,γ)的值为(47.7881,0.0892),利用libsvm软件包里的svmtrain函数得到SVM模型model:

model=svmtrain(train_label,train_data,′-c47.7881-g0.0892′)

利用svmpredict函数,代入测试集样本的语音特征矩阵test_data和类别标签test_label

[predict_label,accuracy]=svmpredict(test_label,test_data,model)

其中accuracy为测试集样本的分类准确率,对应该测试集样本的语音识别准确率为accuracy=89.0476%。

本实例只用来说明具体实施方式,为了显示方便,仅用某一个体的三次迭代将最佳状态展示出来,实际应用中会有一定误差。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号