2020,TEVC,Preserving Population Diversity Based on Transformed Semantics in GP for SR

在这里插入图片描述


Abstract

在遗传规划 (GP) 等进化技术中,种群多样性对避免早熟收敛具有重要作用。在进化过程中获得足够的多样性水平已成为许多 GP 研究关注的问题。

本文提出了一种新的基于熵的GP多样性度量方法。新的新颖性度量基于 GP 中模型的转换语义,其中语义是模型在训练数据上的输出集合,使用主成分分析进行语义转换。基于新的新颖性度量,提出了一个新的多样性保持框架,该框架包含一个新的适应度函数和一个新的选择算子,以帮助GP在探索和利用之间取得良好的平衡,从而增强其学习和泛化性能。

与两种现状多样性保持方法相比,新方法在大多数情况下能够更好地泛化,更有效地降低过拟合趋势。对搜索过程性质的进一步研究证实,新框架显著增强了 GP 的演化性和局部性。

I. INTRODUCTION

进化计算 (EC) 技术最显著的特点是基于种群。种群多样性是指种群中不同个体的比例 [1],在进化过程中起着重要的作用。以往的研究表明,保持较高的种群多样性通常有利于避免早熟收敛 [2]。

遗传规划 (genetic programming,GP) [3] 是一种通过搜索最优程序(或函数/模型)自动求解问题的EC技术。搜索过程通常从一个随机产生的解/个体的种群开始,通过一个包含评估、选择和变异的迭代过程,该种群进化到一个新的、拟合更好的种群。当满足某些终止条件时,搜索过程停止。GP具有灵活的表示方式,不需要关于待解决问题的任何先验领域知识。同时它可以生成多种白盒(或者至少是灰色框)解,在很多情况下对人而言具有可解释性。这些特性使得GP成为解决许多实际问题的有效方法,例如符号回归 [4] 和特征选择 [5] - [7]。符号回归GP (GPSR) 学习和表达了数学模型中自变量和因变量之间的关系。GPSR不需要对模型的结构做任何先验假设,同时在进化学习过程中从数据中发现潜在的模式。学习到的模型可以提供对数据的良好洞察力,并且通常比数值回归方法(如神经网络和支持向量回归)具有更好的可解释性。这些数值回归方法中生成的回归模型通常是不可解释的。GP的灵活表示使其善于学习复杂模式进行符号回归。

GP的多样性研究由来已久。以往关于该主题的研究从结构/基因型和行为/表型两方面为群落提供了许多可能的多样性定义和测度 [8] - [11]。过去的工作也指出了保持多样性对于避免早熟收敛的重要性 [12],[1]。然而,这些指标的信息含量如何,即这些指标与GP中适应度之间的相关性有多强,是一个问题依赖。正如以前的研究 [14] 所示,在处理人工蚁和奇偶任务时,许多多样性度量,如基于熵的多样性 [15] 和编辑距离 [16] 与 GP 中的适应度有很强的相关性。然而,GPSR 并非如此[14]。GPSR中多样性的各种度量与适合度之间的弱相关性表明应该存在多样性的一些重要性质没有被现有的度量所捕获。确定一个与 GPSR 适应度具有强相关性的更精确的多样性测度是很重要的。因为它不仅可以更好地理解进化过程,而且可以通过保持种群多样性来启发设计更有效的 GP 算法 [13]。然而,由于 GPSR 中适应度空间和搜索的特性,这是一项困难的任务。GPSR具有连续的适应空间,在进化过程的不同阶段可以观察到高水平的表型多样性。多样性度量难以捕捉多样性的变化,因而不能提供关于种群变化的有用信息,即提高适应度和跳出局部最优的能力。同时,GPSR 也存在基因型-适合度映射局部性低的问题,即模型结构的微小差异会导致其行为的巨大差异 [17]。由于这些困难,GPSR 在确定精确的多样性度量和开发指导多样性搜索的框架方面还没有太多的工作。

A. Goals

本工作的总体目标是为 GPSR 提出一种新的与适应度高度相关的种群多样性度量,并使用一种新的多样性保持框架引入一种更有效的GPSR方法,以保持良好的多样性水平。具体来说,本工作涵盖了三个研究目标,包括以下内容。

  1. 为了更好地理解和管理GPSR中种群的行为,提出一种新的多样性测度。
  2. 通过引入新的适应度函数和新的遗传算子,为 GPSR 开发一个新的多样性保持框架,以保持多样性,从而在 GPSR 中进行更有效的搜索。
  3. 探究其进化过程,比较并确认新 GP 方法与标准 GP 在种群多样性上的差异。

B. Organization

本文其余部分安排如下。第二节回顾了全球生物群落多样性测度和维持的相关工作。第三节为GPSR提出了一种新的多样性度量方法和一种新的遗传算子以在进化过程中保持多样性。实验设置详见第四部分。第五部分为实验结果,对基准方法进行比较,并对结果进行深入分析。第六节总结全文,并指出进一步研究的方向。

II. BACKGROUND

A. Measuring the Population Diversity in GP

由于从GP方案的基因型和表型进行复杂的定位 [18] [19],获得一个好的GP多样性的度量并不是微不足道的。然而,这样的度量对于理解GP中种群的动态是至关重要的,并且可以为GP中更有效和高效的搜索铺平道路。因此,为GP从基因型和表型两方面开发一个良好的多样性度量方法长期以来都备受关注[8],[9],[11]

1) Genotype Diversity

基因型多样性最简单的形式就像GP中程序之间的节点间比较一样简单。在介绍GP的早期著作中,Koza [3] 提出了多样性的概念,即GP在进化过程中种群中不同程序的数量。Keijzer [20]将子程序多样性度量为某个子程序数量占子程序总数的比例,种群多样性度量为某个程序占种群规模的比例。在这项工作中,两个程序之间的距离通过共享的不同子程序的数量来衡量。McPhee和Hopper [8]研究了仅使用交叉算子时,GP中解的节点级多样性测度的集合。这些措施包括不同节点到最终种群的数量,这是一个运行结束时存在的遗传物质量的指标;初始种群中对最终种群中遗传物质有贡献的个体数;最终种群中的个体与其根部分来自的每个个体的最新共同根祖先之间的相似性;以及根收敛的速度,即树的根从哪一代收敛。他们发现,初始种群中通常只有不到 1% 的节点存活在最终种群中,并且初始个体(总数500人中少于7人)中的少量个体贡献了最终种群的遗传物质,这表明GP花费的进化努力是置换少量个体而不是探索搜索空间。同时,在大部分游程中,最终种群共享一个共同的根祖先,很大一部分种群(高于 60%)与祖先有很高的相似度。他们认为,这种多样性的丧失导致了适合度的扁平化。基于字符串编辑距离度量两个程序之间的差异在GP中已经被多次使用。O’Reilly [21]针对GP提出了一种基于字符串匹配的编辑距离,利用单节点插入、删除和替换将两棵树转化为结构和内容相等的树。后来,Ekárt 和 Németh [16]扩展了编辑距离,使其更适用于GP。在它们的新编辑距离中,程序中两个节点之间的差异具有与节点深度相关的权重。Burks 和 Punch [22]提出了一种新的基因型多样性测度,称为遗传标记多样性。在他们的测量中,GP树的顶端比例被定义为遗传标记。多样性通过遗传标记的密度来估计,即群体中共享同一遗传标记的个体所占的比例。他们提出了一种新的GP方法,通过最小化遗传标记密度来保持多样性,防止一个遗传标记在群体中广泛传播。

