当前位置: 首页 > 专利查询>天津大学专利>正文

一种基于混洗蛙跳的特征选择方法技术

技术编号:18895695 阅读:42 留言:0更新日期:2018-09-08 11:31
一种基于混洗蛙跳的特征选择方法:输入一个初始特征集维度为M的数据,每个特征包含有若干个样本;对青蛙种群进行初始化,确定最大迭代次数;将青蛙个体的位置利用适应度函数进行适应度计算;按照青蛙个体的适应度值对整个青蛙种群进行降序排序,按照模因分组法对青蛙种群进行分组,确定每组中的组内最优青蛙、组内最差青蛙以及整个青蛙种群中的全局最优青蛙;每组中首先利用组内最优青蛙更新组内最差青蛙,若发现更新后的组内最差青蛙的适应度值优于更新前的最差青蛙的适应度值,且满足优化的约束条件,则完成一次更新过程;对更新后的青蛙种群再次更新,直到迭代次数达到最大迭代次数,得最佳的特征子集。本发明专利技术提高了数据挖掘与模式识别的效率。

A feature selection method based on shuffled frog leaping

A feature selection method based on mixed-wash frog leap is proposed, in which a data with M initial feature set dimension is input, each feature contains several samples, the frog population is initialized to determine the maximum number of iterations, the position of the individual frog is calculated by fitness function, and the fitness value of the individual frog is calculated according to the fitness value. The whole frog population was sorted in descending order, and the frog population was grouped according to meme grouping method to determine the best frog in each group, the worst frog in each group and the global optimal frog in the whole frog population. The fitness value of the poor frog is better than that of the worst frog before updating, and it satisfies the optimization constraints, then completes an updating process; the updated frog population is updated again until the maximum number of iterations, and the best feature subset is obtained. The invention improves the efficiency of data mining and pattern recognition.

