一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

数据资源处理方法、装置、电子设备及存储介质与流程

2022-12-10 12:06:55 来源:中国专利 TAG:


1.本技术涉及计算机技术领域,尤其涉及一种数据资源处理方法、装置、电子设备及存储介质。


背景技术:

2.随着第五代移动通信技术(5th generation mobile communication technology,简称5g)、云计算、边缘计算等技术的飞速发展,现在已然进入了一个大数据流量时代,包括各种视频数据、图片数据、物联网采集的各种数据以及各种行业数据等等。而在对这些海量的数据资源进行分析搜索最优解时,通常需要建立模型并通过对大数据的学习训练来提升模型的适应性。
3.为了提升模型的学习速度,现有的模型训练方法往往采用分布式训练框架用以实现模型参数的快速学习,具体思路是对分布式中的各边缘服务器训练的局部模型进行迭代训练,从而实现全局模型的快速收敛,这种实现方法的优势是避免了单个边缘节点计算量不足的问题,增强了边缘节点的处理能力。
4.但是现有的数据资源处理方法因采用分布式训练方式仍存在全局模型容易陷于局部最优导致的全局模型精度低,进而导致资源处理结果不合理的技术问题。


技术实现要素:

5.本技术提供了一种数据资源处理方法、装置、电子设备及存储介质,用以解决现有的数据资源处理方法因采用分布式训练方式仍存在全局模型容易陷于局部最优导致的全局模型精度低,进而导致数据资源处理准确性差的技术问题。
6.根据本技术的第一方面,提供了一种数据资源处理方法,包括:
7.获取与边缘服务器相连的采集设备采集到的训练样本;其中,不同所述边缘服务器对应不同类型的训练样本;
8.获取待训练的全局模型的模型参数,并将所述待训练的全局模型的模型参数划分为若干个参数集合;
9.利用改进的烟花算法在预设的若干个边缘服务器中进行寻优,当判断到满足预设迭代终止条件时,确定所述参数集合和边缘服务器的组合;其中,所述组合中的边缘服务器用于基于与其相连的采集设备采集到的训练样本训练所述参数集合对应的局部模型,以使所述局部模型对所述训练样本的类型进行预测;所述改进的烟花算法在迭代过程中产生的爆炸火花的数量根据预设的非线性递减公式随着迭代次数的增大而减小,且所述改进的烟花算法的候选种群中烟花的数量在迭代过程中根据预设的非线性递增公式随着迭代次数的增大而增大;
10.接收所有所述组合中的边缘服务器发送的训练完成的局部模型的参数集合,并将所有所述局部模型的参数集合进行聚合,得到训练完成的全局模型的模型参数,以使所述训练完成的全局模型对任一所述边缘服务器采集到的数据资源的类型进行预测,得到预测
结果。
11.可选地,所述利用改进的烟花算法在预设的若干个边缘服务器中进行寻优,当判断到满足预设迭代终止条件时,确定所述参数集合和边缘服务器的组合,包括:
12.基于预设的若干个边缘服务器,随机生成包含多个烟花的初始烟花种群,并记录所述初始烟花种群中烟花的数量;其中,每个所述烟花包括:任一所述参数集合和用于训练所述参数集合对应的局部模型的边缘服务器;
13.根据预设的适应度函数计算每个所述烟花的适应度值,并根据每个所述烟花的适应度值和预设的非线性递减公式,计算与每个所述烟花对应的爆炸火花的数量;其中,预设的非线性递减公式为式(1):
[0014][0015]
其中,si为所述爆炸火花的数量,s
*
用于限制爆炸火花的数量,且s
*
=s
max
*(1-γ
t-t
),s
max
为预设的爆炸火花的数量最大值,γ为常数,t为所述改进的烟花算法的最大迭代次数,t为所述改进的烟花算法的当前迭代次数,y
max
为烟花的适应度最差值,f(xi)为烟花xi的适应度值,n
t
为在第t次迭代过程中产生的候选种群中烟花的数量,ε为常数;
[0016]
根据每个所述烟花的适应度值计算每个所述烟花的爆炸幅度,并根据与每个所述烟花对应的爆炸火花的数量和所述烟花的爆炸幅度产生爆炸火花;
[0017]
对所述烟花进行变异,得到变异火花;
[0018]
根据所述烟花、所述爆炸火花和所述变异火花,对所述初始烟花种群进行更新,得到候选种群,并根据预设的非线性递增公式确定所述候选种群中的烟花的数量;其中,预设的非线性递增公式为式(2):
[0019]nt
=int(n*(1 γ
t-t
))
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2)
[0020]
其中,int为取整符号,n
t
为在第t次迭代过程中产生的候选种群中烟花的数量,n为初始烟花种群中烟花的数量,γ为常数,t为所述改进的烟花算法的最大迭代次数,t为所述改进的烟花算法的当前迭代次数;
[0021]
当判断到满足预设迭代终止条件时,停止迭代,确定所述参数集合和边缘服务器的组合。
[0022]
可选地,所述根据每个所述烟花的适应度值计算每个所述烟花的爆炸幅度,包括:
[0023]
根据每个所述烟花的适应度值和预设的爆炸幅度公式,计算每个所述烟花的爆炸幅度;其中,所述预设的爆炸幅度公式为式(3):
[0024][0025]
其中,ai为烟花xi的爆炸幅度,a
*
用于限制烟花xi的爆炸幅度,且a
*
=a
max
*(1-γ
t-t
),a
max
为预设的烟花的爆炸幅度最大值,γ为常数,t为所述改进的烟花算法的最大迭代次数,t为所述改进的烟花算法的当前迭代次数,y
min
为烟花的适应度最优值,f(xi)为烟花xi的适应度值,n
t
为在第t次迭代过程中产生的候选种群中烟花的数量,ε为常数。
[0026]
可选地,所述对所述烟花进行变异,得到变异火花,包括:
[0027]
根据所述烟花的爆炸幅度和预设的位移变异公式,通过对所述烟花的维度进行变异的方式对所述烟花进行位移变异,得到变异火花;其中,预设的位移变异公式为式(4):
[0028]
x
ik
(t 1)=x
ik
(t) ai×
rand(-1,1)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(4)
[0029]
其中,x
ik
(t 1)为下一迭代过程在第k维度上位移变异后的变异火花,x
ik
(t)为当前迭代过程在第k维度上位移变异前的烟花,ai为烟花的爆炸幅度,rand(-1,1)为(-1,1)之间的随机数值;
[0030]
和/或,
[0031]
根据预设的高斯变异公式,对所述烟花进行高斯变异,得到变异火花;其中,所述预设的高斯变异公式为式(5):
[0032]
x
ik

