用于多目标进化特征选择算法的自适应种群初始化方法和存储设备

文档序号:153944 发布日期:2021-10-26 浏览:29次 >En<

阅读说明:本技术 用于多目标进化特征选择算法的自适应种群初始化方法和存储设备 (Self-adaptive population initialization method and storage device for multi-target evolutionary feature selection algorithm ) 是由 徐航 闻辉 林元模 许荣斌 严涛 黄淋云 于 2021-07-28 设计创作,主要内容包括:本发明涉及算法优化技术领域,特别涉及用于多目标进化特征选择算法的自适应种群初始化方法和存储设备。所述用于多目标进化特征选择算法的自适应种群初始化方法,包括步骤:创建一个n行d列的零矩阵M;比较特征维度和种群规模间的大小,若特征维度大于种群规模,则进行自适应初始化的初始解数量K,根据种群规模和特征维度的比值计算需要进行自适应初始化的初始解子集在目标空间内的子种群分布对称轴H,对零矩阵M所代表的初始解集合中的前K行初始解向量以H为对称轴进行自适应采样,结束种群初始化。通过以上方法,采用自适应种群初始化机制生成的初始解集合能够覆盖更大范围的特征空间,在搜索的过程中天然就占据着广度上的优势。(The invention relates to the technical field of algorithm optimization, in particular to a self-adaptive population initialization method and storage equipment for a multi-objective evolutionary feature selection algorithm. The self-adaptive population initialization method for the multi-objective evolutionary feature selection algorithm comprises the following steps: creating a zero matrix M with n rows and d columns; and comparing the size between the characteristic dimension and the population scale, if the characteristic dimension is larger than the population scale, performing self-adaptive initialization on the initial solution quantity K, calculating a sub-population distribution symmetry axis H of the initial solution set needing self-adaptive initialization in the target space according to the ratio of the population scale to the characteristic dimension, performing self-adaptive sampling on the first K rows of initial solution vectors in the initial solution set represented by the zero matrix M by taking H as the symmetry axis, and finishing the population initialization. By the method, the initial solution set generated by the self-adaptive population initialization mechanism can cover a wider range of feature space, and naturally has the advantage of breadth in the searching process.)

用于多目标进化特征选择算法的自适应种群初始化方法和存 储设备

技术领域

本发明涉及算法优化技术领域,特别涉及用于多目标进化特征选择算法的自适应种群初始化方法和存储设备。

背景技术

近年来,我国已逐步迈入大数据与人工智能时代,人们对大规模数据分类的需求日益增加。然而,此类数据往往拥有海量的特征,特征中不仅包含相关特征,还包含许多不相关的、冗余特征、以及特征间复杂的交互作用,这些都给分类模型的学习带来困难。特征选择通过从所有特征中识别并筛选一部分特征来分类,是解决上述问题的一种通用手段,也是大数据处理的必经之路,它属于非凸、离散的复杂优化问题,通常有以下两个关键优化目标(亦是本专利研究所关注的优化目标):1,最小化分类误差率;2,最小化已选特征占总特征比例(简称已选特征率)。然而,随着特征数的不断增加,由此引发的维数灾难不但会导致特征选择的搜索空间以指数增大、局部最优陷阱和非可行解区域增多,严重影响了特征选择算法的搜索效率和收敛速度,还会导致特征间的交互作用趋于复杂,各种不相关的、冗余特征变多,使所选特征子集间的差异性变小,重复、冗余解增多。这些问题无不挑战着现有特征选择算法的极限,采用穷举法搜索显然是不现实的,而大多数启发式搜索技术,如模拟退火,禁忌搜索,贪心算法,都不能有效处理庞大而复杂的特征搜索空间。因此,我们亟需要一种新的特征选择方法,以应对不断升高的大规模特征搜索难度和高维数据分类需求。

