【技术实现步骤摘要】
一种基于二进制蜜蜂觅食算法的特征选择方法
[0001]本专利技术涉及数据挖掘
,具体为一种基于二进制蜜蜂觅食算法的特征选择方法。
技术介绍
[0002]现有技术中,蜜蜂觅食算法是近年来新提出的连续优化算法,该算法是一种有效的求解包裹式特征选择问题的方法,算法将蜜蜂种群分为侦察蜂、采蜜蜂和待工蜂,利用侦察蜂进行全局搜索,利用采蜜蜂的全维度搜索来对食物源位置进行更新,利用待工蜂的随机单维度搜索让食物源位置更新更加高效。蜜蜂觅食算法效率高,需要调节的参数少,具有很强的搜索能力,这些性质说明该算法可以应用于解决特征选择问题。
[0003]现有的蜜蜂觅食算法其实并不是专门用来处理特征选择任务,而是为了处理连续优化问题,因此将蜜蜂觅食算法直接用于解决特征选择问题时存在一些缺点,比如分类精度低、选取的特征数目偏大、鲁棒性较差、搜索速度较慢等问题,这大大影响了蜜蜂觅食算法在对高维数据进行特征选择时的实际应用效果。
技术实现思路
[0004]针对现有技术的不足,本专利技术提供了一种基于二进制蜜蜂觅食算法的特征选择方法,解决了上述
技术介绍
中提出的原始的蜜蜂觅食算法直接用来解决特征选择问题时存在的一些缺点,比如分类精度低、选取的特征数目偏大、鲁棒性较差、搜索速度较慢等问题。
[0005]为实现以上目的,本专利技术通过以下技术方案予以实现:一种基于二进制蜜蜂觅食算法的特征选择方法,包括下述操作步骤:
[0006]S1、从公共数据集中提取特征数据;
[0007]S2、进行参数初始化,设置最 ...
【技术保护点】
【技术特征摘要】
1.一种基于二进制蜜蜂觅食算法的特征选择方法,其特征在于:包括下述操作步骤:S1、从公共数据集中提取特征数据;S2、进行参数初始化,设置最大迭代次数Max_iteration,独立运行次数runtime,种群规模pop,整个蜂群包含侦察蜂、采蜜蜂和待工蜂;S3、N个侦察蜂随机搜索空间,其搜索空间被限制在[0,1]之间,其位置如式:其中,P
s
是侦察蜂的位置;rand是大小在[0,1]之间的随机数,如果这个随机数小于0.5,则侦察蜂的位置取0,反之取1。S4、计算适应度函数值,根据适应度函数值对食物源进行排序,选择适应度函数值较小的0.5N个食物源作为选定食物源,适应度函数值的计算过程如式所示:其中,γ
R
(D)是通过将错误分类的实例数除以实例总数得出的分类错误率;R是所选特征子集的长度;M是特征的总数;参数α与β是权重系数,其中β=1
‑
α,将α设置为0.99,β设置为0.01。S5、根据以下公式设置停滞上限:其中Limit
st
表示食物源停滞的上限,如果停滞数大于Limit
st
,则相应的选定食物源将被抛弃,n
sc
是邻域收缩系数,被设为0.8。S6、进行采蜜蜂局部搜索阶段,采蜜蜂更新食物源的步骤如下:(6
‑
1)、根据下式给每个选定食物源平均分配采蜜蜂:其中N
i
是第i个选定食物源招募的采蜜蜂数量,n
f
表示采蜜蜂总数,n
s
表示选定食物源的数目;(6
‑
2)、对于每个选定食物源,使用下式所示的V形传递函数更新采蜜蜂位置,公式如下:其中,T
v
代表所使用的V形传递函数;y
i
是新定义的一个随机变量,用于产生采蜜蜂位置改变的概率,此变量的取值在[0,1]之间;采蜜蜂根据以下公式更新位置:
其中,P
f
是采蜜蜂的位置,rand是大小在[0,1]之间的随机数;(6
‑
3)、将当前采蜜蜂找到的食物源位置带入分类算法中计算分类准确率以及选择的特征数目,计算新的适应度值;如果新的食物源适应度值更小,则接受采蜜蜂找到的食物源,并将停滞次数设置为0;否则保留原有的食物源位置,停滞次数加一,并根据式对搜索范围进行收缩,公式如下:S
nh
(n+1)=n
sc
·
S
nh
(n)其中,S
nh
(n)是当前的搜索范围;S
nh
(n+1)是下一次迭代的搜索范围;n
sc
是收缩系数,设为0.8;(6
‑
4)、在采蜜蜂局部搜索之后,所有选定食物源均根据适应度函数值进行排序和分类;S7、进行待工蜂局部搜索阶段,具体步骤如下:(7
‑
1)...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。