买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明公布】基于Filter和Wrapper选择算法的特征选择方法_电子科技大学_201810287707.3 

申请/专利权人:电子科技大学

申请日:2018-04-03

公开(公告)日:2018-09-07

公开(公告)号:CN108509996A

主分类号:G06K9/62(2006.01)I

分类号:G06K9/62(2006.01)I

优先权:

专利状态码:失效-发明专利申请公布后的驳回

法律状态:2021.02.23#发明专利申请公布后的驳回;2018.10.09#实质审查的生效;2018.09.07#公开

摘要:本发明公开了一种基于Filter和Wrapper选择算法的特征选择方法,其包括导入全部特征子集,采用方差法筛选发散特征,采用Pearson相关系数法筛选非冗余特征,采用特征空间搜索方法生成新的特征子集,采用神经网络训练学习模型,构建特征子集的评价标准,输出特征子集。本发明结合了Filter选择算法和Wrapper选择算法的优点,利用二者的互补特性,提高了算法效率的同时,减少了计算成本。

主权项:1.一种基于Filter和Wrapper选择算法的特征选择方法,其特征在于,包括以下步骤:A、导入全部特征子集,设置初始参数;B、采用方差法计算数据集中每个特征的均值和方差,剔除特征不发散的特征;C、采用Pearson相关系数法计算步骤B筛选后特征变量与目标变量的Pearson相关系数,剔除冗余特征;D、将步骤C筛选后的全部特征子集作为完整的特征空间,采用改进的LVW特征选择算法进行处理;E、采用特征空间搜索方法生成新的特征子集;F、采用神经网络训练学习模型;G、采用交叉验证法计算步骤E生成的新的特征子集在步骤F生成的学习模型中产生的误差;H、将当前特征子集的误差作为评价标准比较步骤G得到的误差;I、判断当前特征子集是否为空集;若是,则将方差阈值递进一个方差步长、相关系数递进一个相关系数步长,返回步骤B;若否,则得到完成选择的特征子集。