进化算法是源于达尔文物种进化假说和自然界优胜劣汰规律的一种元启发式搜索方法。它通过模拟种群初始化、后代繁殖和环境选择,这三个主要进化阶段,实现对种群的迭代优化更新,以达到对Pareto最优解集合的全局搜索。它具备以下诸多优点:1,不需要对数据做任何假设,而是把优化对象当作“黑盒”问题;2,不需要领域知识,却可以同其他领域的已有方法结合(如局部搜索),形成更好的混合搜索方法;3,不需要复杂的参数设定,结构简单,易于操作和改进;4,以种群的方式搜索解,能在一次迭代中同时获得一个集合的可行解,不但提高了搜索效率,还有利于跳出局部最优陷阱。归功于以上特性,尤其是其群体智能的搜索方式,进化算法被广泛应用于求解多目标优化问题,亦是解决大规模多目标特征选择问题的一种强有力手段。然而,现有的进化算法对大规模多目标特征选择问题的研究大多集中于后代繁殖和环境选择这两个进化阶段,较少有学者专门针对种群初始化阶段的进化特性展开更为深入的研究。以一个目前较为经典的、常用的多目标进化算法NSGA-II:《A fast and elitist multiobjective genetic algorithm:NSGA-II》(一种快速而优秀的多目标遗传算法:NSGA-II)为例,其主要流程如图1所示。其中,步骤1即是种群初始化阶段,步骤2和3则是后代繁殖阶段,而步骤4、5、6是环境选择阶段。

如图1所示,传统的基于非支配排序的NSGA-II多目标进化算法并未根据大规模特征选择的问题特性对种群的随机初始化过程做任何特殊处理与设计。然而,对于大规模的特征空间而言,种群的大小往往是受限的。例如一个10000特征数的特征选择问题,受限于计算资源与计算时间,很可能只使用大小为100个解的种群来搜索优化。在上述情况下,随机采样的初始种群根本无法覆盖远超自身规模的特征空间,即使随着进化的演进,让种群往理想Pareto前沿曲面收敛,缩小了需要覆盖的有效特征规模,也往往难以让每个已选特征数区域有可行解与之对应。此问题是大规模多目标进化特征选择研究领域内的一大薄弱环节和研究盲区,也是在设计高效率、高精度的大规模多目标进化特征选择算法道路上所必须打破的一个技术瓶颈。

发明内容

为此,需要提供一种用于多目标进化特征选择算法的自适应种群初始化方法,用以解决多目标进化特征选择算法的种群收敛速度低、多目标优化解集的最终分类效果和质量差的技术问题。具体技术方案如下:

用于多目标进化特征选择算法的自适应种群初始化方法,包括步骤:

步骤S101:创建一个n行d列的零矩阵M,所述M代表总体初始解集合;

步骤S102:比较特征维度和种群规模间的大小,若所述特征维度小于等于所述种群规模,则执行步骤S103,若所述特征维度大于所述种群规模,则跳转至步骤S104;

步骤S103:采用常规随机采样方法进行种群初始化,进入步骤S108;

步骤S104:根据所述种群规模和所述特征维度的比值计算整个种群中需要进行自适应初始化的初始解数量K,进入步骤S105;

步骤S105:根据所述种群规模和所述特征维度的比值计算需要进行自适应初始化的初始解子集在目标空间内的子种群分布对称轴H,进入步骤S106;

步骤S106:对所述零矩阵M所代表的初始解集合中的前K行初始解向量以所述H为对称轴进行自适应采样,进入步骤S107;

步骤S107:对所述矩阵M代表的初始解集合中从第K+1行至末尾的余下所有解向量采用步骤S103中的常规种群初始化方法进行随机采样,进入步骤S108;

步骤S108:结束种群初始化。

进一步的,所述步骤S101前具体还包括步骤:

采用预设编码模式对解向量进行基因编码;

所述“采用预设编码模式对解向量进行基因编码”,具体还包括步骤:采用01编码模式对解向量进行基因编码,数值为0的基因位表示不选择所对应的特征,数值为1的基因位表示选中所对应的特征。

进一步的,所述步骤S104具体还包括步骤:

通过以下公式计算初始解数量K:

K=ceil(N*max(0.2,N/D))

其中ceil函数表示取整数值下界,max函数表示取两个参数值中的最大数,N表示种群规模,D表示特征规模。

进一步的,所述步骤S105具体还包括步骤:

通过以下公式计算对称轴H:

H=0.5*N/D

