[发明专利]一种利用变异鱼群算法优化的SVM进行语音识别的方法有效
申请号: | 201610481581.4 | 申请日: | 2016-06-27 |
公开(公告)号: | CN106409288B | 公开(公告)日: | 2019-08-09 |
发明(设计)人: | 白静;朱文静;薛珮芸;张雪英 | 申请(专利权)人: | 太原理工大学 |
主分类号: | G10L15/08 | 分类号: | G10L15/08;G10L15/10;G10L15/02 |
代理公司: | 太原市科瑞达专利代理有限公司 14101 | 代理人: | 李富元 |
地址: | 030024 山西*** | 国省代码: | 山西;14 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明涉及语音识别技术领域。一种利用变异鱼群算法优化的SVM进行语音识别的方法,通过采用自适应的方式对人工鱼的视野visual进行改进,人工鱼群算法在迭代初期,gen值较小,所得视野范围较大,个体鱼可以在整个遍历范围内更新;而在迭代后期,随着gen值的增加,视野范围逐渐减小,个体鱼只在小范围内寻优更新,这样更有利于精确找到全局最优值。变异鱼群算法通过减少参数的使用和简化人工鱼群算法中的行为方式,降低了算法的结构和计算复杂度,有效地避免了在参数寻优过程中陷入局部极值,同时也加快了其收敛速度应用到语音识别系统时,语音识别率更高,收敛速度更快。 | ||
搜索关键词: | 一种 利用 变异 鱼群 算法 优化 svm 进行 语音 识别 方法 | ||
【主权项】:
1.一种利用变异鱼群算法优化的SVM进行语音识别的方法,其特征在于按照如下的步骤进行:步骤一、通过话筒收集语音样本作为输入数据,然后对输入的数据的语音信号进行预处理,再进行特征提取,获得语音信号的特征,建立能够代表语音信号的语音信号参数集,该语音信号参数集是指从每一帧语音信号中获得的训练集样本的多维特征矩阵train_data,并给该多维特征矩阵train_data贴上对应的训练集样本类别标签train_label;步骤二、利用变异鱼群算法优化的SVM,求得使适应度值最大时对应的参数组(c,γ),c为惩罚因子,γ为SVM参数,得到SVM模型model;利用变异鱼群算法优化SVM按照如下的步骤进行a、设置人工变异鱼群数量fishnum、最大迭代次数Gmax、最大尝试次数trynum,移动步长step,建立初始人工变异鱼群参数γ和惩罚因子c的取值范围均为2‑7‑27,随机产生fishnum个参数组(c,γ)作为人工鱼群的第n条人工鱼的初始状态X0n:X0n=‑7+14*rand()其中n为小于等于fishnum的自然数,rand()是一个介于0到1之间的随机数,每一组参数(c,γ)决定一条人工鱼的初始状态;b、利用libsvm软件包中的svmtrain函数,计算得到平均分类准确率,即适应度值f(Xgenn):f(Xgenn)=svmtrain(train_data,train_label,'‑v ‑c ‑g')其中Xgenn表示迭代次数为gen时第n条人工鱼的状态,‑v表示交叉验证模式,一般取5或10,‑c对应参数组(c,γ)中c的值,‑g对应参数组(c,γ)中γ的值,比较各个初始人工鱼群所处状态对应的适应度值,选择最大的适应度值计入公告板;c、在第gen次迭代更新时,自适应调整人工鱼的视野visual:visual=(visualmax‑visualmin)exp[‑(t*gen/Gmax)2]+vistulmax其中visualmax与visualmin是视野visual的最大值和最小值,t是经验系数,一般取值范围为[20, 55];d、在第gen次迭代更新时,依次对每个人工鱼个体同时执行变异人工鱼群算法的个体行为和团体行为,生成新一代种群:个体行为,设第gen次迭代过程中第n条人工鱼当前的状态为Xgenn,随机选择的下一状态为Xgen+1n,其目标是通过反复试探向适应度值更好的方向移动,如果满足适应度值f(Xgenn)≦f(Xgen+1n),则向前移动一步进行迭代,否则不进行迭代,如果经过trynum次尝试后仍不满足前进条件,则人工鱼个体会在其视野范围内随机移动一步:Xgen+1n=Xgenn +visual*rand()其中,rand()是一个介于0到1之间的随机数;团体行为,在当前邻域内由聚群行为求得中心位置Xcenter,即当前人工鱼状态Xi及其视野范围内同伴的状态的算术平均值,再由追尾行为求得视野范围最优位置Xmax,即当前人工鱼状态Xi视野范围内各人工鱼同伴的适应度值最大时对应的同伴状态,如果f(Xcenter)>f(Xi),则当前人工鱼状态Xi向中心位置的方向前进一步,即下一个人工鱼状态Xi+1=Xi+(Xcenter‑Xi)/(||Xcenter‑Xi||)*visual*rand()否则就向搜索范围内的最优位置方向前进,下一状态为:Xi+1=Xi+(Xmax‑Xi)/(||Xmaxr‑Xi||)*visual*rand()并且如果f(Xcenter)>f(Xmax),则最优位置Xmax=Xcenter,比较两种行为所得人工鱼个体所处状态的适应度值,选择适应度值最大的行为执行,并与公告板上的记录进行比较,将适应度值最大的人工鱼计入公告板;判断迭代次数是否已经达到最大迭代次数Gmax,如果满足则执行步骤e;否则返回步骤c,继续下一次迭代寻优;e、寻优得到最大适应度值所处状态对应的参数组(c,γ)的值,利用libsvm软件包里的svmtrain函数得到SVM模型model:model= svmtrain(train_data,train_label,'‑c ‑g')其中‑c对应最优参数组(c,γ)中c的值,‑g对应最优参数组(c,γ)中γ的值;步骤三、对话筒输入的待识别的语音样本经过与步骤一相同的前期预处理和特征参数提取,获得测试集样本对应的多维特征矩阵test_data和对应的测试类别标签test_label,再与步骤二中的SVM模型model进行匹配,获得语音识别结果,并获得语音识别分类正确率。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于太原理工大学,未经太原理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201610481581.4/,转载请声明来源钻瓜专利网。