2) Phenotype Diversity

表型多样性衡量了程序之间的行为差异。表型多样性最简单的形式可能是群体中唯一适合度值的数量。Rosca [15] 利用种群中的适应度定义了熵和自由能测度。熵表示种群的无序程度,熵的增长代表多样性的增加。他们发现,当熵在连续几代中不变或单调递减时,种群似乎陷入局部最优。Jackson [23]研究了GP中初始种群的多样性对性能的影响。多样性是指种群中不同行为的数量。对于符号回归任务,当两个个体之间的语义距离大于某个阈值时,则认为两个个体具有不同的行为。他们还发现,减少初始种群中的行为重复对提高学习绩效有积极作用。Nguyen等[24]开发了一个可视化框架来监测全球生育率的变化,而不是以前的直接措施。该框架基于生长的神经气体。节点和节点之间的边分别表示程序及其相互关系。该框架具有可扩展性和多粒度性,能够监控整个进化过程中种群的更新情况。在他们的工作中,表型多样性通过群体的表型特征分布可视化。同时,节点的许多特征不仅可以用于可视化表型多样性,还可以用于可视化基因型多样性。

B. Preserving the Population Diversity 维护种群多样性

对于EC技术,缺乏多样性会阻碍搜索。多样性和独特的个体可以提供关键的变异,使新的程序能够被发现和改进。为了在GP中保持高水平的多样性,人们提出了各种技术。

Ekárt 和 Németh [16] 引入了适应度共享,这是一种应用于遗传算法的小生境技术 [25],用于维护GP中的多样性。在 fitness 共享中,fitness 被视为种群的共享资源。每个个体 i i i 的适应度是通过它的生态位计数 n c i nc_i nci , n c i nc_i nci 降低(即,较差的适应度),它估计每个个体周围的拥挤度,通过如下公式计算:

其中P是种群规模,S是共享函数,dis是两个个体 i i i k k k 之间的距离. S的一种常用形式为

其中 r r r 是一个预定义的小生境半径,通常 r = 1 r = 1 r=1 .适应度共享的好处是防止种群整体收敛,而允许小生境收敛。

Burlacu 和 Affenzeller [26] 提出了一种新的多样性保持方法,其中 Poli’s 定义[27]被用来为GP中的个体生成树结构模板。匹配相同图式的个体被分组在一起。他们根据模式频率开发了具有自适应突变率的局部突变。更具体地说,他们在观察到语义多样性丧失的组内进行了更多的变异,目的是防止频繁模式主宰种群。在本文中,两个个体的语义相似度是通过其语义之间的判定系数的值来衡量的。它们对GP的性能有一定的改善。然而,在他们的方法中使用不同的设置时,对于所有被检查的问题没有一致的改进。

Helmuth 等[28]研究了选择方法与种群多样性的关系。他们比较了三种选择算子在保持两种种群多样性上的努力。它们通过对期望输出和个体在训练数据上的输出施加一个或多个误差函数来创建个体的误差向量。不同误差向量的百分比被认为是一个多样性度量,而当应用凝聚聚类[29]对基于误差向量的个体进行分组时,聚类的数目是另一个多样性度量。他们发现 lexicase 选择比锦标赛选择和基于选择的隐式适应值共享能更好地保持种群多样性。与聚类数相比,误差多样性是一个更好的适应度指标。然而,他们并没有展示如何使用这个发现来帮助GP中的搜索。Lehman和Stanley [30]将新颖性搜索引入到GP中以增加种群多样性。新颖性搜索不是对某一目标的表现进行奖励,而是对某一项目在行为空间中距离其余人群多远的行为新颖性进行奖励。他们的新颖性度量与我们在本文中的新颖性度量不同。本文提出的度量方法考虑了程序在变换后的行为空间中与其对应点在目标点上的距离和分布来衡量程序的新颖性。

多目标方法也被用于GPSR中种群多样性的维护[31] [32]。Burlacu 等[32]采用 NSGA-II 算法,以最大化 R2 相关系数为主要目标,以最大化种群多样性为次要目标。在他们的工作中,一个个体的多样性得分是该个体与其他种群的平均树距离。在计算树距离时,他们引入了一种混合方法,通过在叶子节点中包含数值系数,使传统的结构树距离度量具有语义意识。

综上所述,先前的研究提供了各种多样性的度量,并在许多问题领域中显示了它们对增强GP搜索的有效性。然而,在GPSR中缺乏能够捕获种群详细行为并能用于更好搜索的信息性多样性测度。本文试图填补这一空白。

III. NEW DIVERSITY PRESERVING FRAMEWORK 新的多样性维护框架

在GP中,多样性测度试图限定一个种群的多样性。基于解的行为的多样性度量通常研究种群中的适应度差异。熵度量了种群的无序程度,在反映GP多样性方面显示了其有效性[14],[15]。基于熵的多样性测度在许多领域使用GP时都表现出与适应度的强相关性。如 artificial ant 和 even-5-parity. 然而,它并没有表现出这种强相关性,在处理符号回归问题时无法捕捉到使群体取得良好表现的因素[14]。与 artificial ant 和 even-5-parity.,符号回归具有连续的适应值空间,直观上需要更精细的机制将种群划分为不同的分区。为了解决这个问题,更好地利用熵作为符号回归多样性测度的潜力,我们提出了一种新的基于熵的 GPSR 多样性测度。所提出的多样性度量有一个新的划分定义,这被称为 GP 个体的一个新的新奇度量。更重要的是,基于新测度提出了一种新的多样性保持框架,以指导 GPSR 进行更有效的搜索。

A. Entropy Diversity Measure Based on Transformed Semantics 基于转换语义的多样性度量

本文提出了一种新的基于熵的多样性度量方法—转换语义熵 (TS熵)。TS 熵的计算如下式所示:

其中 p j p_j pj 衡量分区 j j j 所占的种群比例,即 p j = [ ∣ j ∣ / P ] , ∣ j ∣ p_j = [|j| / P],|j| pj=[j∣/P]j 为分区 j j j 中的个体数, P P P 为种群规模, k k k 为分区总数。TS 熵与现有的基于熵的多样性度量 [14] [15] 的主要区别在于如何定义划分。更具体地说,TS 熵中的划分由个体的转换语义决定 [33],[34],而现有熵中的划分由这些个体的适应度值定义。对于同一总体来说,分区确定的不同导致 p j p_j pj k k k 的取值不同,即熵值不同。