所述对称轴H表示进行自适应初始化的子种群在目标空间内将随机围绕横轴为H的对称轴进行离散型均匀分布分布,其中,目标空间横轴的取值表示特征向量中已选特征数和特征总数的比值。

进一步的,所述步骤S106具体还包括步骤:

某一行解向量X=(x1,x2,x3,...,xD),对X中的每一个基因位xi,制造一个0到1之间的随机小数r,若r小于H,则xi=1,即选中第i个特征;否则,若r大于等于H,则xi=0,即不选择第i个特征;

重复以上步骤直至完成对前K行初始解向量的自适应初始化。

进一步的,所述步骤S103具体还包括步骤:

从数值为0.5的目标空间横轴处对所有的解向量进行离散型均匀分布随机采样。

为解决上述技术问题,还提供了一种存储设备,具体技术方案如下:

一种存储设备,其中存储有指令集,所述指令集用于执行:

步骤S101:创建一个n行d列的零矩阵M,所述M代表总体初始解集合;

步骤S102:比较特征维度和种群规模间的大小,若所述特征维度小于等于所述种群规模,则执行步骤S103,若所述特征维度大于所述种群规模,则跳转至步骤S104;

步骤S103:采用常规随机采样方法进行种群初始化,进入步骤S108;

步骤S104:根据所述种群规模和所述特征维度的比值计算整个种群中需要进行自适应初始化的初始解数量K,进入步骤S105;

步骤S105:根据所述种群规模和所述特征维度的比值计算需要进行自适应初始化的初始解子集在目标空间内的子种群分布对称轴H,进入步骤S106;

步骤S106:对所述零矩阵M所代表的初始解集合中的前K行初始解向量以所述H为对称轴进行自适应采样,进入步骤S107;

步骤S107:对所述矩阵M代表的初始解集合中从第K+1行至末尾的余下所有解向量采用步骤S103中的常规种群初始化方法进行随机采样,进入步骤S108;

步骤S108:结束种群初始化。

进一步的,所述指令集还用于执行:所述步骤S101前具体还包括步骤:

采用预设编码模式对解向量进行基因编码;

所述“采用预设编码模式对解向量进行基因编码”,具体还包括步骤:采用01编码模式对解向量进行基因编码,数值为0的基因位表示不选择所对应的特征,数值为1的基因位表示选中所对应的特征。

进一步的,所述指令集还用于执行:所述步骤S104具体还包括步骤:

通过以下公式计算初始解数量K:

K=ceil(N*max(0.2,N/D))

其中ceil函数表示取整数值下界,max函数表示取两个参数值中的最大数,N表示种群规模,D表示特征规模;

所述步骤S105具体还包括步骤:

通过以下公式计算对称轴H:

H=0.5*N/D

所述对称轴H表示进行自适应初始化的子种群在目标空间内将随机围绕横轴为H的对称轴进行离散型均匀分布分布,其中,目标空间横轴的取值表示特征向量中已选特征数和特征总数的比值。

进一步的,所述指令集还用于执行:所述步骤S106具体还包括步骤:

某一行解向量X=(x1,x2,x3,...,xD),对X中的每一个基因位xi,制造一个0到1之间的随机小数r,若r小于H,则xi=1,即选中第i个特征;否则,若r大于等于H,则xi=0,即不选择第i个特征;

重复以上步骤直至完成对前K行初始解向量的自适应初始化。

本发明的有益效果是:用于多目标进化特征选择算法的自适应种群初始化方法,包括步骤:步骤S101:创建一个n行d列的零矩阵M,所述M代表总体初始解集合;步骤S102:比较特征维度和种群规模间的大小,若所述特征维度小于等于所述种群规模,则执行步骤S103,若所述特征维度大于所述种群规模,则跳转至步骤S104;步骤S103:采用常规随机采样方法进行种群初始化,进入步骤S108;步骤S104:根据所述种群规模和所述特征维度的比值计算整个种群中需要进行自适应初始化的初始解数量K,进入步骤S105;步骤S105:根据所述种群规模和所述特征维度的比值计算需要进行自适应初始化的初始解子集在目标空间内的子种群分布对称轴H,进入步骤S106;步骤S106:对所述零矩阵M所代表的初始解集合中的前K行初始解向量以所述H为对称轴进行自适应采样,进入步骤S107;步骤S107:对所述矩阵M代表的初始解集合中从第K+1行至末尾的余下所有解向量采用步骤S103中的常规种群初始化方法进行随机采样,进入步骤S108;步骤S108:结束种群初始化。通过以上方法,采用自适应种群初始化机制生成的初始解集合能够覆盖更大范围的特征空间,在搜索的过程中天然就占据着广度上的优势。进而使得多目标进化特征选择算法的种群收敛速度变快、多目标优化解集的最终分类效果和质量变好。

