一种工作机稳态性能提升的方法、装置、设备及介质与流程

文档序号:32785790发布日期:2023-01-03 18:44阅读:44来源:国知局
一种工作机稳态性能提升的方法、装置、设备及介质与流程

1.本发明涉及机器学习领域,尤其涉及一种工作机稳态性能提升的方法、装置、设备及介质。


背景技术:

2.物联网产生大量的分布数据,一种典型的训练方式是将这些数据存储在服务器上,通过服务器训练模型,然而,这种方式的通信效率以及计算效率的问题明显,比如,一辆汽车几个小时产生的数百gb的数据在传输和计算过程中,都是极大的负担。分布式机器学习对于计算量太大、训练数据太多以及模型规模太大的情况可以有效的解决,现有技术主要局限在离线学习,而在实际应用中工作机会获得数据流,因此在线学习是解决这一问题的有效方式。现有技术中,在预测工作机学习性能提升的方法中,将全局预测误差和工作机局部预测误差的置信区间的宽窄进行比较,缺乏量化误差的指标,因此需要一种可以量化误差的工作机的稳态性能提升的方法。


技术实现要素:

3.有鉴于此,本发明提出了一种工作机稳态性能提升的方法、装置、设备及介质,其中,本发明提出的一种工作机稳态性能提升的方法首先通过高斯过程回归(gaussian process regression,gpr)处理流数据,实现对测试输出进行预测,然后将局部预测的期望和方差发送给服务器,服务器对收到的所有工作机的期望和方差进行聚合,计算得到全局预测的期望和方差并将得到的全局预测模型发送回各个工作机。本发明提出的一种工作机稳态性能提升的方法使得工作机在经过全局预测和局部预测融合后,得到的预测模型在工作机稳态下具有更好的预测性能。
4.基于以上目的,本发明的实施例的一个方面提供了一种工作机稳态性能提升的方法,所述方法包括以下步骤:建立工作机对应的训练集合和核函数,基于所述核函数在所述训练集合上计算工作机的高斯后验概率分布,以得到工作机的局部预测模型;将所述局部预测模型发送给服务器,基于聚合算法对所述局部预测模型进行聚合,得到全局预测模型;在工作机上对所述局部预测模型和所述全局预测模型进行融合计算,以得到逼近目标函数的预测模型。
5.在一些实施例中,所述方法还包括:建立验证数据集并将所述验证数据集均分给工作机,通过所述逼近目标函数的预测模型计算工作机对应的逼近目标函数的预测模型的预测均方误差;比较所述逼近目标函数的预测模型的预测均方误差与所述局部预测模型的均方误差,响应于所述逼近目标函数的预测模型的预测均方误差小于所述局部预测模型的均方误差,所述逼近目标函数的预测模型有效。
6.在一些实施例中,所述建立工作机对应的训练集合和核函数,基于所述核函数在所述训练集合上计算工作机的高斯后验概率分布,以得到工作机的局部预测模型包括:建立训练数据对应的投影数据集合,并获取所述投影数据集合中的投影数据的邻域,基于所
述投影数据的邻域构建工作机对应的训练集合;根据选择的核函数在所述训练集合上计算工作机的高斯后验概率分布,得到工作机的局部预测的期望和方差。
7.在一些实施例中,所述将所述局部预测模型发送给服务器,基于聚合算法对所述局部预测模型进行聚合,得到全局预测模型包括:将所述局部预测的期望和方差发送给服务器,并通过所述服务器的聚合算法将所述局部预测的期望和方差计算为全局预测的期望和方差。
8.在一些实施例中,所述在工作机上对所述局部预测模型和所述全局预测模型进行融合计算,以得到逼近目标函数的预测模型包括:将所述全局预测的期望和方差发送给工作机,设置通过工作机对所述全局预测的期望和方差与所述局部预测的期望和方差进行融合计算,得到逼近目标函数的预测模型。
9.在一些实施例中,所述将所述全局预测的期望和方差发送给工作机,设置通过工作机对所述全局预测的期望和方差与所述局部预测的期望和方差进行融合计算,得到逼近目标函数的预测模型包括:比较工作机的测试数据的局部预测的方差和全局预测的方差的大小,并根据比较的结果构建工作机的测试数据的集合;响应于工作机的测试数据的集合中存在局部预测的方差不大于全局预测的方差的测试数据,使用所述全局预测构建逼近目标函数的预测模型。
10.在一些实施例中,所述将所述全局预测的期望和方差发送给工作机,设置通过工作机对所述全局预测的期望和方差与所述局部预测的期望和方差进行融合计算,得到逼近目标函数的预测模型还包括:响应于工作机的测试数据的集合中不存在局部预测的方差不大于全局预测的方差的测试数据,使用所述局部预测构建逼近目标函数的预测模型。
11.本发明实施例的另一个方面,还提供了一种工作机稳态性能提升的装置,所述装置包括:第一模块,配置用于建立工作机对应的训练集合和核函数,基于所述核函数在所述训练集合上计算工作机的高斯后验概率分布,以得到工作机的局部预测模型;第二模块,配置用于将所述局部预测模型发送给服务器,基于聚合算法对所述局部预测模型进行聚合,得到全局预测模型;第三模块,配置用于在工作机上对所述局部预测模型和所述全局预测模型进行融合计算,以得到逼近目标函数的预测模型。
12.本发明实施例的另一方面,还提供一种计算机设备,包括至少一个处理器;以及存储器,存储器存储有可在处理器上运行的计算机指令,指令由处理器执行时实现上述任一方法的步骤。
13.本发明实施例的另一方面,还提供了一种计算机可读存储介质,计算机可读存储介质存储有被处理器执行时实现如上任一方法步骤的计算机程序。
14.本发明至少具有以下有益效果:本发明提出一种工作机稳态性能提升的方法、装置、设备及介质,其中,本发明提出的一种工作机稳态性能提升的方法通过直接进行均方误差的比较和量化,构建一种在线融合工作机稳态性能提升的方法。可以保证每一个工作机在利用局部预测和全局预测进行融合后的稳态性能提升;从稳态性能提升的角度,可以直接利用均方误差进行比较并且量化性能的提升;并且本发明提出的方法可以利用实验进行性能提升的论证。
附图说明
15.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的实施例。
16.图1为本发明提供的一种工作机稳态性能提升的方法的实施例的示意图;
17.图2为本发明提供的一种工作机稳态性能提升的装置的实施例的示意图;
18.图3为本发明提供的一种计算机设备的实施例的示意图;
19.图4为本发明提供的一种计算机可读存储介质的实施例的示意图。
具体实施方式
20.以下描述了本发明的实施例。然而,应该理解,所公开的实施例仅仅是示例,并且其它实施例可以采取各种替代形式。
21.此外,需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定,后续实施例对此不再一一说明。术语“包括”、“包含”或其任何其它变形旨在涵盖非排他性的包括,以使包含一系列要素的过程、方法、物品或装置不仅包括那些要素,也可以包括未明确列出的或这些过程、方法、物品或装置所固有的要素。
22.下面将结合附图说明本技术的一个或多个实施例。
23.基于以上目的,本发明实施例的第一个方面,提出了一种工作机稳态性能提升的方法的实施例。图1示出的是本发明提供的一种工作机稳态性能提升的方法的实施例的示意图。如图1所示,本发明实施例的一种工作机稳态性能提升的方法包括以下步骤:
24.s1、建立工作机对应的训练集合和核函数,基于所述核函数在所述训练集合上计算工作机的高斯后验概率分布,以得到工作机的局部预测模型;
25.s2、将所述局部预测模型发送给服务器,基于聚合算法对所述局部预测模型进行聚合,得到全局预测模型;
26.s3、在工作机上对所述局部预测模型和所述全局预测模型进行融合计算,以得到逼近目标函数的预测模型。
27.基于以上目的,本发明实施例的第一个方面,还提出了一种工作机稳态性能提升的方法的另一实施例。
28.分布式机器学习用于解决计算量太大、训练数据过多以及模型规模过大的情况。对于计算量太大的情况,可以采取基于共享内存(或虚拟内存)的多线程或多机并行运算;对于训练数据太多的情形,需要将数据进行划分,并分配到多个工作节点上进行训练,以使每个工作节点的局部数据都在容限之内。每个工作节点会根据局部数据训练出一个子模型,并且会按照一定的规律和其他工作节点进行通信(通信的内容主要是子模型参数或者参数更新),以保证最终可以有效整合来自各个工作节点的训练结果并得到全局的机器学习模型。对于模型规模太大的情况,需要对模型进行划分,并且分配到不同的工作节点上进行训练。与数据并行不同,模型并行的框架下各个子模型之间的依赖关系非常强,因为某个
子模型的输出可能是另外一个子模型的输入,如果不进行中间计算结果的通信,则无法完成整个模型训练。
29.一般的分布式机器学习采用深度神经网络作为机器学习模型,主要应用在模式分类以及模式识别,但是他局限在离线学习,在实际应用中,工作机在实时应用中会获得数据流,在线学习称为一种解决此问题的手段,高斯过程回归是一个有效的手段之一。高斯过程模型可以等价为现有的机器学习模型,包括bayesian线性模型、多层神经网络。根据中心极限定理,假设神经网络中的权重服从高斯正态分布,随着神经网络的宽度趋近于无穷,那么这样的神经网络等价于高斯过程回归。然而高斯过程回归是一个非超参数的统计概率模型,不像传统的学习模型,比如线性回归,逻辑回归,神经网络,需要求解优化问题使得损失函数最小来得到最优的模型参数,高斯过程回归并不需要求解优化问题。给定训练数据和测试输入,高斯过程回归的预测分为推断和预测两步。推断过程假设要学习的函数服从高斯过程,给出模型的高斯先验概率分布,然后利用观测值和bayesian规则,求出模型的高斯后验概率分布。当完成局部模型预测之后,各个工作机将所得到的局部预测(期望和方差)发送至服务器,让服务器完成全局模型的计算,例如,利用平均聚合算法求取全局模型。最后,服务器将计算得到的全局模型(全局期望和方差)发送回各个工作机,让工作机利用得到的全局模型和自身训练得到的局部模型进行融合计算,以期望获得一个更新的对目标函数的预测,使得这个预测更加逼近函数的真值。
30.本发明提出的一种工作机稳态性能提升的方法直接对来自服务器的全局预测得到的均方误差和来自工作机的局部预测额均方误差进行比较,并且量化预测性能的提升。当构造的输入集合不为空集时,融合后的预测要比工作机局部预测更加准确;当输入集合为空集时,工作机就采用局部预测。这种性能提升在理论和实验中都可以得到保证。
31.定义目标函数为其中是n
x
维输入空间。不失一般性,我们假设输出为一维,即在时刻t,给定相应的输出是
32.y=f(x)+ε(1)
33.ε是服从均值为0,方差为的高斯概率分布的高斯噪声,即定义如下形式的训练集其中是输入数据集合,y=[y(1),y(2),...,y(ns)]
t
是聚合了输出的列向量。高斯过程回归目标是利用训练集在测试数据集合上逼近函数f。
[0034]
定义对称正半定的核函数即∫k(x,x')f(x)f(x')dν(x)dν(x')≥0,其中ν是测度。让返回一个列向量,使得它的第i个元素等于f(x(i))。假设函数f是来自高斯过程先验概率分布的一个采样,这个先验分布的均值函数为μ,核函数是k。那么训练输出和测试输出服从联合概率分布
[0035][0036]
其中和返回由μ(x(i))和μ(x
*
(i))组成的向量,返回一个矩
阵使得第i行第j列的元素是k(x(i),x
*
(j))。
[0037]
利用高斯过程的性质,高斯过程回归利用训练集预测测试数据集的输出。这个输出服从正态分布,即这里
[0038][0039]
在分布式机器学习中,考虑一个网络中有n个工作机。定义这个集合为在每一个时刻t,每一个工作机利用局部的训练数据来预测函数对于测试输入的输出。yi(t)=[yi(1),...,yi(t)]每一个工作机训练的局部预测值为
[0040][0041]
如果在联邦学习框架下,每一个工作机都会将训练好的局部预测covi(f
*
)发送给服务器。
[0042]
以下为分布式训练和融合的具体步骤。
[0043]
(1)基于对训练集投影构造训练子集,定义两个训练数据点x和x'的距离为d(x,x')=||x-x'||,数据点x到集合的距离为定义数据点x到集合的投影集合为
[0044]
考虑每一个工作机及其局部训练数据集针对一个测试数据x
*
,计算测试数据x
*
到训练集的投影,标注为:
[0045][0046]
在每一个时刻t,这个局部投影集合包含有个投影数据,即
[0047]
对每一个工作机及其投影集合取出每一个投影点,标注为这里下标j表示第j个投影点。然后针对每一个投影点找出它的一个邻域使得并且针对δ》0。这里需要注意,邻域的个数是可调的,可以实现选取固定。
[0048]
对每一个工作机构造新的训练集合
[0049]
(2)选择核函数,在实际应用中,一般选择核函数:
[0050]
[0051]
(3)针对每一个工作机在新的训练集上计算高斯后验概率分布,即:
[0052][0053]
在训练子集利用公式(7)得到局部预测和covi(f
*
),然后将此局部预测发送给服务器,工作机的局部预测的稳态均方误差为
[0054][0055]
(4)服务器利用如下聚合算法对局部预测值进行聚合,给出全局预测:
[0056][0057]
服务器端全局预测的稳态均方误差为:
[0058][0059]
(5)根据全局预测方差和局部预测方差,对每一个工作机设计融合算法,使得融合后的预测期望更加逼近函数f的真实值。定义变量:
[0060][0061]
其中,取决于核函数(5),是第i个工作机的量测噪声方差,取决于ε。
[0062]
构造一个具有小不确定性的测试数据x
*
的集合如下:
[0063][0064]
如果这个集合不是空集,来自服务器的全局预测将被使用;如果这个集合为空集,来自工作机的局部预测将会被使用。通常会给定一个常数满足ω》0,当工作机满足理论上可以保证:
[0065][0066]
(6)利用构造的数据集,验证预测模型的有效性。设置如下的目标函数:
[0067]
f(x)=5x2sin(12x)+(x
3-0.5)sin(3x-0.5)+4cos(2x)
[0068]
和高斯噪声我们在[0,1]区间产生6000,104,4
×
104,15
×
104,4
×
105的训练数据,并且随机选择120个测试点。假设网络中一共有40个工作机,将训练数据平均分为40等份,使得每一个工作机拥有250个训练数据。列出相应的数据如表1所示,以工
作机1和工作机6的实验结果来说明。
[0069]
training size ns60001000040000150000400000mse/i=1/local0.07210.06810.05850.05270.0582mse/i=1/fused0.00960.06810.00940.05370.0071mse/i=6/local0.07270.05660.05640.05550.0597mse/i=6/fused0.07270.00860.05640.00760.0071
[0070]
表1
[0071]
表1中可以看出,工作机1和6采用融合算法后,其预测的均方误差均不高于局部预测的均方误差;而且融合后的预测误差数量级降低为0.001。同时,随着数据集的增大,预测误差均降低。
[0072]
通过本发明提出的一种工作机稳态性能提升的方法可以保证每一个工作机在利用局部预测和全局预测进行融合后的稳态性能提升;从稳态性能提升的角度,可以直接利用均方误差进行比较并且量化性能的提升;同时可以利用实验进行性能提升的论证。
[0073]
本发明的实施例的第二个方面,提出了一种工作机稳态性能提升的装置。图2示出的是本发明提供的一种工作机稳态性能提升的装置的实施例的示意图。如图2所示,本发明提供的一种工作机稳态性能提升的装置包括:第一模块011,配置用于建立工作机对应的训练集合和核函数,基于所述核函数在所述训练集合上计算工作机的高斯后验概率分布,以得到工作机的局部预测模型;第二模块012,配置用于将所述局部预测模型发送给服务器,基于聚合算法对所述局部预测模型进行聚合,得到全局预测模型;第三模块013,配置用于在工作机上对所述局部预测模型和所述全局预测模型进行融合计算,以得到逼近目标函数的预测模型。
[0074]
基于以上目的,本发明实施例的第三个方面,提出了一种计算机设备,图3示出的是本发明提供的一种计算机设备的实施例的示意图。如图3所示,本发明提供的一种计算机设备的实施例,包括以下模块:至少一个处理器021;以及存储器022,存储器022存储有可在处理器021上运行的计算机指令023,该计算机指令023由处理器021执行时实现如上所述的方法的步骤。
[0075]
本发明还提供了一种计算机可读存储介质。图4示出的是本发明提供的一种计算机可读存储介质的实施例的示意图。如图4所示,计算机可读存储介质031存储有被处理器执行时执行如上方法的计算机程序032。其中,计算机程序032执行的方法包括:建立工作机对应的训练集合和核函数,基于所述核函数在所述训练集合上计算工作机的高斯后验概率分布,以得到工作机的局部预测模型;将所述局部预测模型发送给服务器,基于聚合算法对所述局部预测模型进行聚合,得到全局预测模型;在工作机上对所述局部预测模型和所述全局预测模型进行融合计算,以得到逼近目标函数的预测模型。
[0076]
在一些实施例中,所述方法还包括:建立验证数据集并将所述验证数据集均分给工作机,通过所述预测模型计算工作机对应的预测均方误差;比较所述预测均方误差与所述局部预测模型的均方误差,响应于所述预测均方误差小于所述局部预测模型的均方误差,所述预测模型有效。
[0077]
在一些实施例中,所述建立工作机对应的训练集合和核函数,基于所述核函数在所述训练集合上计算工作机的高斯后验概率分布,以得到工作机的局部预测模型包括:建
立训练数据对应的投影数据集合,并获取所述投影数据集合中的投影数据的邻域,基于所述投影数据的邻域构建工作机对应的训练集合;根据选择的核函数在所述训练集合上计算工作机的高斯后验概率分布,得到工作机的局部预测的期望和方差。
[0078]
在一些实施例中,所述将所述局部预测模型发送给服务器,基于聚合算法对所述局部预测模型进行聚合,得到全局预测模型包括:将所述局部预测的期望和方差发送给服务器,并通过所述服务器的聚合算法将所述局部预测的期望和方差计算为全局预测的期望和方差。
[0079]
在一些实施例中,所述在工作机上对所述局部预测模型和所述全局预测模型进行融合计算,以得到逼近目标函数的预测模型包括:将所述全局预测的期望和方差发送给工作机,设置通过工作机对所述全局预测的期望和方差与所述局部预测的期望和方差进行融合计算,得到逼近目标函数的预测模型。
[0080]
在一些实施例中,所述将所述全局预测的期望和方差发送给工作机,设置通过工作机对所述全局预测的期望和方差与所述局部预测的期望和方差进行融合计算,得到逼近目标函数的预测模型包括:比较工作机的测试数据的局部预测的方差和全局预测的方差的大小,并根据比较的结果构建工作机的测试数据的集合;响应于工作机的测试数据的集合中存在局部预测的方差不大于全局预测的方差的测试数据,使用所述全局预测构建逼近目标函数的预测模型。
[0081]
在一些实施例中,所述将所述全局预测的期望和方差发送给工作机,设置通过工作机对所述全局预测的期望和方差与所述局部预测的期望和方差进行融合计算,得到逼近目标函数的预测模型还包括:响应于工作机的测试数据的集合中不存在局部预测的方差不大于全局预测的方差的测试数据,使用所述局部预测构建逼近目标函数的预测模型。
[0082]
最后需要说明的是,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关硬件来完成,设置系统参数的方法的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,程序的存储介质可为磁碟、光盘、只读存储记忆体(rom)或随机存储记忆体(ram)等。上述计算机程序的实施例,可以达到与之对应的前述任意方法实施例相同或者相类似的效果。
[0083]
此外,根据本发明实施例公开的方法还可以被实现为由处理器执行的计算机程序,该计算机程序可以存储在计算机可读存储介质中。在该计算机程序被处理器执行时,执行本发明实施例公开的方法中限定的上述功能。
[0084]
此外,上述方法步骤以及系统单元也可以利用控制器以及用于存储使得控制器实现上述步骤或单元功能的计算机程序的计算机可读存储介质实现。
[0085]
本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。为了清楚地说明硬件和软件的这种可互换性,已经就各种示意性组件、方块、模块、电路和步骤的功能对其进行了一般性的描述。这种功能是被实现为软件还是被实现为硬件取决于具体应用以及施加给整个系统的设计约束。本领域技术人员可以针对每种具体应用以各种方式来实现的功能,但是这种实现决定不应被解释为导致脱离本发明实施例公开的范围。
[0086]
在一个或多个示例性设计中,功能可以在硬件、软件、固件或其任意组合中实现。
如果在软件中实现,则可以将功能作为一个或多个指令或代码存储在计算机可读介质上或通过计算机可读介质来传送。计算机可读介质包括计算机存储介质和通信介质,该通信介质包括有助于将计算机程序从一个位置传送到另一个位置的任何介质。存储介质可以是能够被通用或专用计算机访问的任何可用介质。作为例子而非限制性的,该计算机可读介质可以包括ram、rom、eeprom、cd-rom或其它光盘存储设备、磁盘存储设备或其它磁性存储设备,或者是可以用于携带或存储形式为指令或数据结构的所需程序代码并且能够被通用或专用计算机或者通用或专用处理器访问的任何其它介质。此外,任何连接都可以适当地称为计算机可读介质。例如,如果使用同轴线缆、光纤线缆、双绞线、数字用户线路(dsl)或诸如红外线、无线电和微波的无线技术来从网站、服务器或其它远程源发送软件,则上述同轴线缆、光纤线缆、双绞线、d0l或诸如红外线、无线电和微波的无线技术均包括在介质的定义。如这里所使用的,磁盘和光盘包括压缩盘(cd)、激光盘、光盘、数字多功能盘(dvd)、软盘、蓝光盘,其中磁盘通常磁性地再现数据,而光盘利用激光光学地再现数据。上述内容的组合也应当包括在计算机可读介质的范围内。
[0087]
以上是本发明公开的示例性实施例,但是应当注意,在不背离权利要求限定的本发明实施例公开的范围的前提下,可以进行多种改变和修改。根据这里描述的公开实施例的方法权利要求的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本发明实施例公开的元素可以以个体形式描述或要求,但除非明确限制为单数,也可以理解为多个。
[0088]
应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。
[0089]
上述本发明实施例公开实施例序号仅仅为了描述,不代表实施例的优劣。
[0090]
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
[0091]
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1