【技术实现步骤摘要】
一种基于混洗蛙跳的特征选择方法
本专利技术涉及一种特征选择方法。特别是涉及一种针对高维度特征描述的复杂问题的基于混洗蛙跳的特征选择方法。
技术介绍
1、混洗蛙跳算法简介混洗蛙跳算法(ShuffledFrogLeapingAlgorithm,SFLA)是Eusuff等人在2003年提出一种新型的群体智能优化算法,它模拟了青蛙种群的觅食和迁移过程。整个过程可以描述成如下方式:多只青蛙共同组成了一个大种群,其中又分成了若干个初始子种群,每个子种群包含数只青蛙。每只青蛙的对环境的适应能力都不同。这里用与食物的距离来表示青蛙的适应能力。为了获取食物,每只青蛙都会靠近子种群中距离食物最近的那只青蛙,也就是每只青蛙都会向距离食物最近的青蛙跳跃,从而缩短自己与食物的距离,提高自己的适应能力。当整个青蛙种群完成一次跳跃后,不同的青蛙之间会进行信息交换与共享,目的是提高整个青蛙种群的适应能力。在子种群中,为了避免青蛙积聚在同一位置,每次交换信息之后,要重新形成新的子种群。每只青蛙都携带着各自的信息加入新的子种群。子种群中适应能力最高的青蛙是子种群内部的青蛙的跳跃方向,每次重新生成子种群保证了子种群之间的信息交互。通过交替进行子种群内部每只青蛙向最优青蛙的跳跃(局部搜索)和所有青蛙子种群之间的重新混洗(全局搜索),可以保证整个青蛙种群是向着最优的方向前进。算法的数学描述如下:首先生成由N只青蛙个体组成的初始种群P={X1,X2,…,Xn},在生成初始种群之后,首先按照每只青蛙的适应能力进行降序排列,将排在第一位的青蛙记为Xg,它是整个种群中适应能力最佳的一只。然后将整个种群分成n个子种群,每个子种群包含m只青蛙,满足关系N=m*n。初始子种群的分类规则如下:把第1只青蛙分入第1个子种群中,第2只青蛙分入第2个子种群中,第n只青蛙分入第n个子种群中,然后将第n+1只青蛙分入第1个子种群中,以此类推,直至所有的青蛙都分入了某个子种群中。整个分配过程可描述如下:Mk={Xk+m(l-1)∈P|1≤l≤n},1≤k≤m其中,xi,j(i=1,2,…n;j=1,2,…,m)表示第i个子种群中的第j只青蛙的位置。在每个子种群中,将适应能力最好的青蛙记为Xb,适应能力最差的青蛙记为Xw。然后对每个子种群中的Xw进行跳跃,更新规则如下:D=r*(Xb-Xw)X′w=Xw+D其中,r是0到1之间的随机数,D表示青蛙跳跃距离。如果更新后,新的青蛙X′w比原来的适应力强,则代替原来的;如果没有改善,则用Xg代替Xb进行更新;如果仍没有改善,则随机产生一个新的青蛙取代Xw。当每个子种群都完成局部搜索后,将所有的青蛙重新混合并排序,然后重新划分子种群,再进行局部搜索,直到达到预定的收敛条件,例如达到混合迭代次数、指定迭代次数内青蛙没有跳跃等。2、特征选择原理不管是信号数据还是特征数据,当数据量增加到一定程度时,都会对模型的建立产生。数据一般存在强相关、弱相关和无关三种特征,除此之外特征之间也存在相关性,这些特征称为冗余特征。这些无关特征、冗余特征的存在,不仅会降低降低数据挖掘和模式识别的性能,还会数据处理的复杂度。解决特征过多的一个方法就是特征选择。特征选择指从原始特征集F={f1,f2,…,fn}中选择一个特征子集S={f1,f2,…,fm},满足(m<<n)。其中:n为原始特征集的维度;m为特征子集的维度。特征选择的目标是在不改变原始特征集性质的前提下,从中选择一部分特征,组成一个新的特征空间。一个典型的特征选择方法包括四个基本步骤,它的过程被分为:生成过程,评估函数,停止准则和验证过程。生成过程是一个搜索过程,评估函数是评估正在检查的子集,停止准则是决定特征选择何时停止,验证过程是检查子集是否有效。可将一个特征选择问题看做一个最优化问题,优化的最终目的是得到一个维度足够小但能有效识别目标的特征子集。特征子集用一个含有m个由0到n-1之间的整数组成的无序不重复的序列来表示,序列中的每个数对应一个特征。显然,初始特征子集的维度越大,其对应的不同特征子集种类越多,并且两者之间呈指数关系。对于一个初始特征集维度为n,通过随机的方式生成一个特征子集,对应的序列记为:S={s1,s2,...,sm},s1,s2,...,sm∈{0,1,...,n-1}。特征子集有2N种不同的的组合,特征选择就是要从这2N中组合中搜索到最优的组合。3、特征选择现有方法特征选择的结果直接影响分类器的复杂度、精度以及稳定性。随着巨大数据库的创建以及对良好机器学习技术的要求,大量特征被提取以更好地表征目标。然而,并非所有的特征都是有效的。因此,在开发模式分类系统时,选择合适的特征子集是至关重要的。目前对特征选择方法的研究主要集中于搜索策略和评价准则。按照特征子集的形成过程,特征选择的基本搜索策略可分为以下3种:全局最优、随机搜索和启发式搜索。全局搜索方法如分支定界法虽然能够得到最优的特征子集,但是存在计算复杂度高等问题。随机搜索方法如Relief系列算法具有较高的不确定性,需要进行较多循环,且参数的设置存在一定的困难。启发式搜索如单独最优组合、序列前向选择方法、广义序列前向选择方法(GSFS),序列后向选择方法(SBS),广义序列后向选择方法(GSBS),增l去r选择方法,广义增l去r选择方法,浮动搜索方法等。启发式搜索策略虽然效率高,但是以牺牲全局最优为代价。一个具体的搜索算法会采用两种或多种基本搜索策略,例如遗传算法是基于随机搜索和启发式搜索算法。特征选择因为搜索空间大和特征之间具有相关性的问题,使其具有很大的挑战性。目前,大量的有效特征选择方法被提出,但是在实际的应用中存在着很多不足。大部分的特征选择方法存在局部最优或者是计算复杂度高的问题。
技术实现思路
本专利技术所要解决的技术问题是,提供一种能够提高数据挖掘与模式识别效率的基于混洗蛙跳的特征选择方法。本专利技术所采用的技术方案是:一种基于混洗蛙跳的特征选择方法,包括如下步骤:1)输入一个初始特征集维度为M的数据,每个特征包含有若干个样本;2)对青蛙种群进行初始化,并确定算法最大迭代次数;3)将青蛙个体的位置利用适应度函数进行适应度计算,适应度函数表达式为:这里S是特征子集,si和sj分别表示特征子集S中的第i和第j个特征,L表示样本数据对应的目标类标签,I(si;L)表示特征子集S中第i个特征与目标类标签的平均互信息量,I(si;sj)表示特征子集S中第i个特征与第j个特征的平均互信息量。4)按照青蛙个体的适应度值对整个青蛙种群进行降序排序,并按照模因分组法对青蛙种群进行分组,将青蛙种群分为p组,每组有q只青蛙,其中p和q满足青蛙的数量N=p*q的关系,确定每组中的组内最优青蛙、组内最差青蛙以及整个青蛙种群中的全局最优青蛙;5)每组中首先利用组内最优青蛙更新组内最差青蛙,若发现更新后的组内最差青蛙的适应度值优于更新前的最差青蛙的适应度值,且满足优化的约束条件,则完成一次更新过程;否则,采用全局最优青蛙更新,若更新后的组内最差青蛙的适应度值优于更新前的最差青蛙的适应度值,且满足特征子集内特征不重复的约束条件,则完成更新过程;若依然无法更新成功,则采用随机更新的方式更新组内最优青蛙,迭代次数自加1,得到更新后的青蛙种群;6本文档来自技高网
...