附图说明

图1为背景技术所述传统的基于非支配排序的NSGA-II多目标进化算法的流程图;

图2为

具体实施方式

所述用于多目标进化特征选择算法的自适应种群初始化方法的流程图;

图3为具体实施方式所述传统进化算法使用的常规种群初始化机制下的初始解集分布示例;

图4为具体实施方式所述用于多目标进化特征选择算法的自适应种群初始化方法下的初始解集分布示例;

图5为具体实施方式所述各个测试用例的分类数据集名称、特征总量、样本总量和类别数目;

图6为具体实施方式自适应种群初始化方法与其他经典算法的性能比较示意图;

图7为具体实施方式所述存储设备的模块示意图。

附图标记说明:

700、存储设备。

具体实施方式

为详细说明技术方案的技术内容、构造特征、所实现目的及效果,以下结合具体实施例并配合附图详予说明。

请参阅图2至图6,在本实施方式中,用于多目标进化特征选择算法的自适应种群初始化方法可应用在一种存储设备上,所述存储设备包括但不限于:个人计算机、服务器、通用计算机、专用计算机、网络设备、嵌入式设备、可编程设备、智能移动终端等。

本申请的核心技术思想在于:

具体技术方案如下:主要针对多目标进化算法三大进化阶段(种群初始化、后代繁殖和环境选择)中的种群初始化阶段进行改进,设计了一种根据种群大小与特征空间维度比例关系而自适应调整初始解在特征空间的随机分布位置与规律的自适应种群初始化机制,从而提高多目标进化特征选择算法的种群收敛速度,提升多目标优化解集的最终分类效果与质量。首先,该机制采用01编码模式对解向量进行基因编码,即:由数值为0的基因位表示不选择所对应的特征,而数值为1的基因位表示选中所对应的特征。以维度为D的特征空间为例,该空间的特征向量维度也是D,假设某个在该空间内的解向量为X=(x1,x2,x3,...,xD),则xi=0表示不选择第i个特征,而xi=1则表示选中第i个特征。因此,解向量中的所有数值为1的基因集合即代表特征空间内的已选择特征子集,如何用更少的已选特征来获取更高的分类精度,即多目标进化特征选择算法的最终优化目标。

在确定01编码模式后,本申请所用到的自适应种群初始化机制的具体实施方式如下

步骤S201:创建一个n行d列的零矩阵M,所述M代表总体初始解集合。如式(1)所示,M用于代表以01编码模式设定染色体基因位的种群内所有初始解的集合,M中的每一行代表一个初始解的特征向量。

步骤S202:特征维度是否小于等于种群规模?若所述特征维度小于等于所述种群规模,则执行步骤S203:采用常规随机采样方法进行种群初始化。当特征维度小于等于种群规模时,则说明种群大小足够覆盖整个特征空间,能保证在每个特定数值的已选特征子集大小所对应的搜索子区域内至少有一个解可以关联覆盖到,因此,可直接采用常规的随机采样方法进行种群初始化。

常规的种群初始化方法将直接从数值为0.5的目标空间横轴处对所有的解向量进行离散型均匀分布分布随机采样,而无视种群规模是否足以覆盖大规模特征空间。在本申请提出的自适应种群初始化机制中,该步骤仅作用于D小于等于N,即被判断为种群大小足够覆盖整个特征空间,能够保证在每个特定数值的已选特征子集大小所对应的搜索子区域内至少有一个解可以关联覆盖到的场景下;或者,作用于进行自适应初始化分支后的余下还未初始化的解向量。