(t 1)=x
ik
(t)
·gꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(5)
[0033]
其中,x
ik

(t 1)为下一迭代过程在第k维度上高斯变异后的变异火花,x
ik
(t)为当前迭代过程在第k维度上高斯变异前的烟花,g为服从均值为1,方差为1的高斯分布。
[0034]
可选地,所述方法还包括:
[0035]
按照预设映射规则对应的映射公式,将超出预设可行解空间的烟花进行映射,以使映射后的烟花位于所述预设可行解空间内;其中,所述预设映射规则对应的映射公式为式(6):
[0036]
x
ik

(t 1)=x
lb,k
(t) a(x
ub,k
(t)-x
lb,k
(t))
×
rand(0,1)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(6)
[0037]
其中,x
ik

(t 1)为所述映射后的烟花,x
ub,k
(t)为所述预设可行解空间的上限,x
lb,k
(t)所述预设可行解空间的下限,rand(0,1)为(0,1)之间的随机数值。
[0038]
可选地,所述根据所述烟花、所述爆炸火花和所述变异火花,对所述初始烟花种群进行更新,得到候选种群,包括:
[0039]
将所述烟花、所述爆炸火花和所述变异火花作为备选烟花,并从所有所述备选烟花中选择出适应度值最高的备选烟花;
[0040]
基于曼哈顿距离选择策略从除适应度值最高的备选烟花以外的其他所有所述备选烟花中选择出其余的备选烟花;其中,所述曼哈顿距离选择策略采用式(7):
[0041][0042]
其中,pi为第i个烟花被选择的概率,k为除适应度值最高的备选烟花以外的其他所有所述备选烟花的数量,d(xi,xj)为第i个烟花与第j个烟花之间的距离值;
[0043]
将所述适应度值最高的备选烟花和所述其余的备选烟花构成候选种群。
[0044]
可选地,预设的适应度函数为式(8):
[0045][0046]
其中,fitness为烟花的适应度值,n为边缘服务器的总数量,fi取0或1,当取值为0时,表示第i个边缘服务器未被选中,当取值为1时,表示第i个边缘服务器被选中,ei为第i个边缘服务器训练的局部模型的参数集合与所述全局模型的参数集合的误差值。
[0047]
根据本技术的第二方面,提供了一种数据资源处理装置,包括:
[0048]
获取与边缘服务器相连的采集设备采集到的训练样本;其中,不同所述边缘服务器对应不同类型的训练样本;
[0049]
获取划分模块,用于获取待训练的全局模型的模型参数,并将所述待训练的全局模型的模型参数划分为若干个参数集合;
[0050]
寻优确定模块,用于利用改进的烟花算法在预设的若干个边缘服务器中进行寻优,当判断到满足预设迭代终止条件时,确定所述参数集合和边缘服务器的组合;其中,所述组合中的边缘服务器用于基于与其相连的采集设备采集到的训练样本训练所述参数集合对应的局部模型,以使所述局部模型对所述训练样本的类型进行预测;所述改进的烟花算法在迭代过程中产生的爆炸火花的数量根据预设的非线性递减公式随着迭代次数的增大而减小,且所述改进的烟花算法的候选种群中烟花的数量在迭代过程中根据预设的非线性递增公式随着迭代次数的增大而增大;
[0051]
接收聚合模块,用于接收所有所述组合中的边缘服务器发送的训练完成的局部模型的参数集合,并将所有所述局部模型的参数集合进行聚合,得到训练完成的全局模型的模型参数,以使所述训练完成的全局模型对任一所述边缘服务器采集到的数据资源的类型进行预测,得到预测结果。
[0052]
根据本技术的第三方面,提供了一种电子设备,包括:至少一个处理器和存储器;
[0053]
所述存储器存储计算机执行指令;
[0054]
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如上第一方面所述的数据资源处理方法。
[0055]
根据本技术的第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如上第一方面所述的数据资源处理方法。
[0056]
本技术提供的一种数据资源处理方法,先获取与边缘服务器相连的采集设备采集到的训练样本;其中,不同边缘服务器对应不同类型的训练样本;获取待训练的全局模型的模型参数,并将待训练的全局模型的模型参数划分为若干个参数集合;然后利用改进的烟花算法在预设的若干个边缘服务器中进行寻优,当判断到满足预设迭代终止条件时,确定参数集合和边缘服务器的组合;其中,组合中的边缘服务器用于基于与其相连的采集设备采集到的训练样本训练参数集合对应的局部模型;最后接收所有组合中的边缘服务器发送的训练完成的局部模型的参数集合,并将所有局部模型的参数集合进行聚合,得到训练完成的全局模型的模型参数,以使训练完成的全局模型对任一边缘服务器采集到的数据资源的类型进行预测,得到预测结果。
[0057]
本技术从两方面对烟花算法进行了改进,一方面是改进的烟花算法在迭代过程中产生的爆炸火花的数量根据预设的非线性递减公式随着迭代次数的增大而减小,另一方面是改进的烟花算法的候选种群中烟花的数量在迭代过程中根据预设的非线性递增公式随着迭代次数的增大而增大。通过采用非线性递减对爆炸火花的数量进行调整的方式,能够避免模型限于局部最优,并且通过采用非线性递增对种群中烟花的数量进行调整的方式,能够实现算法早期更快的全局搜索,在后期充分实现局部优化,能够跳出局部搜索能力,进而实现全局最优,最终提高全局模型的模型参数的精度,进而提高了数据资源处理的准确性。
[0058]
应当理解,本部分所描述的内容并非旨在标识本技术的实施例的关键或重要特征,也不用于限制本技术的范围。本技术的其它特征将通过以下的说明书而变得容易理解。
附图说明
[0059]
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。
[0060]
图1为本技术实施例提供的一种数据资源处理方法的流程示意图;
[0061]
图2为本技术实施例提供的模型参数划分的示意图;
[0062]
图3为本技术实施例提供的图1中步骤s103的流程示意图;
[0063]
图4为本技术实施例提供的一种数据资源处理装置的结构示意图;
[0064]
图5为本技术实施例提供的一种电子设备的结构示意图。
[0065]
通过上述附图,已示出本技术明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本技术构思的范围,而是通过参考特定实施例为本领域技术人员说明本技术的概念。
具体实施方式
[0066]
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。
[0067]
在海量的数据时代,不同场景的数据有巨大的差别。比如,通信行业有很多种场景,包括:城中村、密集住宅区、还有办公区、还有郊区等,比如用户需要构建业务模型,那么城中村的业务模型与办公区或者郊区的业务模型有很大的不同,如果一个云中心服务器将整个城市的所有业务数据进行采集,再进行模型训练,那么就要面对一个问题,到底是取城中村的数据,取郊区的数据,还是取密集住宅区的数据,显然,任何单独一种数据都不能随意被舍弃,那么,如何才能保证云中心服务器构建的模型符合“大趋势”,所谓“大趋势”是能够大概地反映整个城市的业务发展状况。因此,需要从海量的数据中找到比较“适合”的业务数据来训练这个业务模型,以期实现构建一个能够反映整个城市的业务“大趋势”。由于各个场景数据分布存在独立性和差异性,因此在构建中心模型时(该中心模型与分布式模型是相对应的,中心模型是指城市的大脑,中枢部分,分布式模型或称为局部模型,一般指边缘侧进行参数训练的模型),需要选取有用的数据进行建模,否则,将会由于某些数据分布的不同进而降低中心模型的训练精度。因此,最优解是指在海量数据中,实现中心模型较高精度的一部分数据。
[0068]
现有的数据资源处理方法虽然通过采用分布式训练方式避免了单个边缘节点计算量不足的问题,增强了边缘节点的处理能力。但随之而来的带来了另一个重要的问题:如果边缘节点采集的数据分布有很大的差异性,那么全局模型的参数会随着迭代次数的推进,出现参数不稳定的现象。要避免这种情况,就必须尽量找到一些与全局模型趋同的局部模型进行迭代训练。除此之外,还要考虑一个问题,即如何保证全局模型的参数具有一定的代表性或者说扩展性。也就是说,不但要遴选出与全局模型数据分布具有趋同的边缘节点,还要保证这些边缘节点训练出来的参数能够代表全局模型的特征,从而才能保证全局模型
具有代表性,该方法可用于云端总模型参数的确定。
[0069]
要实现上述的目的,目前通常的做法是利用群体智能的分布式训练方式来进行数据资源处理,通过烟花算法实现种群协同搜索的优势,来优化全局模型的模型参数。
[0070]
但是现有的烟花算法因自身存在容易陷于局部最优的弊端,因此现有的数据资源处理方法存在全局模型的精度低、数据资源处理准确性差的技术问题。
[0071]
为了解决上述技术问题,本技术的整体发明构思为如何提供一种应用于计算机领域,且能够提高全局模型精度,进而实现对数据资源的精准处理的方法。
[0072]
下面以具体地实施例对本技术的技术方案以及本技术的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本技术的实施例进行描述。
[0073]
图1为本技术实施例提供的一种数据资源处理方法的流程示意图。如图1所示,本实施例的方法,包括:
[0074]
s101:获取与边缘服务器相连的采集设备采集到的训练样本;其中,不同边缘服务器对应不同类型的训练样本;
[0075]
s102:获取待训练的全局模型的模型参数,并将待训练的全局模型的模型参数划分为若干个参数集合。
[0076]
应理解,全局模型或称为中心模型。参数集合中至少包括一个全局模型的模型参数。由于全局模型的模型参数的数量较多,如果不采用“分而治之”的方式进行训练,那么为了训练全局模型的模型参数,将会面临计算量很大的问题。因此,本技术采用的数据资源处理方法基于分布式训练的框架,先对全局模型的模型参数划分为n个子任务,然后再将局部模型进行迭代训练,实现全局快速收敛。本技术实施例可以将全局模型的模型参数划分为若干个子任务,并设定目标函数,该目标函数为下述公式(8),在此不做赘述。
[0077]
在本技术实施例中,s102中的每个参数集合均对应一个子任务,该子任务可以理解为:对该子任务对应的参数集合中的模型参数进行训练的任务。当全局模型的模型参数的数量为100时,如图2所示,前10个全局模型的模型参数对应第1个子任务,以此类推,最后10个全局模型的模型参数对应第10个子任务。
[0078]
需要注意的是,全局模型和局部模型在模型架构和模型参数的数量上相等,假如有100个模型参数需要训练,那么在随机的情况下,可以将其中的几个模型参数划分到第1个边缘服务器,将另外的几个模型参数划分到第2个边缘服务器,如此类推,直至所有模型参数均划分到用于训练与其对应的局部模型的边缘服务器。
[0079]
所有的子任务用于构成总任务。对于总任务来说,需要寻找合适的边缘服务器进行训练。边缘服务器的数量与模型参数的数量可能一致,也可能不一致,例如:全局模型的模型参数的数量为100,边缘服务器的数量有可能是30,也有可能是100。进一步的,本技术不一定是每一个边缘服务器训练1个模型参数,每个边缘服务器所训练的模型参数可能有重复,也有可能不重复,最终不同边缘服务器所训练出来的模型参数可以相互矫正。比如,第1个边缘服务器训练第1,3,5,7这四个模型参数,第2个边缘服务器训练第1,2,4,7这四个模型参数,因此1和7这两个模型参数均可以通过第1个边缘服务器和第2个边缘服务器相互校正。
[0080]
s103:利用改进的烟花算法在预设的若干个边缘服务器中进行寻优,当判断到满
足预设迭代终止条件时,确定参数集合和边缘服务器的组合;其中,组合中的边缘服务器用于基于与其相连的采集设备采集到的训练样本训练参数集合对应的局部模型,以使局部模型对训练样本的类型进行预测;改进的烟花算法在迭代过程中产生的爆炸火花的数量根据预设的非线性递减公式随着迭代次数的增大而减小,且改进的烟花算法的候选种群中烟花的数量在迭代过程中根据预设的非线性递增公式随着迭代次数的增大而增大。
[0081]
应理解,改进的烟花算法是群体智能算法,因此该数据资源处理方法所采用的分布式训练方式能够缩短全局模型的训练时间。边缘服务器或称为边缘节点,部署在边缘侧,用于采集样本数据,并通过采集到的样本数据对局部模型进行训练。局部模型是指与全局模型的模型架构和模型参数均相同的模型,区别点在于:所用的训练数据不同,局部模型是通过边缘服务器采集的数据进行的训练。
[0082]
由于改进的烟花算法在寻优过程中的烟花的数量、爆炸火花的数量均按照迭代次数进行变化调整,因此改进的烟花算法能够避免局部最优,进而提升全局模型的训练精度。
[0083]
s104:接收所有组合中的边缘服务器发送的训练完成的局部模型的参数集合,并将所有局部模型的参数集合进行聚合,得到训练完成的全局模型的模型参数,以使训练完成的全局模型对任一边缘服务器采集到的数据资源的类型进行预测,得到预测结果。
[0084]
上述聚合可以理解为合并,可以采用均值的方式,还可以采用二选一的方式。在改进的烟花算法迭代结束后,针对第1个子任务,得到的参数集合和边缘服务器的组合是(1,5)和(1,6),并且第5个边缘服务器和第6个边缘服务器训练出来的模型参数很相似,然后这两个边缘服务器分别将执行第1个子任务得到的训练结果(即上述局部模型的参数集合)上传到全局模型,全局模型通过均值或者是二选一的方式实现全局模型的模型参数的选取。
[0085]
例如:全局模型的架构简单,如果有3个模型参数,且有3个局部模型,3个局部模型训练的模型参数分别是(1,1,1)、(1,0,1)和(1,1,0),那么在聚合之后全局模型的3个模型的参数可以取为(1,1,1),这么聚合的原因是:第一、考虑少数服从多数的原则;第二,大数定理的原则,无论哪一种原则,都是希望全局模型所选取的参数都会尽量在局部模型的模型参数的中心值范围内,这样能够保证全局模型最终能够满足大多数的场景,因此,全局模型得到的模型参数尽可能在边缘服务器训练出来的模型参数的平均值范围内波动,因此能够使得全局模型所得到的结果能够满足大部分场景的情况。
[0086]
本技术实施例从两方面对烟花算法进行了改进,一方面是改进的烟花算法在迭代过程中产生的爆炸火花的数量根据预设的非线性递减公式随着迭代次数的增大而减小,另一方面是改进的烟花算法的候选种群中烟花的数量在迭代过程中根据预设的非线性递增公式随着迭代次数的增大而增大。通过采用非线性递减对爆炸火花的数量进行调整的方式,能够避免模型限于局部最优,并且通过采用非线性递增对种群中烟花的数量进行调整的方式,能够实现算法早期更快的全局搜索,在后期充分实现局部优化,能够跳出局部搜索能力,进而实现全局最优,最终提高全局模型的模型参数的精度,进而保证数据资源预测结果的准确性。
[0087]
在上述实施例的基础上,下面结合下述具体的实施例对本技术技术方案进行更详细的描述。
[0088]
图3为本技术实施例提供的图1中步骤s103的流程示意图。在图1所示实施例的基础上,s103包括以下步骤:
[0089]
s301:基于预设的若干个边缘服务器,随机生成包含多个烟花的初始烟花种群,并记录初始烟花种群中烟花的数量;其中,每个烟花包括:任一参数集合和用于训练参数集合对应的局部模型的边缘服务器。
[0090]
上述s301可以理解为是初始化可行解的过程。烟花算法是一种迭代算法,在本技术实施例中,假设初始烟花种群中烟花的数量为20,那么烟花种群可以初始化为(1,5),(2,5),(1,6),(3,8),