图 1 比较了两种熵测度生成的分区在 n 维笛卡尔空间中的几何解释。注意,为了简单起见,这里考虑 n = 2 的简单情况,它表示数据中的 2 个实例。每个红点为一个 GP 解,黑点为目标。在基于适应度的熵 [1] [图1 (a) ]中,考虑一个连续的适应度空间, 一个分区通常代表不同适应度值的子集,即与目标输出不同距离值的子集,因为适应度通常由误差/距离度量来衡量。如图 1 (a) 所示,坐落在两个同心圆之间或最小同心圆内的红点属于同一分区。

图 1 (b) 展示了由 GP 个体的语义定义的划分。在 GP 中,语义是对 GP 个体做什么的描述。语义的形式是问题依赖的。在符号回归中,语义通常被定义为一个向量,其中每个元素是训练集中每个训练实例的个体对应的输出 [33]。包含一组目标输出值的向量称为目标语义。与适应度相比,语义包含了更多的细节,可以潜在地更好地定义程序之间的行为差异。然而,语义中元素的维度/数量通常较高。比较语义在每个维度的分布是耗时的,并不一定能很好地洞察多样性。主成分分析( principal component analysis,PCA )可以减少语义中的元素个数,已被广泛用于降维。通过使用前几个主成分,PCA 可以提供一个低维但信息丰富的原始高维语义视图。在这项工作中,PCA 被用于将种群和目标语义的语义转化为低维语义。这些变换后的语义包含了 PCA 中的前两个主成分,已被证明足以描述程序的表型特征[24]。因此,在这项工作中,熵度量使用转换的语义来定义分区。

在 TS 熵中,为了更好地衡量个体之间的行为差异,不仅考虑了转换后的语义与转换后的目标语义之间的距离,还考虑了语义到目标语义的方向。在转换后的语义空间[如图1 (b)所示]中,通过定义 x x x 轴为转换后的目标语义的第一个分量的值,相对语义为个体的语义到目标语义的弧/连接,通过 x x x 轴与相对语义的夹角来衡量方向。方向以不同的方式表示对目标语义的近似。因此,在提出的基于熵的多样性度量中,假设一个分区包含一个语义子集,该子集具有相似的转换值和与目标语义相似的方向。在这项工作中,这些相似的方向被定义为一个区域,它是由转换后的目标语义的原点坐标分割的子空间。如图 1 (b)所示,在表示转换后语义空间的二维空间中,每个区域覆盖了半个象限区域。用等值线 y = x y = x y=x 和对应的直线 y = − x y = -x y=x 分割象限区域,其中 x x x y y y 是两个主成分的值。总共有8个区域和若干语义子集被以目标语义为中心的圆分割。以此类推,在基于适应度[如图 1 ( a )所示]的熵中属于同一分区的程序可能在新的基于熵的多样性测度中属于多个不同分区[图1 (b)],认识并考虑这一特性将有助于更准确地识别程序的行为差异。

B. New Framework to Preserve the Diversity in GPSR 维护 GPSR 多样性的新框架

为了更有效的搜索,需要保持高熵值的(即多样性)。为此,提出了一种新的基于熵的 GP 多样性保持框架。该框架包括一个新的适应度函数,该函数同时考虑了每个个体的学习性能和新颖性水平,以及一个新的选择算子,旨在实现 GPSR 中搜索过程的探索和利用之间的良好平衡。采用基于 TS 熵的多样性保持框架的 GP 命名为 GPED。

1) New Fitness Function

GPED 中的个体由两部分评估,即预测输出与目标输出之间的误差和新颖性。因此,GPED 的适应度函数定义为:

其中,第一部分是训练数据上的误差,用相对平方误差 (RSE) 来衡量。RSE 的定义如下:

其中 f i f_i fi 是第 i i i 个预测输出, y ‾ \overline{y} y 是目标输出的均值, y i y_i yi 是第 i i i 个目标输出。个体的适应度还包括 p j = [ ∣ j ∣ / P ] p_j = [ | j | / P ] pj=[j∣/P],它由与当前个体处于同一划分中的个体数量 ∣ j ∣ |j| j 决定,给定固定的种群规模 P。在同一分区中具有少量数目的个体被认为更加新颖,会具有更小的 p j p_j pj因此,在适应度函数中引入 p j p_j pj 作为惩罚项,通过赋予较低/较好的适应度值来激励更多的新个体。 当两个个体具有相似的 RSE 时,越新颖的个体的适应度值越低,即越好。 这些方案将有更高的生存和繁殖概率。这样,新的适应度函数有望在最小化训练误差的同时保持种群的多样性。

2) New Selection Operator to Preserve Population Diversity 维护 GPSR 多样性的新框架

在以往关于 GP 的工作中表明,具有相似行为的父代通常容易产生具有相似行为的孩子[35] [36]。为了保持种群多样性,选择具有不同行为的亲本进行育种是明智的选择。新的多样性保持框架包括一个新的父代选择算子,用于选择待交叉的父代。在新的选择算子中,选择了一对在四个不同水平上互不相同的父代,如图 2 所示。这四个层次的差异定义如下。

  1. Low Level:父代位于同一区域内的两个不同分区上;两个父代只在他们所位于的同心圆上彼此不同,所处的位置是指它们的语义在转换后的语义空间中所属的子集。

  2. Standard Level:父代来自任意两个不同的分区。在转换后的语义空间中,它们要么位于不同的同心圆内,要么位于不同的区域内。这表明它们具有不同程度的训练误差或从不同方面逼近目标语义。

  3. Median Level:父代来自两个不同的分区,位于不同的区域,不同的同心圆

  4. High Level:两名父代位于两个不同的隔板上,处于相反的区域和不同的同心圆。两父代区间的关系为:

公式中的值 4 为区域总数的一半,在本文中为 8,因此 +4 或 -4 表示相反的象限

新选择算子的详细过程如算法 1 所示。在新的选择算子中,第一个父代使用标准的选择算子进行选择,例如本文使用的锦标赛选择。第二个父代由满足多样性要求的个体内部的另一个锦标赛选择来选择。根据较高概率的标准需求和较小概率的较低和较高需求确定多样性需求,即 p ( L o w ) = p ( M e d i a n ) = p ( H i g h ) = 20 % p(Low) = p(Median) = p(High) = 20\% p(Low)=p(Median)=p(High)=20% p ( S t a n d a r d ) = 40 % p(Standard) = 40\% p(Standard)=40%。当没有足够的候选个体满足多样性要求,即候选个体的数量小于比赛规模时,选择过程将降低要求,如从高水平到中等水平,并继续收集满足较低水平多样性要求的候选个体。