若所述特征维度大于所述种群规模,则执行步骤S204:根据所述种群规模和所述特征维度的比值计算整个种群中需要进行自适应初始化的初始解数量K。所述步骤S204具体还包括步骤:

通过以下公式(2)计算初始解数量K:

K=ceil(N*max(0.2,N/D)) (2)

其中ceil函数表示取整数值下界,max函数表示取两个参数值中的最大数,N表示种群规模,D表示特征规模。因此,K的值介于0.2×N和N×(N/D)之间,即至少占整个种群的20%。

步骤S205:根据所述种群规模和所述特征维度的比值计算需要进行自适应初始化的初始解子集在目标空间内的子种群分布对称轴H。具体还包括步骤:

通过以下公式(3)计算对称轴H:

H=0.5*N/D (3)

所述对称轴H表示进行自适应初始化的子种群在目标空间内将随机围绕横轴为H的对称轴进行离散型均匀分布分布,其中,目标空间横轴的取值表示特征向量中已选特征数和特征总数的比值。显然,该取值的范围介于0和1之间。传统的常规初始解随机采样方法的种群分布对称轴一般设为0.5,即从横轴的一半开始以离散型均匀分布分布随机采样。本申请提出的自适应初始化方法则根据种群规模N和特征规模D的比值,自适应的将种群分布对称轴向数值为0的目标空间横轴边界移动,从而将采用自适应初始化的子种群所对应的搜索焦点和感兴趣区域前移,集中力量搜索已选特征数更少的可行解。这样做的好处主要有两点:1,由于已选特征数减少,导致可行解的范围大大缩小,大幅降低了种群收敛难度,提高了种群收敛速度;2,集中计算资源搜索少量的精英特征,避开了大规模特征空间中大量的冗余、不相关特征,大幅提升了算法的搜索效率。

步骤S206:对所述零矩阵M所代表的初始解集合中的前K行初始解向量以所述H为对称轴进行自适应采样。具体还包括步骤:

以其中的某一行解向量X=(x1,x2,x3,...,xD)为例,具体的方法是:对X中的每一个基因位xi,制造一个0到1之间的随机小数r,若r小于H,则xi=1,即选中第i个特征;否则,若r大于等于H,则xi=0,即不选择第i个特征;重复以上步骤直至完成对前K行初始解向量的自适应初始化。

步骤S207:对所述矩阵M代表的初始解集合中从第K+1行至末尾的余下所有解向量采用步骤S203中的常规种群初始化方法进行随机采样。即全部从数值为0.5的目标空间横轴处进行离散型均匀分布分布随机采样,其基本流程同步骤S205类似,但是种群分布对称轴参数从H变为0.5。

步骤S208:结束种群初始化。

通过以上方法,采用自适应种群初始化机制生成的初始解集合能够覆盖更大范围的特征空间,在搜索的过程中天然就占据着广度上的优势。进而使得多目标进化特征选择算法的种群收敛速度变快、多目标优化解集的最终分类效果和质量变好。

以下以实际数据来对本申请的自适应种群初始化机制的有益效果进一步进行说明:

如图3所示,举例说明了采用常规种群初始化方法的NSGA-II的初始种群在两目标空间内的初始解集分布情况,其中,目标1(横轴)表示已选特征占总特征的比例,目标2(纵轴)表示所选特征子集在分类器分类中的分类误差率,显然,目标1和目标2需要越小越好。

如图4所示,举例说明了采用本申请提出的自适应种群初始化机制的算法AIEA。AIEA算法是adaptive initialization based evolutionary algorithm的缩写,是本申请将所提出的自适应种群初始化机制迁移到原NSGA-II算法架构上后构造的新算法,即由图2的自适应种群初始化机制替换图1的步骤1种群初始化流程。相比图3,图4的初始解集分为两个子种群分别分布在目标空间的前后两个子搜索区域内。可见,采用自适应种群初始化机制生成的初始解集合能够覆盖更大范围的特征空间,在搜索的过程中天然就占据着广度上的优势。

而且,图4里面靠前的子种群的初始解所选择的特征比图3的更少,这就代表该搜索区域所需要探索的特征组合更少,意味着搜索难度和种群收敛难度的大幅下降。因此,由自适应初始化机制生成的子种群能够更快的完成收敛,从而带动身后以常规方式初始化的子种群一起用更高的效率搜索特征空间。