全文数据:基于FiIter和Wrapper选择算法的特征选择方法技术领域[0001]本发明属于机器学习技术领域,具体涉及一种基于FiIter和Wrapper选择算法的特征选择方法。背景技术[0002]特征选择是机器学习、模式识别和统计学等领域的重要研究课题之一。特征选择是指选择获得相应模型和算法最好性能的特征集。通常我们构建机器学习算法时,可以收集很多维度的数据信息,但是当特征维度达到一定量级后,将全部特征放入到算法中会带来维度灾难,算法在有限的计算能力和时间内很难达到收敛,甚至可能会计算溢出。面对这种问题时,特征选择就变得十分重要。[0003]—般来说,数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限而已,所以,特征选择在机器学习中占有相当重要的地位。随着计算机技术在人类社会各个领域的应用,如社交网络、组合化学等,现实中越来越多的数据集合具有成千上万维的特征空间。但是,在实际情况下,真正能够表征事物本质的特征只是其中一小部分,这一小部分特征被湮没在大量的不相关、冗余特征之中,严重地影响了机器学习算法的性能。迄今为止,研究人员将特征选择与机器学习进行结合,在视频事件监测、生物医疗诊断等领域进行了广泛的应用。[0004]根据与机器学习算法相结合的方式,特征选择算法可以分为三类:Filter模式、Wrapper模式和Embedded模式。从特征选择算法的输出形式上可以分为特征排序FeatureRanking和子集选择SubsetSelection两大类。特征排序是根据一定的度量标准如距离、相关性等给出特征重要程度的先后顺序,后续学习算法通过设定阈值等方法截取最前面的多个特征作为输入。例如Relief系列特征选择算法均属于此类。特征子集选择是从规定的特征空间中选取与给定模型相符的最优特征子集。[0005]Wrapper模式包裹法就是选定特定算法,然后再根据算法效果来比较特征集合。即通过不断的启发式方法来搜索特征子集,将每次搜索的特征子集放入学习模型中训练,根据模型的比较特征子集的优劣。[0006]Embedded模式嵌入法)中特征选择算法作为机器学习的内部组成,特征选择过程与模型学习过程同步完成。例如在决策树问题中,算法在选取决策特征时,使用子树的信息增益标准选择分类能力最强的特征。[0007]Filter模式过滤法特征选择算法与具体的算法是相互独立的,如图2所示。按照发散性或相关性对各个特征进行评分,设定阈值或者选择阈值的个数,完成特征选择。主要的方法有方差法、相关系数法、相互性方法等。[0008]现有技术具有以下缺陷:[0009]I.Embedded模式的方法依赖于机器学习算法,适用性不高。[00Ί0]2.Wrapper选择算法效率较低,因为其需要用每一个候选特征子集训练模型进行评估。在该模式中,由于穷举所有特征集合是不可能实现的,因此启发式搜索翻翻被广泛地用于特征子集的快速搜索,但是这种方法搜索的结果并不能保证最优。例如:采用前向搜索方法,给定特征集合中{Χ1,Χ2,···,Χη},对这η个特征子集进行评价假定{X2}最优,于是将{Χ2}作为第一轮的候选集;然后在上一轮的选定集中加入一个特征,构成包含两个特征的候选子集,假定在这η-1个候选特征子集中发现{Χ2,Χ3}最优,且由于{Χ2};于是将{Χ2,Χ3}作为本轮的选定集;假如在第三轮时发现Χ5优于Χ6,于是选定集为{Χ2,Χ3,Χ5},然而第四轮却可能是{Χ2,Χ3,Χ6,Χ9}比所有的{Χ2,Χ3,Χ5,Xi}都更优。[0011]3.Filter选择算法效率较高,但是其很难完全剔除冗余特征,并且容易将一些内部依赖性特征当作冗余特征剔除,即一些特征作为单个处理时其区分性能不高,而作为整体却具备很强的区分能力。发明内容[0012]本发明的发明目的是:为了解决现有技术中的以上问题,本发明提出了一种基于FiIter和Wrapper选择算法的特征选择方法。[0013]本发明的技术方案是:一种基于FiIter和Wrapper选择算法的特征选择方法,包括以下步骤:[00Μ]Α、导入全部特征子集,设置初始参数;[0015]Β、采用方差法计算数据集中每个特征的均值和方差,剔除特征不发散的特征;[0016]C、采用Pearson相关系数法计算步骤B筛选后特征变量与目标变量的Pearson相关系数,剔除冗余特征;[0017]D、将步骤C筛选后的全部特征子集作为完整的特征空间,采用改进的LVW特征选择算法进彳丁处理;[0018]E、采用特征空间搜索方法生成新的特征子集;[0019]F、采用神经网络训练学习模型;[0020]G、采用交叉验证法计算步骤E生成的新的特征子集在步骤F生成的学习模型中产生的误差;[0021]H、将当前特征子集的误差作为评价标准比较步骤G得到的误差;[0022]I、判断当前特征子集是否为空集;若是,则将方差阈值递进一个方差步长、相关系数递进一个相关系数步长,返回步骤B;若否,则得到完成选择的特征子集。[0023]进一步地,所述步骤B中采用方差法计算数据集中每个特征的均值和方差的计算公式具体为:[0026]其中,芝表示特征的均值,X1表示第i个特征,S2表示特征的方差,η表示特征数量。[0027]进一步地,所述步骤B中剔除特征不发散的特征具体为:判断特征的方差是否小于设定的方差阈值;若是,则将该特征从数据集中删除;若否,则保留该特征。[0028]进一步地,所述步骤C中采用Pearson相关系数法计算步骤B筛选后特征变量与目标变量的Pearson相关系数的计算公式具体为:[0031]其中,covX,Y表示特征变量X与目标变量Y的协方差,Px,γ表示特征变量X与目标变量Y的Pearson相关系数,σχσγ分别表示特征变量X与目标变量Y的标准差。[0032]进一步地,所述步骤C中剔除冗余特征具体为:判断特征与目标变量的Pearson相关系数是否小于设定的相关系数阈值;若是,则将该特征从数据集中删除;若否,则保留该特征。[0033]进一步地,所述步骤E采用特征空间搜索方法生成新的特征子集具体为:采用随机搜索方法,判断计数参数是否大于设定的停止条件控制参数;若是,则进行步骤I;若否,则进行下一步骤。[0034]进一步地,所述步骤H将当前特征子集的误差作为评价标准比较步骤G得到的误差,具体包括以下分步骤:[0035]H1、判断新的特征子集的误差是否小于当前特征子集的误差且新的特征子集的特征个数小于学习模型允许的最大特征个数;若是,则将计数参数归零、当前特征子集的误差设定为新的特征子集的误差、当前特征子集的特征个数设定为新的特征子集的特征个数、新的特征子集作为当前特征子集;若否,则将计数参数递进1,返回步骤E;[0036]H2、判断新的特征子集的误差是否等于当前特征子集的误差且新的特征子集的特征个数小于当前特征子集的的特征个数;若是,则将计数参数归零、当前特征子集的误差设定为新的特征子集的误差、当前特征子集的特征个数设定为新的特征子集的特征个数、新的特征子集作为当前特征子集;若否,则将计数参数递进1,返回步骤E。[0037]本发明具有以下有益效果:[0038]1本发明采用两阶段特征选择方法能为多种学习算法提供特征选择支持;[0039]2本发明结合了Filter选择算法和Wrapper选择算法的优点,利用二者的互补特性,提高了算法效率的同时,减少了计算成本。[0040]⑶本发明对LVW算法进行了改进,避免在训练模型时出现过拟合的情况。附图说明[0041]图1是本发明的基于FiIter和Wrapper选择算法的特征选择方法的流程示意图。[0042]图2是本发明实施例中基于FiIter和Wrapper选择算法的特征选择方法的具体流程不意图。具体实施方式[0043]为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。[0044]如图1所示,为本发明的基于Filter和Wrapper选择算法的特征选择方法的流程示意图。一种基于FiIter和Wrapper选择算法的特征选择方法,包括以下步骤:[0045]A、导入全部特征子集,设置初始参数;[0046]B、采用方差法计算数据集中每个特征的均值和方差,剔除特征不发散的特征;[0047]C、采用Pearson相关系数法计算步骤B筛选后特征变量与目标变量的Pearson相关系数,剔除冗余特征;[0048]D、将步骤C筛选后的全部特征子集作为完整的特征空间,采用改进的LVW特征选择算法进彳丁处理;[0049]E、采用特征空间搜索方法生成新的特征子集;[0050]F、采用神经网络训练学习模型;[0051]G、采用交叉验证法计算步骤E生成的新的特征子集在步骤F生成的学习模型中产生的误差;[0052]H、将当前特征子集的误差作为评价标准比较步骤G得到的误差;[0053]I、判断当前特征子集是否为空集;若是,则将方差阈值递进一个方差步长、相关系数递进一个相关系数步长,返回步骤B;若否,则得到完成选择的特征子集。[00M]如图2所示,为本发明实施例中基于FiIter和Wrapper选择算法的特征选择方法的具体流程示意图。[0055]在本发明的一个可选实施例中,上述步骤A设置初始参数包括方差法中的方差阈值A,方差步长为a;PearS〇n相关系数法的相关系数阈值为B,相关系数步长为b;停止条件控制参数T,计数参数初始值t为零;允许出现的学习模型的最大误差Emax;为了避免训练的模型出现过拟合的情况,模型允许的最大特征个数Nmax,中间参数k,初始值与Nmax相同,中间参数E,初始值与Emax相同。[0056]本发明基于Filter和Wrapper选择算法的特征选择方法包括两个阶段:阶段一包括采用方差法和Pearson相关系数法处理得到特征子集,阶段二包括采用特征空间的搜索方法、模型学习算法及特征子集的评价标准进行处理,最终得到选择的特征子集。[0057]在本发明的一个可选实施例中,上述步骤B采用方差法计算数据集中每个特征的均值和方差,计算公式具体为:[0060]其中,f表示特征的均值,Xi表示第i个特征,S2表示特征的方差,η表示特征数量。[0061]再根据步骤A中设置的方差阈值A剔除特征不发散的特征,具体为:判断特征的方差是否小于设定的方差阈值;若是,则将该特征从数据集中删除;若否,则保留该特征。由于第二阶段会对第一阶段筛选后的特征进行更深一步的剔除,为了避免剔除掉特征发散的特征,本发明将方差阈值设置尽可能小,从而剔除方差小于方差阈值的特征。[0062]在本发明的一个可选实施例中,上述步骤C中特征变量是指学习模型中的输入变量,目标变量是指学习模型中的输出变量。采用Pearson相关系数法计算步骤B筛选后特征变量与目标变量的Pearson相关系数,计算公式具体为:[0005]其中,covX’Y表示特征变量X与目标变量Y的协方差,Ρχ,γ表示特征变量X与目标变量Y的Pearson相关系数,σχσγ分别表示特征变量X与目标变量Y的标准差。[0066]再根据步骤A中设置的Pearson相关系数法的相关系数阈值B剔除冗余特征,具体为:判断特征与目标变量的Pearson相关系数是否小于设定的相关系数阈值;若是,则将该特征从数据集中删除;若否,则保留该特征。由于第二阶段会对第一阶段筛选后的特征进行更深一步的剔除,所以设定一个尽可能小的相关系数阈值B,剔除掉相关系数比阈值小的特征。这里设定的阈值需尽可能小,避免将一些内部依赖性特征当作冗余特征剔除。[0067]在本发明的一个可选实施例中,上述步骤D将步骤B和C筛选后剩余的全部特征子集作为完整的特征(记为M空间输入到改进的的LVWLasVegasWrapper特征选择算法中。[0068]在本发明的一个可选实施例中,上述步骤E采用特征空间搜索方法生成新的特征子集具体为:采用随机搜索方法随机产生新的特征子集,记为H,特征个数记为m;为了减少计算成本,设置停止条件控制参数T,判断计数参数是否大于设定的停止条件控制参数;若是,则进行步骤I;若否,则进行下一步骤。[0069]在本发明的一个可选实施例中,上述步骤F采用神经网络训练学习模型,本发明不限制模型的学习算法使用等,包括贝叶斯网络、遗传算法等。[0070]在本发明的一个可选实施例中,上述步骤G采用交叉验证法计算步骤E生成的新的特征子集在步骤F生成的学习模型中产生的误差,记为Eh,输出子集记为H*。[0071]在本发明的一个可选实施例中,上述步骤H将当前特征子集的误差作为评价标准比较步骤G得到的误差,具体包括以下分步骤:[0072]H1、判断新的特征子集H的误差Eh是否小于当前特征子集的误差E且新的特征子集的特征个数m小于学习模型允许的最大特征个数Nmax;若是,则将计数参数t归零t=0、当前特征子集的误差E设定为新的特征子集的误差EhE=Eh、当前特征子集的特征个数k设定为新的特征子集的特征个数mk=m、新的特征子集H作为当前选择的特征子集Η*H*=H;若否,则将计数参数t递进It=t+l,返回步骤E;[0073]H2、判断新的特征子集H的误差Eh是否等于当前特征子集的误差E且新的特征子集的特征个数m小于当前特征子集的的特征个数k;若是,则将计数参数t归零t=0、当前特征子集的误差E设定为新的特征子集的误差EhE=Eh、当前特征子集的特征个数k设定为新的特征子集的特征个数mk=m、新的特征子集H作为当前选择的特征子集Η*H*=H;若否,则将计数参数t递进It=t+l,返回步骤E;[0074]在本发明的一个可选实施例中,上述步骤I判断当前特征子集H*是否为空集;若是,则将方差阈值A递进一个方差步长aA=A+a、相关系数递B进一个相关系数步长bB=B+b,返回步骤B;若否,则得到完成选择的特征子集H*。[0075]本发明提出的两阶段特征选择方法,结合了FiIter选择算法和Wrapper选择算法的优点。因为第二阶段Wrapper选择算法将对第一阶段筛选后的特征进行更深一步的剔除,可以减少第一阶段Filter选择算法在选择过程中将内部依赖性特征当作冗余特征剔除情况的出现;同时第一阶段采用方差法和Pearson相关系数法剔除特征不发散的特征和冗余的特征,以此弥补Wrapper选择算法效率低的缺点。[0076]本发明第二阶段采用Wrapper选择算法,其中采用随机搜索策略搜索子集空间,而每次搜索的特征子集评价都需要训练模型,为了减少计算成本,本发明在第一阶段采用了方差法和Pearson相关系数法对特征进行初步的剔除,并且在第二阶段的算法中设置了条件控制参数T。[0077]本发明提出的两阶段选择方法,不限制模型学习算法的使用,包括支持向量机、蚁群算法等。[0078]本发明提出的两阶段特征选择方法,第二阶段在Wrapper模式中的LVWLasVegasWrapper选择算法的基础上,加入一个限制条件参数Nmax限制输出特征子集的特征个数,避免Wrapper选择算法容易出现的过拟合的情况。[0079]本领域的普通技术人员将会意识到,这里所述的实施例是为了帮助读者理解本发明的原理,应被理解为本发明的保护范围并不局限于这样的特别陈述和实施例。本领域的普通技术人员可以根据本发明公开的这些技术启示做出各种不脱离本发明实质的其它各种具体变形和组合,这些变形和组合仍然在本发明的保护范围内。

权利要求:I.一种基于FiIter和Wrapper选择算法的特征选择方法,其特征在于,包括以下步骤:A、导入全部特征子集,设置初始参数;B、采用方差法计算数据集中每个特征的均值和方差,剔除特征不发散的特征;C、采用Pearson相关系数法计算步骤B筛选后特征变量与目标变量的Pearson相关系数,剔除冗余特征;D、将步骤C筛选后的全部特征子集作为完整的特征空间,采用改进的LVW特征选择算法进行处理;E、采用特征空间搜索方法生成新的特征子集;F、采用神经网络训练学习模型;G、采用交叉验证法计算步骤E生成的新的特征子集在步骤F生成的学习模型中产生的误差;H、将当前特征子集的误差作为评价标准比较步骤G得到的误差;I、判断当前特征子集是否为空集;若是,则将方差阈值递进一个方差步长、相关系数递进一个相关系数步长,返回步骤B;若否,则得到完成选择的特征子集。2.如权利要求1所述的基于FiIter和Wrapper选择算法的特征选择方法,其特征在于,所述步骤B中采用方差法计算数据集中每个特征的均值和方差的计算公式具体为:其中,2表示特征的均值,Xi表示第i个特征,S2表示特征的方差,η表示特征数量。3.如权利要求2所述的基于FiIter和Wrapper选择算法的特征选择方法,其特征在于,所述步骤B中剔除特征不发散的特征具体为:判断特征的方差是否小于设定的方差阈值;若是,则将该特征从数据集中删除;若否,则保留该特征。4.如权利要求3所述的基于FiIter和Wrapper选择算法的特征选择方法,其特征在于,所述步骤C中采用Pearson相关系数法计算步骤B筛选后特征变量与目标变量的Pearson相关系数的计算公式具体为:其中,covX,Y表示特征变量X与目标变量Y的协方差,Ρχ,γ表示特征变量X与目标变量Y的Pearson相关系数,σχσγ分别表示特征变量X与目标变量Y的标准差。5.如权利要求4所述的基于FiIter和Wrapper选择算法的特征选择方法,其特征在于,所述步骤C中剔除冗余特征具体为:判断特征与目标变量的Pearson相关系数是否小于设定的相关系数阈值;若是,则将该特征从数据集中删除;若否,则保留该特征。6.如权利要求5所述的基于FiIter和Wrapper选择算法的特征选择方法,其特征在于,所述步骤E采用特征空间搜索方法生成新的特征子集具体为:采用随机搜索方法,判断计数参数是否大于设定的停止条件控制参数;若是,则进行步骤I;若否,则进行下一步骤。7.如权利要求6所述的基于FiIter和Wrapper选择算法的特征选择方法,其特征在于,所述步骤H将当前特征子集的误差作为评价标准比较步骤G得到的误差,具体包括以下分步骤:H1、判断新的特征子集的误差是否小于当前特征子集的误差且新的特征子集的特征个数小于学习模型允许的最大特征个数;若是,则将计数参数归零、当前特征子集的误差设定为新的特征子集的误差、当前特征子集的特征个数设定为新的特征子集的特征个数、新的特征子集作为当前特征子集;若否,则将计数参数递进1,返回步骤E;H2、判断新的特征子集的误差是否等于当前特征子集的误差且新的特征子集的特征个数小于当前特征子集的的特征个数;若是,则将计数参数归零、当前特征子集的误差设定为新的特征子集的误差、当前特征子集的特征个数设定为新的特征子集的特征个数、新的特征子集作为当前特征子集;若否,则将计数参数递进1,返回步骤E。

百度查询: 电子科技大学 基于Filter和Wrapper选择算法的特征选择方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。