法律状态公告日
法律状态信息
法律状态
2022-08-19
实质审查的生效 IPC(主分类):G06F21/62 专利申请号:2022103664259 申请日:20220408
实质审查的生效
2022-08-02
公开
发明专利申请公布
技术领域
本发明涉及的具体技术领域为智能计算和高性能计算,特别涉及基于联邦遗传编程的符号回归方法。
背景技术
随着智能化的普及,各种各样的边缘设备成为了生活必不可少的组成部分,例如智能手机,智能电脑,智能电器等。各种数据被分散的存储在各个设备中,如果将数据集中放置服务器存储起来,在传输的过程中会带来很大的安全隐患,并且通信开销巨大。目前网络空间的安全对个人甚至整个国家都有着很大的影响,如何在满足保护数据隐私且安全的前提下,利用这些边缘设备的数据设计出一个机器学习框架是当前研究的重点。
近年来,基于深度学习模型可解释性差且对硬件要求高,越来越多的研究者开始把目光放在了可解释机器学习上,使得符号回归成为热门话题。遗传编程(GP)算法是目前研究符号回归问题的主流方法。遗传编程的原理是对非线性的树状结构程序即遗传算法中的染色体进行优化,同时还需要对染色体进行解析。目前,遗传编程广泛运用在模式识别,图像分析,符号回归等领域。
然而,现有的遗传编程算法存在以下不足之处:一方面,当前技术都没有从数据的维度去考虑数据隐私和数据安全问题。另一方面,目前的遗传编程搜索纯粹由训练数据样本上观察到的预测误差驱动,当数据样本不能充分覆盖输入空间时,预测误差不能为期望的模型提供足够的指导(基于自适应并行遗传算法的大规模符号回归方法及系统)。
发明内容
从保护数据的隐私性和安全性出发,解决分布式遗传编程没有考虑到的技术问题。本发明提出了一种基于联邦遗传编程的符号回归方法,该方法能够在不集中数据的情况下训练全局模型。每个客户端可以在本地并行地处理本地数据,而不需要将原始数据发送到服务器。这种方法既保护了数据的私密性和安全性,又减少了数据采集的时间。此外,还提出了一种均值漂移(Mean Shift)聚合机制来聚合局部适应度。考虑到样本的相对重要性,该机制研究了通过将权值纳入适应度函数来改善对真实数据的符号回归的可能性。
本发明的目的至少通过如下技术方案之一实现。
一种基于联邦遗传编程的符号回归方法,包括以下步骤:
S1:初始化:创建多线程,确定接入服务器的客户端数量,确保客户端访问服务器成功;随机初始化种群,种群大小为NP;
S2:客户端适应度计算:多个客户端并行的进行种群的适应度计算,判断适应值是否达到终止条件,是则退出,否则执行步骤S3;
S3:服务器适应度聚合:根据均值漂移(Mean shift)聚合机制进行适应度聚合,得到聚合的种群适应度F;
S4:基因选择:根据聚合的种群适应度F选择个体的过程,被选择的个体在之后会作为父系,通过遗传算子繁育下一代程序个体;
S5:基因突变:基因以一定的概率随机改变为新值;
S6:基因交叉:每个基因与突变载体交叉,生成一个种群,返回步骤S2。
进一步地,步骤S1中,构建一个用于符号回归的符号回归系统,符号回归系统包括多个客户端和一个中心服务器即服务端,服务端发送种群给客户端,客户端根据自身的数据计算出适应度返回给服务端,双方传递的都不是原始数据,解决了隐私环境下数据不共享的问题。
进一步地,步骤S1中,启动服务器和多个客户端;服务器实时监控是否有申请接入的服务器端或者需要断开的已连接的客户端,当一个新的客户端请求访问时,服务器立即响应客户端的接入;当所有客户端成功连接后,在服务器上进行种群初始化;服务器中,服务器确认连接的客户端的IP和端口,然后统一将初始种群发送给客户端;
服务器中的种群初始化是指生成NP个随机染色体,形成初始种群,具体表示如下:
X={X
其中,X
客户端中,在启动前确认需要连接的服务器的IP地址和端口号,在成功连接服务器后,等待服务器发送种群进行适应度计算。
进一步地,步骤S2中,客户端获取种群后,种群中的每条染色体编码为与染色体长度相等的表达式;假定所有客户端的数据集如下表示:
D={D
其中,D
其中,NP表示种群大小,f
进一步地,步骤S3中,采用均值漂移聚合机制,每个染色体根据每个客户端的重要性聚合多个适应度,均值漂移聚合机制算法具体如下:
S3.1:初始化聚合的种群适应度F=0,获取随机中心点x;
S3.2:输入核带宽h、聚合终止距离s
S3.3:计算整个种群适应度f到随机中心点x的所有距离,然后找到核带宽h范围内的所有点,称为集合M;
S3.4:计算随机中心点x到集合M中每一点的向量,将所有向量相加得到M
S3.5:随机中心点x沿着M
S3.6:循环步骤S3.3-步骤S3.5,直到满足|M
S3.7:输出聚合的种群适应度F;
均值漂移聚合机制算法中的核带宽h是高斯核函数的重要参数,取值不同聚合效果不一样;客户端的权重W根据客户端数据量占所有客户端数据总量的百分比计算。
进一步地,M
其中,x
进一步地,步骤S4中,基于步骤S3中获得的聚合的种群适应度F={f
其中,f(U
进一步地,步骤S5中,基于传统DE突变方案“DE/current-to-best/1”,染色体中的基因以某个概率随机改变为新值,具体如下:
Y
其中,Y
进一步地,步骤S6中,种群中第i条染色体X
其中,z
交叉操作完成后,生成一个新的种群;将新种群发送至客户端,返回步骤S2。
进一步地,步骤S2中,适应度计算采用符号回归中的均方根误差(RMSE),给定均方根误差(RMSE)的设定值,当种群适应度f小于设定值时,即为达到终止条件,完成符号回归。
相比与现有技术,本发明的优点在于:
(1)本发明针对现有的分布式GP技术而言,通过联邦学习训练全局模型,可以保护数据的隐私性和安全性。同时,本发明中的客户端拥有绝对的自由权,可以随时进入整个系统也可以同时退出,更加符合现实环境下的应用场景。
(2)本发明采用基于均值漂移聚合方法进一步提高了遗传编程算法的搜索性能,同时还考虑了数据样本的重要程度不一致赋予不同的权重,从而有效地解决真实环境下的符号回归问题。
(3)本发明的符号回归方法能够充分利用数据信息,与传统的基因编程算法相比,效果更好。
附图说明
图1本发明实施例中一种基于联邦遗传编程的符号回归方法的算法框架图;
图2本发明实施例中染色体编码示意图;
图3本发明实施例中解决的符号回归示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合附图并举实施例,对本发明的具体实施进行详细说明。
实施例1:
这项工作的主要目的是解决符号回归问题,当数据分散在不同的本地机器上,不允许被传输到中央服务器。同时,每个客户端的数据分布并没有覆盖整个样本空间,每个客户端的数据量是不同的。客户端单独训练模型时,每台客户端都能训练出多个不同的函数表达式,离近似函数相差甚远。如图3所示,本发明提出一种联邦训练的方式,联合多台客户端的数据进行训练,最终可以得到想要的目标函数。
一种基于联邦遗传编程的符号回归方法,如图1所示,包括以下步骤:
S1:初始化:创建多线程,确定接入服务器的客户端数量,确保客户端访问服务器成功;随机初始化种群,种群大小为NP;
构建一个用于符号回归的符号回归系统,符号回归系统包括多个客户端和一个中心服务器即服务端,服务端发送种群给客户端,客户端根据自身的数据计算出适应度返回给服务端,双方传递的都不是原始数据,解决了隐私环境下数据不共享的问题。
启动服务器和多个客户端;服务器实时监控是否有申请接入的服务器端或者需要断开的已连接的客户端,当一个新的客户端请求访问时,服务器立即响应客户端的接入;当所有客户端成功连接后,在服务器上进行种群初始化;服务器中,服务器确认连接的客户端的IP和端口,然后统一将初始种群发送给客户端;
服务器中的种群初始化是指生成NP个随机染色体,形成初始种群,具体表示如下:
X={X
其中,X
客户端中,在启动前确认需要连接的服务器的IP地址和端口号,在成功连接服务器后,等待服务器发送种群进行适应度计算。
S2:客户端适应度计算:多个客户端并行的进行种群的适应度计算,判断适应值是否达到终止条件,是则退出,否则执行步骤S3;
客户端获取种群后,种群中的每条染色体编码为与染色体长度相等的表达式;假定所有客户端的数据集如下表示:
D={D
其中,D
其中,NP表示种群大小,f
适应度计算采用符号回归中的均方根误差(RMSE),给定均方根误差(RMSE)的设定值,当种群适应度f小于设定值时,即为达到终止条件,完成符号回归。
S3:服务器适应度聚合:根据均值漂移(Mean shift)聚合机制进行适应度聚合,得到聚合的种群适应度F;
采用均值漂移聚合机制,每个染色体根据每个客户端的重要性聚合多个适应度,均值漂移聚合机制算法具体如下:
S3.1:初始化聚合的种群适应度F=0,获取随机中心点x;
S3.2:输入核带宽h、聚合终止距离s
S3.3:计算整个种群适应度f到随机中心点x的所有距离,然后找到核带宽h范围内的所有点,称为集合M;
S3.4:计算随机中心点x到集合M中每一点的向量,将所有向量相加得到M
S3.5:随机中心点x沿着M
S3.6:循环步骤S3.3-步骤S3.5,直到满足|M
S3.7:输出聚合的种群适应度F;
均值漂移聚合机制算法中的核带宽h是高斯核函数的重要参数,取值不同聚合效果不一样;客户端的权重W根据客户端数据量占所有客户端数据总量的百分比计算。
M
其中,x
S4:基因选择:
基于步骤S3中获得的聚合的种群适应度F={f
其中,f(U
S5:基因突变:
基于传统DE突变方案“DE/current-to-best/1”,染色体中的基因以某个概率随机改变为新值,具体如下:
Y
其中,Y
S6:基因交叉:
种群中第i条染色体X
其中,z
交叉操作完成后,生成一个新的种群;将新种群发送至客户端,返回步骤S2。
本实施例中,为了验证本发明的算法框架的性能,首先在5个人为工定制的标准数据集上进行验证。本发明的算法的参数设置为:种群大小为NP=30,最大迭代次数R=20000,s
实施例2:
本实施例中,为了进一步验证本发明的有效性,在5个噪声数据集上进行了验证。本发明的算法的参数设置为:种群大小为NP=50,最大迭代次数R=20000,s
实施例3:
本实施例中,最后,本发明在2个真实场景数据集上进行了验证。本发明的算法的参数设置为:种群大小为NP=50,最大迭代次数R=20000,s
三个实施案例的最终的结果都表明,本发明在不同环境下数据集的RMSE、收敛速度上都要明显优于现有的遗传编程算法。这说明采用本发明不仅能够保护数据信息,同时提高了遗传编程算法的搜索能力。
机译: 使用一种或多种遗传和表观遗传标记提供遗传测试服务的方法及其用于源自一种或多种模型物种的一种或多种遗传和表观遗传标记的靶物种,基于不同物种之间的匹配
机译: 通过使用模型生物体的一种或多种遗传标记和将其作为靶生物体的遗传标记信息的一个或多个遗传标记,基于异源生物衍生的遗传标记匹配,基因检测服务的基础提供遗传测试服务的方法
机译: 识别一种碳通道遗传基因变异的方法和装置,作为冲程风险标记,组合数据挖掘,逻辑回归和通道分析