CN113095505B - 多方协同更新模型的方法、装置及系统 - Google Patents

多方协同更新模型的方法、装置及系统 Download PDF

Info

Publication number
CN113095505B
CN113095505B CN202110317387.3A CN202110317387A CN113095505B CN 113095505 B CN113095505 B CN 113095505B CN 202110317387 A CN202110317387 A CN 202110317387A CN 113095505 B CN113095505 B CN 113095505B
Authority
CN
China
Prior art keywords
participant
party
parameters
sample
gradient information
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
CN202110317387.3A
Other languages
English (en)
Other versions
CN113095505A (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.)
Alipay Hangzhou Information Technology Co Ltd
Original Assignee
Alipay Hangzhou Information Technology Co Ltd
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 Alipay Hangzhou Information Technology Co Ltd filed Critical Alipay Hangzhou Information Technology Co Ltd
Priority to CN202110317387.3A priority Critical patent/CN113095505B/zh
Publication of CN113095505A publication Critical patent/CN113095505A/zh
Application granted granted Critical
Publication of CN113095505B publication Critical patent/CN113095505B/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
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0201Market modelling; Market analysis; Collecting market data
    • G06Q30/0202Market predictions or forecasting for commercial activities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0207Discounts or incentives, e.g. coupons or rebates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0207Discounts or incentives, e.g. coupons or rebates
    • G06Q30/0224Discounts or incentives, e.g. coupons or rebates based on user history

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • General Physics & Mathematics (AREA)
  • Game Theory and Decision Science (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本说明书实施例提供一种多方协同更新模型的方法、装置及系统,在多方协同更新模型的方法中,每个参与方i和中心方,根据第i共有样本集中的第一样本和通用参数,共同向协作方提供第一梯度信息。对于每个参与方i,协作方根据通用参数和对应的第一梯度信息,更新对应于参与方i的第i组个性化参数,并将其发送给参与方i和中心方。每个参与方i和中心方,根据第i共有样本集中的第二样本和更新后的第i组个性化参数,共同向协作方提供第二梯度信息。协作方汇总n个参与方提供的n份第二梯度信息,根据汇总结果,更新通用参数用于下一轮迭代。在多轮迭代后,每个参与方i将其与中心方共同得到的第i组个性化参数,作为其与中心方协同更新的模型。

Description

多方协同更新模型的方法、装置及系统
技术领域
本说明书一个或多个实施例涉及计算机技术领域,尤其涉及一种多方协同更新模型的方法、装置及系统。
背景技术
目前,多个数据方协同训练机器学习模型已引发热潮。比如说,各外部商户之间或者支付平台和各外部商户之间希望打通数据孤岛,通过将各外部商户或者支付平台和各外部商户各自在端内沉淀的用户数据链接到一起,来集中学习得到相应的机器学习模型。
然而,已有的协同建模方式要么存在建模效率低的问题,要么存在模型准确率低的问题。因此,迫切需要一种协同建模方案,以便可以克服现有的协同建模方式的缺陷。
发明内容
本说明书一个或多个实施例描述了一种多方协同更新模型的方法、装置及系统,可以兼顾建模效率和模型准确率。
第一方面,提供了一种多方协同更新模型的方法,包括:
每个参与方i和所述中心方,根据第i共有样本集中的第一样本和通用参数,共同向所述协作方提供第一梯度信息;
对于每个参与方i,所述协作方根据所述通用参数和对应的第一梯度信息,更新对应于参与方i的第i组个性化参数,并将其发送给参与方i和所述中心方;
每个参与方i和所述中心方,根据第i共有样本集中的第二样本和更新后的第i组个性化参数,共同向所述协作方提供第二梯度信息;
所述协作方汇总所述n个参与方提供的n份第二梯度信息,根据汇总结果,更新所述通用参数用于下一轮迭代;
在所述多轮迭代后,每个参与方i将其与所述中心方共同得到的第i组个性化参数,作为其与所述中心方协同更新的业务预测模型。
第二方面,提供了一种多方协同更新模型的方法,包括:
接收每个参与方i和所述中心方,根据第i共有样本集中的第一样本和通用参数,共同提供的第一梯度信息;
对于每个参与方i,根据所述通用参数和对应的第一梯度信息,更新对应于参与方i的第i组个性化参数,并将其发送给参与方i和所述中心方;
接收每个参与方i和所述中心方,根据第i共有样本集中的第二样本和更新后的第i组个性化参数,共同提供的第二梯度信息;
汇总所述n个参与方提供的n份第二梯度信息,根据汇总结果,更新所述通用参数用于下一轮迭代;
其中,在所述多轮迭代后,每个参与方i与所述中心方共同得到的第i组个性化参数,用于作为其与所述中心方协同更新的业务预测模型。
第三方面,提供了一种多方协同更新模型的方法,包括:
每个参与方i根据其拥有的第一样本以及维护的通用参数,确定对应的第一梯度信息;
每个参与方i根据维护的通用参数和确定的第一梯度信息,更新对应的第i组个性化参数;
每个参与方i根据其拥有的第二样本以及更新后的第i组个性化参数,确定对应的第二梯度信息;
每个参与方i向所述协作方发送各自确定的第二梯度信息;
所述协作方汇总所述n个参与方提供的n份第二梯度信息,根据汇总结果,更新所述通用参数用于下一轮迭代;
在所述多轮迭代后,每个参与方i将其得到的第i组个性化参数,作为其与其它参与方协同更新的业务预测模型。
第四方面,提供了一种多方协同更新模型的方法,包括:
根据拥有的第一样本以及维护的通用参数,确定对应的第一梯度信息;
根据维护的通用参数和确定的第一梯度信息,更新对应的第i组个性化参数;
根据其拥有的第二样本以及更新后的第i组个性化参数,确定对应的第二梯度信息;
向所述协作方发送确定的第二梯度信息,以使所述协作方汇总所述第二梯度信息和从其它参与方接收的各梯度信息,并根据汇总结果,更新所述通用参数用于下一轮迭代;
在所述多轮迭代后,将其得到的第i组个性化参数,确定为任意的参与方i与其它参与方协同更新的业务预测模型。
第五方面,提供了一种权益发放方法,包括:
检测用户通过任意的参与方i发起的交易请求;
当检测到该交易请求时,分别向所述任意的参与方i和所述中心方发送用户特征获取请求;
从所述中心方接收第一用户特征,以及从所述任意的参与方i接收第二用户特征;
根据所述第一用户特征、所述第二用户特征以及业务预测模型,确定总预测结果;
根据所述总预测结果,确定是否向所述用户发放权益。
第六方面,提供了一种多方协同更新模型的系统,包括:
每个参与方i和所述中心方,用于根据第i共有样本集中的第一样本和通用参数,共同向所述协作方提供第一梯度信息;
所述协作方,用于对于每个参与方i,根据所述通用参数和对应的第一梯度信息,更新对应于参与方i的第i组个性化参数,并将其发送给参与方i和所述中心方;
每个参与方i和所述中心方,还用于根据第i共有样本集中的第二样本和更新后的第i组个性化参数,共同向所述协作方提供第二梯度信息;
所述协作方,还用于汇总所述n个参与方提供的n份第二梯度信息,根据汇总结果,更新所述通用参数用于下一轮迭代;
每个参与方i,还用于在所述多轮迭代后,将其与所述中心方共同得到的第i组个性化参数,作为其与所述中心方协同更新的业务预测模型。
第七方面,提供了一种多方协同更新模型的系统,包括:
每个参与方i,用于根据其拥有的第一样本以及维护的通用参数,确定对应的第一梯度信息;
每个参与方i,还用于根据维护的通用参数和确定的第一梯度信息,更新对应的第i组个性化参数;
每个参与方i,还用于根据其拥有的第二样本以及更新后的第i组个性化参数,确定对应的第二梯度信息;
每个参与方i,还用于向所述协作方发送各自确定的第二梯度信息;
所述协作方,用于汇总所述n个参与方提供的n份第二梯度信息,根据汇总结果,更新所述通用参数用于下一轮迭代;
在所述多轮迭代后,每个参与方i将其得到的第i组个性化参数,作为其与其它参与方协同更新的业务预测模型。
第八方面,提供了一种多方协同更新模型的装置,包括:
接收单元,用于接收每个参与方i和所述中心方,根据第i共有样本集中的第一样本和通用参数,共同提供的第一梯度信息;
更新单元,用于对于每个参与方i,根据所述通用参数和对应的第一梯度信息,更新对应于参与方i的第i组个性化参数,并将其发送给参与方i和所述中心方;
所述接收单元,还用于接收每个参与方i和所述中心方,根据第i共有样本集中的第二样本和更新后的第i组个性化参数,共同提供的第二梯度信息;
汇总单元,用于汇总所述n个参与方提供的n份第二梯度信息,根据汇总结果,更新所述通用参数用于下一轮迭代;
其中,在所述多轮迭代后,每个参与方i与所述中心方共同得到的第i组个性化参数,用于作为其与所述中心方协同更新的业务预测模型。
第九方面,提供了一种权益发放装置,包括:
检测单元,用于检测用户通过任意的参与方i发起的交易请求;
发送单元,用于当检测到该交易请求时,分别向所述任意的参与方i和所述中心方发送用户特征获取请求;
接收单元,用于从所述中心方接收第一用户特征,以及从所述任意的参与方i接收第二用户特征;
确定单元,用于根据所述第一用户特征、所述第二用户特征以及业务预测模型,确定总预测结果;
所述确定单元,还用于根据所述总预测结果,确定是否向所述用户发放权益。
第十方面,提供了一种计算机存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一至五方面中任一方面的方法。
第十一方面,提供了一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一至五方面中任一方面的方法。
本说明书一个或多个实施例提供的多方协同更新模型的方法、装置及系统,会执行两次参数更新,其中,一次是个性化参数的更新,一次是通用参数的更新,且个性化参数的更新是基于通用参数进行的,这里的通用参数可以看作是全局信息。此外,个性化参数的更新还用到了各参与方各自的第一梯度信息,而各参与方各自的第一梯度信息反映的是局部信息,从而本申请的方案可以同时基于全局信息和局部信息进行建模,由此可以兼顾建模效率和模型准确率。
附图说明
为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本说明书提供的元学习方法示意图;
图2为本说明书提供的一个实施例的实施场景示意图;
图3为本说明书提供的另一个实施例的实施场景示意图;
图4为本说明书一个实施例提供的多方协同更新模型的方法交互图;
图5为本说明书另一个实施例提供的多方协同更新模型的方法交互图;
图6为本说明书实施例提供的权益发放方法流程图;
图7为本说明书一个实施例提供的多方协同更新模型的系统示意图;
图8为本说明书另一个实施例提供的多方协同更新模型的系统示意图;
图9为本说明书一个实施例提供的多方协同更新模型的装置示意图;
图10为本说明书实施例提供的权益发放装置示意图。
具体实施方式
下面结合附图,对本说明书提供的方案进行描述。
为了克服现有的协同建模方式存在的建模效率低或者准确率低的问题,本申请的方案将在多方协同建模的过程中引入元学习。
图1为本说明书提供的元学习方法示意图。图1中,θ可以看作是一种全局信息,在多方协同建模的场景中,θ也可以看作是多方共用使用的通用参数。
Figure BDA0002991703580000071
Figure BDA0002991703580000072
分别为各方各自的梯度,也可以看作是各方各自的局部信息,θ1、θ2和θ3分别为各方分别在各自的梯度下降方向上更新的个性化参数。从图1可以看出,θ1、θ2和θ3是基于全局信息和各自的局部信息而得到。也就是说,本申请的方案通过引入元学习,可以实现同时基于全局信息和局部信息建模,从而本方案可以兼顾建模效率和模型准确率。
图2为本说明书提供的一个实施例的实施场景示意图。图2中,多方协同更新模型的场景涉及协作方和n个参与方。其中,协作方和各参与方可以实现为任何具有计算、处理能力的设备、平台、服务器或设备集群。在一个具体例子中,上述各参与方例如可以为支付平台的各外部商户。需要说明,协作方和各参与方要在保护数据隐私的情况下,协同更新对应于多个参与方的多个业务预测模型。其中的业务预测模型是用于执行针对业务对象的预测任务的机器学习模型。这里的业务对象例如可以为用户,相应的,业务预测模型可以为用于评估用户支付意愿高低的模型。
图2中,协作方维护有业务预测模型的一组通用参数,可表示为:(W10、W20、…)。任意的参与方i维护有上述一组通用参数和业务预测模型的第i组个性化参数。比如,第i组个性化参数可以表示为:(W11、W21、…)或者(W12、W22、…)。此外,各参与方分别拥有各自的样本,且各样本具有各自的样本标签。
需要说明,图2示出的多方协同更新模型的方法可以包括多轮迭代,其中任意一轮迭代包括:每个参与方i根据其拥有的第一样本以及维护的通用参数,确定对应的第一梯度信息。根据维护的通用参数和确定的第一梯度信息,更新对应的第i组个性化参数。根据其拥有的第二样本以及更新后的第i组个性化参数,确定对应的第二梯度信息。向协作方发送各自确定的第二梯度信息。协作方汇总n个参与方提供的n份第二梯度信息,根据汇总结果,更新通用参数用于下一轮迭代。在多轮迭代后,每个参与方i将其得到的第i组个性化参数,作为其与其它参与方协同更新的业务预测模型。
图3为本说明书提供的另一个实施例的实施场景示意图。图3中,多方协同更新模型的场景涉及协作方、中心方和n个参与方,其中,n为正整数。其中,协作方、中心方和各参与方可以实现为任何具有计算、处理能力的设备、平台、服务器或设备集群。在一个具体例子中,上述中心方例如可以为支付平台,各参与方可以分别为支付平台的各外部商户。需要说明,协作方、中心方和各参与方要在保护数据隐私的情况下,协同更新对应于多个参与方的多个业务预测模型。其中的业务预测模型是用于执行针对业务对象的预测任务的机器学习模型。这里的业务对象例如可以为用户等,相应的,业务预测模型可以为用于评估用户支付意愿高低的模型等。
图3中,协作方维护有业务预测模型的一组通用参数:(W10、W20、W30、W40…)和对应于n个参与方的n组个性化参数:(W1、W2、W31、W41…),(W1、W2、W32、W42…)…。中心方与任意的参与方i分别维护有通用参数的不同参数部分。其中,中心方维护有通用参数的第一通用参数部分,比如,(W10、W20)。任意的参与方i维护有通用参数的第二通用参数部分,比如,(W30、W40…)。此外,中心方还可以维护有n组个性化参数共同的第一个性化参数部分,比如(W1、W2)。其中,该第一个性化参数部分与上述第一通用参数部分相对应,即作用于相同的特征部分。各参与方还可以分别维护有n组个性化参数不同的第二个性化参数部分。其中,各第二个性化参数部分均与上述第二通用参数部分相对应。比如,任意的参与方i还可以维护有第二个性化参数部分(W31、W41、…)或者(W32、W42、…)等。最后,图3中,中心方与任意的参与方i具有第i共有样本集,并分别具有其中各共有样本的不同特征部分。
具体地,每个参与方i和中心方,根据第i共有样本集中的第一样本和通用参数,共同向协作方提供第一梯度信息。对于每个参与方i,协作方根据通用参数和对应的第一梯度信息,更新对应于参与方i的第i组个性化参数,并将其发送给参与方i和中心方。每个参与方i和中心方,根据第i共有样本集中的第二样本和更新后的第i组个性化参数,共同向协作方提供第二梯度信息。协作方汇总n个参与方提供的n份第二梯度信息,根据汇总结果,更新通用参数用于下一轮迭代。在多轮迭代后,每个参与方i将其与中心方共同得到的第i组个性化参数,作为其与中心方协同更新的业务预测模型。
以下先以图2示出的实施场景为例,对本说明书提供的多方协同更新模型的方法进行说明。
图4为本说明书一个实施例提供的多方协同更新模型的方法交互图。如图4所示,所述方法可以包括:
步骤402,每个参与方i根据其拥有的第一样本以及维护的通用参数,确定对应的第一梯度信息。
其中,i为不超过n的正整数。
这里的参与方例如可以为支付平台的外部商户,其拥有的第一样本与业务对象相对应,该业务对象例如可以为用户等。这里的第一样本所包含的样本特征可以包括以下中的至少一项:充值行为、浏览行为以及用户等级等。此外,上述第一样本具有样本标签,且该样本标签可以用于指示对应业务对象支付意愿的高低。
需要说明,各参与方各自拥有的第一样本具有相同的特征部分,比如,均为充值行为和浏览行为。在一个示例中,各参与方通过特征交叉,确定各参与方共同的特征部分。在另一个示例中,各参与方各自的第一样本可以选取自同一时间段,以保证样本可对齐。
步骤404,每个参与方i根据维护的通用参数和确定的第一梯度信息,更新对应的第i组个性化参数。
具体地,每个参与方i可以将其维护的通用参数减去对应的第一梯度信息与第一步长之间的乘积,得到对应的第一更新参数。之后,将第i组个性化参数更新为第一更新参数。
步骤406,每个参与方i根据其拥有的第二样本以及更新后的第i组个性化参数,确定对应的第二梯度信息。
这里的第二样本的定义可以参照第一样本的定义,在此不复赘述。
步骤408,每个参与方i向协作方发送各自确定的第二梯度信息。
这里,每个参与方i可以利用预先从协作方获取的第一公钥,对各自的第二梯度信息进行加密,之后向协作方发送经过加密的第二梯度信息。之后,协作方可以利用对应于第一公钥的第一私钥,对经过加密的第二梯度信息进行解密。
步骤410,协作方汇总n个参与方提供的n份第二梯度信息,根据汇总结果,更新通用参数用于下一轮迭代。
在一种实现方式中,协作方可以对n份第二梯度信息进行求平均,将得到的平均值作为上述汇总结果。
当然,在其它实现方式中,也可以通过对n份第二梯度信息进行求和得到汇总结果,本说明书对此不作限定。
在一个示例中,上述协作方根据汇总结果更新通用参数的步骤具体可以包括:将通用参数减去汇总结果与第二步长的乘积,得到通用更新参数。在一个例子中,通用更新参数可以表示为:(W10’、W20’、…)。
协作方在获取到通用更新参数之后,可以向各参与方分别发送该通用更新参数,从而各参与方可以将各自维护的通用参数,更新为接收的通用更新参数。
至此,就完成了业务预测模型的一轮迭代更新。应理解,通过重复执行上述步骤402-步骤410,可以实现对业务预测模型的多轮迭代更新。且每次迭代所使用的模型参数(包括通用参数和个性化参数)是上一轮更新后的参数。该迭代的终止条件可以为迭代次数达到预定轮次或者模型参数收敛。
需要说明,在多轮迭代后,每个参与方i可以将其得到的第i组个性化参数,作为其与其它参与方协同更新的业务预测模型。从而本说明书实施例提供的方案,可以更新得到n个不同的业务预测模型,且该n个不同的业务预测模型分别与n个参与方相对应。
综上,本说明书实施例提供的多方协同更新模型的方法,通过在联合学习中引入元学习,可以打破数据孤岛,使得全量的外部商户的数据可以同时用于模型训练,而不再需要针对每个外部商户单独训练模型,这样既可以提升模型训练效率,又因为运用了非本商户的数据,而提升了模型的准确率和泛化效果。此外,本说明书提供的方案中,当有新的外部商户需要加入时,可以直接运用已有的训练数据,而不需要费时费力积累大量新数据,从而可以提升工程效率。
以下再以图3示出的实施场景为例,对本说明书提供的多方协同更新模型的方法进行说明。
图5为本说明书另一个实施例提供的多方协同更新模型的方法交互图。
如图5所示,所述方法可以包括:
步骤502,每个参与方i和中心方,根据第i共有样本集中的第一样本和通用参数,共同向协作方提供第一梯度信息。
以下先对上述共有样本集的确定方法进行说明。
以任意的参与方i为例来说,其与中心方确定共有样本集的方法可以包括:任意的参与方i和中心方向协作方提供各自具有的初始样本集中各样本对应的加密业务对象。协作方对接收的加密业务对象进行解密,并基于解密结果,确定任意的参与方i和中心方互相重叠的共同业务对象,并将其发送给任意的参与方i和中心方。任意的参与方i和中心方根据共同业务对象,从各自具有的初始样本集中选取各共有样本,以形成第i共有样本集。
在本说明书中,各样本对应的业务对象例如可以为用户、账户或者账号等。
类似地,其它参与方也可以与中心方确定对应的共有样本集。
回到步骤502中,中心方可以例如可以为支付平台,参与方例如可以为支付平台的外部商户。在本说明书提供的实施例中,中心方与任意的参与方i具有第i共有样本集,并分别具有其中各共有样本的不同特征部分。比如,中心方具有的各共有样本的特征部分可以包括以下中的至少一项:用户基础信息和线上线下交易信息。其中,用户基础信息可以包括但不限于性别、年龄以及所在城市等。线上线下交易信息可以包括但不限于交易频次和交易成功率等。每个参与方具有的各共有样本的特征部分可以包括以下中的至少一项:充值行为、浏览行为以及用户等级。
此外,每个参与方i还可以具有各共有样本的样本标签,该样本标签例如可以用于指示对应业务对象支付意愿的高低。
需要说明,各参与方各自拥有的样本具有相同的特征部分,比如,均为充值行为和浏览行为。在一个示例中,各参与方通过特征交叉,确定各参与方共同的特征部分。在另一个示例中,各参与方各自的样本可以选取自同一时间段,以保证样本可对齐。
步骤502中,每个参与方i和中心方共同向协作方提供第一梯度信息可以包括:步骤a,中心方根据其具有的第一样本的第一特征部分,以及维护的通用参数的第一通用参数部分,向协作方发送第一计算结果。步骤b,每个参与方i根据其具有的第一样本的第二特征部分和样本标签,以及维护的通用参数的第二通用参数部分,向协作方发送第二计算结果。步骤c,协作方根据每个参与方i的第二计算结果以及第一计算结果,确定每个参与方i和中心方共同提供的第一梯度信息。
关于步骤a,在一个例子中,中心方可以根据如下公式确定第一计算结果:
μA=WAXA (公式1)
其中,μA为中心方确定的第一计算结果,WA为第一通用参数部分,在图3示出的实施场景中,其例如可以为(W10、W20)。XA为第一样本的第一特征部分。
需要说明,为了确保中心方的隐私数据的安全性,中心方可以使用预先从协作方接收的公钥对第一计算结果进行加密。之后,将加密的第一计算结果发送给协作方。
关于步骤b,每个参与方i可以先根据其具有的第一样本的第二特征部分和第二通用参数部分,确定中间结果。之后,根据确定的中间结果与样本标签的差值,确定第二计算结果。
在一个例子中,任意的参与方i可以根据如下公式确定第二计算结果:
μB=WBXB-y (公式2)
其中,μB为任意的参与方i确定的第二计算结果,WB为该任意的参与方i维护的第二通用参数部分,在图3示出的实施场景中,其例如可以为(W30、W40…)。XB为第一样本的第二特征部分,y为第一样本的样本标签。
需要说明,为了确保中心方的隐私数据的安全性,每个参与方i可以使用预先从协作方接收的公钥对对应的第二计算结果进行加密。之后,将加密的第二计算结果发送给协作方。
还需要说明,在实际应用中,也可以先执行步骤b,再执行步骤a,或者同时执行步骤a和步骤b,本说明书对此不作限定。
关于步骤c,在本说明书实施例中,每个参与方i和中心方共同提供的第一梯度信息可以包括:对应于中心方的第一梯度部分和对应于每个参与方i的第二梯度部分。
在第一梯度信息包括第一梯度部分和第二梯度部分时,且以任意的参与方i为例来说,协作方确定任意的参与方i与中心方共同提供的第一梯度信息可以包括:协作方汇总任意的参与方i的第二计算结果以及第一计算结果,得到任意的参与方i对应的综合结果,并将该综合结果分别发送给任意的参与方i和中心方。中心方和任意的参与方i根据综合结果,分别计算对应的第一梯度部分和第二梯度部分,并将其发送给协作方,至此得到任意的参与方i和中心方共同提供的第一梯度信息。
需要说明,在上述第一计算结果或第二计算结果为密文时,协作方可以直接在密文状态下,对第一计算结果和第二计算结果进行汇总,比如,直接对第一计算结果和第二计算结果进行求和。在此说明,协作方可以直接在密文状态下进行运算的前提条件是:中心方和每个参与方i使用的加密算法为同态加密算法。或者,也可以先对经过加密的第一计算结果或第二计算结果进行解密,之后在明文状态下进行汇总。
应理解,若协作方直接在密文状态下对第一计算结果和第二计算结果进行汇总,那么汇总结果也为密文。从而协作方直接可以将该密文的汇总结果发送给任意的参与方i和中心方。而如果协作方在明文状态下对第一计算结果和第二计算结果进行汇总,那么汇总结果为明文。为了确保隐私数据的安全性,协作方可以先对明文的汇总结果进行加密,之后将密文的汇总结果分别发送给任意的参与方i和中心方。
在一个例子中,中心方在接收到密文的汇总结果之后,可以根据如下公式确定密文的第一梯度部分。
Figure BDA0002991703580000141
其中,
Figure BDA0002991703580000142
为密文的第一梯度部分,[[d]]为密文的汇总结果,WA以及XA各自的含义可以参见上文所述。L1为基于汇总结果计算的第一预测损失,后续进行解释说明。
每个参与方i在接收到密文的汇总结果之后,可以根据如下公式确定密文的第二梯度部分。
Figure BDA0002991703580000143
其中,
Figure BDA0002991703580000144
为密文的第二梯度部分,[[d]]为密文的汇总结果,WB以及XB各自的含义可以参见上文所述。
以下对上述L1进行解释说明。
与其对应的计算公式可以表示如下:
Figure BDA0002991703580000151
其中,这里的μA、μB、WA以及WB各自的含义可以参见上文所述。
应理解,当令[[d]]=[[μA]]+[[μB]],且基于[[d]]计算上述L1时,得到的L1是密文的第一预测损失,从而中心方和每个参与方i基于密文的第一预测损失,计算各自的密文的梯度部分的计算公式参见上述公式3和公式4。
需要说明,协作方在接收到上述密文的第一梯度部分和密文的第二梯度部分之后,可以对其进行解密,由此就得到了任意的参与方i和中心方共同提供的第一梯度信息。类似地,还可以得到其它参与方和中心方共同提供的第一梯度信息。
步骤504,对于每个参与方i,协作方根据通用参数和对应的第一梯度信息,更新对应于参与方i的第i组个性化参数,并将其发送给参与方i和中心方。
上述更新的步骤具体可以包括:
步骤x,协作方将第一通用参数部分减去汇总梯度与第一步长的乘积,得到第一更新参数部分。其中,这里的汇总梯度,是通过对中心方提供的各第一梯度部分进行汇总得到。将第i组个性化参数的第一个性化参数部分,更新为第一更新参数部分。
在一个例子中,可以根据如下公式获取第一更新参数部分:
Figure BDA0002991703580000152
其中,WA’为第一更新参数部分,α1为第一步长,L1和L2分别为对应于各参与方的各第一预测损失,
Figure BDA0002991703580000153
Figure BDA0002991703580000154
分别为中心方计算的各第一梯度部分,WA的定义可参见上文所述。
需要说明,由于n组个性化参数的第一个性化参数部分相同,从而可以将n组个性化参数中的各第一个性化参数部分均更新为上述第一更新参数部分。
步骤y,协作方将第二通用参数部分减去参与方i对应的第二梯度部分与第二步长的乘积,得到对应于参与方i的第二更新参数部分。将第i组个性化参数的第二个性化参数部分,更新为对应于参数方i的第二更新参数部分。
在一个例子中,可以根据如下公式获取第二更新参数部分:
Figure BDA0002991703580000161
其中,WB’为第二更新参数部分,α2为第二步长,L1和WB的定义可参见上文所述。在一个例子中,这里的第二步长与公式6中的第一步长相等。
应注意,这里只是更新第i组个性化参数的第二个性化参数部分,其它组个性化参数的第二个性化参数部分则基于其它参与方i对应的第二梯度部分与第二步长的乘积进行更新。
需要说明,协作方将更新的第i组个性化参数发送给参与方i和中心方,可以是指协作方将其中的第一更新参数部分发送给中心方,将其中的第二更新参数部分发送给参与方i。
步骤506,每个参与方i和中心方,根据第i共有样本集中的第二样本和更新后的第i组个性化参数,共同向协作方提供第二梯度信息。
中心方在接收到协作方发送的第一更新参数部分之后,可以将其维护的第一个性化参数部分更新为第一更新参数部分。同样的,每个参与方i在接收到各自的第二更新参数部分之后,可以将各自维护的第二个性化参数部分更新为各自接收的第二更新参数部分。
步骤506中,每个参与方i和中心方共同向协作方提供第二梯度信息,与前述每个参与方i和中心方共同向协作方提供第一梯度信息相类似。即中心方先向协作方提供根据第二样本的第一特征部分,以及第一更新参数部分,确定的第三计算结果。之后接收协作方根据第三计算结果和下述第四计算结果,再次确定的密文的汇总结果,并根据再次确定的密文的汇总结果确定第二梯度信息的第一梯度部分,并将其发送给协作方。这里第二梯度信息的第一梯度部分的计算公式可以参见公式3,比如可以将公式3中的WA替换为第一更新参数部分,本说明书在此不复赘述。
同样的,每个参与方i向协作方先根据第二样本的第二特征部分、样本标签以及第二更新参数部分,确定第四计算结果。之后接收上述协作方再次确定的密文的汇总结果,并根据再次确定的密文的汇总结果,确定第二梯度信息的第二梯度部分,并将其发送给协作方。这里第二梯度信息的第二梯度部分的计算公式可以参见公式4,比如可以将公式4中的WB替换为第二更新参数部分,本说明书在此不复赘述。
步骤508,协作方汇总n个参与方提供的n份第二梯度信息,根据汇总结果,更新通用参数用于下一轮迭代。
比如,协作方可以对n个参与方提供的n份第二梯度信息进行求平均或者求和,将求平均结果或者求和结果作为汇总结果。
此外,上述根据汇总结果,更新通用参数具体可以包括:协作方将其维护的通用参数中的第一通用参数部分减去汇总结果与第三步长的乘积,从而得到第三更新参数部分,并将其维护的第一通用参数部分更新为第三更新参数部分。以及协作方将其维护的通用参数中的第二通用参数部分减去汇总结果与第三步长的乘积,从而得到第四更新参数部分,并将其维护的第二通用参数部分更新为第四更新参数部分。
最后,协作方将第三更新参数部分发送给中心方,将第四更新参数部分发送给每个参与方i。从而中心方将其维护的第一通用参数部分更新为第三更新参数部分,各参与方将各自维护的第二通用参数部分均更新为第四更新参数部分。
在一个例子中,更新后的通用参数可以表示为:(W10’、W20’、W30’、W40’…)。其中,(W10’、W20’)为第三更新参数部分,(W30’、W40’…)为第四更新参数部分。
至此,就完成了业务预测模型的一轮迭代更新。应理解,通过重复执行上述步骤502-步骤508,可以实现对业务预测模型的多轮迭代更新。且每次迭代所使用的模型参数(包括通用参数和个性化参数)是上一轮更新后的参数。该迭代的终止条件可以为迭代次数达到预定轮次或者模型参数收敛。
需要说明,在多轮迭代后,每个参与方i将其与中心方共同得到的第i组个性化参数,作为其与中心方协同更新的业务预测模型。从而本说明书实施例提供的方案,可以更新得到n个不同的业务预测模型,且该n个不同的业务预测模型分别与n个参与方相对应。
需要说明,为了实现各方数据的隐私保护,在本说明书提供的各实施例中,协作方与中心方和各参与方之间交互的数据,均可以为加密后的数据。其中的加密算法可以为RSA算法等。
综上,本说明书实施例提供的多方协同更新模型的方法,同时利用了中心方和各参与方的数据。以中心方为支付平台,各参与方分别为支付平台的各外部商户为例来说,由于支付平台拥有丰富的用户信息和支付数据,外部上述拥有用户的行为数据,从而支付平台和各外部商户协同建模时,可以对用户进行更完善的刻画,进而可以使得模型预测结果更准确。
此外,本说明书实施例提供的方案,通过引入元学习,使得不再需要针对每个参与方单独训练模型,而是可以协同训练。具体地,在引入元学习之后,会执行两次参数更新,其中,一次是个性化参数的更新,一次是通用参数的更新,且个性化参数的更新是基于通用参数进行的,这里的通用参数可以看作是全局信息。此外,个性化参数的更新还用到了中心方和各参与方各自的梯度,而梯度反映的是局部信息,从而本申请的方案可以同时基于全局信息和局部信息进行建模,由此可以兼顾建模效率和模型准确率。
最后,本说明书实施例提供的方案,提出了一种一对多的协同学习(或者称联合学习)方式。
需要说明,在执行完成上述协同更新模型的方法之后,可以将每个参与方i与中心方协同更新的业务预测模型部署到协作方,从而协作方可以基于其针对用户进行权益发放或者展示个性化活动等。以下以针对用户进行权益发放为例进行说明。
图6为本说明书实施例提供的权益发放方法流程图。所述方法的执行主体可以为协作方,如图6所示,所述方法可以包括如下步骤:
步骤602,检测用户通过任意的参与方i发起的交易请求。
该交易请求可以包括以下内容中的至少一项:用户id、交易金额、交易时间、交易网络环境以及交易商品信息等。
步骤604,当检测到该交易请求时,分别向任意的参与方i和中心方发送用户特征获取请求。
这里的用户特征获取请求至少可以包括用户id。
步骤606,从中心方接收第一用户特征,以及从任意的参与方i接收第二用户特征。
这里的第一用户特征可以包括以下中的至少一项:用户基础信息和线上线下交易信息。其中,用户基础信息可以包括但不限于性别、年龄以及所在城市等。线上线下交易信息可以包括但不限于交易频次和交易成功率等。
这里的第二用户特征可以包括以下中的至少一项:充值行为、浏览行为以及用户等级等。
在一个示例中,为了确保用户隐私数据的安全性,中心方可以利用预先从协作方接收的公钥对第一用户特征进行加密,以及向协作方发送加密后的第一用户特征。之后,协作方可以利用对应于公钥的私钥,对加密后的第一用户特征进行解密,从而得到初始的第一用户特征。
同理,任意的参与方i也可以向协作方发送加密后的第二用户特征,其中具体的加密和解密过程可以同上所述,在此不复赘述。
步骤608,根据第一用户特征、第二用户特征以及业务预测模型,确定总预测结果。
具体地,可以根据第一个性化参数部分和第一用户特征,确定第一预测结果,以及根据第二个性化参数部分和第二用户特征,确定第二预测结果。对第一预测结果和第二预测结果进行融合,得到总预测结果。比如,可以对第一预测结果和第二预测结果进行加权求和,从而得到总预测结果。其中,对应于第一预测结果和第二预测结果的权重系数可以是在协同建模过程中训练得到。
在一个例子中,这里的总预测结果例如可以为用户具有高支付意愿或者用户具有低支付意愿。
步骤610,根据总预测结果,确定是否向用户发放权益。
比如,在总预测结果为用户具有低支付意愿时,可以向用户发放权益。而在总预测结果为用户具有高支付意愿时,不向用户发放权益。
在一个具体例子中,协作方可以将总预测结果发送给中心方,由中心方根据总预测结果,确定是否向用户发放权益。
总之,本说明书实施例提供的用户权益发放方法,可以避免针对同一用户发放两份权益的问题,从而可以减少权益的浪费。此外,由于业务预测模型的各组个性化参数是由协作方、中心方和各参与方协同更新得到,且在多方协同更新模型的过程中,引入了元学习的方式,由此可以大大提升总预测结果的准确性。
与上述多方协同更新模型的方法对应地,本说明书一个实施例还提供的一种多方协同更新模型的系统,如图7所示,该系统可以包括:协作方702、中心方704和n个参与方706,其中,协作方702维护有业务预测模型的一组通用参数和对应于n个参与方的n组个性化参数。中心方704与任意的参与方706具有第i共有样本集,并分别具有其中各共有样本的不同特征部分。
每个参与方706和中心方704,用于根据第i共有样本集中的第一样本和通用参数,共同向协作方702提供第一梯度信息。
协作方702,用于对于每个参与方706,根据通用参数和对应的第一梯度信息,更新对应于该参与方706的第i组个性化参数,并将其发送给参与方706和中心方704。
每个参与方706和中心方704,还用于根据第i共有样本集中的第二样本和更新后的第i组个性化参数,共同向协作方702提供第二梯度信息。
协作方702,还用于汇总n个参与方706提供的n份第二梯度信息,根据汇总结果,更新通用参数用于下一轮迭代。
每个参与方706,还用于在多轮迭代后,将其与中心方704共同得到的第i组个性化参数,作为其与中心方704协同更新的业务预测模型。
任意的参与方706和中心方704,还用于向协作方702提供各自具有的初始样本集中各样本对应的加密业务对象。
协作方702,还用于对接收的加密业务对象进行解密,并基于解密结果,确定任意的参与方706和中心方704互相重叠的共同业务对象,并将其发送给任意的参与方706和中心方704。
任意的参与方706和中心方704,还用于根据共同业务对象,从各自具有的初始样本集中选取各共有样本,以形成第i共有样本集。
可选地,中心方704与任意的参与方706分别维护有通用参数的不同参数部分,任意的参与方706还具有各共有样本的样本标签。
中心方704具体用于:根据其具有的第一样本的第一特征部分,以及维护的通用参数的第一通用参数部分,向协作方702发送第一计算结果。
每个参与方706具体用于:根据其具有的第一样本的第二特征部分和样本标签,以及维护的通用参数的第二通用参数部分,向协作方702发送第二计算结果。
协作方702具体用于:根据每个参与方706的第二计算结果以及第一计算结果,确定每个参与方706和中心方704共同提供的第一梯度信息。
可选地,每个参与方706和中心方704共同提供的第一梯度信息包括,对应于中心方704的第一梯度部分和对应于每个参与方706的第二梯度部分。
协作方702具体用于:对于任意的参与方706,汇总对应的第二计算结果以及第一计算结果,得到对应的综合结果,并将综合结果分别发送给任意的参与方706和中心方704。
中心方704和任意的参与方706具体用于:根据综合结果,分别计算对应的第一梯度部分和第二梯度部分,并将其发送给协作方702,以得到任意的参与方706和中心方704共同提供的第一梯度信息。
可选地,上述n组个性化参数具有共同的第一个性化参数部分和各自不同的第二个性化参数部分,且第一和第二个性化参数部分分别对应于第一和第二通用参数部分。
协作方702具体用于:
将第一通用参数部分减去汇总梯度与第一步长的乘积,得到第一更新参数部分。其中,该汇总梯度,是通过对中心方提供的各第一梯度部分进行汇总得到。将第i组个性化参数的第一个性化参数部分,更新为第一更新参数部分。
将第二通用参数部分减去参与方i对应的第二梯度部分与第二步长的乘积,得到对应于参与方i的第二更新参数部分。将第i组个性化参数的第二个性化参数部分,更新为对应于参数方i的第二更新参数部分。
本说明书上述实施例系统的各功能模块的功能,可以通过上述方法实施例的各步骤来实现,因此,本说明书一个实施例提供的系统的具体工作过程,在此不复赘述。
本说明书一个实施例提供的多方协同更新模型的系统,可以兼顾建模效率和模型准确率。
与上述多方协同更新模型的方法对应地,本说明书一个实施例还提供的一种多方协同更新模型的系统,如图8所示,该系统可以包括:协作方802和n个参与方804,其中,协作方802维护有业务预测模型的一组通用参数。任意的参与方804维护有一组通用参数和业务预测模型的第i组个性化参数。
每个参与方804,用于根据其拥有的第一样本以及维护的通用参数,确定对应的第一梯度信息。
每个参与方804,还用于根据维护的通用参数和确定的第一梯度信息,更新对应的第i组个性化参数。
每个参与方804,还用于根据其拥有的第二样本以及更新后的第i组个性化参数,确定对应的第二梯度信息。
每个参与方804,还用于向协作方802发送各自确定的第二梯度信息。
协作方802,用于汇总n个参与方提供的n份第二梯度信息,根据汇总结果,更新通用参数用于下一轮迭代。
在多轮迭代后,每个参与方804将其得到的第i组个性化参数,作为其与其它参与方协同更新的业务预测模型。
本说明书上述实施例系统的各功能模块的功能,可以通过上述方法实施例的各步骤来实现,因此,本说明书一个实施例提供的系统的具体工作过程,在此不复赘述。
本说明书一个实施例提供的多方协同更新模型的系统,可以兼顾建模效率和模型准确率。
与上述多方协同更新模型的方法对应地,本说明书一个实施例还提供的一种多方协同更新模型的装置,多方包括协作方、中心方和n个参与方,其中,协作方维护有业务预测模型的一组通用参数和对应于n个参与方的n组个性化参数。中心方与任意的参与方i具有第i共有样本集,并分别具有其中各共有样本的不同特征部分。该装置设置于协作方,用于执行多轮迭代。
如图9所示,该装置通过其包括的以下单元执行其中任意一轮迭代:
接收单元902,用于接收每个参与方i和中心方,根据第i共有样本集中的第一样本和通用参数,共同提供的第一梯度信息。
更新单元904,用于对于每个参与方i,根据通用参数和对应的第一梯度信息,更新对应于参与方i的第i组个性化参数,并将其发送给参与方i和中心方。
接收单元902,还用于接收每个参与方i和中心方,根据第i共有样本集中的第二样本和更新后的第i组个性化参数,共同提供的第二梯度信息。
汇总单元906,用于汇总n个参与方提供的n份第二梯度信息,根据汇总结果,更新通用参数用于下一轮迭代。
其中,在多轮迭代后,每个参与方i与中心方共同得到的第i组个性化参数,用于作为其与中心方协同更新的业务预测模型。
本说明书上述实施例装置的各功能模块的功能,可以通过上述方法实施例的各步骤来实现,因此,本说明书一个实施例提供的装置的具体工作过程,在此不复赘述。
本说明书一个实施例提供的多方协同更新模型的装置,可以兼顾建模效率和模型准确率。
与上述权益发放方法对应地,本说明书一个实施例还提供的一种权益发放装置,该装置设置于协作方,协作方部署有每个参与方i与中心方根据上述方法实施例的各步骤协同更新的业务预测模型。如图10所示,该装置可以包括:
检测单元1002,用于检测用户通过任意的参与方i发起的交易请求。
发送单元1004,用于当检测到该交易请求时,分别向任意的参与方i和中心方发送用户特征获取请求。
接收单元1006,用于从中心方接收第一用户特征,以及从任意的参与方i接收第二用户特征。
确定单元1008,用于根据第一用户特征、第二用户特征以及业务预测模型,确定总预测结果。
确定单元1008,还用于根据总预测结果,确定是否向用户发放权益。
本说明书上述实施例装置的各功能模块的功能,可以通过上述方法实施例的各步骤来实现,因此,本说明书一个实施例提供的装置的具体工作过程,在此不复赘述。
本说明书一个实施例提供的权益发放装置,可以避免针对同一用户发放两份权益的问题。
根据另一方面的实施例,还提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行结合图4、图5或图6所描述的方法。
根据再一方面的实施例,还提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现结合图4、图5或图6所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
结合本说明书公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、移动硬盘、CD-ROM或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于服务器中。当然,处理器和存储介质也可以作为分立组件存在于服务器中。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
以上所述的具体实施方式,对本说明书的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本说明书的具体实施方式而已,并不用于限定本说明书的保护范围,凡在本说明书的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本说明书的保护范围之内。

Claims (25)

1.一种多方协同更新模型的方法,所述多方包括协作方、中心方和n个参与方,其中,所述协作方维护有业务预测模型的一组通用参数和对应于n个参与方的n组个性化参数;所述中心方与任意的参与方i具有第i共有样本集,并分别具有其中各共有样本的不同特征部分;所述方法包括多轮迭代,其中任意一轮迭代包括:
每个参与方i和所述中心方,根据第i共有样本集中的第一样本和通用参数,共同向所述协作方提供第一梯度信息;
对于每个参与方i,所述协作方根据所述通用参数和对应的第一梯度信息,更新对应于参与方i的第i组个性化参数,并将其发送给参与方i和所述中心方;
每个参与方i和所述中心方,根据第i共有样本集中的第二样本和更新后的第i组个性化参数,共同向所述协作方提供第二梯度信息;
所述协作方汇总所述n个参与方提供的n份第二梯度信息,根据汇总结果,更新所述通用参数用于下一轮迭代;
在所述多轮迭代后,每个参与方i将其与所述中心方共同得到的第i组个性化参数,作为其与所述中心方协同更新的业务预测模型。
2.根据权利要求1所述的方法,在所述共同向所述协作方提供第一梯度信息之前,还包括:
任意的参与方i和所述中心方向所述协作方提供各自具有的初始样本集中各样本对应的加密业务对象;
所述协作方对接收的所述加密业务对象进行解密,并基于解密结果,确定任意的参与方i和所述中心方互相重叠的共同业务对象,并将其发送给任意的参与方i和所述中心方;
任意的参与方i和所述中心方根据所述共同业务对象,从各自具有的初始样本集中选取各共有样本,以形成所述第i共有样本集。
3.根据权利要求2所述的方法,所述业务对象为用户。
4.根据权利要求1所述的方法,其中,所述中心方与任意的参与方i分别维护有所述通用参数的不同参数部分;任意的参与方i还具有各共有样本的样本标签;
所述每个参与方i和所述中心方,根据第i共有样本集中的第一样本和通用参数,共同向所述协作方提供第一梯度信息,包括:
所述中心方根据其具有的第一样本的第一特征部分,以及维护的通用参数的第一通用参数部分,向所述协作方发送第一计算结果;
每个参与方i根据其具有的第一样本的第二特征部分和样本标签,以及维护的通用参数的第二通用参数部分,向所述协作方发送第二计算结果;
所述协作方根据每个参与方i的第二计算结果以及所述第一计算结果,确定每个参与方i和所述中心方共同提供的第一梯度信息。
5.根据权利要求4所述的方法,所述每个参与方i根据其具有的第一样本的第二特征部分和样本标签,以及维护的通用参数的第二通用参数部分,向所述协作方发送第二计算结果,包括:
每个参与方i根据其具有的第一样本的第二特征部分和维护的通用参数的第二通用参数部分,确定中间结果;根据所述中间结果与所述样本标签的差值,向所述协作方发送第二计算结果。
6.根据权利要求4所述的方法,其中,每个参与方i和所述中心方共同提供的第一梯度信息包括,对应于所述中心方的第一梯度部分和对应于每个参与方i的第二梯度部分;
所述协作方根据每个参与方i的第二计算结果以及所述第一计算结果,确定每个参与方i和所述中心方共同提供的第一梯度信息,包括:
对于任意的参与方i,所述协作方汇总对应的第二计算结果以及所述第一计算结果,得到对应的综合结果,并将所述综合结果分别发送给任意的参与方i和所述中心方;
所述中心方和任意的参与方i根据所述综合结果,分别计算对应的第一梯度部分和第二梯度部分,并将其发送给所述协作方,以得到任意的参与方i和所述中心方共同提供的第一梯度信息。
7.根据权利要求6所述的方法,所述n组个性化参数具有共同的第一个性化参数部分和各自不同的第二个性化参数部分,且所述第一和第二个性化参数部分分别对应于所述第一和第二通用参数部分;
所述协作方根据所述通用参数和对应的第一梯度信息,更新对应于参与方i的第i组个性化参数,包括:
所述协作方将第一通用参数部分减去汇总梯度与第一步长的乘积,得到第一更新参数部分;其中,所述汇总梯度,是通过对所述中心方提供的各第一梯度部分进行汇总得到;将第i组个性化参数的第一个性化参数部分,更新为所述第一更新参数部分;
所述协作方将第二通用参数部分减去参与方i对应的第二梯度部分与第二步长的乘积,得到对应于参与方i的第二更新参数部分;将第i组个性化参数的第二个性化参数部分,更新为对应于参数方i的第二更新参数部分。
8.根据权利要求1所述的方法,所述协作方汇总所述n个参与方提供的n份第二梯度信息,包括:
所述协作方对所述n个参与方提供的n份第二梯度信息进行求平均或者求和,将求平均结果或者求和结果作为所述汇总结果。
9.根据权利要求1所述的方法,所述中心方具有的各共有样本的特征部分包括以下中的至少一项:用户基础信息和线上线下交易信息;其中,所述线上线下交易信息包括交易频次和交易成功率;
任意的参与方i具有的各共有样本的特征部分包括以下中的至少一项:充值行为、浏览行为以及用户等级。
10.根据权利要求1所述的方法,所述各共有样本各自具有样本标签,所述样本标签用于指示用户支付意愿的高低。
11.一种多方协同更新模型的方法,所述多方包括协作方、中心方和n个参与方,其中,所述协作方维护有业务预测模型的一组通用参数和对应于n个参与方的n组个性化参数;所述中心方与任意的参与方i具有第i共有样本集,并分别具有其中各共有样本的不同特征部分;所述方法通过所述协作方执行,包括多轮迭代,其中任意一轮迭代包括:
接收每个参与方i和所述中心方,根据第i共有样本集中的第一样本和通用参数,共同提供的第一梯度信息;
对于每个参与方i,根据所述通用参数和对应的第一梯度信息,更新对应于参与方i的第i组个性化参数,并将其发送给参与方i和所述中心方;
接收每个参与方i和所述中心方,根据第i共有样本集中的第二样本和更新后的第i组个性化参数,共同提供的第二梯度信息;
汇总所述n个参与方提供的n份第二梯度信息,根据汇总结果,更新所述通用参数用于下一轮迭代;
其中,在所述多轮迭代后,每个参与方i与所述中心方共同得到的第i组个性化参数,用于作为其与所述中心方协同更新的业务预测模型。
12.一种多方协同更新模型的方法,所述多方包括协作方和n个参与方,其中,所述协作方维护有业务预测模型的一组通用参数;任意的参与方i维护有所述一组通用参数和所述业务预测模型的第i组个性化参数;所述方法包括多轮迭代,其中任意一轮迭代包括:
每个参与方i根据其拥有的第一样本以及维护的通用参数,确定对应的第一梯度信息;
每个参与方i根据维护的通用参数和确定的第一梯度信息,更新对应的第i组个性化参数;
每个参与方i根据其拥有的第二样本以及更新后的第i组个性化参数,确定对应的第二梯度信息;
每个参与方i向所述协作方发送各自确定的第二梯度信息;
所述协作方汇总所述n个参与方提供的n份第二梯度信息,根据汇总结果,更新所述通用参数用于下一轮迭代;
在所述多轮迭代后,每个参与方i将其得到的第i组个性化参数,作为其与其它参与方协同更新的业务预测模型。
13.一种多方协同更新模型的方法,所述多方包括协作方和n个参与方,其中,所述协作方维护有业务预测模型的一组通用参数;任意的参与方i维护有所述一组通用参数和所述业务预测模型的第i组个性化参数;所述方法通过任意的参与方i执行;所述方法包括多轮迭代,其中任意一轮迭代包括:
根据拥有的第一样本以及维护的通用参数,确定对应的第一梯度信息;
根据维护的通用参数和确定的第一梯度信息,更新对应的第i组个性化参数;
根据其拥有的第二样本以及更新后的第i组个性化参数,确定对应的第二梯度信息;
向所述协作方发送确定的第二梯度信息,以使所述协作方汇总所述第二梯度信息和从其它参与方接收的各梯度信息,并根据汇总结果,更新所述通用参数用于下一轮迭代;
在所述多轮迭代后,将其得到的第i组个性化参数,确定为任意的参与方i与其它参与方协同更新的业务预测模型。
14.一种权益发放方法,通过协作方执行;所述协作方部署有每个参与方i与中心方根据权利要求1所述的方法协同更新的业务预测模型;所述方法包括:
检测用户通过任意的参与方i发起的交易请求;
当检测到该交易请求时,分别向所述任意的参与方i和所述中心方发送用户特征获取请求;
从所述中心方接收第一用户特征,以及从所述任意的参与方i接收第二用户特征;
根据所述第一用户特征、所述第二用户特征以及业务预测模型,确定总预测结果;
根据所述总预测结果,确定是否向所述用户发放权益。
15.根据权利要求14所述的方法,所述业务预测模型的模型参数包括对应于中心方的第一个性化参数部分和对应于参与方i的第二个性化参数部分;
所述根据所述第一用户特征、所述第二用户特征以及业务预测模型,确定总预测结果,包括:
根据所述第一个性化参数部分和所述第一用户特征,确定第一预测结果;以及根据所述第二个性化参数部分和所述第二用户特征,确定第二预测结果;
对所述第一预测结果和所述第二预测结果进行融合,得到所述总预测结果。
16.一种多方协同更新模型的系统,包括协作方、中心方和n个参与方,其中,所述协作方维护有业务预测模型的一组通用参数和对应于n个参与方的n组个性化参数;所述中心方与任意的参与方i具有第i共有样本集,并分别具有其中各共有样本的不同特征部分;
每个参与方i和所述中心方,用于根据第i共有样本集中的第一样本和通用参数,共同向所述协作方提供第一梯度信息;
所述协作方,用于对于每个参与方i,根据所述通用参数和对应的第一梯度信息,更新对应于参与方i的第i组个性化参数,并将其发送给参与方i和所述中心方;
每个参与方i和所述中心方,还用于根据第i共有样本集中的第二样本和更新后的第i组个性化参数,共同向所述协作方提供第二梯度信息;
所述协作方,还用于汇总所述n个参与方提供的n份第二梯度信息,根据汇总结果,更新所述通用参数用于下一轮迭代;
每个参与方i,还用于在多轮迭代后,将其与所述中心方共同得到的第i组个性化参数,作为其与所述中心方协同更新的业务预测模型。
17.根据权利要求16所述的系统,
任意的参与方i和所述中心方,还用于向所述协作方提供各自具有的初始样本集中各样本对应的加密业务对象;
所述协作方,还用于对接收的所述加密业务对象进行解密,并基于解密结果,确定任意的参与方i和所述中心方互相重叠的共同业务对象,并将其发送给任意的参与方i和所述中心方;
任意的参与方i和所述中心方,还用于根据所述共同业务对象,从各自具有的初始样本集中选取各共有样本,以形成所述第i共有样本集。
18.根据权利要求16所述的系统,其中,所述中心方与任意的参与方i分别维护有所述通用参数的不同参数部分;任意的参与方i还具有各共有样本的样本标签;
所述中心方具体用于:根据其具有的第一样本的第一特征部分,以及维护的通用参数的第一通用参数部分,向所述协作方发送第一计算结果;
每个参与方i具体用于:根据其具有的第一样本的第二特征部分和样本标签,以及维护的通用参数的第二通用参数部分,向所述协作方发送第二计算结果;
所述协作方具体用于:根据每个参与方i的第二计算结果以及所述第一计算结果,确定每个参与方i和所述中心方共同提供的第一梯度信息。
19.根据权利要求18所述的系统,其中,每个参与方i和所述中心方共同提供的第一梯度信息包括,对应于所述中心方的第一梯度部分和对应于每个参与方i的第二梯度部分;
所述协作方具体用于:对于任意的参与方i,汇总对应的第二计算结果以及所述第一计算结果,得到对应的综合结果,并将所述综合结果分别发送给任意的参与方i和所述中心方;
所述中心方和任意的参与方i具体用于:根据所述综合结果,分别计算对应的第一梯度部分和第二梯度部分,并将其发送给所述协作方,以得到任意的参与方i和所述中心方共同提供的第一梯度信息。
20.根据权利要求19所述的系统,所述n组个性化参数具有共同的第一个性化参数部分和各自不同的第二个性化参数部分,且所述第一和第二个性化参数部分分别对应于所述第一和第二通用参数部分;
所述协作方具体用于:
将第一通用参数部分减去汇总梯度与第一步长的乘积,得到第一更新参数部分;其中,所述汇总梯度,是通过对所述中心方提供的各第一梯度部分进行汇总得到;将第i组个性化参数的第一个性化参数部分,更新为所述第一更新参数部分;
将第二通用参数部分减去参与方i对应的第二梯度部分与第二步长的乘积,得到对应于参与方i的第二更新参数部分;将第i组个性化参数的第二个性化参数部分,更新为对应于参数方i的第二更新参数部分。
21.一种多方协同更新模型的装置,所述多方包括协作方、中心方和n个参与方,其中,所述协作方维护有业务预测模型的一组通用参数和对应于n个参与方的n组个性化参数;所述中心方与任意的参与方i具有第i共有样本集,并分别具有其中各共有样本的不同特征部分;所述装置设置于所述协作方,用于执行多轮迭代,所述装置通过其包括的以下单元执行其中任意一轮迭代:
接收单元,用于接收每个参与方i和所述中心方,根据第i共有样本集中的第一样本和通用参数,共同提供的第一梯度信息;
更新单元,用于对于每个参与方i,根据所述通用参数和对应的第一梯度信息,更新对应于参与方i的第i组个性化参数,并将其发送给参与方i和所述中心方;
所述接收单元,还用于接收每个参与方i和所述中心方,根据第i共有样本集中的第二样本和更新后的第i组个性化参数,共同提供的第二梯度信息;
汇总单元,用于汇总所述n个参与方提供的n份第二梯度信息,根据汇总结果,更新所述通用参数用于下一轮迭代;
其中,在所述多轮迭代后,每个参与方i与所述中心方共同得到的第i组个性化参数,用于作为其与所述中心方协同更新的业务预测模型。
22.一种多方协同更新模型的系统,包括协作方和n个参与方,其中,所述协作方维护有业务预测模型的一组通用参数;任意的参与方i维护有所述一组通用参数和所述业务预测模型的第i组个性化参数;
每个参与方i,用于根据其拥有的第一样本以及维护的通用参数,确定对应的第一梯度信息;
每个参与方i,还用于根据维护的通用参数和确定的第一梯度信息,更新对应的第i组个性化参数;
每个参与方i,还用于根据其拥有的第二样本以及更新后的第i组个性化参数,确定对应的第二梯度信息;
每个参与方i,还用于向所述协作方发送各自确定的第二梯度信息;
所述协作方,用于汇总所述n个参与方提供的n份第二梯度信息,根据汇总结果,更新所述通用参数用于下一轮迭代;
在多轮迭代后,每个参与方i将其得到的第i组个性化参数,作为其与其它参与方协同更新的业务预测模型。
23.一种权益发放装置,设置于协作方;所述协作方部署有每个参与方i与中心方根据权利要求1所述的方法协同更新的业务预测模型;所述装置包括:
检测单元,用于检测用户通过任意的参与方i发起的交易请求;
发送单元,用于当检测到该交易请求时,分别向所述任意的参与方i和所述中心方发送用户特征获取请求;
接收单元,用于从所述中心方接收第一用户特征,以及从所述任意的参与方i接收第二用户特征;
确定单元,用于根据所述第一用户特征、所述第二用户特征以及业务预测模型,确定总预测结果;
所述确定单元,还用于根据所述总预测结果,确定是否向所述用户发放权益。
24.一种计算机可读存储介质,其上存储有计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-15中任一项所述的方法。
25.一种计算设备,包括存储器和处理器,其中,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-15中任一项所述的方法。
CN202110317387.3A 2021-03-25 2021-03-25 多方协同更新模型的方法、装置及系统 Active CN113095505B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110317387.3A CN113095505B (zh) 2021-03-25 2021-03-25 多方协同更新模型的方法、装置及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110317387.3A CN113095505B (zh) 2021-03-25 2021-03-25 多方协同更新模型的方法、装置及系统

Publications (2)

Publication Number Publication Date
CN113095505A CN113095505A (zh) 2021-07-09
CN113095505B true CN113095505B (zh) 2022-12-06

Family

ID=76669854

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110317387.3A Active CN113095505B (zh) 2021-03-25 2021-03-25 多方协同更新模型的方法、装置及系统

Country Status (1)

Country Link
CN (1) CN113095505B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115081642B (zh) * 2022-07-19 2022-11-15 浙江大学 一种多方协同更新业务预测模型的方法及系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB201610883D0 (en) * 2016-06-22 2016-08-03 Microsoft Technology Licensing Llc Privacy-preserving machine learning
CN110990871B (zh) * 2019-11-29 2023-04-07 腾讯云计算(北京)有限责任公司 基于人工智能的机器学习模型训练方法、预测方法及装置
CN111325417B (zh) * 2020-05-15 2020-08-25 支付宝(杭州)信息技术有限公司 实现隐私保护的多方协同更新业务预测模型的方法及装置
CN111784001B (zh) * 2020-09-07 2020-12-25 腾讯科技(深圳)有限公司 一种模型训练方法、设备及计算机可读存储介质
CN112288100B (zh) * 2020-12-29 2021-08-03 支付宝(杭州)信息技术有限公司 一种基于联邦学习进行模型参数更新的方法、系统及装置

Also Published As

Publication number Publication date
CN113095505A (zh) 2021-07-09

Similar Documents

Publication Publication Date Title
Liu et al. Fedcoin: A peer-to-peer payment system for federated learning
Perifanis et al. Federated neural collaborative filtering
CN112733967B (zh) 联邦学习的模型训练方法、装置、设备及存储介质
CN113516256B (zh) 基于秘密共享、同态加密的无第三方联邦学习方法及系统
WO2022247576A1 (zh) 一种数据处理方法、装置、设备及计算机可读存储介质
CN112288094B (zh) 联邦网络表示学习方法及系统
CN112347500B (zh) 分布式系统的机器学习方法、装置、系统、设备及存储介质
CN109903027A (zh) 基于区块链的事件处理方法及装置、电子设备
CN108241979A (zh) 基于区块链的多账本转账方法、电子装置及可读存储介质
CN114401079A (zh) 多方联合信息价值计算方法、相关设备及存储介质
CN113179158B (zh) 一种控制带宽的多方联合数据处理方法及装置
Qi et al. A blockchain-enabled federated learning model for privacy preservation: System design
CN111160998A (zh) 基于区块链的点评数据处理方法、装置及点评系统
CN111738857B (zh) 应用于区块链的隐匿支付证明的生成与验证方法及装置
CN113609781A (zh) 基于联邦学习的汽车生产模具优化方法、系统、设备及介质
CN113095505B (zh) 多方协同更新模型的方法、装置及系统
EP3884609A1 (en) Aggregating encrypted network values
Cheung et al. Fedsgc: Federated simple graph convolution for node classification
Palacios-Garcia et al. Efficient privacy-preserving aggregation for demand side management of residential loads
CN114168988A (zh) 一种联邦学习模型聚合方法及电子装置
WO2021158285A1 (en) Preventing data manipulation using multiple aggregation servers
CN112507372A (zh) 实现隐私保护的多方协同更新模型的方法及装置
CN117094773A (zh) 基于区块链隐私计算的在线迁移学习方法及系统
CN114418769A (zh) 一种区块链交易计费方法、装置及可读存储介质
CN111523892B (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