为了进一步验证本申请所提出的自适应种群初始化机制的效果,将引入多个目前最为经典、流行的不同多目标进化算法,与本申请的基于自适应种群初始化机制的多目标进化方法(即AIEA)相比较。引入的比较算法如下:

NSGA-II:《A fast and elitist multiobjective genetic algorithm:NSGA-II》(一种快速而优秀的多目标遗传算法:NSGA-II)。它采用基于Pareto支配关系的非支配排序作为首要环境选择标准,辅以基于拥挤度分析的多样性维护策略未次要环境选择标准。

MOEA/D:《Multiobjective evolutionary algorithm based on decomposition》(基于分解的多目标进化算法)。它采用一组均匀分布在目标空间的权值向量将多目标优化问题分解为一系列单目标优化子问题,并同时共同进化。

KnEA:《Knee point driven evolutionary algorithm》(由拐点驱动的进化算法)。它采用基于拐点的环境选择偏好选择最优解,适用于高维多目标优化问题。

在实验中,对上述所有算法采用相同的种群规模(N=100个初始解)、终止条件(E=10000次目标函数评估)、随机变量种子等基础实验参数。所有用于测试算法最终分类效果的测试用例都来自线上公开的实验平台PlatEMO(https://github.com/BIMK/PlatEMO)和UCI machine learning repository (http://archive.ics.uci.edu/ml/index.php)。每个测试用例的分类数据集名称、类别数目、特征总量和样本总量如图5所示。

实验采用的算法性能评价指标是在多目标进化算法性能评价中常用的HV(超体积:Hypervolume)性能指标,该指标数值越大说明算法表现越好,即说明其在分类误差率和已选特征比例这两个优化目标上的表现综合最优。在分类效果上,采用了70%数据集用来训练模型,其余30%数据集单独拿出来做分类效果测试的方法。在分类模型上实验选用K近邻(KNN)分类模型对进化算法得到的Pareto最优解集中的已选特征进行分类效果测试,参数K的取值为5,并采用了10折交叉验证(10-fold cross-validation)的方法来增加数据准确性。因此,在实验测试中,HV数值最优的算法说明其分类精度和分类效率综合最优。

图6展示了实验中所有四个算法的分类性能表现,其中表现最好的算法数据被加上灰色底色以示区分。公平起见,每个算法都被重复测试了20次,已收集具有统计学意义的性能数据。图6中,每一格数据的上一栏表示性能均值,而下一栏则表示性能方差,均值反应了算法的表现好坏,而方差在一定程度上说明了算法的表现稳定性。从图6可以看出,基于本申请所提出自适应种群初始化机制的改进多目标进化算法AIEA在所有测试数据集中的表现都是四个比较算法中最优的(HV指标的均值最大),而且经过威氏显著性差异检测(Wilcoxon Significance Test)证明,这种优势是巨大而显著的。由此证明,本申请所提出的自适应种群初始化机制能显著改进多目标进化算法在大规模特征选择优化问题上的性能表现,大幅提高了多目标大规模进化特征选择方法的分类精度与分类效率,用更少的计算资源取得了更好的分类效果。

请参阅图2至图7,在本实施方式中,一种存储设备700的具体实施方式如下:

一种存储设备700,其中存储有指令集,所述指令集用于执行:

步骤S201:创建一个n行d列的零矩阵M,所述M代表总体初始解集合。如式(1)所示,M用于代表以01编码模式设定染色体基因位的种群内所有初始解的集合,M中的每一行代表一个初始解的特征向量。

步骤S202:特征维度是否小于等于种群规模?若所述特征维度小于等于所述种群规模,则执行步骤S203:采用常规随机采样方法进行种群初始化。当特征维度小于等于种群规模时,则说明种群大小足够覆盖整个特征空间,能保证在每个特定数值的已选特征子集大小所对应的搜索子区域内至少有一个解可以关联覆盖到,因此,可直接采用常规的随机采样方法进行种群初始化。

常规的种群初始化方法将直接从数值为0.5的目标空间横轴处对所有的解向量进行离散型均匀分布分布随机采样,而无视种群规模是否足以覆盖大规模特征空间。在本申请提出的自适应种群初始化机制中,该步骤仅作用于D小于等于N,即被判断为种群大小足够覆盖整个特征空间,能够保证在每个特定数值的已选特征子集大小所对应的搜索子区域内至少有一个解可以关联覆盖到的场景下;或者,作用于进行自适应初始化分支后的余下还未初始化的解向量。

若所述特征维度大于所述种群规模,则执行步骤S204:根据所述种群规模和所述特征维度的比值计算整个种群中需要进行自适应初始化的初始解数量K。所述步骤S204具体还包括步骤:

通过以下公式(2)计算初始解数量K:

K=ceil(N*max(0.2,N/D)) (2)

其中ceil函数表示取整数值下界,max函数表示取两个参数值中的最大数,N表示种群规模,D表示特征规模。因此,K的值介于0.2×N和N×(N/D)之间,即至少占整个种群的20%。

步骤S205:根据所述种群规模和所述特征维度的比值计算需要进行自适应初始化的初始解子集在目标空间内的子种群分布对称轴H。具体还包括步骤:

通过以下公式(3)计算对称轴H:

H=0.5*N/D (3)

所述对称轴H表示进行自适应初始化的子种群在目标空间内将随机围绕横轴为H的对称轴进行离散型均匀分布分布,其中,目标空间横轴的取值表示特征向量中已选特征数和特征总数的比值。显然,该取值的范围介于0和1之间。传统的常规初始解随机采样方法的种群分布对称轴一般设为0.5,即从横轴的一半开始以离散型均匀分布分布随机采样。本申请提出的自适应初始化方法则根据种群规模N和特征规模D的比值,自适应的将种群分布对称轴向数值为0的目标空间横轴边界移动,从而将采用自适应初始化的子种群所对应的搜索焦点和感兴趣区域前移,集中力量搜索已选特征数更少的可行解。这样做的好处主要有两点:1,由于已选特征数减少,导致可行解的范围大大缩小,大幅降低了种群收敛难度,提高了种群收敛速度;2,集中计算资源搜索少量的精英特征,避开了大规模特征空间中大量的冗余、不相关特征,大幅提升了算法的搜索效率。

步骤S206:对所述零矩阵M所代表的初始解集合中的前K行初始解向量以所述H为对称轴进行自适应采样。具体还包括步骤:

以其中的某一行解向量X=(x1,x2,x3,...,xD)为例,具体的方法是:对X中的每一个基因位xi,制造一个0到1之间的随机小数r,若r小于H,则xi=1,即选中第i个特征;否则,若r大于等于H,则xi=0,即不选择第i个特征;重复以上步骤直至完成对前K行初始解向量的自适应初始化。

步骤S207:对所述矩阵M代表的初始解集合中从第K+1行至末尾的余下所有解向量采用步骤S203中的常规种群初始化方法进行随机采样。即全部从数值为0.5的目标空间横轴处进行离散型均匀分布分布随机采样,其基本流程同步骤S205类似,但是种群分布对称轴参数从H变为0.5。

步骤S208:结束种群初始化。

通过指令集执行以下步骤:采用自适应种群初始化机制生成的初始解集合能够覆盖更大范围的特征空间,在搜索的过程中天然就占据着广度上的优势。进而使得多目标进化特征选择算法的种群收敛速度变快、多目标优化解集的最终分类效果和质量变好。

以下以实际数据来对本申请的自适应种群初始化机制的有益效果进一步进行说明:

如图3所示,举例说明了采用常规种群初始化方法的NSGA-II的初始种群在两目标空间内的初始解集分布情况,其中,目标1(横轴)表示已选特征占总特征的比例,目标2(纵轴)表示所选特征子集在分类器分类中的分类误差率,显然,目标1和目标2需要越小越好。

如图4所示,举例说明了采用本申请提出的自适应种群初始化机制的算法AIEA。AIEA算法是adaptive initialization based evolutionary algorithm的缩写,是本申请将所提出的自适应种群初始化机制迁移到原NSGA-II算法架构上后构造的新算法,即由图2的自适应种群初始化机制替换图1的步骤1种群初始化流程。相比图3,图4的初始解集分为两个子种群分别分布在目标空间的前后两个子搜索区域内。可见,采用自适应种群初始化机制生成的初始解集合能够覆盖更大范围的特征空间,在搜索的过程中天然就占据着广度上的优势。

而且,图4里面靠前的子种群的初始解所选择的特征比图3的更少,这就代表该搜索区域所需要探索的特征组合更少,意味着搜索难度和种群收敛难度的大幅下降。因此,由自适应初始化机制生成的子种群能够更快的完成收敛,从而带动身后以常规方式初始化的子种群一起用更高的效率搜索特征空间。

为了进一步验证本申请所提出的自适应种群初始化机制的效果,将引入多个目前最为经典、流行的不同多目标进化算法,与本申请的基于自适应种群初始化机制的多目标进化方法(即AIEA)相比较。引入的比较算法如下:

NSGA-II:《A fast and elitist multiobjective genetic algorithm:NSGA-II》(一种快速而优秀的多目标遗传算法:NSGA-II)。它采用基于Pareto支配关系的非支配排序作为首要环境选择标准,辅以基于拥挤度分析的多样性维护策略未次要环境选择标准。

MOEA/D:《Multiobjective evolutionary algorithm based on decomposition》(基于分解的多目标进化算法)。它采用一组均匀分布在目标空间的权值向量将多目标优化问题分解为一系列单目标优化子问题,并同时共同进化。

KnEA:《Knee point driven evolutionary algorithm》(由拐点驱动的进化算法)。它采用基于拐点的环境选择偏好选择最优解,适用于高维多目标优化问题。

在实验中,对上述所有算法采用相同的种群规模(N=100个初始解)、终止条件(E=10000次目标函数评估)、随机变量种子等基础实验参数。所有用于测试算法最终分类效果的测试用例都来自线上公开的实验平台PlatEMO(https://github.com/BIMK/PlatEMO)和UCI machine learning repository(http://archive.ics.uci.edu/ml/index.php)。每个测试用例的分类数据集名称、类别数目、特征总量和样本总量如图5所示。

实验采用的算法性能评价指标是在多目标进化算法性能评价中常用的HV(超体积:Hypervolume)性能指标,该指标数值越大说明算法表现越好,即说明其在分类误差率和已选特征比例这两个优化目标上的表现综合最优。在分类效果上,采用了70%数据集用来训练模型,其余30%数据集单独拿出来做分类效果测试的方法。在分类模型上实验选用K近邻(KNN)分类模型对进化算法得到的Pareto最优解集中的已选特征进行分类效果测试,参数K的取值为5,并采用了10折交叉验证(10-fold cross-validation)的方法来增加数据准确性。因此,在实验测试中,HV数值最优的算法说明其分类精度和分类效率综合最优。

图6展示了实验中所有四个算法的分类性能表现,其中表现最好的算法数据被加上灰色底色以示区分。公平起见,每个算法都被重复测试了20次,已收集具有统计学意义的性能数据。图6中,每一格数据的上一栏表示性能均值,而下一栏则表示性能方差,均值反应了算法的表现好坏,而方差在一定程度上说明了算法的表现稳定性。从图6可以看出,基于本申请所提出自适应种群初始化机制的改进多目标进化算法AIEA在所有测试数据集中的表现都是四个比较算法中最优的(HV指标的均值最大),而且经过威氏显著性差异检测(Wilcoxon Significance Test)证明,这种优势是巨大而显著的。由此证明,本申请所提出的自适应种群初始化机制能显著改进多目标进化算法在大规模特征选择优化问题上的性能表现,大幅提高了多目标大规模进化特征选择方法的分类精度与分类效率,用更少的计算资源取得了更好的分类效果。

需要说明的是,尽管在本文中已经对上述各实施例进行了描述,但并非因此限制本发明的专利保护范围。因此,基于本发明的创新理念,对本文所述实施例进行的变更和修改,或利用本发明说明书及附图内容所作的等效结构或等效流程变换,直接或间接地将以上技术方案运用在其他相关的技术领域,均包括在本发明的专利保护范围之内。

18页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:确定神经网络的输出的方法、电子设备和计算机程序产品

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!