CN111325352B - 基于纵向联邦学习的模型更新方法、装置、设备及介质 - Google Patents

基于纵向联邦学习的模型更新方法、装置、设备及介质 Download PDF

Info

Publication number
CN111325352B
CN111325352B CN202010105420.1A CN202010105420A CN111325352B CN 111325352 B CN111325352 B CN 111325352B CN 202010105420 A CN202010105420 A CN 202010105420A CN 111325352 B CN111325352 B CN 111325352B
Authority
CN
China
Prior art keywords
service node
user
gradient
loss value
service
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
CN202010105420.1A
Other languages
English (en)
Other versions
CN111325352A (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.)
WeBank Co Ltd
Original Assignee
WeBank 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 WeBank Co Ltd filed Critical WeBank Co Ltd
Priority to CN202010105420.1A priority Critical patent/CN111325352B/zh
Publication of CN111325352A publication Critical patent/CN111325352A/zh
Application granted granted Critical
Publication of CN111325352B publication Critical patent/CN111325352B/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
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • 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/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0255Targeted advertisements based on user history

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Development Economics (AREA)
  • Accounting & Taxation (AREA)
  • Medical Informatics (AREA)
  • Strategic Management (AREA)
  • Finance (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computer Security & Cryptography (AREA)
  • Evolutionary Computation (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Computing Systems (AREA)
  • Game Theory and Decision Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种基于纵向联邦学习的模型更新方法、装置、设备及介质。方法包括:接收到模型更新请求,从联盟链中选择第一业务节点和第二业务节点,从第一业务节点中抽取第一用户标识,从第二业务节点中抽取第二用户标识;若第一用户标识与第二用户标识匹配,则发送匹配结果至第一业务节点和第二业务节点,以使第一业务节点和第二业务节点分别将业务数据中的用户产品评分矩阵进行分解,获得第一用户矩阵和第二用户矩阵;发送数据交换指令至第一业务节点和第二业务节点,以交换第一用户矩阵和第二用户矩阵中的用户隐向量并更新模型。本发明提高模型更新的准确性。

Description

基于纵向联邦学习的模型更新方法、装置、设备及介质
技术领域
本发明涉及金融科技(Fintech)技术领域,尤其涉及基于纵向联邦学习的模型更新方法、装置、设备及介质。
背景技术
近年来,互联网金融科技(Fintech)的飞速发展,越来越多的技术(大数据、分布式、区块链Blockchain、人工智能等)应用在金融领域。
为了保证金融业务更好的推广,金融机构通常会根据用户数据和用户特征等,学习用户的喜好和兴趣,然后将用户感兴趣的产品和信息等推荐给用户;在金融机构推荐系统刚上线或者金融机构推荐系统中上线新的金融产品时,往往面临着数据量不足,用户特征稀疏等问题,由于缺少用户数据,模型无法充分学习到用户喜好,金融机构推荐系统中训练的模型不够准确,会导致推荐效果差。
发明内容
本发明的主要目的在于提出一种基于纵向联邦学习的模型更新方法、装置、设备及介质,旨在当前产品推荐时,由于用户数量较少建立的推荐模型不准确,从而导致是推荐效果差的技术问题。
为实现上述目的,本发明提供一种基于纵向联邦学习的模型更新方法,所述基于纵向联邦学习的模型更新方法包括如下步骤:
从联盟链中选择第一业务节点和第二业务节点,从第一业务节点中抽取第一用户标识,从第二业务节点中抽取第二用户标识;
若所述第一用户标识与所述第二用户标识匹配,则发送匹配结果至第一业务节点和第二业务节点,以使第一业务节点和第二业务节点分别将业务数据中的用户产品评分矩阵进行分解,获得第一用户矩阵和第二用户矩阵;
发送数据交换指令至第一业务节点和第二业务节点,以使第一业务节点和第二业务节点交换所述第一用户矩阵和所述第二用户矩阵中的用户隐向量,获得更新的业务数据;
在检测到第一业务节点与第二业务节点数据交换完成时,发送模型更新请求至第一业务节点和第二业务节点,以使第一业务节点与第二业务节点分别根据各自更新的业务数据进行模型更新,获得第一损失值和第二损失值;
接收第一业务节点发送的第一损失值和第二业务节点发送的第二损失值,处理所述第一损失值和所述第二损失值,获得累积损失值,在所述累积损失值小于预设收敛阈值时,发送模型更新完成提示至第一业务节点和第二业务节点。
在一实施例中,所述接收第一业务节点发送的第一损失值和第二业务节点发送的第二损失值,处理所述第一损失值和所述第二损失值,获得累积损失值,在所述累积损失值小于预设收敛阈值时,发送模型更新完成提示至第一业务节点和第二业务节点的步骤之后,所述方法包括:
在接收评分预测请求时,获取所述评分预测请求对应的场景标识;
在所述业务场景标识为第一场景标识时,将所述评分预测请求发送至第一业务节点,以使所述第一业务节点将第一业务数据输入至更新后的第一模型,获得第一训练结果,将所述第一训练结果中的第一训练评分进行处理,获得第一预测评分;
在所述业务场景标识为第二场景标识时,将所述评分预测请求发送至第二业务节点,以使所述第二业务节点将第二业务数据输入至更新后的第二模型,获得第二训练结果,将所述第二训练结果中的第二训练评分进行处理,获得第二预测评分。
在一实施例中,所述从联盟链中选择第一业务节点和第二业务节点,从第一业务节点中抽取第一用户标识,从第二业务节点中抽取第二用户标识的步骤之后,所述方法还包括:
在接收数据加密指令时,生成加密的公钥和私钥,并将所述公钥发送至第一业务节点和第二业务节点,以使第一业务节点和第二业务节点按照所述公钥进行加密;
接收第一业务节点和/或第二业务节点发送的数据,并按照所述私钥对所述数据进行解密。
在一实施例中,所述在检测到第一业务节点与第二业务节点数据交换完成时,发送模型更新请求至第一业务节点和第二业务节点,以使第一业务节点与第二业务节点分别根据各自更新的业务数据进行模型更新,获得第一损失值和第二损失值的步骤,包括:
在检测到第一业务节点与第二业务节点数据交换完成时,发送模型更新请求至第一业务节点和第二业务节点,以使第一业务节点和第二业务节点根据各自更新的业务数据进行模型初始化,获得第一梯度和第二梯度;
接收第一业务节点发送的第一梯度和第二业务节点发送的第二梯度,处理所述第一梯度和所述第二梯度,获得联合梯度;
将所述联合梯度发送至第一业务节点和第二业务节点,以使所述第一业务节点根据所述第一梯度和所述联合梯度更新初始化后的第一模型,按照更新后的第一模型计算获得第一损失值,以使所述第二业务节点根据所述第二梯度和所述联合梯度更新初始化后的第二模型,按照更新后的第二模型计算获得第二损失值。
在一实施例中,所述接收第一业务节点发送的第一梯度和第二业务节点发送的第二梯度,处理所述第一梯度和所述第二梯度,获得联合梯度的步骤,包括:
接收第一业务节点发送的第一梯度和第二业务节点发送的第二梯度,获取所述第一梯度中的第一用户梯度和第一偏置量梯度,获取所述第二梯度中的第二用户梯度和第二偏置量梯度;
将所述第一用户梯度与所述第二用户梯度计算平均,获得联合用户梯度,将所述第一偏置量梯度与所述第二偏置量梯度计算平均,获得联合偏置量梯度,将所述联合用户梯度和所述联合偏置量梯度作为联合梯度。
在一实施例中,所述接收第一业务节点发送的第一损失值和第二业务节点发送的第二损失值,处理所述第一损失值和所述第二损失值,获得累积损失值,在所述累积损失值小于预设收敛阈值时,发送模型更新完成提示至第一业务节点和第二业务节点的步骤,包括:
接收第一业务节点发送的第一损失值和第二业务节点发送的第二损失值,处理所述第一损失值和所述第二损失值,获得累积损失值,判断所述累积损失值是否小于预设收敛阈值;
在所述累积损失值大于或等于所述预设收敛阈值时,发送迭代训练提示至第一业务节点和第二业务节点,以使第一业务节点和第二业务节点迭代更新模型,直至所述累积损失值小于预设收敛阈值;
在所述累积损失值小于预设收敛阈值时,发送模型更新完成提示至第一业务节点和第二业务节点。
在一实施例中,所述从联盟链中选择第一业务节点和第二业务节点,从第一业务节点中抽取第一用户标识,从第二业务节点中抽取第二用户标识的步骤之后,所述方法包括:
将所述第一用户标识与所述第二用户标识进行比对;
若所述第一用户标识和所述第二用户标识中不存在相同的目标用户标识,则判定所述第一用户标识与所述第二用户标识不匹配;
若所述第一用户标识和所述第二用户标识中存在相同的目标用户标识,则判定所述第一用户标识与所述第二用户标识匹配。
此外,为实现上述目的,本发明还提供一种基于纵向联邦学习的模型更新装置,所述基于纵向联邦学习的模型更新装置包括:
标识抽取模块,用于从联盟链中选择第一业务节点和第二业务节点,从第一业务节点中抽取第一用户标识,从第二业务节点中抽取第二用户标识;
结果发送模块,用于若所述第一用户标识与所述第二用户标识匹配,则发送匹配结果至第一业务节点和第二业务节点,以使第一业务节点和第二业务节点分别将业务数据中的用户产品评分矩阵进行分解,获得第一用户矩阵和第二用户矩阵;
质量发送模块,用于发送数据交换指令至第一业务节点和第二业务节点,以使第一业务节点和第二业务节点交换所述第一用户矩阵和所述第二用户矩阵中的用户隐向量,获得更新的业务数据;
请求发送模块,用于在检测到第一业务节点与第二业务节点数据交换完成时,发送模型更新请求至第一业务节点和第二业务节点,以使第一业务节点与第二业务节点分别根据各自更新的业务数据进行模型更新,获得第一损失值和第二损失值;
提示发送模块,用于接收第一业务节点发送的第一损失值和第二业务节点发送的第二损失值,处理所述第一损失值和所述第二损失值,获得累积损失值,在所述累积损失值小于预设收敛阈值时,发送模型更新完成提示至第一业务节点和第二业务节点。
此外,为实现上述目的,本发明还提供一种基于纵向联邦学习的模型更新设备,所述基于纵向联邦学习的模型更新设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的基于纵向联邦学习的模型更新对应的计算机程序,所述基于纵向联邦学习的模型更新对应的计算机程序被所述处理器执行时实现如上所述的基于纵向联邦学习的模型更新方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有基于纵向联邦学习的模型更新对应的计算机程序,所述基于纵向联邦学习的模型更新对应的计算机程序被处理器执行时实现如上所述的基于纵向联邦学习的模型更新方法的步骤。
本发明提供一种基于纵向联邦学习的模型更新方法、装置、设备及介质,本发明本实施例中模型更新设备获取第一业务节点中的第一用户标识和第二业务节点中的第二用户标识,若第一用户标识和第二用户标识匹配,则发送数据交换指令至第一业务节点和第二业务节点,以使第一业务节点和第二业务节点进行部分数据的交换,然后第一业务节点和第二业务节点分别进行模型训练,通过本发明实施例中的纵向联邦学习的方法建立模型,这样在业务数据的数据量较少的情况下,提高模型更新的准确性,以实现产品的准确推送,同时有效地保证数据安全性,减少隐私透露的风险。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的设备结构示意图;
图2为本发明基于纵向联邦学习的模型更新方法第一实施例的流程示意图;
图3为本发明基于纵向联邦学习的模型更新方法第一实施例的一具体场景示意图;
图4为本发明基于纵向联邦学习的模型更新方法第一实施例中的步骤S40细化示意图;
图5为本发明基于纵向联邦学习的模型更新方法第一实施例的另一具体场景示意图;
图6为本发明基于纵向联邦学习的模型更新方法第二实施例的流程示意图;
图7为本发明基于纵向联邦学习的模型更新装置一实施例的功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的设备结构示意图。
本发明实施例基于纵向联邦学习的模型更新设备可以是PC机或服务器设备,如图1所示,该基于纵向联邦学习的模型更新设备可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的设备结构并不构成对设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作网络通信模块、用户接口模块以及基于纵向联邦学习的模型更新对应的计算机程序。
在图1所示的设备中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的基于纵向联邦学习的模型更新对应的计算机程序,并执行下述基于纵向联邦学习的模型更新方法中的操作。
基于上述硬件结构,提出本发明基于纵向联邦学习的模型更新方法实施例。
参照图2和图3,图2为本发明基于纵向联邦学习的模型更新方法第一实施例的流程示意图,图3为本发明基于纵向联邦学习的模型更新方法第一实施例的具体场景示意图,在本发明基于纵向联邦学习的模型更新方法第一实施例中,所述方法包括:
步骤S10,从联盟链中选择第一业务节点和第二业务节点,从第一业务节点中抽取第一用户标识,从第二业务节点中抽取第二用户标识;
本实施例中基于纵向联邦学习的模型更新方法应用于金融行业的金融机构(银行机构、保险机构、证券机构等)中的模型更新设备。
模型更新设备是联盟链中的一个第三方节点,模型更新设备从联盟链中选择第一业务节点和第二业务节点,其中,第一业务节点和第二业务节点是需要进行模型更新的节点,第三方节点为中间交互的节点,通过第三方节点处理第一业务节点和第二业务节点中的业务数据,可以实现业务数据部分交换,保证数据安全性,减少隐私透露的风险。
模型更新设备从第一业务节点中抽取第一用户标识,模型更新设备从第二业务节点中抽取第二用户标识,即,第一业务节点中包含第一业务数据,第二业务节点中包含第二业务数据,第一业务数据和第二业务数据包括用户账户数据、用户消费信息、用户浏览信息和产品销售信息等等;模型更新设备从第一业务数据中抽取第一用户标识,模型更新设备从第二业务数据中抽取第二用户标识,模型更新设备将第一用户标识和第二用户标识进行比对,判断第一用户标识与第二用户标识是否匹配(即,第一用户标识与第二用户标识中是否存在相同的用户标识),若第一用户标识与第二用户标识不匹配,则判定第一业务节点和第二业务节点之间没有相同用户不可以进行联邦纵向学习;若第一用户标识与第二用户标识匹配,则判定第一业务节点和第二业务节点之间存在部分相同用户可以进行联邦纵向学习。
步骤S20,若所述第一用户标识与所述第二用户标识匹配,则发送匹配结果至第一业务节点和第二业务节点,以使第一业务节点和第二业务节点分别将业务数据中的用户产品评分矩阵进行分解,获得第一用户矩阵和第二用户矩阵。
若所述第一用户标识与所述第二用户标识匹配,模型更新设备发送匹配结果至第一业务节点和第二业务节点,以使第一业务节点和第二业务节点分别将业务数据中的用户产品评分矩阵进行分解,获得第一用户矩阵和第二用户矩阵,具体地,第一业务节点获取第一业务数据中的第一用户产品评分矩阵,第一业务节点将第一用户产品评分矩阵进行分解获得第一用户矩阵和第一产品矩阵;第二业务节点获取第二业务数据中的第二用户产品评分矩阵,第二业务节点将第二用户产品评分矩阵进行分解,获得第二用户矩阵和第二产品矩阵。
步骤S30,发送数据交换指令至第一业务节点和第二业务节点,以使第一业务节点和第二业务节点交换所述第一用户矩阵和所述第二用户矩阵中的用户隐向量,获得更新的业务数据。
模型更新设备发送数据交换指令至第一业务节点和第二业务节点,以使第一业务节点和第二业务节点交换所述第一用户矩阵和所述第二用户矩阵中的用户隐向量,获得更新的第一业务数据和更新的第二业务数据。
可以理解的是,本实施例中第一业务节点和第二业务节点进行业务数据交换时可以自发进行,即,步骤S20若所述第一用户标识与所述第二用户标识匹配,则发送匹配结果至第一业务节点和第二业务节点,以使第一业务节点和第二业务节点分别将业务数据中的用户产品评分矩阵进行分解,获得第一用户矩阵和第二用户矩阵,然后,第一业务节点将第一用户矩阵中的第一用户隐形向量发送至第二业务节点,第二业务节点将第二用户矩阵中的第二用户隐形向量发送至第一业务节点,实现业务数据部分交换。
步骤S40,在检测到第一业务节点与第二业务节点数据交换完成时,发送模型更新请求至第一业务节点和第二业务节点,以使第一业务节点与第二业务节点分别根据各自更新的业务数据进行模型更新,获得第一损失值和第二损失值。
在业务数据更新完成时,第一业务节点和第二业务节点发送提示信息至模型更新设备,以基于纵向联邦学习进行建模,即,模型更新设备在检测到第一业务节点与第二业务节点数据交换完成时,模型更新设备触发模型更新请求(模型更新请求的触发方式不作具体限定,即,模型更新请求可以是用户主动触发的,例如,用户在模型更新设备上点击“模型更新”按键触发模型更新请求;或者模型更新请求还可以是模型更新设备自动触发的,例如,模型更新设备中预设每次产品更新时自动触发触发模型更新请求,模型更新设备在检测到符合预设的模型更新条件时,自动触发模型更新请求),模型更新设备将模型更新请求至第一业务节点和第二业务节点,以使第一业务节点与第二业务节点分别根据各自更新的业务数据进行模型更新,获得第一损失值和第二损失值。
具体地,参照图4,图4为本发明基于纵向联邦学习的模型更新方法第一实施例中的步骤S40细化示意图,包括:
步骤S41,在检测到第一业务节点与第二业务节点数据交换完成时,发送模型更新请求至第一业务节点和第二业务节点,以使第一业务节点和第二业务节点根据各自更新的业务数据进行模型初始化,获得第一梯度和第二梯度;
第一业务节点和第二业务节点根据各自更新的业务数据进行模型初始化,获得第一梯度和第二梯度的步骤,包括:
步骤a1,第一业务节点对第一模型进行模型初始化,获得第一训练结果,处理所述第一训练结果和所述第一业务数据,获得第一梯度;和,
步骤a2,第二业务节点对第二模型进行模型初始化,获得第二训练结果,处理所述第二训练结果和所述第二业务数据,获得第二梯度。
即,本实施例中模型更新设备发送模型初始化指令至第一业务节点和第二业务节点,以使第一业务节点和第二业务节点分别进行模型初始化,获得第一训练结果(第一训练结果中包括第一业务节点A方的PA,QA,buA,biA,其中PA为用户矩阵,QA为物品矩阵,所述buA为训练结果中的用户偏置量,所述biA为训练结果中的产品偏置量)和第二训练结果(第二训练结果中包括第二业务节点B方的PB,QB,buB,biB,其中PB为用户矩阵,QB为物品矩阵,所述buB为训练结果中的用户偏置量,所述biB为训练结果中的产品偏置量);第一业务节点和第二业务节点将第一训练结果和第二训练结果中的训练评分数据进行累加后计算平均打分meanrA和meanrB,第一业务节点和第二业务节点分别将训练结果带入SVD公式predui=meanr+bu+bi+qi*pu,(所述meanr为根据业务数据计算得到的评分平均值,所述bu为训练结果中的用户偏置量,所述bi为训练结果中的产品偏置量,所述pu为训练结果中的用户隐向量,所述用户隐向量表征用户u在用户矩阵P中对应的行向量,所述qi为训练结果中的产品隐向量,所述产品隐向量表征产品i在产品矩阵Q中对应的行向量),计算得到Predu,i,第一业务节点和第二业务节点分别将计算得到的Predu,i带入预设梯度公式,计算得到第一梯度(第一梯度包括第一用户梯度、第一产品梯度和第一偏置量梯度)和第二梯度(第二梯度包括第二用户梯度、第二产品梯度和第二偏置量梯度)。
其中,预设梯度公式包括第一梯度公式、第二梯度公式和第三梯度公式;第一梯度公式为Guser=2*Qi*(ru,i-Predu,i),所述Guser为用户梯度,所述Qi为训练结果中的产品矩阵,所述ru,i为训练数据中表征用户u对产品i的评分,所述Predu,i为根据所述训练结果计算获得的预测评分;所述第二梯度公式为Gitem=2*Pu*(ru,i-Predu,i),所述Gitem为产品梯度,所述Pu为训练结果中的用户矩阵,所述ru,i为训练数据中表征用户u对产品i的评分,所述Predu,i为根据所述训练结果计算获得的预测评分;所述第三梯度公式为Gb=2*(ru,i-Predu,i),所述为所述Gb为偏置量梯度,所述ru,i为训练数据中表征用户u对产品i的评分,所述Predu,i为根据所述训练结果计算获得的预测评分。
第一业务节点将第一梯度发送至模型更新设备,第二业务节点将第二梯度发送至模型更新设备。
步骤S42,接收第一业务节点发送的第一梯度和第二业务节点发送的第二梯度,处理所述第一梯度和所述第二梯度,获得联合梯度。
模型更新设备接收第一业务节点发送的第一梯度和第二业务节点发送的第二梯度,获取所述第一梯度中的第一用户梯度和第一偏置量梯度,获取所述第二梯度中的第二用户梯度和第二偏置量梯度;模型更新设备将所述第一用户梯度与所述第二用户梯度计算平均,获得联合用户梯度,将所述第一偏置量梯度与所述第二偏置量梯度计算平均,获得联合偏置量梯度,将所述联合用户梯度和所述联合偏置量梯度作为联合梯度。
即,模型更新设备将第一梯度和第二梯度输入梯度联合计算公式,计算获得联合梯度,模型更新设备将联合梯度发送至第一业务节点和第二业务节点;其中,梯度联合计算公式为GuserA&userB=Mean(GuserA,GuserB),GbA&bB=Mean(GbA,GbB),所述GuserA&userB和GbA&bB为联合梯度,所述GuserA和GbA分别为第一梯度中的第一用户梯度和第一偏置量梯度,所述GuserB和GbB分别为第二梯度中的第二用户梯度和第二偏置量梯度。
步骤S43,将所述联合梯度发送至第一业务节点和第二业务节点,以使所述第一业务节点根据所述第一梯度和所述联合梯度更新初始化后的第一模型,按照更新后的第一模型计算获得第一损失值,以使所述第二业务节点根据所述第二梯度和所述联合梯度更新初始化后的第二模型,按照更新后的第二模型计算获得第二损失值。
本实施例中,模型更新设备将所述联合梯度发送至第一业务节点和第二业务节点,以使第一业务节点和第二业务节点计算第一损失值和第二损失值的步骤,包括:
步骤b1,第一业务节点根据所述第一梯度和所述联合梯度更新初始化后的第一模型,第一业务节点将所述第一业务数据输入至更新的第一模型,获得第一训练结果,第一业务节点将所述第一训练结果中的第一训练评分进行处理,获得第一预测评分,第一业务节点比较所述第一预测评分和所述第一训练评分,获得第一损失值;和,
步骤b2,第二业务节点根据所述第二梯度和所述联合梯度更新初始化后的第二模型,第二业务节点将所述第二业务数据输入至更新的第二模型,获得第二训练结果,第二业务节点将所述第二训练结果中的第二训练评分进行处理,获得第二预测评分,第二业务节点比较所述第二预测评分和所述第二训练评分,获得第二损失值。
第一业务节点根据第一梯度和联合梯度更新第一业务节点中初始化后的第一模型,第一业务节点将第一业务数据输入至更新的第一模型,获得第一训练结果,第一业务节点将所述第一训练结果中的第一训练评分进行处理,获得第一预测评分,第一业务节点比较所述第一预测评分和所述第一训练评分,即,第一业务节点将第一预测评分和第一训练评分输入预设损失函数计算获得第一损失值;第二业务节点根据第二梯度和联合梯度更新初始化后的第二模型,第二业务节点将第二业务数据输入至更新的第二模型,获得第二训练结果,第二业务节点将所述第二训练结果中的第二训练评分进行处理,获得第二预测评分,第二业务节点比较所述第二预测评分和所述第二训练评分,即,第二业务节点将第二预测评分和第二训练评分输入预设损失函数计算获得第二损失值。其中,预设损失函数为loss=(ru,i–Predu,i)2,所述loss为损失值,所述ru,i为训练数据中表征用户u对产品i的评分,所述Predu,i为根据所述训练结果计算获得的预测评分。
第一业务节点将第一损失值发送至模型更新设备,第二业务节点将第二损失值发送至模型更新设备,模型更新设备根据第一损失值和所述第二损失值确定是否训练终止。
步骤S50,接收第一业务节点发送的第一损失值和第二业务节点发送的第二损失值,处理所述第一损失值和所述第二损失值,获得累积损失值,在所述累积损失值小于预设收敛阈值时,发送模型更新完成提示至第一业务节点和第二业务节点。
本实施例中步骤S50,包括:
步骤c1,接收第一业务节点和第二业务节点发送的第一损失值和第二损失值,处理所述第一损失值和所述第二损失值,获得累积损失值,判断所述累积损失值是否小于预设收敛阈值;
步骤c2,在所述累积损失值大于或等于所述预设收敛阈值时,发送迭代训练提示至第一业务节点和第二业务节点,以使第一业务节点和第二业务节点迭代更新模型,直至所述累积损失值小于预设收敛阈值;
步骤c3,在所述累积损失值小于预设收敛阈值时,发送模型更新完成提示至第一业务节点和第二业务节。
模型更新设备将第一损失值和第二损失值累加,获得累积损失值,模型更新设备判断累积损失值是否小于预设收敛阈值(预设收敛阈值可以根据具体场景灵活设置,例如,预设收敛阈值设置为1);若累积损失值大于或等于所述预设收敛阈值,第三方节点则发送迭代训练提示至第一业务节点和第二业务节点,以使第一业务节点和第二业务节点继续训练更新各自的模型,直至所述累积损失值小于预设收敛阈值;若累积损失值小于预设收敛阈值,模型更新设备则发送训练终止提示至第一业务节点和第二业务节点。
本实施例中模型更新设备获取第一业务节点中的第一用户标识和第二业务节点中的第二用户标识,若第一用户标识和第二用户标识匹配,则发送数据交换指令至第一业务节点和第二业务节点,以使第一业务节点和第二业务节点进行部分数据的交换,然后第一业务节点和第二业务节点分别进行模型训练,通过本发明实施例中的纵向联邦学习的方法建立模型,这样在业务数据的数据量较少的情况下,提高模型更新的准确性,以实现产品的准确推送,同时有效地保证数据安全性,减少隐私透露的风险。
为了方便用户理解,本实施例中给一种具体实现方式,参照图5,图5为本发明基于纵向联邦学习的模型更新方法第一实施例的另一具体场景示意图,包括:
(一)推荐系统中最重要的数据是用户对商品的打分,例如表1,用户-商品矩阵(评分矩阵,-为无评分),
产品1 产品2 产品3
用户1 5 3 -
用户2 5 - 2
用户3 - - 3
表1
模型更新设备对第一业务节点和第二业务节点中的用户产品评分矩阵进行矩阵分解,矩阵分解是指将上述评分矩阵分解为两个矩阵的乘积,通过矩阵相乘,对无评分的部分进行填充,预测无评分位置的用户打分。
记打分矩阵为Rm*n,将其分解为两个矩阵Pm*k和Qn*k,其中P为用户矩阵,m为用户数,Q为产品矩阵,n为产品数,k为隐因子数量。
(二)SVD算法在矩阵分解的基础上,加入对用户和产品的偏置量的学习。SVD算法的预测评分的计算公式如下:
predui=meanr+bu+bi+qi*pu;其中meanr为所有评分的平均值,bu为对用户的偏置量。bi为对产品的偏置量,pu用户u在P中对应的行向量为该用户的隐向量,qi产品i中Q中对应的行向量为该产品的隐向量。
基本模型由A,B方数据组成,在训练开始之前,A,B双方会进行数据的匹配。
A方和B方各自进行模型的初始化,产生A方的PA,QA,buA,biA和B方的PB,QB,buB,biB。各自计算平均打分meanrA,meanrB,交换之后计算全局平均分meanrAB
模型的训练由批次(Batch)的梯度下降算法实现,参照图4,步骤如下:
1、A/B数据方各自生成一个batch的训练数据。数据格式为(u,i,ru,i)的三元组,代表用户u对产品i的评分为ru,i
2、A/B数据方计算梯度GuserA,GitemA,GuserB,GitemB
根据所用损失函数loss=(ru,i–Predu,i)2
输入数据(u,i,ru,i),对P,Q,b计算梯度公式如下:
Guser=2*Qi*(ru,i-Predu,i)
Gitem=2*Pu*(ru,i-Predu,i)
Gb=2*(ru,i-Predu,i)
3、A方发送用户梯度GuserA,GbA给C方,B方发送用户梯度GuserB,GbB给C方。C方计算联合用户梯度GuserA&userB=Mean(GuserA,GuserB),GbA&bB=Mean(GbA,GbB)。并发给A方B方。
4、A方和B方使用联合用户梯度GuserA&userB和GbA&bB,以及各自的产品梯度GitemA,GitemB。分别更新各自的模型。
5、A方和B方各自计算loss,发给C方。
6、每个epoch的迭代结束后,C方根据累计loss判断模型是否收敛,如否则继续训练。反复迭代直到收敛。
在本实施例的具体实现方式中基于纵向联邦学习的SVD算法,假设A数据方和B数据方的用户能够匹配,产品无重叠,在训练的过程中,数据方A和B之间只进行用户的隐向量的交换,不会进行产品的隐向量的交换,从而保护了用户的点击数据不会泄漏。在训练的过程中,产品的隐向量矩阵Q只需要在A、B方各自本地更新,用户的隐向量矩阵P需要A,B方联合建模更新。
进一步地,参照图6,基于本发明基于纵向联邦学习的模型更新方法上述实施例,提出本发明基于纵向联邦学习的模型更新方法第二实施例。
本实施例是第一实施例中步骤S50之后的步骤,本实施例与上述实施例的区别在于:
步骤S60,在接收评分预测请求时,获取所述评分预测请求对应的场景标识。
模型更新设备获取评分预测请求,评分预测请求的触发方式不作具体限定,模型更新设备获取评分预测请求对应的场景标识,其中,场景标识是指业务场景的标识信息,例如,产品编号信息等。
步骤S70,在所述业务场景标识为第一场景标识时,将所述评分预测请求发送至第一业务节点,以使所述第一业务节点将第一业务数据输入至更新后的第一模型,获得第一训练结果,将所述第一训练结果中的第一训练评分进行处理,获得第一预测评分。
模型更新设备在业务场景标识为第一场景标识时,模型更新设备将所述评分预测请求发送至第一业务节点,以使所述第一业务节点将第一业务数据中的第一训练数据输入至更新后的第一模型,获得新的第一训练结果,第一业务节点将第一训练结果输入至预设评分预测公式(预设评分预测公式为predui=meanr+bu+bi+qi*pu,所述meanr为根据业务数据计算得到的评分平均值,所述bu为训练结果中的用户偏置量,所述bi为训练结果中的产品偏置量,所述pu为训练结果中的用户隐向量,所述用户隐向量表征用户u在用户矩阵P中对应的行向量,所述qi为训练结果中的产品隐向量,所述产品隐向量表征产品i在产品矩阵Q中对应的行向量),获得第一预测评分。
步骤S80,在所述业务场景标识为第二场景标识时,将所述评分预测请求发送至第二业务节点,以使所述第二业务节点将第二业务数据输入至更新后的第二模型,获得第二训练结果,将所述第二训练结果中的第二训练评分进行处理,获得第二预测评分。
模型更新设备在业务场景标识为第二场景标识时,模型更新设备将所述评分预测请求发送至第二业务节点,以使所述第二业务节点将第二业务数据中的第二训练数据输入至更新后的第二模型,获得新的第二训练结果,第二业务节点将所述第二训练结果输入至预设评分预测公式(预设评分预测公式为predui=meanr+bu+bi+qi*pu,所述meanr为根据业务数据计算得到的评分平均值,所述bu为训练结果中的用户偏置量,所述bi为训练结果中的产品偏置量,所述pu为训练结果中的用户隐向量,所述用户隐向量表征用户u在用户矩阵P中对应的行向量,所述qi为训练结果中的产品隐向量,所述产品隐向量表征产品i在产品矩阵Q中对应的行向量),获得第二预测评分。
本实施例中模型更新设备接收评分预测请求时,模型更新设备获取评分预测请求对应的场景标识,根据场景标识选择更新的模型获得训练结果,根据训练结果进行产品评分预测,预测用户对产品的评分,使得产品推荐更加准确,将上述方法应用在金融机构,提高了金融产品的用户活跃度与金融产品的生命周期。
进一步地,基于本发明基于纵向联邦学习的模型更新方法上述实施例,提出本发明基于纵向联邦学习的模型更新方法第三实施例。
本实施例是第一实施例中步骤S10之后的步骤,本实施例与上述实施例的区别在于:
将所述第一用户标识与所述第二用户标识进行比对;
若所述第一用户标识和所述第二用户标识中不存在相同的目标用户标识,则判定所述第一用户标识与所述第二用户标识不匹配;
若所述第一用户标识和所述第二用户标识中存在相同的目标用户标识,则判定所述第一用户标识与所述第二用户标识匹配。
本实施例中模型更新设备提取第一业务数据中的第一用户标识(用户标识可以是用户名称、用户账户等等唯一识别用户身份的信息),模型更新设备提取第二业务数据中的第二用户标识,模型更新设备将第一用户标识与第二用户标识进行比对;若第一用户标识和第二用户标识中不存在相同的目标用户标识,模型更新设备则判定第一业务数据与所述第二业务数据不匹配;若第一用户标识和第二用户标识中存在相同的目标用户标识,模型更新设备则判定第一业务数据与所述第二业务数据匹配,从而对不同的数据方的业务数据进行联合建模,实现更好产品推荐。
进一步地,基于本发明基于纵向联邦学习的模型更新方法上述实施例,提出本发明基于纵向联邦学习的模型更新方法第四实施例。
本实施例是第一实施例中步骤S10之后的步骤,本实施例与上述实施例的区别在于:
在接收数据加密指令时,生成加密的公钥和私钥,并将所述公钥发送至第一业务节点和第二业务节点,以使第一业务节点和第二业务节点按照所述公钥进行加密;
接收第一业务节点和/或第二业务节点发送的数据,并按照所述私钥对所述数据进行解密。
本实施例中,模型更新设备在接收数据加密指令时,生成加密的公钥和私钥,并将所述公钥发送至第一业务节点和第二业务节点,以使第一业务节点和第二业务节点按照所述公钥进行加密,即,第一业务节点和第二业务节点接收第三方节点发送的公钥,并按照公钥加密需要传输的业务数据,第一业务节点和第二业务节点将加密后的业务数据发送至模型更新设备,模型更新设备接收第一业务节点和/或第二业务节点发送的业务数据并按照私钥进行解密;本实施例中模型更新设备生成加密的公钥和私钥,保证了基于纵向联邦学习的模型更新过程中数据传输的安全性。
参照图7,本发明还提供一种基于纵向联邦学习的模型更新装置,所述基于纵向联邦学习的模型更新装置包括:
标识抽取模块10,用于从联盟链中选择第一业务节点和第二业务节点,从第一业务节点中抽取第一用户标识,从第二业务节点中抽取第二用户标识;
结果发送模块20,用于若所述第一用户标识与所述第二用户标识匹配,则发送匹配结果至第一业务节点和第二业务节点,以使第一业务节点和第二业务节点分别将业务数据中的用户产品评分矩阵进行分解,获得第一用户矩阵和第二用户矩阵;
质量发送模块30,用于发送数据交换指令至第一业务节点和第二业务节点,以使第一业务节点和第二业务节点交换所述第一用户矩阵和所述第二用户矩阵中的用户隐向量,获得更新的业务数据;
请求发送模块40,用于在检测到第一业务节点与第二业务节点数据交换完成时,发送模型更新请求至第一业务节点和第二业务节点,以使第一业务节点与第二业务节点分别根据各自更新的业务数据进行模型更新,获得第一损失值和第二损失值;
提示发送模块50,用于接收第一业务节点发送的第一损失值和第二业务节点发送的第二损失值,处理所述第一损失值和所述第二损失值,获得累积损失值,在所述累积损失值小于预设收敛阈值时,发送模型更新完成提示至第一业务节点和第二业务节点。
本实施例中模型更新装置获取第一业务节点中的第一用户标识和第二业务节点中的第二用户标识,若第一用户标识和第二用户标识匹配,则发送数据交换指令至第一业务节点和第二业务节点,以使第一业务节点和第二业务节点进行部分数据的交换,然后第一业务节点和第二业务节点分别进行模型训练,通过本发明实施例中的纵向联邦学习的方法建立模型,这样在业务数据的数据量较少的情况下,提高模型更新的准确性,以实现产品的准确推送,同时有效地保证数据安全性,减少隐私透露的风险。
本发明还提供一种计算机可读存储介质。
本发明计算机可读存储介质上存储有基于纵向联邦学习的模型更新对应的计算机程序,所述基于纵向联邦学习的模型更新对应的计算机程序被处理器执行时实现如上所述的基于纵向联邦学习的模型更新方法的步骤。
其中,在所述处理器上运行的基于纵向联邦学习的模型更新对应的计算机程序被执行时所实现的方法可参照本发明基于纵向联邦学习的模型更新方法各个实施例,此处不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、产品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、产品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、产品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种基于纵向联邦学习的模型更新方法,其特征在于,所述基于纵向联邦学习的模型更新方法包括如下步骤:
从联盟链中选择第一业务节点和第二业务节点,从第一业务节点中抽取第一用户标识,从第二业务节点中抽取第二用户标识;
若所述第一用户标识与所述第二用户标识匹配,则发送匹配结果至第一业务节点和第二业务节点,以使第一业务节点和第二业务节点分别将业务数据中的用户产品评分矩阵进行分解,获得第一用户矩阵和第二用户矩阵;
发送数据交换指令至第一业务节点和第二业务节点,以使第一业务节点和第二业务节点交换所述第一用户矩阵和所述第二用户矩阵中的用户隐向量,获得更新的业务数据,其中,用户隐向量为用户在用户矩阵中对应的行向量;
在检测到第一业务节点与第二业务节点数据交换完成时,发送模型更新请求至第一业务节点和第二业务节点,以使第一业务节点与第二业务节点分别根据各自更新的业务数据进行模型更新,获得第一损失值和第二损失值;
接收第一业务节点发送的第一损失值和第二业务节点发送的第二损失值,处理所述第一损失值和所述第二损失值,获得累积损失值,在所述累积损失值小于预设收敛阈值时,发送模型更新完成提示至第一业务节点和第二业务节点。
2.如权利要求1所述的基于纵向联邦学习的模型更新方法,其特征在于,所述接收第一业务节点发送的第一损失值和第二业务节点发送的第二损失值,处理所述第一损失值和所述第二损失值,获得累积损失值,在所述累积损失值小于预设收敛阈值时,发送模型更新完成提示至第一业务节点和第二业务节点的步骤之后,所述方法包括:
在接收评分预测请求时,获取所述评分预测请求对应的业务场景标识;
在所述业务场景标识为第一场景标识时,将所述评分预测请求发送至第一业务节点,以使所述第一业务节点将第一业务数据输入至更新后的第一模型,获得第一训练结果,将所述第一训练结果中的第一训练评分进行处理,获得第一预测评分;
在所述业务场景标识为第二场景标识时,将所述评分预测请求发送至第二业务节点,以使所述第二业务节点将第二业务数据输入至更新后的第二模型,获得第二训练结果,将所述第二训练结果中的第二训练评分进行处理,获得第二预测评分。
3.如权利要求1所述的基于纵向联邦学习的模型更新方法,其特征在于,所述从联盟链中选择第一业务节点和第二业务节点,从第一业务节点中抽取第一用户标识,从第二业务节点中抽取第二用户标识的步骤之后,所述方法还包括:
在接收数据加密指令时,生成加密的公钥和私钥,并将所述公钥发送至第一业务节点和第二业务节点,以使第一业务节点和第二业务节点按照所述公钥进行加密;
接收第一业务节点和/或第二业务节点发送的数据,并按照所述私钥对所述数据进行解密。
4.如权利要求1所述的基于纵向联邦学习的模型更新方法,其特征在于,所述在检测到第一业务节点与第二业务节点数据交换完成时,发送模型更新请求至第一业务节点和第二业务节点,以使第一业务节点与第二业务节点分别根据各自更新的业务数据进行模型更新,获得第一损失值和第二损失值的步骤,包括:
在检测到第一业务节点与第二业务节点数据交换完成时,发送模型更新请求至第一业务节点和第二业务节点,以使第一业务节点和第二业务节点根据各自更新的业务数据进行模型初始化,获得第一梯度和第二梯度;
接收第一业务节点发送的第一梯度和第二业务节点发送的第二梯度,处理所述第一梯度和所述第二梯度,获得联合梯度;
将所述联合梯度发送至第一业务节点和第二业务节点,以使所述第一业务节点根据所述第一梯度和所述联合梯度更新初始化后的第一模型,按照更新后的第一模型计算获得第一损失值,以使所述第二业务节点根据所述第二梯度和所述联合梯度更新初始化后的第二模型,按照更新后的第二模型计算获得第二损失值。
5.如权利要求4所述的基于纵向联邦学习的模型更新方法,其特征在于,所述接收第一业务节点发送的第一梯度和第二业务节点发送的第二梯度,处理所述第一梯度和所述第二梯度,获得联合梯度的步骤,包括:
接收第一业务节点发送的第一梯度和第二业务节点发送的第二梯度,获取所述第一梯度中的第一用户梯度和第一偏置量梯度,获取所述第二梯度中的第二用户梯度和第二偏置量梯度;
将所述第一用户梯度与所述第二用户梯度计算平均,获得联合用户梯度,将所述第一偏置量梯度与所述第二偏置量梯度计算平均,获得联合偏置量梯度,将所述联合用户梯度和所述联合偏置量梯度作为联合梯度。
6.如权利要求1所述的基于纵向联邦学习的模型更新方法,其特征在于,所述接收第一业务节点发送的第一损失值和第二业务节点发送的第二损失值,处理所述第一损失值和所述第二损失值,获得累积损失值,在所述累积损失值小于预设收敛阈值时,发送模型更新完成提示至第一业务节点和第二业务节点的步骤,包括:
接收第一业务节点发送的第一损失值和第二业务节点发送的第二损失值,处理所述第一损失值和所述第二损失值,获得累积损失值,判断所述累积损失值是否小于预设收敛阈值;
在所述累积损失值大于或等于所述预设收敛阈值时,发送迭代训练提示至第一业务节点和第二业务节点,以使第一业务节点和第二业务节点迭代更新模型,直至所述累积损失值小于预设收敛阈值;
在所述累积损失值小于预设收敛阈值时,发送模型更新完成提示至第一业务节点和第二业务节点。
7.如权利要求1至6任意一项所述的基于纵向联邦学习的模型更新方法,其特征在于,所述从联盟链中选择第一业务节点和第二业务节点,从第一业务节点中抽取第一用户标识,从第二业务节点中抽取第二用户标识的步骤之后,所述方法包括:
将所述第一用户标识与所述第二用户标识进行比对;
若所述第一用户标识和所述第二用户标识中不存在相同的目标用户标识,则判定所述第一用户标识与所述第二用户标识不匹配;
若所述第一用户标识和所述第二用户标识中存在相同的目标用户标识,则判定所述第一用户标识与所述第二用户标识匹配。
8.一种基于纵向联邦学习的模型更新装置,其特征在于,所述基于纵向联邦学习的模型更新装置包括:
标识抽取模块,用于从联盟链中选择第一业务节点和第二业务节点,从第一业务节点中抽取第一用户标识,从第二业务节点中抽取第二用户标识;
结果发送模块,用于若所述第一用户标识与所述第二用户标识匹配,则发送匹配结果至第一业务节点和第二业务节点,以使第一业务节点和第二业务节点分别将业务数据中的用户产品评分矩阵进行分解,获得第一用户矩阵和第二用户矩阵;
质量发送模块,用于发送数据交换指令至第一业务节点和第二业务节点,以使第一业务节点和第二业务节点交换所述第一用户矩阵和所述第二用户矩阵中的用户隐向量,获得更新的业务数据,其中,用户隐向量为用户在用户矩阵中对应的行向量;
请求发送模块,用于在检测到第一业务节点与第二业务节点数据交换完成时,发送模型更新请求至第一业务节点和第二业务节点,以使第一业务节点与第二业务节点分别根据各自更新的业务数据进行模型更新,获得第一损失值和第二损失值;
提示发送模块,用于接收第一业务节点发送的第一损失值和第二业务节点发送的第二损失值,处理所述第一损失值和所述第二损失值,获得累积损失值,在所述累积损失值小于预设收敛阈值时,发送模型更新完成提示至第一业务节点和第二业务节点。
9.一种基于纵向联邦学习的模型更新设备,其特征在于,所述基于纵向联邦学习的模型更新设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的基于纵向联邦学习的模型更新对应的计算机程序,所述基于纵向联邦学习的模型更新对应的计算机程序被所述处理器执行时实现如权利要求1至7中任一项所述的基于纵向联邦学习的模型更新方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有基于纵向联邦学习的模型更新对应的计算机程序,所述基于纵向联邦学习的模型更新对应的计算机程序被处理器执行时实现如权利要求1至7中任一项所述的基于纵向联邦学习的模型更新方法的步骤。
CN202010105420.1A 2020-02-20 2020-02-20 基于纵向联邦学习的模型更新方法、装置、设备及介质 Active CN111325352B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010105420.1A CN111325352B (zh) 2020-02-20 2020-02-20 基于纵向联邦学习的模型更新方法、装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010105420.1A CN111325352B (zh) 2020-02-20 2020-02-20 基于纵向联邦学习的模型更新方法、装置、设备及介质

Publications (2)

Publication Number Publication Date
CN111325352A CN111325352A (zh) 2020-06-23
CN111325352B true CN111325352B (zh) 2021-02-19

Family

ID=71167945

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010105420.1A Active CN111325352B (zh) 2020-02-20 2020-02-20 基于纵向联邦学习的模型更新方法、装置、设备及介质

Country Status (1)

Country Link
CN (1) CN111325352B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111865826B (zh) * 2020-07-02 2022-01-04 大连理工大学 一种基于联邦学习的主动内容缓存方法
CN112686390B (zh) * 2020-12-28 2023-11-17 科大讯飞股份有限公司 联合建模方法、系统、装置及具有存储功能的装置
CN113111124B (zh) * 2021-03-24 2021-11-26 广州大学 一种基于区块链的联邦学习数据审计系统及方法
CN113361658B (zh) * 2021-07-15 2022-06-14 支付宝(杭州)信息技术有限公司 一种基于隐私保护的图模型训练方法、装置及设备
CN115130814B (zh) * 2022-05-10 2023-05-02 中南大学 一种纵向数据融合的隐私计算方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107273337A (zh) * 2017-05-24 2017-10-20 南京师范大学 一种图构建与矩阵分解联合学习的推荐方法
CN110110229A (zh) * 2019-04-25 2019-08-09 深圳前海微众银行股份有限公司 一种信息推荐方法及装置
CN110245510A (zh) * 2019-06-19 2019-09-17 北京百度网讯科技有限公司 用于预测信息的方法和装置
CN110490738A (zh) * 2019-08-06 2019-11-22 深圳前海微众银行股份有限公司 一种混合联邦学习方法及架构

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11823067B2 (en) * 2017-06-27 2023-11-21 Hcl Technologies Limited System and method for tuning and deploying an analytical model over a target eco-system
US11748653B2 (en) * 2017-10-05 2023-09-05 DataRobot, Inc. Machine learning abstraction

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107273337A (zh) * 2017-05-24 2017-10-20 南京师范大学 一种图构建与矩阵分解联合学习的推荐方法
CN110110229A (zh) * 2019-04-25 2019-08-09 深圳前海微众银行股份有限公司 一种信息推荐方法及装置
CN110245510A (zh) * 2019-06-19 2019-09-17 北京百度网讯科技有限公司 用于预测信息的方法和装置
CN110490738A (zh) * 2019-08-06 2019-11-22 深圳前海微众银行股份有限公司 一种混合联邦学习方法及架构

Also Published As

Publication number Publication date
CN111325352A (zh) 2020-06-23

Similar Documents

Publication Publication Date Title
CN111325352B (zh) 基于纵向联邦学习的模型更新方法、装置、设备及介质
CN109165725B (zh) 基于迁移学习的神经网络联邦建模方法、设备及存储介质
CN111428881B (zh) 识别模型的训练方法、装置、设备及可读存储介质
CN109255444B (zh) 基于迁移学习的联邦建模方法、设备及可读存储介质
CN109284313B (zh) 基于半监督学习的联邦建模方法、设备及可读存储介质
US20210232974A1 (en) Federated-learning based method of acquiring model parameters, system and readable storage medium
CN111340247A (zh) 纵向联邦学习系统优化方法、设备及可读存储介质
WO2021174877A1 (zh) 基于智能决策的目标检测模型的处理方法、及其相关设备
CN111582505A (zh) 联邦建模方法、装置、设备及计算机可读存储介质
CN110210233B (zh) 预测模型的联合构建方法、装置、存储介质及计算机设备
CN111324812B (zh) 基于迁移学习的联邦推荐方法、装置、设备及介质
CN111553744A (zh) 联邦产品推荐方法、装置、设备及计算机存储介质
CN111339412A (zh) 纵向联邦推荐召回方法、装置、设备及可读存储介质
CN112016698B (zh) 因子分解机模型构建方法、设备及可读存储介质
CN109658120A (zh) 一种业务数据处理方法以及装置
CN111523674A (zh) 模型训练方法、装置及系统
CN112446736A (zh) 一种点击通过率ctr预测方法及装置
CN111177481B (zh) 用户标识映射方法及装置
CN112000988A (zh) 因子分解机回归模型构建方法、设备及可读存储介质
CN115718930A (zh) 一种基于用户画像的用户服务系统、方法及电子设备
CN114429223A (zh) 异构模型建立方法及装置
CN110795558A (zh) 标签获取方法和装置、存储介质及电子装置
CN111368314B (zh) 基于交叉特征的建模、预测方法、装置、设备及存储介质
CN114492850A (zh) 基于联邦学习的模型训练方法、设备、介质及程序产品
CN111310047B (zh) 基于fm模型的信息推荐方法、装置、设备及存储介质

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