IV. EXPERIMENT SETTINGS

为了考察多样性保持方法在保持 GP 中种群多样性方面的效果,通过一组实验比较了多样性保持方法在增强 GPSR 学习和泛化性能方面的努力。此外,为了考察所提出的种群多样性度量方法在多大程度上反映了种群的适应度,进行了一组实验来比较各种种群多样性度量方法与 GP 适应度之间的关系。由于页面限制,我们在在线补充材料中呈现了额外的比较。

A. Benchmark Methods

考虑了三种基准方法来比较 GPSR 中保持种群多样性的努力及其对 GPSR 学习能力的影响。

  1. 具有适应度共享的 GP (GPFS),在评价 GP 个体时考虑基于适应度熵的多样性 [14],[16]。
  2. GP 的 Lexicase selection (Lex GP) [37],[38],它是一种基于适应度案例词典排序的父代选择技术。本工作比较了 ϵ \epsilon ϵ-lexicase selection,因为它更适合于先前研究中建议的回归任务 [37]。
  3. 标准 GP,采用基线法进行比较。

我们还比较了 GP 方法与非进化的、最先进的回归方法,包括线性回归 (LR)、带有径向基核的 SVR 和回归决策树 (DT)。因此,比较了 GP、GPFS、LexiGP、GPED 和三种机器学习回归方法的学习和泛化性能。

B. Datasets

四个合成数据集取自前人的研究 [39] 和最近的相关工作 [32]。合成数据集的信息如表 I 所示。此外,6 个常用的回归任务取自 UCI 机器学习库 [40] 和前人关于符号回归的研究 [41] [42]。Tower 是文献 [39] 中推荐的符号化回归基准,其他 5 个数据集均可在 scikit-Learn [43] 中获得。数据集中特征和实例的数量总结在表 II 中。训练集和测试集在 Tower 中提供。另外 5 个真实数据集在每次 GP 运行中随机拆分 70% 的数据用于训练,其余 30% 用于测试。这是机器学习中一种被广泛接受的划分数据集的方式 [44],[45]。

C. Parameter Settings

所有 GP 方法的参数设置汇总于表 III。这些参数大多是 GP 中常见的设置 [3]。GPFS 中用于度量多样性的划分数目设置为 20。GPED 中 TS 熵的距离测度采用相同的子集数。

所有的 GP 方法都是在 ECJ GP 框架下实现的 [46]。每个 GP 方法在每个问题上有 50 次独立运行。

V. RESULTS AND ANALYSIS

本节展示了所提出的 GPSR 多样性保持框架的有效性。比较 3 种不同多样性保持方法的 GPSR 与标准 GP 的学习和泛化性能。对 4 种 GP 方法的搜索空间进行分析,重点考察其探索和利用能力。此外,还展示了新的 GPSR 方法与最先进的机器学习回归方法之间的比较。

A. Comparing Diversity Maintaining Methods for GPSR

本节对GP中保护种群多样性的方法进行了比较。图3给出了标准GP、GPFS、LexGP和本文新GP方法GPED 4种GP方法中最优模型的训练和测试RSEs分布。采用非参数统计显著性检验,即Wilcoxon检验,显著性水平为0.05,对GP方法中最佳运行模型的训练RSEs和测试RSEs进行两两比较。进行两组Wilcoxon检验。另一组是3种GP方法与本文方法GPED之间的集合。统计显著性检验结果及p值见表四。’ + ‘表示GPED (或GP )显著优于比较方法,’ - ‘表示GPED (或GP )显著差于比较方法,’ = '表示无显著差异。

1) Training Performance:
如图 3 所示,除 Diabetes 和 Friedman-1 外,GPED 在 10 个训练集中的 8 个训练集上都比 GP 有更好的训练表现。在 8 个数据集中的 6 个数据集上,改进都具有统计学意义。在 10 个数据集上,除了 Friedman-2 和 Tower 外,与其他两种具有多样性保持的 GP 方法相比,GPED 的训练性能明显优于 GPFS。在 10 个训练集上的 6 个上,GPED 的训练性能明显优于 LexGP。 GPFS 和 LexiGP 与 GP 相比,GPFS 在 5 个数据集上的训练性能明显较差, LexGP 仅在 Concrete 和 Vladislavleva-4 上的学习性能明显优于 GP,但在 5 个训练集上的性能明显较差。

对四种 GP 方法的训练性能进行比较,表明引入一种方法能够保持种群多样性并不总能给 GP 的学习绩效带来好处。这可能是由于搜索过程更多的精力集中在探索上,减缓了收敛过程。我们的新的多样性保持方法没有受到这个问题的困扰,这可能主要是由于搜索过程的探索和利用能力之间的良好平衡

2) Test Performance:
综合考虑 4 种 GPSR 方法的测试性能,GPED 能够在训练集中延续其优势,总体上取得了最好的性能。GPED 在 10 个测试集中的 7 个测试集上都优于 GP。它在 7 个测试集上的测试 RSE 显著低于 GP。在另外三个数据集上, GPED 和 GP 具有相似的测试性能。与采用其他两种多样性保持方法的 GP 相比, GPED 在 10 个测试集中的 7 个测试集上都显著优于 GPFS。在另外三个数据集上,GPED 和 GPFS 取得了相当的测试性能。除 Vladislavleva-4、BstHouse 和 Concrete 外,GPED 在 10 个数据集中的 7 个数据集上都显著优于 LexGP。在这 3 个数据集上,GPED 与 LexGP 的测试性能略差。

GPED 在大多数测试集上的表现优于 GP,进一步表明新的多样性保持框架在搜索过程的探索和利用之间取得了良好的平衡。这种平衡有助于 GP 更有效地探索搜索空间,而更好的个体不会被遗漏。它可以防止 GP 只开发局部区域,从而防止早熟收敛。在 GP 的搜索过程中保持足够的多样性对于获得探索和利用之间的权衡具有重要作用。然而,实现这一平衡的另一个关键原因是人口的分布。这就解释了为什么 GPFS 通过适应度共享保持了较高的种群多样性,但没有考虑适应度值的分布,不能增强 GP 的泛化性。在大多数情况下, GPED 的目标是在变换后的(通过 PCA)语义空间中,在目标语义的不同方向上保持均匀分布的种群。方向的考虑防止了不同的人群只在健身方面有所不同。各种适应度值的重叠会降低种群的收敛速度,导致欠拟合。LexGP 在增强 GP 的泛化性能方面也有很好的效果。然而,在训练实例数量相对较少的数据集上,例如 4 个合成数据集或大量对训练实例的数据集,GPED 在泛化性能上明显优于 LexGP。

3) Generalization Capability:
为了更细致地考察 GP 方法的泛化性能,图 4 给出了测试误差的世代演化图。这些图是利用 4 种 GP 方法中最佳世代模型的检验残差平方和绘制的。由图 4 可知,在除 Pagie-1 外的 10 个数据集中的 9 个数据集上,4 种 GP 方法均具有较好的泛化能力。在这 9 个测试集上,在前几代,GPED 与 GP 具有非常相似的泛化性能。在这个阶段,GP 中的测试误差下降得很快,这可能是由于种群多样性带来的高探索,而 GPED 中的种群多样性保持框架并没有表现出多大的努力。从 GP 中测试误差下降缓慢的阶段通常预示着收敛的趋势,GPED 显示了它比 GP 的优势。如图 4 所示,这种趋势通常从演化过程的早期阶段开始,即第 25 代左右。BstHouse、Concrete 和 Vladislavleva-4 的情况也是如此。在 GP 存在过拟合且测试性能不稳定的 Pagie-1 上,GPED能够减少过拟合且性能更加稳定,表现为图的窄带性比 GP 更强。通过比较 GPED 和 GP 的泛化性能演化图,证实了当 GP 种群开始收敛时,新的种群多样性保持框架对提高泛化能力有积极的作用。

GPED 比 GPFS 具有更好的和一致稳定的泛化性能,这表现在较小的波动图。比较 LexGP 和提出的 GPED 的泛化性能,LexGP 通常在进化的开始阶段优于 GPED。然而,这种趋势并不能持续很长时间,从第 25 代左右开始, GPED 中的测试误差下降速度远快于 LexGP。这是因为 LexGP 比 GPED 收敛得更快。在所有 10 个测试集上都可以发现这种模式。GPED比LexGP具有更稳定的泛化性能,表现在进化图更窄且波动更小。LexGP 在 Friedman-2 上存在过拟合问题,而 GPED 泛化性能良好。GPED 基于转换后的语义保持了 GP 的种群多样性,能够反映整个语义集的分布情况,且对实例数和代数数不敏感。

B. Further Analyses

1) Fitness Landscape Analyses: 在这一部分中,对四种 GP 方法的 fitness landscape 进行了分析和比较,旨在提供一个详细的分析理解新的多样性保护框架引入的景观变化及其与搜索动态的关系。这种分析体现在两个方面:演化性和地方性。

Evolvability: 可进化性是指种群产生较好后代的能力 [47]。持续进化需要可变性,可变性是通过维持种群的多样性来实现的。因此,对可进化性的分析可以解释为什么使用新的多样性保持框架的 GP 获得了更好的性能。在以往的适应度景观分析研究中,通过将个体的适应度值与邻居的适应度值作图来研究进化性。这样的散点图被称为适应度云 [48] [49],已被证明是一种有效的演化性可视化绘制。在适应度云 (fitness clouds) 中,通过应用遗传算子的一步/操作得到一个邻居。

四种 GP 方法在十个数据集上的适应度云如图 5 所示。使用从一次 GP 试验中获得的亲子对的适应度值绘制图。四种方法的进化过程都是从同一组个体开始的。

图 5 显示,GPED (橙色) 中的点通常分布在更广的区域,这表明一组比其他 3 种 GP 方法更多样的适应度值。在大多数 10 个数据集上,LexGP 生成的构造性点数最多,子代的适应度优于父代。(这些点都在 Parent training RSE = Children training RSE 的线下。) GPED 产生了第二个大量的构造点。然而,这些构造性点的重叠比 LexGP 少。GPED 中的构造点的数量通常远远多于在 GPFS 和 GP 的这些构造点 .另一个重要的模式是每个图的左下角由来自 GPED 的点组成,它表示父代和子代的较小误差。这表明 GPED 中较好的父待可以产生更多的好的子代。在适应度云中显示的所有这些模式表明 GPED 具有更好的演化能力。

fitness cloud 可以帮助确定与可进化性和问题难度相关的 fitness landscape 的一些特征,并且易于可视化。但是仅仅从散点图中观察并不足以证实 GP 方法搜索的先进性。基于适应度云的量化指标负斜率系数 (NSC) 在先前的研究中已被提出并证明其可靠性 [49]。为了计算 NSC,可以将适应度云散点图的横坐标划分为 k k k 段相同长度的 { I 1 , I 2 , . . , I k } \{I_1,I_2,..,I_k\} {I1I2..Ik}。由这些线段可以推导出集合 { J 1 , J 2 , . . , J k } \{J_1,J_2,..,J_k\} {J1J2..Jk},其中每个 J i J_i Ji 包含 I i I_i Ii 中横坐标对应的所有纵坐标。设 { M 1 , M 2 , . . , M k } \{M_1,M_2,..,M_k\} {M1M2..Mk} 为片段 { I 1 , I 2 , . . , I k } \{I_1,I_2,..,I_k\} {I1I2..Ik} 中横坐标值的平均值, { N 1 , N 2 , . . , N k } \{N_1,N_2,..,N_k\} {N1N2..Nk} { J 1 , J 2 , . . , J k } \{J_1,J_2,..,J_k\} {J1J2..Jk} 中纵坐标值的平均值。然后,定义线段集合 { S 1 , S 2 , . . , S k 1 } \{S_1,S_2,..,S_{k1}\} {S1S2..Sk1},其中每个 S i S_i Si 连接点 ( M i , N i ) (M_i , N_i) (Mi,Ni) 到点 ( M i + 1 、 N i + 1 ) (M_{i + 1}、N_{i + 1}) (Mi+1Ni+1)。对于每一个分段 S i S_i Si,定义其斜率 P i P_i Pi P i = ( N i + 1 − N i ) / ( M i + 1 − M i ) P_i = (N_{i + 1} - N_{i}) / (M_{i + 1}-M_{i}) Pi=(Ni+1Ni)/(Mi+1Mi)。NSC 定义为 N S C = ∑ i = 1 N P i NSC =\sum_{i=1}^N P_i NSC=i=1NPi。NSC 的大小量化了 GP 搜索问题的难度。GP 的一个简单问题是 NSC = 0。如果 NSC < 0,则该问题对于 GP 方法是困难的。

表 V (‘NSC’ 栏)提供了四种 GP 方法中 50 次运行的 NSC 的汇总。四种 GP 方法在十个数据集上的 NSC 值均为负值。在所有 10 个数据集上,GPED 的 NSC 均大于 GP。在 10 个数据集中的 6 个数据集上,GPED 具有 4 种 GP 方法中最大的 NSC。这进一步证实了 GPED 具有更高的可进化性,并且这些问题对于 GPED 来说比其他三种算法难度更小.

Locality: 局部性是指任何映射对邻域的保持,在 EC 技术中起着重要的作用。在基于树的 GP 中,局部性通常指基因型-适合度映射 [50]。在本工作中,我们扩展了先前研究 [51] 中给出的局部性的定量定义,以衡量 4 种 GP 方法中遗传操作的局部性。遗传算子的局部性 dm 定义为:

其中 fd(X, Child(X)) 是通过交叉或变异操作产生的 X 与其子代 Child(X) 之间的适应度距离。建立了 α 和 β 两个界. 由于不能保持邻域的较小和较大的适应度距离都是非局部的 [51],因此只计算产生适应度距离 α α α < fd < β β β 的遗传操作。由于 X 的适应值通常在 [0 , 1] 的范围内,因此它们足够小以保持局部性。

表 V 最后三列展示了四种 GP 方法在十个数据集上的局部性。如前所述之前的研究 [51],较小的 dm 和较大的 N 表明较高的局域性。因此,对 GPED 和其他三种 GP 方法的 N/dm 值两两之间进行了一组显著性水平为 0.05 的 Wilcoxon 检验。结果列于表五的最后一列,其中 ‘+’ (‘-’) 表示 GPED 比对比方法具有更低(高)的局部性,‘=’ 表示没有显著差异。N/A’ 表示无比较。结果显示,在 10 个数据集中,GPED 在 7 个数据集上的局部性明显高于 GP 和 LexGP。与 GPFS 相比,GPED 在 7 个数据集上具有更高的局部性,其中在 5 个数据集上差异显著。

对适应度景观的分析表明,采用新的种群保持框架的 GPED 比其他两种种群保持方法更能提高 GP 搜索的进化性和局部性。具有更高演化性和局部性的搜索更可能以稳定的方式找到更优的解。这就解释了为什么在 GP 中保持较高的种群多样性可以增强其学习和泛化性能。

2) Further Examination on Program Size and Computation Cost in GP Methods: 为了了解多样性保持方法如何影响GP的进化过程,表 VI 给出了 4 种 GP 方法中 50 个最佳运行模型的平均和最小程序规模。GP 的整体计算成本对于这些 GP 方法中的试验,也考察了一次试验的平均和最短运行时间。

表 VI 表明,三种多样性保持方法的 GP 在进化模型的大小上与标准 GP 相比具有相同的模式。在 10 个数据集中的大部分数据集上,3 种方法演化出的模型规模都小于 GP。GPED 在所有 10 个数据集上的模型规模均小于 GP,而 LexGP 仅有较大的模型规模模型大小比 GP 对 Diabetes 数据集的影响大。GPFS 比 GP 在 Concrete 数据集上的模型尺寸略大。这表明保持种群多样性的方法通常有助于 GP 产生较小规模的程序。同时,与 GP 和 GPFS 相比, LexGP 和 GPED 进化出的模型通常具有更稳定的规模,表现在它们的平均规模更小,在 50 次运行中的最短规模更大。

考虑到计算时间,三种具有多样性保持方法的 GP 比 GP 花费更多的时间。 LexGP 通常是最昂贵的方法。GPED 在 PCA 上花费了大部分额外的精力用于语义的降维。在实例数较多的数据集上,即语义中的维度数较高的情况下, GPED 比其他三种 GP 方法具有更高的计算代价。然而,GPED 中较小的模型降低了评估过程的成本。总体而言,GPED 中计算成本的增加是合理且可承受的。

C. Comparing the Population Diversity in GP and GPED

为了研究 GPED 中新的多样性保持框架对种群多样性的影响,图 6 给出了每一代 GP 和 GPED 中用 TS 熵度量的种群多样性的比较。使用两种方法的 50 次 GP 试验中的实测多样性绘制了图。

显然,在所有的 10 个数据集上,GPED 比 GP 在进化过程中具有更大的种群多样性,这证实了新的种群多样性保持框架的努力。两种方法的种群多样性差异通常从第 15 代开始,到第 25 代才逐渐明显。值得注意的是,它们的泛化差异(如图 4 所示)也是从第 25 代开始。这证实了 GPED 相对于 GP 的性能提升是由更高的种群多样性带来的。此外,GPED 比 GP 在种群多样性上更大的进步通常会带来更多的学习增益,即在 BstHouse、Concrete、Redwine 和Whitewine 上,GPED 没有太大的学习增益。另一个有趣的模式是, GP 中在种群多样性的数据集上没有下降太多,如在 Pagie-1、Tower 和 Diabetes 上,GPED 的种群多样性增加也不多,GPED 比 Concrete、Redwine 和Whitewine 的学习增益小。

D. Comparison With Regression Methods

我们还将提出的 GP 方法 GPED 与三种广泛使用的机器学习回归方法进行了比较。对比结果汇总于表七。采用置信区间为 0.05 的 Mann-Whitney U Test 对 GPED 和 DT 的结果进行显著性差异检验。采用 z 检验比较 GPED (有一组 50 个结果)和 LR/SVR 的结果(一个结果),‘+’ 表示 GPED 显著优于对比方法,'-‘表示 GPED 显著较差,’='表示无显著差异。

可以看出,对比 GPED 与 LR 和 SVR。GPED 在训练集和测试集上的表现通常优于 LR 和 SVR。GPED 在 6 个训练集上优于 LR,在 7 个训练集上优于 SVR。在 6 个测试集上,GPED 的测试误差明显小于 LR。在 9 个数据集上, GPED 的泛化性能明显优于 SVR。在 10 个测试集上,GPED 在 6 个测试集上的泛化性能明显优于 DT。在这些数据集上,DT 明显地过度拟合了训练数据,具有非常好的训练性能但测试性能较差。具体来说,在 10 个测试集上,除了 Friedman-1、Friedman-2、Concrete 和 Tower 之外,GPED 在 6 个测试集上都优于 DT。在 Friedman-1、Concrete 和 Tower 上,GPED 比 DT 泛化性能差,而在 Friedman-2 上,两种方法泛化性能相当。总体而言,GPED 在所考察的数据集上的泛化性要优于 3 种传统回归方法。

E. Investigation on the Exploration and Exploitation

探索/开发与多样性的关系是深刻的 [52]。分析探索和利用之间的平衡是展示和解释种群多样性增强的一个明智的想法。然而,如何度量探索和利用仍然是包括 GP 在内的进化算法中的一个开放性问题 [52]。对这两个过程的一个普遍接受的直觉是,探索是指访问搜索空间中全新的区域的过程,而利用则被定义为访问特定区域中先前访问过的点的邻域的过程。基于这种直觉,[52] 以合理的方式给出了探索和探索的定义。他们首先定义了两个个体之间的相似度,即它们的输出之间的欧氏距离。然后给出了与最近邻 SCN 的相似性的定义,即对于一个新的个体 ind n _n n,与最近邻 SCN 的相似性度量定义为在整个种群历史中与最相似个体的相似性。给定 SCN 的定义,探索的过程发生在 SCN(ind n _n n, P) > X,其中 X 是定义最近邻的邻域的边界的阈值,并且是问题依赖的。类似地,利用的过程发生在 SCN(ind n _n n , P)≤X。在本节中,我们遵循这些定义,即:

以 4 种 GP 方法进化过程中探索过程数与利用过程数的比值考察探索与利用的平衡。而较高的比率表明偏向探索,较低的比率意味着偏向利用。

由于不同回归任务中的目标输出可能具有非常不同的尺度,因此这些任务之间的 SCN 值的尺度也可能非常不同。为了使 X 值的选择与问题无关,在我们的实验中,使用相对欧氏距离来衡量两个 GP 树之间的相似性。每个个体的 SCN 是其最小的 REud:

其中,Eud(ind n _n n, ind m _m m) 是两个 GP 个体的输出向量之间的欧氏距离,Eud( y ˉ , y \bar{y} , y yˉ,y)是目标输出 y y y 与目标 y ˉ \bar{y} yˉ 之间的欧氏距离。我们对这 10 个数据集尝试了一组合理的小 X 值,即 X∈( 0.1、0.2、0.3、0.4、0.5),发现非常相似的模式。为了使分析更加清晰和容易,我们在四个真实数据集上展示了 X = 0.5 的结果。在其他数据集上也发现了类似的模式。图 7 展示了四种 GP 方法在这些数据集上的探索和利用次数的演化图以及泛化性能。

此外,为了考察不同多样性要求对控制探索和利用平衡的影响,我们测试了两种不同多样性要求的 GPED 用于选择亲本,即 GPEDS1 和 GPEDS2。GPEDS1 对亲本的多样性要求较高,即 p(High) = 100%,而 GPEDS2 对亲本的多样性要求较低,即 p(Low) = 100%。图 7 还给出了 GPEDS1 和 GPEDS2 的探索次数、利用次数和泛化性能的演化图。

如图 7 的第一行所示,在 4 个数据集上,GPED 的探索度均高于 GP 和 GPFS,低于 LexGP。考虑图 7 中第二行所示的利用度,GPED 仍然排在中间。它比 GP 和 LexGP 具有更高的利用度,而比 GPFS 具有更低的利用度。总的来说,如图 7 中的第三行所示,GPED 比 GP 和 GPFS 实现了更高的探索和利用比率,低于 LexGP。虽然三种多样性保持方法的 GP 都能在一定程度上提高 GP 中探索与利用的比例,但 GPED 提高该比例的效果比 GPFS 更显著而小于LexGP。值得注意的是,较高的探索和利用比例并不总是导致良好的泛化能力,这表现在 LexGP 在 Redwine 和 Whitewine上 的泛化性能不如 GP。

GPED 与另外两种 GPED 方法 GPEDS1 和 GPEDS2 的比较证实,调整多样性需求将控制探索和利用。在多样性要求较高的情况下,GPEDS1 一般比 GPED 具有更高的探索度和更低的利用度,导致探索度和利用度的比值更高。另一方面,正如预期的那样,对多样性要求较低的 GPEDS2 通常比 GPED 和 GPEDS1 具有更低的探索度和更高的开发度。GPEDS1 和 GPEDS2 在 4 个数据集上的泛化性能都比 GPED 差,这也证实了 GPED 在探索和利用之间取得良好平衡的能力。另一个有趣的模式是 GPEDS1 泛化性能不稳定,在 BstHouse 上存在过拟合现象,这也表明探索和利用的比例越高并不意味着平衡越好。

VI. CONCLUSION

本文旨在为 GPSR 提出一种新的多样性度量方法,该方法能够有效地反映种群的多样性,并在此基础上提出一种多样性保持框架。

通过提出一种新的基于转换语义及其分布的熵多样性度量和一种新的多样性保持框架来平衡 GP 搜索过程的探索和利用,实现了这一目标。配备了新的多样性保持框架的 GP 通常在学习和泛化方面稳定地优于 GP 和具有两种最先进多样性保持方法的 GP。对搜索过程的探索证实了我们的新方法在进化过程中具有更高的进化性和局部性。同时,新的多样性保持方法在仅有少量实例可用的情况下从高维数据中学习时,比 lexicase selection 更合适。

提出的多样性度量和多样性保持框架提供了一种有效的方法来量化种群的多样性,并允许在 GPSR 中保持种群的多样性。我们鼓励对 GPSR 和其他许多地区的多样性进行进一步的研究。在这项工作之后,有几个潜在的方向可以进一步探索。在这项工作中,应用了一种简单且常用的降维方法 PCA 来转换高维语义。在不久的将来,一些非线性降维技术,如流形学习方法的效果可以被研究。此外,本文新的适应度函数采用简单的聚合形式来考虑 GP 个体的新颖性。在不久的将来,我们将其推广到多目标方法,有望进一步改进 GP 中的搜索。

Reference

Chen Q, Xue B, Zhang M. Preserving Population Diversity Based on Transformed Semantics in Genetic Programming for Symbolic Regression[J]. IEEE Transactions on Evolutionary Computation, 2020.

总结: 2020,TEVC,Preserving Population Diversity Based on Transformed Semantics in GP for SR

原文见: https://blog.csdn.net/qq_46450354

为什么需要在语义空间维持种群多样性的选择算子?

对于进化算法来说,一个非常重要的能力就是其具有全局搜索的能力。但是,如果选择算子的选择压力过大,那么就很容易导致种群过早收敛,从而难以发现全局最优的个体。

对于遗传编程领域来说,由于其遵循进化算法的基本框架,因此也需要考虑在演化过程中维护种群的多样性,避免收敛到局部最优。基于上面的理论,多样性维持技术一直是遗传编程领域的经典研究课题。

近些年来,随着研究者们逐渐意识到语义信息在遗传编程中的作用,基于语义的选择算子如雨后春笋般蓬勃发展。最经典的算子当属Lexicase Selection,该算子通过随机考虑不同的样本选择个体,从而实现选择的多样性。但是,Lexicase Selection仅仅是隐式的考虑了语义空间,显式考虑语义空间可能会具有更好的选择效果。

针对上述问题,惠灵顿维多利亚大学的Qi Chen,Bing Xue和Mengjie Zhang教授于TEVC 2021上发表了论文《Preserving Population Diversity Based on Transformed Semantics in Genetic Programming for Symbolic Regression》,以展示如何显式地基于语义空间设计遗传编程算子,从而实现更好的搜索效果。

GPED 算法

多样性计算方式

传统来说,经典的多样性计算方式一般是根据整体适应度值进行计算。但是这种整体适应度值并没有考虑到遗传编程的语义信息。例如,下图 (a) 展示了根据经典的遗传编程适应度值划分的空间。从图中可以看出,众多个体具有相似的适应度值。但是,这并不意味着种群具有比较差的多样性。相反,如果从 (b) 图来看,我们就可以发现,尽管每个圆内都有比较多的个体,但是这些个体是分散在不同方向的,也就是说预测值是非常多样的。这也就意味着其实种群是比较多样的。 多样性计算如下:

