CN106650914A - 一种基于人工蜂群算法的数据特征选择方法 - Google Patents
一种基于人工蜂群算法的数据特征选择方法 Download PDFInfo
- Publication number
- CN106650914A CN106650914A CN201611162314.7A CN201611162314A CN106650914A CN 106650914 A CN106650914 A CN 106650914A CN 201611162314 A CN201611162314 A CN 201611162314A CN 106650914 A CN106650914 A CN 106650914A
- Authority
- CN
- China
- Prior art keywords
- colony algorithm
- value
- bee colony
- gathering honey
- artificial bee
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Complex Calculations (AREA)
Abstract
本发明涉及一种基于人工蜂群算法的数据特征选择方法,包括以下步骤:确定人工蜂群算法的控制参数,将获得的数据集进行预约归一化处理;初始化产生一组采蜜蜂位置,依据选择的特征选择适应度函数计算每一个采蜜蜂的适应度值,并将其对应的开采次数置为零;基于人工蜂群算法的更新方式,更新采蜜蜂位置,计算新个体的适应度值并更新其开采次数;计算选择概率模型函数,并选择一个采蜜蜂作为观察蜂,更新观察蜂位置,计算新个体的适应度值并更新其开采次数;观察开采次数,实施采蜜蜂位置更新机制;保留目前为止最优解位置,即代表最优特征子集;若达到最大迭代次数,则输出最优特征子集;否则重复以上步骤。本发明能够降低特征选择方法的复杂性。
Description
技术领域
本发明涉及数据处理技术领域,特别是涉及一种基于人工蜂群算法的数据特征选择方法。
背景技术
近年来,数据挖掘技术在商业智能、生物医疗和基因检测等领域得到了的广泛应用,而如何从大规模数据中进行降维,以得到有效的简化数据,正变得越来越重要。在许多实际应用中,存储于数据库中的数据集往往拥有成千甚至上万个特征,但并不是所有的特征都对发现隐藏于数据背后的重要信息有帮助。由于只有小部分特征代表着整个高维特征空间的分布特性,这些需要被删选掉的特征,不仅在学习算法对知识发现的过程中增加了干扰,也增加了学习结果的复杂性和不可解释性。特征选择作为一种关键的数据分析方法和预处理手段,在对数据进行知识挖掘之前,通过从原始数据特征集合中选择其中的一个最优特征子集,不但可以消除数据噪声的干扰、剔除冗余和无关的特征,也可以大大降低后续数据处理的复杂度,减小运行时间,并提高数据分析的准确性和有效性。目前,特征选择已成功地应用于图像分类、聚类分析、模式识别和图片检索等场合,帮助研究人员从大规模数据集中挑选出最好的一组特征子集,简化应用过程,从而更好地理解学习算法的结果。
特征选择方法可以分为过滤式和封装式两种模式。过滤式是基于数据的统计特性,如计算信息熵、距离等度量指标来赋予各个特征不同的权重,以此来决定特征是否应该被保留或剔除,所以是一种独立于学习算法之外的特征选择方法。与过滤式不同的是,封装式则利用学习算法来甄别出有用的特征,将特征选择问题建模为一个典型的组合优化问题,通过基于学习算法的特征选择搜索方法,寻找到最优特征子集。总的来说,封装式可以比过滤式取得更好的学习结果,这是因为封装式建立了特征与学习算法之间的关系,可以为不同的学习算法选择最适合的特征子集,从而大大提高学习算法的准确率。不过,封装式往往会比过滤式占用更多的运行时间。
不管是过滤式还是封装式,现有的特征选择搜索方法存在着高复杂度和低效率的缺陷。例如,暴力搜索方法通过评估特征集合的每一个特征子集来达到选择最优特征子集的目的。然而,面对拥有较多特征的大数据集来说,这是不可能实现的,因此,在实际应用中很少采用这种方法。此外,在利用封装式来选择最优特征子集时,并没有考虑对最优特征个数的最小化。
发明内容
本发明所要解决的技术问题是提供一种基于人工蜂群算法的数据特征选择方法,能够降低特征选择方法的复杂性。
本发明解决其技术问题所采用的技术方案是:提供一种基于人工蜂群算法的数据特征选择方法,包括以下步骤:
(1)确定人工蜂群算法的控制参数,将获得的数据集进行预约归一化处理;
(2)初始化产生一组采蜜蜂位置,依据选择的特征选择适应度函数计算每一个采蜜蜂的适应度值,并将其对应的开采次数置为零;
(3)基于人工蜂群算法的更新方式,更新采蜜蜂位置,计算新个体的适应度值并更新其开采次数;
(4)计算选择概率模型函数,依概率模型函数选择一个采蜜蜂作为观察蜂,更新观察蜂位置,计算新个体的适应度值并更新其开采次数;
(5)观察开采次数,实施采蜜蜂位置更新机制;
(6)保留目前为止最优解位置,即代表最优特征子集;
(7)若达到最大迭代次数,则输出最优特征子集;否则重复步骤(2)~步骤(6)。
所述步骤(1)的具体为:对数据集中的每一维特征值映射至[0,1]范围,即f'=(f-f min)/(f max-f min),其中,f'为该维特征映射后的值,f为该维特征未映射前的值,fmin为该维特征在数据集中的最小值,f max为该维特征在数据集中的最大值。
所述步骤(2)中初始化产生一组采蜜蜂位置具体为:针对特征选择这一组合优化问题,对采蜜蜂位置采用二进制编码,编码长度值代表数据集中原始特征的总个数,用“1”表示该位代表的特征被选中,用“0”表示该位代表的特征未被选中。
所述步骤(2)中每一个采蜜蜂的适应度值计算方式为Fit=w*(1-Acc)+(1-w)*(N1/N2),其中,Fit为适应度函数值,Acc为基于数据集利用10-fold交叉验证法计算得到的学习算法的准确率,N1为采蜜蜂位置中置为“1”的个数,N2为数据集中原始特征的总个数;w为权重值,取值范围为[0,1]。
所述步骤(3)中基于人工蜂群算法的更新方式为其中,R为0~1的随机数,xij代表第i个采蜜蜂第j个位置的值,vij为xij更新后的值,NOT代表取反逻辑操作。
所述的步骤(4)中概率模型函数为其中,Fiti为第i个采蜜蜂的适应度值,pi为第i个采蜜蜂被选中的概率。
所述的步骤(5)具体为:观察采蜜蜂对应的开采次数,如果开采次数大于或等于最大开采次数,则将此采蜜蜂的位置替换为一个重新随机初始化的位置。
有益效果
由于采用了上述的技术方案,本发明与现有技术相比,具有以下的优点和积极效果:本发明利用人工蜂群算法,在整个特征空间进行优化搜索,极大地提高了搜索性能,降低了特征选择方法的复杂性。本发明在提高学习算法准确率的同时,尽可能地减少最优特征的个数,从而帮助研究人员减少后期数据挖掘的难度,提高了学习算法结果的可解释性。
附图说明
图1是本发明基于人工蜂群算法的数据特征选择方法的流程图;
图2是本发明的采蜜蜂位置采用二进制编码的初始化示意图。
具体实施方式
下面结合具体实施例,进一步阐述本发明。应理解,这些实施例仅用于说明本发明而不用于限制本发明的范围。此外应理解,在阅读了本发明讲授的内容之后,本领域技术人员可以对本发明作各种改动或修改,这些等价形式同样落于本申请所附权利要求书所限定的范围。
本发明的实施方式涉及一种基于人工蜂群算法的数据特征选择方法,本发明将人工蜂群算法(Artificial Bee Colony Algorithm)用于求解数据特征选择这一典型组合优化问题,通过设计带有最优特征个数影响的适应度函数,不仅可以提高学习算法的准确率,而且可以最大程度地减少最优特征的个数,降低后续数据分析与挖掘的难度与复杂度。如图1所示,本发明具体包括以下步骤:
(1)确定人工蜂群算法控制参数,将获得的数据集进行归一化处理。具体为:设置人工蜂群算法的控制参数:采蜜蜂个数=观察蜂个数=NP,最大开采次数Limit,最大迭代次数Maxgen。将获得的数据集进行归一化处理:对数据集中的每一维特征值映射至[0,1]范围,即f'=(f-f min)/(f max-f min),其中,f'为该维特征映射后的值,f为该维特征未映射前的值,f min为该维特征在数据集中的最小值,f max为该维特征在数据集中的最大值。
(2)初始化产生一组采蜜蜂位置,依据选择的特征选择适应度函数计算每一个采蜜蜂的适应度值,并将其对应的开采次数trail置为0:
具体地说,针对特征选择这一组合优化问题,对采蜜蜂位置采用二进制编码,编码长度值代表数据集中原始特征的总个数,如图2所示,用“1”表示该位代表的特征被选中;用“0”表示该位代表的特征未被选中。随机初始化每一个采蜜蜂位置,根据特征选择适应度函数,赋予每一个采蜜蜂适应度值,并将其开采次数trial置为0,即trail=0。其中,特征选择适应度函数的计算方式为:
Fit=w*(1-Acc)+(1-w)*(N1/N2) (1)
其中,Fit为适应度函数值,Acc为基于数据集利用10-fold交叉验证法计算得到的学习算法(可以为分类算法、回归算法和聚类算法等)的准确率,也就是将数据集随机分成等数目的10份数据子集,每一次将其中一份作为测试集,剩余九份为训练集,以此计算学习算法准确率,依次轮流计算10次,取平均值为最终学习算法准确率Acc;N1为采蜜蜂位置中置为“1”的个数,而N2为数据集中原始特征的总个数;w为权重值,其作用是平衡学习算法准确率和特征个数之间的矛盾,取值范围为[0,1]。
(3)基于人工蜂群算法(Artificial Bee Colony Algorithm)的更新方式,更新采蜜蜂位置,计算新个体的适应度值并更新其开采次数:
具体来说,人工蜂群算法(Artificial Bee Colony Algorithm)的更新方式为:
其中,R为0~1的随机数,xij代表第i个采蜜蜂第j个位置的值,vij为xij更新后的值。NOT代表取反逻辑操作,即将“1”变为“0”,将“0”变为“1”。
如果更新后个体适应度值大于原来个体,则将其对应的开采次数trail加1。
(4)计算选择概率模型函数,依概率模型选择一个采蜜蜂作为观察蜂,更新观察蜂位置,计算新个体的适应度值并更新其开采次数trail:
选择概率模型函数的计算方式为:
其中,Fiti为第i个采蜜蜂的适应度值,pi为第i个采蜜蜂被选中的概率。
选中某个采蜜蜂后,将其作为观察蜂,根据式(2),更新观察蜂位置。如果更新后个体适应度值大于原来个体,则将其对应的开采次数trail加1。
(5)观察开采次数,实施采蜜蜂位置更新机制:
观察采蜜蜂对应的开采次数trail,如果开采次数trail大于或等于最大开采次数Limit,则将此采蜜蜂的位置替换为一个重新随机初始化的位置,即一段随机初始化的二进制编码。
(6)保留目前为止最优解位置,即代表最优特征子集。
(7)若达到最大迭代次数,则转至步骤(8);否则,重复步骤(2)~步骤(6)。
(8)输出最优特征子集。
以下,将本发明应用于医学疾病的数据分类,并进行测试,数据来源于UCI标准数据库,表1展示了各个数据的特性。
数据名称 | 特征数目 | 实例数目 | 类别数目 |
Heart Disease | 13 | 270 | 2 |
Pima | 8 | 768 | 2 |
Parkinson | 22 | 195 | 2 |
Breast Cancer | 30 | 569 | 2 |
表1
表2为采用本发明对医学疾病的数据分类的结果。测试的目标是提高分类器的准确率和减少所用特征的个数。可以看出,本发明的数据分类准确率远远高于基于原始特征集合的准确率,与此同时,学习算法所采用的特征数目也大大小于原始特征数目。表明本发明在大大提高学习算法准确率的同时,可以有效地减少使用的特征数目,达到了预期的目的。
表2
不难发现,本发明利用人工蜂群算法来对特征选择这个典型组合优化问题进行优化求解,此外,考虑到在提高学习算法准确率的同时,也要实现对最优特征个数的最小化,将最优特征个数的影响也加入到问题的求解,从而克服了传统特征选择搜索方法计算成本高,效率低下的缺陷,在保证学习算法的准确率的同时也减少了最优特征的个数,大大减少了研究人员后期数据处理的复杂度和工作量。
Claims (7)
1.一种基于人工蜂群算法的数据特征选择方法,其特征在于,包括以下步骤:
(1)确定人工蜂群算法的控制参数,将获得的数据集进行预约归一化处理;
(2)初始化产生一组采蜜蜂位置,依据选择的特征选择适应度函数计算每一个采蜜蜂的适应度值,并将其对应的开采次数置为零;
(3)基于人工蜂群算法的更新方式,更新采蜜蜂位置,计算新个体的适应度值并更新其开采次数;
(4)计算选择概率模型函数,依概率模型函数选择一个采蜜蜂作为观察蜂,更新观察蜂位置,计算新个体的适应度值并更新其开采次数;
(5)观察开采次数,实施采蜜蜂位置更新机制;
(6)保留目前为止最优解位置,即代表最优特征子集;
(7)若达到最大迭代次数,则输出最优特征子集;否则重复步骤(2)~步骤(6)。
2.根据权利要求1所述的基于人工蜂群算法的数据特征选择方法,其特征在于,所述步骤(1)的具体为:对数据集中的每一维特征值映射至[0,1]范围,即f'=(f-fmin)/(fmax-fmin),其中,f'为该维特征映射后的值,f为该维特征未映射前的值,f min为该维特征在数据集中的最小值,fmax为该维特征在数据集中的最大值。
3.根据权利要求1所述的基于人工蜂群算法的数据特征选择方法,其特征在于,所述步骤(2)中初始化产生一组采蜜蜂位置具体为:针对特征选择这一组合优化问题,对采蜜蜂位置采用二进制编码,编码长度值代表数据集中原始特征的总个数,用“1”表示该位代表的特征被选中,用“0”表示该位代表的特征未被选中。
4.根据权利要求3所述的基于人工蜂群算法的数据特征选择方法,其特征在于,所述步骤(2)中每一个采蜜蜂的适应度值计算方式为Fit=w*(1-Acc)+(1-w)*(N1/N2),其中,Fit为适应度函数值,Acc为基于数据集利用10-fold交叉验证法计算得到的学习算法的准确率,N1为采蜜蜂位置中置为“1”的个数,N2为数据集中原始特征的总个数;w为权重值,取值范围为[0,1]。
5.根据权利要求1所述的基于人工蜂群算法的数据特征选择方法,其特征在于,所述步骤(3)中基于人工蜂群算法的更新方式为其中,R为0~1的随机数,xij代表第i个采蜜蜂第j个位置的值,vij为xij更新后的值,NOT代表取反逻辑操作。
6.根据权利要求1所述的基于人工蜂群算法的数据特征选择方法,其特征在于,所述的步骤(4)中概率模型函数为其中,Fiti为第i个采蜜蜂的适应度值,pi为第i个采蜜蜂被选中的概率。
7.根据权利要求1所述的基于人工蜂群算法的数据特征选择方法,其特征在于,所述的步骤(5)具体为:观察采蜜蜂对应的开采次数,如果开采次数大于或等于最大开采次数,则将此采蜜蜂的位置替换为一个重新随机初始化的位置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611162314.7A CN106650914A (zh) | 2016-12-15 | 2016-12-15 | 一种基于人工蜂群算法的数据特征选择方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611162314.7A CN106650914A (zh) | 2016-12-15 | 2016-12-15 | 一种基于人工蜂群算法的数据特征选择方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106650914A true CN106650914A (zh) | 2017-05-10 |
Family
ID=58823570
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611162314.7A Pending CN106650914A (zh) | 2016-12-15 | 2016-12-15 | 一种基于人工蜂群算法的数据特征选择方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106650914A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107465664A (zh) * | 2017-07-07 | 2017-12-12 | 桂林电子科技大学 | 基于并行多人工蜂群算法和支持向量机的入侵检测方法 |
CN107622236A (zh) * | 2017-09-15 | 2018-01-23 | 安徽农业大学 | 基于蜂群与梯度提升决策树算法农作物病害诊断预警方法 |
KR101974455B1 (ko) * | 2017-12-22 | 2019-05-03 | 인천대학교 산학협력단 | 사회적 사물 인터넷을 기반으로 빅 데이터의 특징 선택 모델링 최적화 장치 및 방법 |
-
2016
- 2016-12-15 CN CN201611162314.7A patent/CN106650914A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107465664A (zh) * | 2017-07-07 | 2017-12-12 | 桂林电子科技大学 | 基于并行多人工蜂群算法和支持向量机的入侵检测方法 |
CN107465664B (zh) * | 2017-07-07 | 2020-04-24 | 桂林电子科技大学 | 基于并行多人工蜂群算法和支持向量机的入侵检测方法 |
CN107622236A (zh) * | 2017-09-15 | 2018-01-23 | 安徽农业大学 | 基于蜂群与梯度提升决策树算法农作物病害诊断预警方法 |
CN107622236B (zh) * | 2017-09-15 | 2020-12-04 | 安徽农业大学 | 基于蜂群与梯度提升决策树算法农作物病害诊断预警方法 |
KR101974455B1 (ko) * | 2017-12-22 | 2019-05-03 | 인천대학교 산학협력단 | 사회적 사물 인터넷을 기반으로 빅 데이터의 특징 선택 모델링 최적화 장치 및 방법 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Li et al. | Discriminatively boosted image clustering with fully convolutional auto-encoders | |
Bouyer et al. | An efficient hybrid clustering method based on improved cuckoo optimization and modified particle swarm optimization algorithms | |
Nandhini et al. | Improved crossover based monarch butterfly optimization for tomato leaf disease classification using convolutional neural network | |
Lei et al. | Protein complex identification through Markov clustering with firefly algorithm on dynamic protein–protein interaction networks | |
Hassanzadeh et al. | A new hybrid approach for data clustering using firefly algorithm and K-means | |
Hruschka et al. | Extracting rules from multilayer perceptrons in classification problems: A clustering-based approach | |
Abasi et al. | A text feature selection technique based on binary multi-verse optimizer for text clustering | |
Gao et al. | A novel hybrid PSO-K-means clustering algorithm using Gaussian estimation of distribution method and Lévy flight | |
Kianmehr et al. | Fuzzy clustering-based discretization for gene expression classification | |
CN111988329A (zh) | 一种基于深度学习的网络入侵检测方法 | |
CN106650914A (zh) | 一种基于人工蜂群算法的数据特征选择方法 | |
Murty et al. | Automatic clustering using teaching learning based optimization | |
Li et al. | Continual learning classification method and its application to equipment fault diagnosis | |
CN110334777A (zh) | 一种加权多视角无监督属性选择方法 | |
CN116386899A (zh) | 基于图学习的药物疾病关联关系预测方法及相关设备 | |
Karthikeyan et al. | A hybrid clustering approach using artificial bee colony (ABC) and particle swarm optimization | |
Castellano et al. | Generation of interpretable fuzzy granules by a double-clustering technique | |
CN112633169B (zh) | 一种基于改进型LeNet-5网络的行人识别算法 | |
Dong et al. | An improved niching binary particle swarm optimization for feature selection | |
CN110288606B (zh) | 一种基于蚁狮优化的极限学习机的三维网格模型分割方法 | |
CN104732522A (zh) | 一种基于多态蚁群算法的图像分割方法 | |
Yildirim et al. | REGP: A NEW POOLING ALGORITHM FOR DEEP CONVOLUTIONAL NEURAL NETWORKS. | |
CN111310838A (zh) | 一种基于深度Gabor网络的药效图像分类识别方法 | |
Dousthagh et al. | Feature weighting using a clustering approach | |
Singh et al. | Tomato crop disease classification using convolution neural network and transfer learning |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170510 |