【技术保护点】
1.一种基于混洗蛙跳的特征选择方法,其特征在于,包括如下步骤:1)输入一个初始特征集维度为M的数据,每个特征包含有若干个样本;2)对青蛙种群进行初始化,并确定算法最大迭代次数;3)将青蛙个体的位置利用适应度函数进行适应度计算,适应度函数表达式为:

【技术特征摘要】
1.一种基于混洗蛙跳的特征选择方法,其特征在于,包括如下步骤:1)输入一个初始特征集维度为M的数据,每个特征包含有若干个样本;2)对青蛙种群进行初始化,并确定算法最大迭代次数;3)将青蛙个体的位置利用适应度函数进行适应度计算,适应度函数表达式为:这里S是特征子集,si和sj分别表示特征子集S中的第i和第j个特征,L表示样本数据对应的目标类标签,I(si;L)表示特征子集S中第i个特征与目标类标签的平均互信息量,I(si;sj)表示特征子集S中第i个特征与第j个特征的平均互信息量。4)按照青蛙个体的适应度值对整个青蛙种群进行降序排序,并按照模因分组法对青蛙种群进行分组,将青蛙种群分为p组,每组有q只青蛙,其中p和q满足青蛙的数量N=p*q的关系,确定每组中的组内最优青蛙、组内最差青蛙以及整个青蛙种群中的全局最优青蛙;5)每组中首先利用组内最优青蛙更新组内最差青蛙,若发现更新后的组内最差青蛙的适应度值优于更新前的最差青蛙的适应度值,且满足优化的约束条件,则完成一次更新过程;否则,采用全局最优青蛙更新,若更新后的组内最差青蛙的适应度值优于更新前的最差青蛙的适应度值,且满足特征子集内特征不重复的约束条件,则完成更新过程;若依然无法更新成功,则采用随机更新的方式更新组内最优青蛙,迭代次数自加1,得到更新后的青蛙种群;6)对更新后的青蛙种群重复步骤4)到步骤5),直到迭代次数达到最大迭代次数,此时得到的青蛙种群中全局最优青蛙的位置即为最佳的特征子集。2.根据权利要求1所述的一种基于混洗蛙跳的特征选择方法,其特征在于,步骤...

【专利技术属性】
技术研发人员:张涛丁碧云赵鑫
申请(专利权)人:天津大学
类型:发明
国别省市:天津,12

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1