根据上面的观察,作者提出了基于语义空间的多样性(Entropy)计算方式。下面的公式展示了多样性的计算方式,这里 p j p_j pj 代表分区内的个体比例,即 p j = [ ∣ j ∣ / P ] p_j = [|j| / P] pj=[j∣/P]。直观上来理解,如果某个语义分区内的个体比较多,那么这个语义分区内的个体都会有比较小的多样性分数,反之则会有比较高的多样性分数。

这里值得一提的是,一般遗传编程的语义空间,例如回归问题的预测值,都是非常高维的。为了使其能够像上图一样,在二维空间内计算多样性。作者在这里使用了 PCA 算法,将高维空间投影到二维空间以后,再按照上面的公式计算多样性。

适应度值计算

在得到了多样性分数(Entropy)之后,我们就可以将其加入到适应度函数中,从而惩罚多样性不够高的个体。假设我们使用 R S E = ∑ i = 1 n ( f i − y i ) 2 ( y − y i ) 2 ‾ RSE = \sum_{i=1}^{n}\frac{(f_i - y_i)^2}{\overline{(y - y_i)^2}} RSE=i=1n(yyi)2(fiyi)2 作为误差度量,那么新的适应度函数即为如下公式所示。

基于语义空间的选择

在定义好了语义空间之后,作者设计了一个特殊的选择算子选择父代个体。首先,作者定义了父代个体多样性的四种情况:

  • 低层次: 两个父代个体在相同的区间(角度相同),但是在不同的同心圆内。这意味着两个个体具有相同的语义方向,但是训练误差不同。
  • 标准层次: 两个个体在不同的分区,即区间不同或者同心圆不同。这意味着两个个体的训练误差不同,或者是语义方向不同。
  • 中层次: 两个个体在不同的区间且在不同的同心圆。
  • 高层次: 两个个体在相反的区间且在不同的同心圆。假设一个个体的区间是 Z ( p 1 ) Z(p_1) Z(p1),那么另一个个体的区间一定是 Z ( p 2 ) Z(p_2) Z(p2)

下图的(a),(b),(c),(d)四幅图就分别展示了四种层次的示意图。

根据上面的定义,下面的伪代码展示了GPED选择算子的选择方式。首先,GPED会使用传统的Tournament算子选择出父个体 p 1 p_1 p1,然后根据该个体,有40%的概率从标准层次对应的个体中选择出 p 2 p_2 p2,并有20%的概率从其他三个对应的个体中选择出 p 2 p_2 p2。当确定了 p 2 p_2 p2 的层次以后,就可以使用标准的Tournament算子,从该层次对应的所有个体中,选择出父代个体 p 2 p_2 p2

值得一提的是,对于某些个体 p 1 p_1 p1,有可能对应的高层次区间没有的足够的个体进行Tournament选择。在这种情况,GPED算法会降低一个层次,以补充足够多的个体进行Tournament选择。

实验结果

Benchmark 结果

下表展示了不同算法的测试集误差统计检验结果。从下图可以看出,在许多问题上,Lexicase Selection 和 Fitness Sharing 并不能达到比标准 GP 更好的效果,但是 GPED 算法可以在许多问题上显著优于标准 GP 算法。

下图进一步展示了测试集误差和训练集误差的箱型图。从图中可以看出, GPED 算法训练集和测试集上均具有良好的效果。

下图展示了不同选择算法的测试集误差曲线,从图中可以看出,GPED算法在许多问题上均具有稳定的良好表现。而Lexicase Selection算法则在某些问题上表现良好,在另一些问题上表现明显较差。

多样性分析

首先,我们可以探究一下 GPED 的 Evolvability。Evolvability 代表算子产生更好个体的概率。下图展示了不同算子的 Fitness clouds 结果,横轴代表子代个体的适应度,纵轴代表父代个体的适应度。从图中可以看出,GPED 在左下角区域的个体相对较多。这意味着对于原本适应度就比较高的个体来说, GPED 相对其他算子来说具有更好的 Evolvability。

上图仅仅展示了可视化的结果。实际上,算法的Evolvability也可以使用数值形式进行刻画。简单来说,例如对于下面这样一个Fitness Clouds,我们可以将其横轴均分成 m m m 段,那么对应到纵轴上就是不等长的 m m m 段。横轴和纵轴的每段区间的中点可以一一对应形成多组直线,这些直线的斜率记为 P i P_i Pi

那么算法 Evolvability 的数值度量 NSC 即如下所示,即所有斜率为负的直线的斜率的加和。不同算法的 NSC 分数对比结果在下一小节的结果表中。

Evolvability 计算方式:

局部性分析

然后,我们可以探究一下 GPED 的 Locality。Locality 代表父代个体和子代个体间的预测值差异。一般来说,我们希望演化算法的搜索空间是平滑的,即每一次交叉/变异所带来的变更不要太大。下图展示了 Locality 的计算公式,其中 f d ( X i , C h i l d ( X i ) ) fd(X_i, Child(X_i)) fd(Xi,Child(Xi)) 代表父代个体和子代个体间的距离。

下表展示了 GPED 的 NSC 和 Locality 分数。从结果来看,GPED 相比 Lexicase Selection、GPFS 和 GP 均具有更低的 d m d_m dm 值和 NSC 分数,即意味着 GPED 具有更好的 Locality 和更好的 Evolvability,从而部分解释了 GPED 为什么可以取得更好的效果。

多样性评估

作者在论文中定义了多样性指标(Entropy)作为一个优化目标。在实验阶段,我们也可以使用该指标评估一下GPED算法的种群多样性。下图展示了GPED和GP两种算法在使用作者定义的多样性指标的情况下得到的多样性分数。从实验结果来看,GPED算法相比传统的GP算法具有更好的多样性分数,这也可以部分解释为什么GPED算法会具有更好的效果。

探索/利用

在演化计算领域,探索和利用间的平衡一直是一个不断探索的话题。研究者们也一直在不断开发新的算法去尝试平衡探索和利用。对于一个新设计的算法,量化其探索和利用能力是一个非常值得一试的分析手段。SCN指标可以用来衡量算法的探索和利用程度。 S C N ( i n d n , P ) SCN(ind_n, P) SCN(indn,P) 代表当前个体 i n d n ind_n indn 和历史 P P P 中最近个体的距离。当 SCN 值大于阈值 X X X 时则认为是在探索,小于 X X X 时则认为是在利用。

下图展示了不同选择算子的探索和利用评分。从结果中可以看出,Lexicase Selection具有最高的探索和利用比,GPED排名第二,GPFS和GP则更偏向利用。此外,作者尝试了两种GPED变体,即100%高层次的选择和100%低层次的选择,分别用来探究GPED的探索和利用能力边界。从实验结果来看,两种GPED变体都劣于GPED,这意味着过多的探索和过多的利用都会阻碍演化算法发现泛化能力更强的个体,而GPED则达到了一个比较好的平衡点。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值