,(n,k)等20组数据,第一组数据(1,5)表示为第1个子任务由第5个边缘服务器执行,第二组数据(2,5)表示第2个子任务分到第5个边缘服务器,因为边缘服务器有多个处理器,因此可以分别处理不同子任务,而且同一边缘服务器在处理第一个子任务和第二个子任务时过程不相干。然后,第三组数据(1,6)表示第1个子任务又分配到第6个边缘服务器,由此可见,第一个子任务分到第5个边缘服务器和第6个边缘服务器,由于同一个子任务在不同边缘服务器中所处不同区域,因此针对同一子任务,不同边缘服务器的样本来源不相同,因此不同边缘服务器训练出来的参数在数值上的结果不一样。同理,(n,k)表示为第n个子任务由第k个边缘服务器执行。
[0091]
又例如,将100个模型参数分成10个子任务,根据烟花(1,2)可知,第1-10个模型参数放在第2个边缘服务器上进行训练,也就是第2个边缘服务器用于训练第1-10个参数,通过烟花算法进行学习,确定第1个模型参数在第2个边缘服务器所获取的样本数据中的适应性如何,如果适应性好就保留下来,如果适应性不好,那么就会去掉,再确定下其他的边缘服务器在训练1-10个参数时的适应度如何,如果适应性好,那么被保留下来。
[0092]
在本技术实施例中,同一个边缘节点可以执行多个子任务,并且同一个子任务可以同时被多个边缘服务器执行。当多个子任务面对不同的训练数据时,可以确定那些模型参数针对训练数据敏感,哪些参数针对训练数据相对不那么敏感,一般来说,敏感性强的模型参数对于全局模型来说相对重要,敏感性差的模型参数对于全局模型来说相对不重要,除此以外,多个子任务放在不同的边缘服务器中执行,还可以进行相互校正。
[0093]
在本技术实施例中,子任务与边缘服务器的匹配不是固定的,可以通过随机的算法将子任务指定到不同的边缘服务器中,然后根据边缘服务器的训练所得结果执行后面的步骤。
[0094]
s302:根据预设的适应度函数计算每个烟花的适应度值,并根据每个烟花的适应度值和预设的非线性递减公式,计算与每个烟花对应的爆炸火花的数量。其中,预设的非线性递减公式为式(1):
[0095][0096]
其中,si为爆炸火花的数量,s
*
为常数,用于限制爆炸火花的数量,且s
*
=s
max
*(1-γ
t-t
),s
max
为预设的爆炸火花的数量最大值,γ为常数,t为改进的烟花算法的最大迭代次数,t为改进的烟花算法的当前迭代次数,y
max
为烟花的适应度最差值,f(xi)为烟花xi的适应度值,n
t
为在第t次迭代过程中产生的候选种群中烟花的数量,ε为常数。
[0097]
本技术实施例采用非线性递减的方式对爆炸火花的数量进行了调整,能够在一定程度上避免模型陷于局部最优。具体的,在s302之前由适应度函数计算每个烟花的适应度值,并在s302中根据烟花的适应度值确定待生成的爆炸火花的数量,适应度值越好的烟花
生成的爆炸火花的数量越多。
[0098]
上述式(1)中的s
*
的数值随着迭代次数的增加而逐渐变小,且与种群数量成反比关系,该种群数量为初始烟花种群或候选种群中烟花的数量。也就是说,如果本技术实施例在减少每次生成爆炸火花的数量的同时,适当地增加了候选种群中烟花的数量,那么会造成一种现象,即算法搜索的次数减少,较优的爆炸火花产生的正常爆炸火花被保留的概率大。基于这种思路,本技术实施例对s
*
与迭代次数t进行了如下关联:s
*
=s
max
*(1-γ
t-t
)。s
max
的具体数值根据业务需求进行对应设定,并且在不同场景下对应不同的数值。
[0099]
为了确定烟花的适应度最差值y
max
,可以在每一次迭代过程中,计算每一个边缘服务器对应子任务的训练结果,并将其与全局模型的模型参数进行对比,进而得到适应度最差的边缘服务器的位置。
[0100]
s303:根据每个烟花的适应度值计算每个烟花的爆炸幅度,并根据与每个烟花对应的爆炸火花的数量和烟花的爆炸幅度产生爆炸火花。
[0101]
在本技术实施例中,本技术计算烟花的爆炸幅度的具体流程见下述s3031,在此不做赘述。
[0102]
s304:对烟花进行变异,得到变异火花。
[0103]
在本技术实施例中,变异的目的是增大种群的多样性,对种群中的烟花进行适当的变异调整。本技术对变异方式不做具体限定,例如:位移变异、高斯变异等,并且具体的变异过程见下述s3041~s3042,此处不再赘述。
[0104]
s305:根据烟花、爆炸火花和变异火花,对初始烟花种群进行更新,得到候选种群,并根据预设的非线性递增公式确定候选种群中的烟花的数量。其中,预设的非线性递增公式为式(2):
[0105]nt
=int(n*(1 γ
t-t
))
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2)
[0106]
其中,int为取整符号,n
t
为在第t次迭代过程中产生的候选种群中烟花的数量,n为初始烟花种群中烟花的数量,γ为常数,t为改进的烟花算法的最大迭代次数,t为改进的烟花算法的当前迭代次数。n为初始烟花种群中烟花的数量,例如n=20。
[0107]
本技术实施例采用非线性递增的方式,对种群数量进行调整,实现改进的烟花算法早期更快的全局搜索,在后期充分实现局部优化,这样就能够跳出局部搜索能力,实现全局最优。
[0108]
s306:当判断到满足预设迭代终止条件时,停止迭代,确定参数集合和边缘服务器的组合。
[0109]
由于一个参数集合对应一个子任务,因此烟花算法最终输出的结果可以是若干组边缘服务器和子任务的组合,根据该组合可知:哪一边缘服务器用于执行哪一个或多个子任务,因此根据组合能够得知,哪一个边缘服务器针对哪一个子任务的训练结果最接近全局模型的结果。例如:针对第1个子任务,组合可能是(1,5)和(1,6),因此第5个边缘服务器和第6个边缘服务器的训练结果均与全局模型的模型参数接近。
[0110]
在s306中,当满足预设迭代终止条件时,找到满足下述公式(8)的包含边缘服务器和子任务的组合,针对同一子任务,当边缘服务器的数量为一个时,该边缘服务器所训练的模型参数能够直接作为全局模型的模型参数,当边缘服务器的数量为多个,且多个边缘服务器的误差率数值差不多时,则可以获取这些边缘服务器的模型参数,并通过集成学习的
方式实现对这些模型参数的合并。可选地,集成学习的权重采用加权平均。
[0111]
也就是说,在确定好组合之后,还应该确定组合对应的结果,并将其作为训练完成的局部模型的参数集合,进而确定全局模型的模型参数。例如:100个模型参数被分成10个子任务,如果某个边缘服务器用于训练第1个子任务中的第1-10个模型参数,那么结果就是这10个模型参数的值。例如,第5个边缘服务器和第6个边缘服务器均用于训练第1-10个模型参数,这两个边缘服务器得出的结果的差异性小于3%。具体的,第5个边缘服务器的结果是(1,0.5,1,1,1,1,1,1,0,1),第6个边缘服务器的结果是(1,0.5,0.97,1,1,1,1,1,0.18,1)。即通过对比他们有差异性的值,即可确定两组模型参数的差异性。
[0112]
通过执行上述s302至s306的操作,可以使本技术对烟花算法中的种群数量和爆炸火花的数量进行调整,进而避免使全局模型陷入局部最优。
[0113]
在一种可能的实现方式中,在s303中,根据每个烟花的适应度值计算每个烟花的爆炸幅度,包括以下步骤:s3031:根据每个烟花的适应度值和预设的爆炸幅度公式,计算每个烟花的爆炸幅度;其中,预设的爆炸幅度公式为式(3):
[0114][0115]
其中,ai为烟花xi的爆炸幅度,a
*
用于限制烟花xi的爆炸幅度,且a
*
=a
max
*(1-γ
t-t
),a
max
为预设的烟花的爆炸幅度最大值,γ为常数,t为改进的烟花算法的最大迭代次数,t为改进的烟花算法的当前迭代次数,y
min
为烟花的适应度最优值,f(xi)为烟花xi的适应度值,n
t
为在第t次迭代过程中产生的候选种群中烟花的数量,ε为常数。
[0116]
由此可见,本技术实施例中的烟花的爆炸幅度的计算由烟花的爆炸幅度最大值和烟花的适应度值共同决定,适应度值越大的烟花,其爆炸幅度越小,反之,其爆炸幅度越大。为了确定烟花的适应度最优值y
min
,可以通过遍历的方式实现,例如:遍历100次,或者200次,以寻找到该适应度最优值。计算a
*
的公式为衰减函数,随着迭代次数的增加,整个公式表示成一个衰减状态。
[0117]
如果爆炸幅度是一个固定值,那么全局模型很可能陷于局部最优,因此,本技术实施例采用非线性递减的方式对爆炸幅度进行了调整,实现了烟花算法早期更快的全局搜索,在后期充分实现局部优化,这样就能够跳出局部搜索能力,实现全局最优。
[0118]
相关技术中的烟花算法其爆炸半径是固定的,固定的爆炸半径在早期的全局搜索中具有一定的优势,但是在后期局部搜索能力较弱。本技术中的爆炸幅度用于反映爆炸半径,与现有技术相比,该爆炸幅度随着迭代次数不断变化,在最初的迭代过程中为了尽快扩大烟花个体的搜索能力,爆炸幅度设计的数值相对较大一些,以扩大早期的全局搜索能力,到了迭代末期,爆炸幅度设计的数值相对较小一些,以使烟花个体在早期容易跳出局部搜索能力,且在后期充分发挥烟花个体的局部搜索能力。
[0119]
在一种可能的实现方式中,s304:对烟花进行变异,得到变异火花,包括以下步骤s3041和/或s3042,其中:
[0120]
s3041:根据烟花的爆炸幅度和预设的位移变异公式,通过对烟花的维度进行变异的方式对烟花进行位移变异,得到变异火花;其中,预设的位移变异公式为式(4):
[0121]
x
ik
(t 1)=x
ik
(t) ai×
rand(-1,1)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(4)
[0122]
其中,x
ik
(t 1)为下一迭代过程在第k维度上位移变异后的变异火花,x
ik
(t)为当前迭代过程在第k维度上位移变异前的烟花,ai为烟花的爆炸幅度,rand(-1,1)为(-1,1)之间的随机数值。
[0123]
s3042:根据预设的高斯变异公式,对烟花进行高斯变异,得到变异火花;其中,预设的高斯变异公式为式(5):
[0124]
x
ik

(t 1)=x
ik
(t)
·gꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(5)
[0125]
其中,x
ik

(t 1)为下一迭代过程在第k维度上高斯变异后的变异火花,x
ik
(t)为当前迭代过程在第k维度上高斯变异前的烟花,g为服从均值为1,方差为1的高斯分布。
[0126]
通过上述两种方式的变异操作,能够增大种群中烟花的多样性。
[0127]
在一种可能的实现方式中,方法还包括:
[0128]
按照预设映射规则对应的映射公式,将超出预设可行解空间的烟花进行映射,以使映射后的烟花位于预设可行解空间内;其中,预设映射规则对应的映射公式为式(6):
[0129]
x
ik

(t 1)=x
lb,k
(t) a(x
ub,k
(t)-x
lb,k
(t))
×
rand(0,1)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(6)
[0130]
其中,x
ik

(t 1)为映射后的烟花,x
ub,k
(t)为预设可行解空间的上限,x
lb,k
(t)预设可行解空间的下限,rand(0,1)为(0,1)之间的随机数值。
[0131]
应理解,预设可行解空间可以是二维空间,每一个可行解都应设定在该预设可行解空间内,即烟花(x,y)应设定在一定的范围内,如果任意一个解超出了该空间,那么通过x和y的数值就能判断出来。同理,还可以对爆炸火花、变异火花进行相同方式的映射,本技术在此不做赘述。
[0132]
通过上述映射方式,能够保证烟花的有效性,进而能够保证生成的种群的有效性。
[0133]
在一种可能的实现方式中,s305,根据烟花、爆炸火花和变异火花,对初始烟花种群进行更新,得到候选种群,包括以下步骤s3051~s3053,其中:
[0134]
s3051,将烟花、爆炸火花和变异火花作为备选烟花,并从所有备选烟花中选择出适应度值最高的备选烟花;
[0135]
s3052,基于曼哈顿距离选择策略从除适应度值最高的备选烟花以外的其他所有备选烟花中选择出其余的备选烟花;其中,曼哈顿距离选择策略采用式(7):
[0136][0137]
其中,pi为第i个烟花被选择的概率,k为除适应度值最高的备选烟花以外的其他所有备选烟花的数量,d(xi,xj)为第i个烟花与第j个烟花之间的距离值;
[0138]
s3053:将适应度值最高的备选烟花和其余的备选烟花构成候选种群。
[0139]
在本技术实施例中,位置距离大多数的烟花的中心点越近的个体,其被选择保留下来的概率越大;相反,被选择保留下来的概率越小。在这个过程中,pi越大,被选择的概率越大。
[0140]
为了保证样本的多样性,本技术实施例在前期更加关注随机选择,在后期更加关注择优选择。因此在开始阶段,本技术实施例除了留下适应度最优的烟花个体外,还基于曼哈顿距离选择策略保留其余的备选烟花。在曼哈顿距离选择策略中,烟花个体被选择的概率跟个体的位置有关,因此随着算法迭代的深入,应该考虑到较优个体产生的后代更多地
被选择保留到下一代,因此,本技术在t次迭代时,留下t个适应度最优的个体后,剩下的g
t-t基于曼哈顿距离选择策略进行选择。
[0141]
相关技术中的下一代烟花种群的选择策略,先选择一个最优适应值的个体,然后其余个体均以随机的方式来对下一代烟花种群进行遴选。这种随机选择个体构成下一代烟花种群的方式,会导致算法精度不高。与相关技术相比,本技术实施例加入了曼哈顿距离选择策略,能够在父代生成子代的过程中,将父代好的东西尽量遗传到子代,也就是在迭代的过程中,尽量将最优的部分留下来,本技术采用一种动态的选择策略,最初以随机选择为主,这样可以增加种群的多样性,在后期采用择优算法,可以增加优秀下一代选择的概率。
[0142]
在一种可能的实现方式中,预设的适应度函数为式(8):
[0143][0144]
其中,fitness为烟花的适应度值,n为边缘服务器的总数量,fi取0或1,当取值为0时,表示第i个边缘服务器未被选中,当取值为1时,表示第i个边缘服务器被选中,ei为第i个边缘服务器训练的局部模型的参数集合与全局模型的参数集合的误差值。
[0145]
在本技术实施例中,该适应度函数中的第一项用于表示边缘服务器是否被选中用以训练局部模型,第二项用于表示每个被选中的边缘服务器所训练局部模型的模型参数的平均误差。其中,ei是中心模型与局部模型针对同一个样本分别得到的结果的误差值。例如:针对同一个样本,中心模型得到的结果为1.5,边缘模型得到的结果为1,那么误差为0.5。
[0146]
在本技术实施例中,每个烟花个体均一个适应度函数值,适应度函数值最小的烟花,其全局模型的模型参数的误差最小。根据式(8)可知,误差越小的适应度值,其所选择的边缘服务器越少,并且平均误差也越小。
[0147]
综上,本技术提供的数据资源处理方法所采用的分布式训练方式首先是设置一个适应度函数,这个适应度函数使得烟花个体中局部模型的模型参数与全局模型的模型参数差异性尽量小,避免出现模型参数不稳定的现象。其次,本技术实施例还要在父代生成子代的过程中,希望父代好的东西尽量遗传到子代,也就是在迭代的过程中,尽量将最优的部分留下来;另外,最初为了尽快扩大烟花个体的搜索能力,爆炸火花的幅度应该大一些,以扩大早期的全局搜索能力,到了末期,爆炸火花的幅度应该小一些,以便在后期充分发挥烟花个体的局部搜索能力,以便让烟花个体在早期容易跳出局部搜索能力。
[0148]
本技术实施例具有以下优势:
[0149]
(1)对烟花算法进行优化改进,设置一个适应度函数,这个适应度函数值越小,则烟花个体中局部模型的模型参数与全局模型的模型参数的差异性越小,能够避免出现模型参数不稳定的现象。
[0150]
(2)为避免模型陷于局部最优,本技术实施例采用非线性递减的方式对爆炸幅度和爆炸火花的数量进行调整。同时采用非线性递增的方式,对种群数量进行调整,实现算法早期更快的全局搜索,在后期充分实现局部优化,这样,就能够跳出局部搜索能力,实现全局最优。
[0151]
(3)本技术实施例采用一种动态的选择策略,最初以随机选择为主,这样可以增加
种群的多样性,在后期采用择优算法,可以增加优秀个体被选择保留到下一代的概率。
[0152]
图4为本技术实施例提供的一种数据资源处理装置的结构示意图。本实施例的装置可以为软件和/或硬件的形式。如图4所示,本实施例提供的数据资源处理装置,包括:获取模块41、获取划分模块42、寻优确定模块43和接收聚合模块44。其中:
[0153]
获取模块41,用于获取与边缘服务器相连的采集设备采集到的训练样本;其中,不同边缘服务器对应不同类型的训练样本。
[0154]
获取划分模块42,用于获取待训练的全局模型的模型参数,并将待训练的全局模型的模型参数划分为若干个参数集合。
[0155]
寻优确定模块43,用于利用改进的烟花算法在预设的若干个边缘服务器中进行寻优,当判断到满足预设迭代终止条件时,确定参数集合和边缘服务器的组合;其中,组合中的边缘服务器用于基于与其相连的采集设备采集到的训练样本训练参数集合对应的局部模型,以使局部模型对训练样本的类型进行预测;改进的烟花算法在迭代过程中产生的爆炸火花的数量根据预设的非线性递减公式随着迭代次数的增大而减小,且改进的烟花算法的候选种群中烟花的数量在迭代过程中根据预设的非线性递增公式随着迭代次数的增大而增大。
[0156]
接收聚合模块44,用于接收所有组合中的边缘服务器发送的训练完成的局部模型的参数集合,并将所有局部模型的参数集合进行聚合,得到训练完成的全局模型的模型参数,以使训练完成的全局模型对任一边缘服务器采集到的数据资源的类型进行预测,得到预测结果。
[0157]
本实施例提供的数据资源处理装置,可用于执行上述任意方法实施例提供的数据资源处理方法,其实现原理和技术效果类似,此处不做赘述。
[0158]
本技术的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。
[0159]
根据本技术的实施例,本技术还提供了一种电子设备和一种可读存储介质。
[0160]
图5为本技术实施例提供的一种电子设备的结构示意图。该电子设备包括接收器50、发送器51、至少一个处理器52和存储器53,由上述部件构成的该电子设备可以用来实施本技术上述几个具体的实施例,此处不再赘述。
[0161]
本技术实施例还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,当处理器执行计算机执行指令时,实现上述实施例中方法中的各个步骤。
[0162]
本技术实施例还提供一种计算机程序产品,包括计算机指令,该计算机指令被处理器执行时实现上述实施例中方法中的各个步骤。
[0163]
本技术以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统的系统(soc)、负载可编程逻辑设备(cpld)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
[0164]
用于实施本技术的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或电子设备上执行。
[0165]
在本技术的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。计算机可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
[0166]
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
[0167]
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据电子设备)、或者包括中间件部件的计算系统(例如,应用电子设备)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)和互联网。
[0168]
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本技术公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本技术公开的技术方案所期望的结果,本文在此不进行限制。
[0169]
上述具体实施方式,并不构成对本技术保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本技术的原则之内所作的修改、等同替换和改进等,均应包含在本技术保护范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献