CN115081642B - 一种多方协同更新业务预测模型的方法及系统 - Google Patents

一种多方协同更新业务预测模型的方法及系统 Download PDF

Info

Publication number
CN115081642B
CN115081642B CN202210847696.6A CN202210847696A CN115081642B CN 115081642 B CN115081642 B CN 115081642B CN 202210847696 A CN202210847696 A CN 202210847696A CN 115081642 B CN115081642 B CN 115081642B
Authority
CN
China
Prior art keywords
vector
local
parameter
parameter vector
distance
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202210847696.6A
Other languages
English (en)
Other versions
CN115081642A (zh
Inventor
周俊
朱海洋
陈为
欧阳泽宇
谈旭炜
万邱成
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Products Zhongda Digital Technology Co ltd
Zhejiang University ZJU
Original Assignee
Products Zhongda Digital Technology Co ltd
Zhejiang University ZJU
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Products Zhongda Digital Technology Co ltd, Zhejiang University ZJU filed Critical Products Zhongda Digital Technology Co ltd
Priority to CN202210847696.6A priority Critical patent/CN115081642B/zh
Publication of CN115081642A publication Critical patent/CN115081642A/zh
Application granted granted Critical
Publication of CN115081642B publication Critical patent/CN115081642B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Medical Informatics (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本说明书实施例提供一种多方协同更新业务预测模型的方法及系统,在更新方法中,每个参与方i根据本地样本集和本地模型参数,确定局部参数向量,并提供给服务器。服务器对接收的n份局部参数向量,对应于任意的维度j的n个元素值进行聚类,并基于得到的两个类簇各自的类簇中心值,确定对应于维度j的第一中间参数,进而得到第一中间参数向量;以及对n个元素值中的至少部分元素值进行聚合处理,得到对应于维度j的第二中间参数,进而得到第二中间参数向量。分别计算每个局部参数向量与第一和第二中间参数向量的第一和第二向量距离,并基于计算的距离,确定目标参数向量,进而获取更新模型参数,并将其下发至每个参与方i,以更新本地模型参数。

Description

一种多方协同更新业务预测模型的方法及系统
技术领域
本说明书一个或多个实施例涉及机器学习领域,尤其涉及一种多方协同更新业务预测模型的方法及系统。
背景技术
随着机器学习技术的应用爆炸式增长,使得包括大宗商品供应链集成服务业务等各种领域的业务预测模型(以下简称模型)的常规更新成为可能。由于计算和空间的限制,这种更新通常在分布式集群上运行。一个常见的技术架构包括一台服务器(也称中心服务器、参数服务器或者PS),它维护着模型的全局模型参数和若干参与方(也称为工作者或者客户端),参与方计算与被优化模型有关的梯度或者模型参数(以下统称为参数)。结果返回到服务器,服务器聚合它们并更新模型,之后服务器向参与方广播模型的新副本,重复上述过程直至模型参数收敛。这种设置的一个主要挑战是,系统容易受到参与方的对抗性攻击(比如参与方恶意随机发送参数),或受到其故障/崩溃的影响。因此,返回给服务器的相应参数在模型更新中可能是不可靠的。这可能导致基于参数的更新方法收敛缓慢或发散,在面对这种情况时实现模型的鲁棒性更新是非常重要的。因此,本方案通过多方协同方式,对参与方发送给服务器的参数进行识别,将对抗性攻击或崩溃或者故障节点发送的参数丢弃,从而只对符合正常分布的参数进行聚合,可有效提升参数更新的稳健性,使得分布式更新能够正常快速收敛。
发明内容
本说明书一个或多个实施例描述了一种多方协同更新业务预测模型的方法及系统,可以提升模型参数的质量,同时可以提高建模效率。
第一方面,提供了一种多方协同更新业务预测模型的方法,包括:
每个参与方i,根据本地样本集和业务预测模型的本地模型参数,确定具有k个维度的局部参数向量,并将其提供给所述服务器;
所述服务器,对所述n个参与方发送的n份局部参数向量,对应于任意的维度j的n个元素值进行聚类,得到两个类簇,并基于所述两个类簇各自的类簇中心值,确定对应于维度j的第一中间参数,以及对所述n个元素值中的至少部分元素值进行聚合处理,得到对应于维度j的第二中间参数;
所述服务器,基于所述k个维度各自对应的第一中间参数,形成第一中间参数向量,以及基于所述k个维度各自对应的第二中间参数,形成第二中间参数向量;
所述服务器,针对所述n份局部参数向量中的每个局部参数向量,分别计算该局部参数向量与所述第一中间参数向量的第一向量距离,以及与所述第二中间参数向量的第二向量距离;并基于所述第一和第二向量距离,确定是否将该局部参数向量选取为目标参数向量;如此得到若干目标参数向量;
所述服务器,基于所述若干目标参数向量,获取所述业务预测模型的更新模型参数,并将其下发至每个参与方i,以供每个参与方i基于所述更新模型参数,更新其本地模型参数,以用于下一轮迭代。
第二方面,提供了一种多方协同更新业务预测模型的系统,包括:
每个参与方i,用于根据本地样本集和业务预测模型的本地模型参数,确定具有k个维度的局部参数向量,并将其提供给所述服务器;
所述服务器,用于对所述n个参与方发送的n份局部参数向量,对应于任意的维度j的n个元素值进行聚类,得到两个类簇,并基于所述两个类簇各自的类簇中心值,确定对应于维度j的第一中间参数,以及对所述n个元素值中的至少部分元素值进行聚合处理,得到对应于维度j的第二中间参数;
所述服务器,还用于基于所述k个维度各自对应的第一中间参数,形成第一中间参数向量,以及基于所述k个维度各自对应的第二中间参数,形成第二中间参数向量;
所述服务器,还用于针对所述n份局部参数向量中的每个局部参数向量,分别计算该局部参数向量与所述第一中间参数向量的第一向量距离,以及与所述第二中间参数向量的第二向量距离;并基于所述第一和第二向量距离,确定是否将该局部参数向量选取为目标参数向量;如此得到若干目标参数向量;
所述服务器,还用于基于所述若干目标参数向量,获取所述业务预测模型的更新模型参数,并将其下发至每个参与方i,以供每个参与方i基于所述更新模型参数,更新其本地模型参数,以用于下一轮迭代。
本说明书一个或多个实施例提供的一种多方协同更新业务预测模型的方法及系统,服务器先通过聚类和聚合处理确定出两个中间参数向量,之后通过计算n个参与方发送的n份局部参数向量分别与该两个中间参数向量的向量距离,从n份局部参数向量中选取出若干目标参数向量,并通过聚合该若干目标参数向量,来更新业务预测模型。由此,可以过滤掉恶意的攻击者所发送的参数,也即可以避免攻击者的攻击,进而使得分布式更新能够正常进行,不影响模型的收敛速度和收敛精度。
附图说明
为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1示出根据一个实施例的多方协同更新业务预测模型的系统示意图之一;
图2示出根据一个实施例的多方协同更新业务预测模型的方法交互图;
图3示出根据一个实施例的多方协同更新商品推荐模型的方法交互图;
图4示出根据一个实施例的多方协同更新业务预测模型的系统示意图之二。
具体实施方式
下面结合附图,对本说明书提供的方案进行描述。
图1示出根据一个实施例的多方协同更新业务预测模型的系统示意图之一。图1中,该系统包括服务器和n个参与方,其中,n为正整数。各参与方可以实现为任何具有计算、处理能力的设备、平台、服务器或设备集群。该服务器包括第一识别装置、第二识别装置、聚合装置和更新装置。
图1中,参与方1-参与方n中的每个参与方,可以根据其本地样本集和业务预测模型的本地模型参数,确定对应的局部参数向量,并将其提供给服务器。这里的业务预测模型用于预测业务对象的分类或回归值。其中的业务对象例如可以为图片、文本、用户或者商品等。
服务器在接收到n个参与方发送的n份局部参数向量后,可以通过其中的第一识别装置对该n份局部参数向量中,每个维度的n个元素值进行聚类,以得到第一中间参数向量;以及通过其中的第二识别装置对该n份局部参数向量中,每个维度的n个元素值进行聚合处理,以得到第二中间参数向量。应理解,这里的聚类和聚合处理可以并行执行。
之后,在聚合装置,分别计算n份局部参数向量各自与上述第一和第二中间参数向量的两个向量距离,并基于n份局部参数向量各自对应的两个向量距离,从n份局部参数向量中选取出若干目标参数向量并聚合,得到聚合参数向量。
最后,在更新装置,基于聚合参数向量,确定业务预测模型的更新模型参数,并将其下发至每个参与方i,以供每个参与方i基于接收的更新模型参数,更新其本地模型参数。
需要说明,上述第一识别装置和第二识别装置可以并行地进行聚类和聚合处理,这可以提升模型更新的效率。此外,在第一识别装置中,可以并行地对各个维度进行聚类,以及在第二识别装置中,可以并行地对各个维度进行聚合处理,由此可以进一步提升模型更新的效率。
图2示出根据一个实施例的多方协同更新业务预测模型的方法交互图。需要说明,该方法涉及多轮迭代,图2中示出其中第t(t为正整数)轮迭代包括的交互步骤,并且,因参与第t轮迭代的各个参与方与服务器的交互过程相近,所以图2中主要示出参与该第t轮迭代的任一个参与方(为便于描述,称作第一参与方)与服务器的交互步骤,参与该轮迭代的其它参与方与服务器的交互步骤,可以参见该第一参与方与服务器的交互步骤。可以理解,通过重复执行其中示出的交互步骤,可以实现对各参与方各自的本地模型参数的多轮迭代更新,进而将最后一轮迭代更新得到的本地模型参数,作为各自最终使用的业务预测模型。如图2所示,该方法可以包括如下步骤:
步骤202,每个参与方i根据本地样本集和业务预测模型的本地模型参数,确定具有k个维度的局部参数向量,并将其提供给服务器。
其中,i为正整数,且1≤i≤n;上述k为正整数。
以任一参与方为例来说,其维护的本地样本集中的样本所对应的业务对象,可以包括以下中的任一种:图片、文本、用户以及商品等。
此外,上述业务预测模型可以分类模型或回归模型,用于预测上述业务对象的分类或回归值。在一个实施例中,该业务预测模型可以基于决策树算法、贝叶斯算法等实现,在另一个实施例中,该业务预测模型可以基于神经网络实现。
需要说明,当第t轮迭代为首轮迭代时,上述本地模型参数可以是由服务器在多轮迭代开始之前,对业务预测模型进行初始化,然后将初始化的模型参数下发或提供给各参与方,从而各参与方可以将上述初始化的模型参数作为本地模型参数。当然,在实际应用中,也可以是由各参与方先约定好模型的结构(例如采用何种模型,模型的层数,每层的神经元的数目等等),之后再进行相同的初始化,以得到各自的本地模型参数。
当第t轮迭代为非首轮迭代时,上述本地模型参数可以是在第t-1轮迭代中更新得到。
最后,上述局部参数向量可以包括梯度向量或模型参数向量,关于局部参数向量的确定可参考现有技术。以梯度向量为例来说,其确定方法可以如下:可以先根据本地样本集以及本地模型参数,确定预测结果,再根据预测结果以及样本标签,确定预测损失。最后,再根据预测损失,并利用反向传播法,确定本地模型参数对应的梯度向量。
应理解,在实际应用中,上述局部参数向量的确定方法也包括多轮迭代,具体地的迭代轮次可以预先设定。
步骤204,服务器对n个参与方发送的n份局部参数向量,对应于任意的维度j的n个元素值进行聚类,得到两个类簇,并基于两个类簇各自的类簇中心值,确定对应于维度j的第一中间参数,以及对n个元素值中的至少部分元素值进行聚合处理,得到对应于维度j的第二中间参数。
其中,j为正整数,且1≤j≤k;
以下先对步骤204中的聚类处理进行说明。
具体地,可以采用聚类算法,对任意的维度j的n个元素值进行聚类。其中的聚类算法包括以下中的一种:kmeans算法、基于层次的聚类算法(如,BIRCH算法以及CURE算法等)、以及基于密度的聚类算法(如,DBSCAN算法以及OPTICS算法等)。
以kmeans算法为例来说,其聚类过程可以为:从维度j的n个元素值中随机选择两个元素值作为初始的类簇中心值,计算除该两个元素值外的其它各元素值中的每个元素值到两个类簇中心值的距离,把它划到距离最小的类簇;然后通过求平均或者求加权平均,计算更新的类簇中心值,进行迭代,直至将n个元素值均划分完成。
换句话说,在聚类过程结束后,两个类簇中的每个类簇与一个类簇中心值(也称为中心点)相对应,其具体是通过对该类簇中的各元素值进行求平均或者求加权平均得到。
在一个示例中,上述确定对应于维度j的第一中间参数,可以包括:基于两个类簇各自的类簇中心值,计算两个类簇的中心距离。若该中心距离大于预设的距离阈值,则将两个类簇的两个类簇中心值中最大的类簇中心值,作为对应于维度j的第一中间参数。这里,将最大的类簇中心值作为第一中间参数,是因为相对而言,类簇中心值较小的类簇中的各元素值对全局模型参数的影响更小。
在另一个示例中,上述计算两个类簇的中心距离也可以替换为:计算两个类簇各自的类簇中心值的差值或商值等等。
若该中心距离不大于预设的距离阈值,则聚合两个类簇的两个类簇中心值,并将得到的第一聚合值作为对应于维度j的第一中间参数。类似地,可以确定出k个维度中每个维度对应的第一中间参数。
在一种具体实施方式中,上述聚合两个类簇的两个类簇中心值可以包括:对两个类簇的两个类簇中心值进行求平均或者求加权平均,并将平均值和加权平均值作为上述第一聚合值。
此外,上述中心距离可以包括以下中的任一种:余弦相似度距离、欧氏距离、曼哈顿距离以及皮尔逊相关系数等等。
以上是对步骤204中的聚类处理的说明,以下对步骤204中的聚合处理进行说明。
在一个示例中,上述聚合处理可以包括:对全部的n个元素值进行聚合处理,并将得到的第二聚合值作为对应于维度j的第二中间参数。类似地,可以确定出k个维度中每个维度对应的第二中间参数。
在另一个示例中,上述聚合处理可以包括:基于n个元素值中的中位数,从n个元素值中选取若干元素值。对选取的若干元素值进行聚合处理,并将得到的第二聚合值作为对应于维度j的第二中间参数。
在一种具体实施方式中,上述从n个元素值中选取若干元素值,可以包括:基于n个元素值中的中位数以及预设的元素数目,确定上限值和下限值。将n个元素值中,落入上限值和下限值的范围内的各元素值作为若干元素值。
在另一种具体实施方式中,上述从n个元素值中选取若干元素值可以包括多次元素值选择,其中的第r次元素值选择包括,从n个元素值的中位数开始,选取向前第r个位置的元素值和向后第r个位置的元素值,并进入下一次元素值选择,直至所选取的元素值的累计数目达到预设的元素数目。其中,r为正整数,1≤r≤INT(n/2)。
此外,上述对选取的若干元素值进行聚合处理可以包括:对若干元素值进行求平均或者求加权平均,并将得到的平均值或加权平均值作为第二聚合值。
步骤206,基于k个维度各自对应的第一中间参数,形成第一中间参数向量,以及基于k个维度各自对应的第二中间参数,形成第二中间参数向量。
比如,在对k个维度各自对应的第一中间参数进行拼接之后,可以得到第一中间参数向量P1。以及在对k个维度各自对应的第二中间参数进行拼接之后,可以得到第二中间参数向量P2。
步骤208,针对n份局部参数向量中的每个局部参数向量,分别计算该局部参数向量与第一中间参数向量的第一向量距离,以及与第二中间参数向量的第二向量距离,并基于第一和第二向量距离,确定是否将该局部参数向量选取为目标参数向量;如此得到若干目标参数向量。
这里的第一和第二向量距离可以包括以下中的任一种:余弦相似度距离、欧氏距离、曼哈顿距离以及皮尔逊相关系数等等。
在一个示例中,上述确定是否将该局部参数向量选取为目标参数向量,包括:判断针对该局部参数向量计算的第一距离向量和第二距离向量是否满足预设的条件。如果满足,则将该局部参数向量选取为目标参数向量。
其中,预设的条件包括:第一距离向量小于预设的第一距离阈值或者第二距离向量小于预设的第二距离阈值;或者,第一距离向量小于预设的第一距离阈值以及第二距离向量小于预设的第二距离阈值;或者,第一距离向量和第二距离向量之和小于预设的第一距离阈值和预设的第二距离阈值的线性组合结果。比如,d1+d2<a1*D1+a2*D2。其中,d1为第一距离向量,d2为第二距离向量,a1和a2为系数,D1为预设的第一距离阈值,D2为预设的第二距离阈值。
应理解,在实际应用中,上述预设的条件还可以包括其它条件,比如,第一距离向量和第二距离向量的差值小于阈值等,本说明书对此不复赘述。
此外,需要说明,在针对n份局部参数向量中的每个局部参数向量进行上述是否满足预设的条件的判断后,可以得到若干目标参数向量。
步骤210,基于若干目标参数向量,获取业务预测模型的更新模型参数,并将其下发至每个参与方i,以供每个参与方i基于更新模型参数,更新其本地模型参数,以用于下一轮迭代。
在一个示例中,上述获取业务预测模型的更新模型参数,包括:聚合若干目标参数向量,得到聚合参数向量。将业务预测模型的全局模型参数减去聚合参数向量与预设的步长的乘积,得到业务预测模型的更新模型参数。
其中,上述聚合若干目标参数向量可以包括:对若干目标参数向量进行求平均或者求加权平均,得到聚合参数向量。
在一个例子中,可以参照如下公式获取业务预测模型的更新模型参数:
Figure 2667DEST_PATH_IMAGE002
(公式1)
其中,wt为更新模型参数,wt-1为服务器当前维护的全局模型参数。ηt为学习速率,也称学习步长,Cou为目标参数向量的数目,mi为第i个目标参数向量。
应理解,在获取到上述更新模型参数之后,服务器可以利用该更新模型参数,更新(或替换)其当前维护的全局模型参数,从而得到更新的全局模型参数,以用于下一轮迭代。
此外,每个参与方i在接收到上述更新模型参数后,可以利用该更新模型参数,更新(或替换)其维护的本地模型参数,从而得到更新的本地模型参数,以用于下一轮迭代。
需要说明,在本说明书实施例中,步骤202-步骤210是重复多次执行的,由此可以实现对各参与方各自维护的本地模型参数的多轮迭代更新。且每次迭代所使用的本地模型参数是上一轮更新后的模型参数。该迭代的终止条件可以为迭代次数达到预定轮次或者全局模型参数收敛。
在多轮迭代后,每个参与方i将其得到的本地模型参数,作为其与其它参与方协同更新的业务预测模型。
以任意的参与方i为例来说,在其本地样本集中的样本对应的业务对象为图片的情况下,那么其与其它参与方协同更新的业务预测模型可以为图片识别模型。在其本地样本集中的样本对应的业务对象为文本的情况下,那么其与其它参与方协同更新的业务预测模型可以为文本识别模型。在其本地样本集中的样本对应的业务对象为商品和用户的情况下,那么其与其它参与方协同更新的业务预测模型可以为商品推荐模型等等。
本说明书实施例提供的多方协同更新业务预测模型的图1示出根据一个实施例的多方协同更新业务预测模型的系统示意图之一可以高效、稳健地更新业务预测模型。其中,高效是因为步骤204中的聚类和聚合处理可以并行进行,此外,针对n份局部参数向量的各个维度的聚类也可以并行进行,以及针对n份局部参数向量的各个维度的聚类处理也可以并行进行。而稳健是因为本方案对各参与方发送给服务器的参数进行识别,将对抗性攻击或崩溃或者故障节点发送的参数丢弃,从而只对符合正常分布的参数进行聚合。最后,由于本方案是参照两个中间参数向量(其中一个通过聚类得到,一个通过聚合处理得到)来筛选目标参数向量,由此可以提升参数识别的精度。
总而言之,本方案通过多方协同方式,可以对参与方中潜在的对抗攻击者、崩溃和有故障者,识别出来,丢弃它们发送的局部参数向量,从而提升参数的质量,使得分布式训练能够正常收敛,得到不受影响的高质量的业务预测模型。
以下以业务预测模型为商品推荐模型为例,对本方案进行说明。
图3示出根据一个实施例的多方协同更新商品推荐模型的方法交互图。需要说明,该方法涉及多轮迭代,图3中示出其中第t(t为正整数)轮迭代包括的交互步骤,并且,因参与第t轮迭代的各个参与方与服务器的交互过程相近,所以图3中主要示出参与该第t轮迭代的任一个参与方(为便于描述,称作第一参与方)与服务器的交互步骤,参与该轮迭代的其它参与方与服务器的交互步骤,可以参见该第一参与方与服务器的交互步骤。可以理解,通过重复执行其中示出的交互步骤,可以实现对各参与方各自的本地模型参数的多轮迭代更新,进而将最后一轮迭代更新得到的本地模型参数,作为各自最终使用的商品推荐模型。如图3所示,该方法可以包括如下步骤:
步骤302,每个参与方i根据本地样本集和商品推荐模型的本地模型参数,确定具有k个维度的局部参数向量,并将其提供给服务器。
上述本地样本集中的样本所对应的业务对象包括用户和商品,样本的特征包括用户属性(如,可以为性别、年龄以及学历等)、操作行为(如,可以为浏览、点击以及关闭等)和商品属性(如,可以为商品类别、商品价格以及商品详情等)。
步骤304,服务器对n个参与方发送的n份局部参数向量,对应于任意的维度j的n个元素值进行聚类,得到两个类簇,并基于两个类簇各自的类簇中心值,确定对应于维度j的第一中间参数,以及对n个元素值中的至少部分元素值进行聚合处理,得到对应于维度j的第二中间参数。
步骤306,基于k个维度各自对应的第一中间参数,形成第一中间参数向量,以及基于k个维度各自对应的第二中间参数,形成第二中间参数向量。
步骤308,针对n份局部参数向量中的每个局部参数向量,分别计算该局部参数向量与第一中间参数向量的第一向量距离,以及与第二中间参数向量的第二向量距离,并基于第一和第二向量距离,确定是否将该局部参数向量选取为目标参数向量;如此得到若干目标参数向量。
步骤310,基于若干目标参数向量,获取商品推荐模型的更新模型参数,并将其下发至每个参与方i,以供每个参与方i基于更新模型参数,更新其本地模型参数,以用于下一轮迭代。
在多轮迭代后,每个参与方i将其得到的本地模型参数,作为其与其它参与方协同更新的商品推荐模型。
综合以上,本说明书实施例提供的多方协同更新商品推荐模型的方法,可以高效、稳健地更新商品推荐模型。
与上述多方协同更新业务预测模型的方法对应地,本说明书一个实施例还提供的一种多方协同更新业务预测模型的系统,如图4所示,该系统包括:服务器402和n个参与方404。
每个参与方404,用于根据本地样本集和业务预测模型的本地模型参数,确定具有k个维度的局部参数向量,并将其提供给服务器402。
其中,上述局部参数向量包括梯度向量或模型参数向量。
服务器402,用于对n个参与方发送的n份局部参数向量,对应于任意的维度j的n个元素值进行聚类,得到两个类簇,并基于两个类簇各自的类簇中心值,确定对应于维度j的第一中间参数,以及对n个元素值中的至少部分元素值进行聚合处理,得到对应于维度j的第二中间参数。
服务器402具体用于:
基于两个类簇各自的类簇中心值,计算两个类簇的中心距离;
若中心距离大于预设的距离阈值,则将两个类簇各自的类簇中心值中最大的类簇中心值,作为对应于维度j的第一中间参数;
若中心距离不大于预设的距离阈值,则聚合两个类簇的类簇中心值,并将得到的第一聚合值作为对应于维度j的第一中间参数。
服务器402还具体用于:
基于n个元素值中的中位数,从n个元素值中选取若干元素值;
对若干元素值进行聚合处理,并将得到的第二聚合值作为对应于维度j的第二中间参数。
服务器402还具体用于:
基于n个元素值中的中位数以及预设的元素数目,确定上限值和下限值;
将n个元素值中,落入上限值和下限值的范围内的各元素值作为若干元素值。
服务器402还具体用于:
对若干元素值进行求平均或者求加权平均,并将得到的平均值或加权平均值作为第二聚合值。
服务器402,还用于基于k个维度各自对应的第一中间参数,形成第一中间参数向量,以及基于k个维度各自对应的第二中间参数,形成第二中间参数向量。
服务器402,还用于针对n份局部参数向量中的每个局部参数向量,分别计算该局部参数向量与第一中间参数向量的第一向量距离,以及与第二中间参数向量的第二向量距离,并基于第一和第二向量距离,确定是否将该局部参数向量选取为目标参数向量;如此得到若干目标参数向量。
服务器402具体用于:
判断针对该局部参数向量计算的第一和第二距离向量是否满足预设的条件;其中,预设的条件包括:第一和第二距离向量中之一小于对应的距离阈值;或者,第一和第二距离向量均小于各自分别对应的两个距离阈值;或者,第一和第二距离向量之和小于两个距离阈值的线性组合结果;
如果满足,则将该局部参数向量选取为目标参数向量。
服务器402,还用于基于若干目标参数向量,获取业务预测模型的更新模型参数,并将其下发至每个参与方404,以供每个参与方404基于更新模型参数,更新其本地模型参数,以用于下一轮迭代。
服务器402具体用于:
聚合若干目标参数向量,得到聚合参数向量;
将业务预测模型的全局模型参数减去聚合参数向量与预设的步长的乘积,得到业务预测模型的更新模型参数。
服务器402还具体用于:
对若干目标参数向量进行求平均或者求加权平均,得到聚合参数向量。
本说明书一个实施例提供的多方协同更新业务预测模型的系统,可以高效、稳健地更新业务预测模型。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
结合本说明书公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、移动硬盘、CD-ROM或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于服务器中。当然,处理器和存储介质也可以作为分立组件存在于服务器中。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
以上所述的具体实施方式,对本说明书的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本说明书的具体实施方式而已,并不用于限定本说明书的保护范围,凡在本说明书的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本说明书的保护范围之内。

Claims (8)

1.一种多方协同更新业务预测模型的方法,所述多方包括服务器和n个参与方;所述方法包括多轮迭代,其中任意的第t轮迭代包括:
每个参与方i,根据本地样本集和业务预测模型的本地模型参数,确定具有k个维度的局部参数向量,并将其提供给所述服务器;
所述服务器,对所述n个参与方发送的n份局部参数向量,对应于任意的维度j的n个元素值进行聚类,得到两个类簇,并基于所述两个类簇各自的类簇中心值,确定对应于维度j的第一中间参数,以及对所述n个元素值中的至少部分元素值进行聚合处理,得到对应于维度j的第二中间参数;
所述服务器,基于所述k个维度各自对应的第一中间参数,形成第一中间参数向量,以及基于所述k个维度各自对应的第二中间参数,形成第二中间参数向量;
所述服务器,针对所述n份局部参数向量中的每个局部参数向量,分别计算该局部参数向量与所述第一中间参数向量的第一向量距离,以及与所述第二中间参数向量的第二向量距离;并基于所述第一和第二向量距离,确定是否将该局部参数向量选取为目标参数向量;如此得到若干目标参数向量;
所述服务器,基于所述若干目标参数向量,获取所述业务预测模型的更新模型参数,并将其下发至每个参与方i,以供每个参与方i基于所述更新模型参数,更新其本地模型参数,以用于下一轮迭代;
其中,所述两个类簇中任一类簇的类簇中心值,通过对该类簇中的各元素值进行求平均或者求加权平均得到;
所述确定对应于维度j的第一中间参数,包括:
基于所述两个类簇各自的类簇中心值,计算所述两个类簇的中心距离;
若所述中心距离大于预设的距离阈值,则将所述两个类簇各自的类簇中心值中最大的类簇中心值,作为对应于维度j的第一中间参数;
若所述中心距离不大于预设的距离阈值,则聚合所述两个类簇的类簇中心值,并将得到的第一聚合值作为对应于维度j的第一中间参数;
其中,所述对所述n个元素值中的至少部分元素值进行聚合处理,包括:
基于所述n个元素值中的中位数,从所述n个元素值中选取若干元素值;
对所述若干元素值进行聚合处理,并将得到的第二聚合值作为对应于维度j的第二中间参数。
2.根据权利要求1所述的方法,其中,所述从所述n个元素值中选取若干元素值,包括:
基于所述n个元素值中的中位数以及预设的元素数目,确定上限值和下限值;
将所述n个元素值中,落入所述上限值和下限值的范围内的各元素值作为所述若干元素值。
3.根据权利要求1所述的方法,其中,所述对所述若干元素值进行聚合处理,包括:
对所述若干元素值进行求平均或者求加权平均,并将得到的平均值或加权平均值作为所述第二聚合值。
4.根据权利要求1所述的方法,其中,所述确定是否将该局部参数向量选取为目标参数向量,包括:
判断针对该局部参数向量计算的第一和第二距离向量是否满足预设的条件;其中,所述预设的条件包括:所述第一和第二距离向量中之一小于对应的距离阈值;或者,所述第一和第二距离向量均小于各自分别对应的两个距离阈值;或者,所述第一和第二距离向量之和小于所述两个距离阈值的线性组合结果;
如果满足,则将该局部参数向量选取为目标参数向量。
5.根据权利要求1所述的方法,其中,所述获取所述业务预测模型的更新模型参数,包括:
聚合所述若干目标参数向量,得到聚合参数向量;
将所述业务预测模型的全局模型参数减去所述聚合参数向量与预设的步长的乘积,得到所述业务预测模型的更新模型参数。
6.根据权利要求5所述的方法,其中,所述聚合所述若干目标参数向量,包括:
对所述若干目标参数向量进行求平均或者求加权平均,得到所述聚合参数向量。
7.根据权利要求1所述的方法,其中,所述局部参数向量包括梯度向量或模型参数向量。
8.一种多方协同更新业务预测模型的系统,包括服务器和n个参与方;
每个参与方i,用于根据本地样本集和业务预测模型的本地模型参数,确定具有k个维度的局部参数向量,并将其提供给所述服务器;
所述服务器,用于对所述n个参与方发送的n份局部参数向量,对应于任意的维度j的n个元素值进行聚类,得到两个类簇,并基于所述两个类簇各自的类簇中心值,确定对应于维度j的第一中间参数,以及对所述n个元素值中的至少部分元素值进行聚合处理,得到对应于维度j的第二中间参数;
所述服务器,还用于基于所述k个维度各自对应的第一中间参数,形成第一中间参数向量,以及基于所述k个维度各自对应的第二中间参数,形成第二中间参数向量;
所述服务器,还用于针对所述n份局部参数向量中的每个局部参数向量,分别计算该局部参数向量与所述第一中间参数向量的第一向量距离,以及与所述第二中间参数向量的第二向量距离;并基于所述第一和第二向量距离,确定是否将该局部参数向量选取为目标参数向量;如此得到若干目标参数向量;
所述服务器,还用于基于所述若干目标参数向量,获取所述业务预测模型的更新模型参数,并将其下发至每个参与方i,以供每个参与方i基于所述更新模型参数,更新其本地模型参数,以用于下一轮迭代;
其中,所述两个类簇中任一类簇的类簇中心值,通过对该类簇中的各元素值进行求平均或者求加权平均得到;
所述确定对应于维度j的第一中间参数,包括:
基于所述两个类簇各自的类簇中心值,计算所述两个类簇的中心距离;
若所述中心距离大于预设的距离阈值,则将所述两个类簇各自的类簇中心值中最大的类簇中心值,作为对应于维度j的第一中间参数;
若所述中心距离不大于预设的距离阈值,则聚合所述两个类簇的类簇中心值,并将得到的第一聚合值作为对应于维度j的第一中间参数;
其中,所述对所述n个元素值中的至少部分元素值进行聚合处理,包括:
基于所述n个元素值中的中位数,从所述n个元素值中选取若干元素值;
对所述若干元素值进行聚合处理,并将得到的第二聚合值作为对应于维度j的第二中间参数。
CN202210847696.6A 2022-07-19 2022-07-19 一种多方协同更新业务预测模型的方法及系统 Active CN115081642B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210847696.6A CN115081642B (zh) 2022-07-19 2022-07-19 一种多方协同更新业务预测模型的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210847696.6A CN115081642B (zh) 2022-07-19 2022-07-19 一种多方协同更新业务预测模型的方法及系统

Publications (2)

Publication Number Publication Date
CN115081642A CN115081642A (zh) 2022-09-20
CN115081642B true CN115081642B (zh) 2022-11-15

Family

ID=83260676

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210847696.6A Active CN115081642B (zh) 2022-07-19 2022-07-19 一种多方协同更新业务预测模型的方法及系统

Country Status (1)

Country Link
CN (1) CN115081642B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115617827B (zh) * 2022-11-18 2023-04-07 浙江大学 一种基于参数压缩的业务模型联合更新方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111800411A (zh) * 2020-07-02 2020-10-20 支付宝(杭州)信息技术有限公司 保护隐私的业务预测模型联合更新方法及装置
CN113902473A (zh) * 2021-09-29 2022-01-07 支付宝(杭州)信息技术有限公司 业务预测系统的训练方法及装置

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110457175B (zh) * 2019-07-08 2023-04-18 创新先进技术有限公司 业务数据处理方法、装置、电子设备及介质
US20210110294A1 (en) * 2019-10-10 2021-04-15 Pearson Education, Inc. Systems and methods for key feature detection in machine learning model applications using logistic models
CN110968426B (zh) * 2019-11-29 2022-02-22 西安交通大学 一种基于在线学习的边云协同k均值聚类的模型优化方法
CN111325417B (zh) * 2020-05-15 2020-08-25 支付宝(杭州)信息技术有限公司 实现隐私保护的多方协同更新业务预测模型的方法及装置
CN111523143B (zh) * 2020-07-03 2020-10-23 支付宝(杭州)信息技术有限公司 针对多方的隐私数据进行聚类的方法和装置
CN111915023B (zh) * 2020-08-28 2021-09-07 支付宝(杭州)信息技术有限公司 一种基于联邦学习的超参数确定方法及装置
CN112256874B (zh) * 2020-10-21 2023-08-08 平安科技(深圳)有限公司 模型训练方法、文本分类方法、装置、计算机设备和介质
CN112015749B (zh) * 2020-10-27 2021-02-19 支付宝(杭州)信息技术有限公司 基于隐私保护更新业务模型的方法、装置及系统
CN112329940A (zh) * 2020-11-02 2021-02-05 北京邮电大学 一种结合联邦学习与用户画像的个性化模型训练方法及系统
CN112447299A (zh) * 2020-12-01 2021-03-05 平安科技(深圳)有限公司 医护资源预测模型训练方法、装置、设备及存储介质
CN112465043B (zh) * 2020-12-02 2024-05-14 平安科技(深圳)有限公司 模型训练方法、装置和设备
CN112948885B (zh) * 2021-03-25 2023-10-27 支付宝(杭州)信息技术有限公司 实现隐私保护的多方协同更新模型的方法、装置及系统
CN113095505B (zh) * 2021-03-25 2022-12-06 支付宝(杭州)信息技术有限公司 多方协同更新模型的方法、装置及系统
CN113221183B (zh) * 2021-06-11 2022-09-16 支付宝(杭州)信息技术有限公司 实现隐私保护的多方协同更新模型的方法、装置及系统
CN113379042B (zh) * 2021-07-23 2022-05-17 支付宝(杭州)信息技术有限公司 保护数据隐私的业务预测模型训练方法及装置
CN113642809A (zh) * 2021-09-01 2021-11-12 深圳供电局有限公司 一种用电量预测方法、装置、计算机设备和存储介质
CN114092920B (zh) * 2022-01-18 2022-04-15 腾讯科技(深圳)有限公司 一种模型训练的方法、图像分类的方法、装置及存储介质

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111800411A (zh) * 2020-07-02 2020-10-20 支付宝(杭州)信息技术有限公司 保护隐私的业务预测模型联合更新方法及装置
CN113902473A (zh) * 2021-09-29 2022-01-07 支付宝(杭州)信息技术有限公司 业务预测系统的训练方法及装置

Also Published As

Publication number Publication date
CN115081642A (zh) 2022-09-20

Similar Documents

Publication Publication Date Title
US11562244B2 (en) Robust pruned neural networks via adversarial training
Cai et al. Using crowdsourced data in location-based social networks to explore influence maximization
Fan et al. Attacking black-box recommendations via copying cross-domain user profiles
US20220092413A1 (en) Method and system for relation learning by multi-hop attention graph neural network
CN111738534B (zh) 多任务预测模型的训练、事件类型的预测方法及装置
Moore et al. Deep collective inference
CN110162692B (zh) 用户标签确定方法、装置、计算机设备和存储介质
Shalev-Shwartz et al. Using more data to speed-up training time
CN115081642B (zh) 一种多方协同更新业务预测模型的方法及系统
Mahyar et al. Centrality-based group formation in group recommender systems
CN112085293A (zh) 训练交互预测模型、预测交互对象的方法及装置
CN112948885A (zh) 实现隐私保护的多方协同更新模型的方法、装置及系统
WO2023024408A1 (zh) 用户特征向量确定方法、相关设备及介质
Xia et al. TCC-net: A two-stage training method with contradictory loss and co-teaching based on meta-learning for learning with noisy labels
Blöchl et al. Co-clustering via information-theoretic Markov aggregation
CN116170162B (zh) 选择性的共识方法和计算机存储介质、终端设备
CN115905648B (zh) 基于高斯混合模型的用户群和金融用户群分析方法及装置
CN114971742A (zh) 一种用户分类模型的训练、用户分类处理的方法及装置
Ma et al. QoS prediction for neighbor selection via deep transfer collaborative filtering in video streaming P2P networks
Tapucu et al. Performance comparison of combined collaborative filtering algorithms for recommender systems
CN114936890A (zh) 一种基于逆倾向加权方法的反事实公平的推荐方法
Zheng et al. A robust collaborative filtering algorithm using ordered logistic regression
Buhmann SIMBAD: emergence of pattern similarity
Papadakisa et al. SCoR: a synthetic coordinate based recommender system
CN112085040A (zh) 对象标签确定方法、装置和计算机设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant