CN114580658A - 基于区块链的联邦学习激励方法、装置、设备和介质 - Google Patents

基于区块链的联邦学习激励方法、装置、设备和介质 Download PDF

Info

Publication number
CN114580658A
CN114580658A CN202111630365.9A CN202111630365A CN114580658A CN 114580658 A CN114580658 A CN 114580658A CN 202111630365 A CN202111630365 A CN 202111630365A CN 114580658 A CN114580658 A CN 114580658A
Authority
CN
China
Prior art keywords
slave nodes
federal learning
model
learning
round
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.)
Pending
Application number
CN202111630365.9A
Other languages
English (en)
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.)
Tianyi Cloud Technology Co Ltd
Original Assignee
Tianyi Cloud 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 Tianyi Cloud Technology Co Ltd filed Critical Tianyi Cloud Technology Co Ltd
Priority to CN202111630365.9A priority Critical patent/CN114580658A/zh
Publication of CN114580658A publication Critical patent/CN114580658A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • 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
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Finance (AREA)
  • Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Development Economics (AREA)
  • Medical Informatics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Technology Law (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请公开一种基于区块链的联邦学习激励方法、装置、设备和介质,方法包括:主节点与多个从节点之间进行多轮联邦学习过程中,每开启一轮联邦学习,分别向多个从节点发送当前一轮联邦学习的模型训练指示;基于多个从节点中的多个候选从节点各自返回的目标模型精度和模型训练消耗信息,从多个候选从节点中选择多个参与从节点;分别向多个参与从节点发送前一轮联邦学习获得的全局机器学习模型;获取多个参与从节点各自提交的,采用各自的数据集对全局机器学习模型进行迭代训练获得的本地机器学习模型,并将多个本地机器学习模型进行融合;若融合后的全局机器学习模型满足预设条件,则通过区块链向参与联邦学习的各个从节点发送相应的激励信息。

Description

基于区块链的联邦学习激励方法、装置、设备和介质
技术领域
本申请涉及互联网技术领域,尤其涉及一种基于区块链的联邦学习激励方法、装置、设备和介质。
背景技术
众多大数据应用的出现与发展壮大,都依赖于网络中所产生的海量用户数据。然而,近年来用户数据的安全问题日益凸显,如何对用户数据进行安全保护并同时进行数据分析受到业界的广泛关注。
目前,大数据应用通常需要通过机器学习模型实现相应的功能,而机器学习模型需要通过大量用户数据训练获得。然而,大多数用户往往不愿意共享自己所持有的数据,一方面是因为共享数据需要消耗用户自身的计算资源以及占用通信带宽等;另一方面是因为共享数据(如位置信息等)可能会存在数据泄露的风险。
因此,如何在保护用户数据的前提下,激励用户参与数据共享仍然是一个挑战。
发明内容
本申请实施例提供一种基于区块链的联邦学习激励方法、装置、设备和介质,用于在保护用户数据前提下,激励用户参与数据共享。
第一方面,本申请实施例提供了一种基于区块链的联邦学习激励方法,包括:
主节点与多个从节点之间进行多轮联邦学习过程中,每开启一轮联邦学习,执行以下操作:
分别向所述多个从节点发送当前一轮联邦学习的模型训练指示,以使所述多个从节点中的多个候选从节点根据所述模型训练指示,向所述主节点提交各自的目标模型精度和模型训练消耗信息;
基于所述多个候选从节点各自的目标模型精度和模型训练消耗信息,从所述多个候选从节点中选择当前一轮联邦学习的多个参与从节点;
分别向所述多个参与从节点发送前一轮联邦学习获得的全局机器学习模型,以使所述多个参与从节点采用各自的数据集对所述全局机器学习模型进行迭代训练,获得各自的本地机器学习模型;
获取所述多个参与从节点各自提交的本地机器学习模型,并将获得的多个本地机器学习模型进行融合;
若融合后的全局机器学习模型满足预设条件,则通过区块链向参与联邦学习的各个从节点发送相应的激励信息。
在一种可能的实施方式中,所述基于所述多个候选从节点各自的目标模型精度和模型训练消耗信息,从所述多个候选从节点中选择当前一轮联邦学习的多个参与从节点,包括:
将所述多个候选从节点各自的目标模型精度和模型训练消耗信息,输入已训练的深度强化学习模型,输出所述多个候选从节点各自对应的参与概率;
将参与概率大于预设阈值的候选从节点作为参与从节点,获得多个参与从节点。
在一种可能的实施方式中,所述若融合后的全局机器学习模型满足预设条件,则通过区块链向参与联邦学习的各个从节点发送相应的激励信息,包括:
若融合后的全局机器学习模型达到收敛目标或者已达到最大迭代次数,则确定参与联邦学习的各个从节点中的每个从节点,参与多轮联邦学习获得的激励信息;
通过区块链分别向所述各个从节点发送相应的激励信息。
在一种可能的实施方式中,所述确定参与联邦学习的各个从节点中的每个从节点,参与多轮联邦学习获得的激励信息,包括:
针对所述各个从节点中的每个从节点,分别执行以下操作:
确定每个从节点参与的多轮联邦学习中,每一轮联邦学习的模型训练消耗信息和模型质量;
根据每一轮联邦学习的模型训练消耗信息和模型质量,确定每一轮联邦学习的激励信息;
根据每个从节点参与的多轮联邦学习中,每一轮联邦学习的激励信息,获得每个从节点参与多轮联邦学习获得的激励信息。
在一种可能的实施方式中,所述区块链包括多个区块链分片,每个区块链分片包括同一区域的多个从节点各自的区块;
所述若融合后的全局机器学习模型满足预设条件,则通过区块链向参与联邦学习的各个从节点发送相应的激励信息,包括:
若融合后的全局机器学习模型满足预设条件,则通过所述多个区块链分片各自对应的多个区块,分别向参与联邦学习的各个从节点发送相应的激励信息。
在一种可能的实施方式中,所述分别向所述多个从节点发送当前一轮联邦学习的模型训练指示,包括:
分别向所述多个从节点发送当前一轮联邦学习所需要的数据集的数据类型、训练设备、机器学习方法。
第二方面,本申请实施例提供一种基于区块链的联邦学习激励装置,包括:
指示发送模块,用于主节点与多个从节点之间进行多轮联邦学习过程中,每开启一轮联邦学习,分别向所述多个从节点发送当前一轮联邦学习的模型训练指示,以使所述多个从节点中的多个候选从节点根据所述模型训练指示,向所述主节点提交各自的目标模型精度和模型训练消耗信息;
选择模块,用于基于所述多个候选从节点各自的目标模型精度和模型训练消耗信息,从所述多个候选从节点中选择当前一轮联邦学习的多个参与从节点;
模型发送模块,用于分别向所述多个参与从节点发送前一轮联邦学习获得的全局机器学习模型,以使所述多个参与从节点采用各自的数据集对所述全局机器学习模型进行迭代训练,获得各自的本地机器学习模型;
融合模块,用于获取所述多个参与从节点各自提交的本地机器学习模型,并将获得的多个本地机器学习模型进行融合;
激励模块,用于若融合后的全局机器学习模型满足预设条件,则通过区块链向参与联邦学习的各个从节点发送相应的激励信息。
在一种可能的实施方式中,所述选择模块还用于:
将所述多个候选从节点各自的目标模型精度和模型训练消耗信息,输入已训练的深度强化学习模型,输出所述多个候选从节点各自对应的参与概率;
将参与概率大于预设阈值的候选从节点作为参与从节点,获得多个参与从节点。
在一种可能的实施方式中,所述激励模块还用于:
若融合后的全局机器学习模型达到收敛目标或者已达到最大迭代次数,则确定参与联邦学习的各个从节点中的每个从节点,参与多轮联邦学习获得的激励信息;
通过区块链分别向所述各个从节点发送相应的激励信息。
在一种可能的实施方式中,所述确定参与联邦学习的各个从节点中的每个从节点,参与多轮联邦学习获得的激励信息时,所述激励模块还用于:
针对所述各个从节点中的每个从节点,分别执行以下操作:
确定每个从节点参与的多轮联邦学习中,每一轮联邦学习的模型训练消耗信息和模型质量;
根据每一轮联邦学习的模型训练消耗信息和模型质量,确定每一轮联邦学习的激励信息;
根据每个从节点参与的多轮联邦学习中,每一轮联邦学习的激励信息,获得每个从节点参与多轮联邦学习获得的激励信息。
在一种可能的实施方式中,所述区块链包括多个区块链分片,每个区块链分片包括同一区域的多个从节点各自的区块;
所述激励模块还用于:
若融合后的全局机器学习模型满足预设条件,则通过所述多个区块链分片各自对应的多个区块,分别向参与联邦学习的各个从节点发送相应的激励信息。
在一种可能的实施方式中,所述指示发送模块还用于:
分别向所述多个从节点发送当前一轮联邦学习所需要的数据集的数据类型、训练设备、机器学习方法。
第三方面,本申请实施例还提供了一种电子设备,包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的计算机程序,当所述计算机程序被所述处理器执行时,使得所述处理器实现第一方面任一种基于区块链的联邦学习激励方法的步骤。
第四方面,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时,实现第一方面任一种基于区块链的联邦学习激励方法的步骤。
第五方面,本申请实施例提供一种计算机程序产品,其包括计算机指令,所述计算机指令存储在计算机可读存储介质中;当电子设备的处理器从所述计算机可读存储介质读取所述计算机指令时,所述处理器执行该计算机指令,使得所述电子设备执行第一方面任一种基于区块链的联邦学习激励方法的步骤。
本申请实施例提供的基于区块链的联邦学习激励方法至少具有如下有益效果:
根据本申请实施例提供的方案,通过联邦学习,使从节点(可以理解为用户)共享的是使用自己的本地数据进行训练后的机器学习模型,而不再是原始数据,从而使用户的数据安全得到了保证。并且,在每一轮联邦学习中,选择最优化的参与用户进行联邦学习,提升训练的机器学习模型的质量。最后,在用户成功参与联邦学习后,通过区块链向用户发送相应的激励信息,以激励用户参与数据共享,并且提高激励过程中的数据安全性。
本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种基于区块链的联邦学习激励方法的流程图;
图2为本申请实施例提供的另一种基于区块链的联邦学习激励方法的流程图;
图3为本申请实施例提供的另一种基于区块链的联邦学习激励方法的流程图;
图4为本申请实施例提供的一种深度强化学习模型的训练示意图;
图5为本申请实施例提供的一种区块链分片的示意图;
图6为本申请实施例提供的一种基于区块链的联邦学习激励方法的流程图;
图7为本申请实施例提供的一种基于区块链的联邦学习激励装置的示意图;
图8为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,显然,所描述的实施例仅仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
下面对本申请实施例涉及的部分名词进行解释。
联邦学习:又名联邦机器学习、联合学习、联盟学习。联邦学习是一个机器学习框架,能有效帮助多个机构在满足用户隐私保护、数据安全和政府法规的要求下,进行数据使用和机器学习建模。旨在让分散的各参与方在满足不向其他参与者披露隐私数据的前提下,协作进行机器学习的模型训练。具体地,每个拥有数据的终端设备利用自己的数据训练局部模型,在训练过程中不同的设备之间相互通信,所有局部模型借助通信整合到一起形成一个全局机器学习模型,该全局机器学习模型仿佛是收集了所有数据之后训练得到的模型。
需要说明的是,本申请的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。
此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
下面对本申请实施例的设计思想进行介绍。
如前文所述,目前,大数据应用通常需要通过机器学习模型实现相应的功能,而机器学习模型需要通过大量用户数据训练获得。然而,大多数用户往往不愿意共享自己所持有的数据,一方面是因为共享数据需要消耗用户自身的计算资源以及占用通信带宽等;另一方面是因为共享数据(如位置信息等)可能会存在数据泄露的风险。因此,如何在保护用户数据的前提下,激励用户参与数据共享仍然是一个挑战。
为了解决用户数据共享参与意愿低的问题,可以过激励机制来激励用户参与数据共享,激励机制可以通过博弈论与拍卖算法来实现。博弈论与拍卖算法作为经济学的一个分支,天然适用于无线网络中的数据共享与资源交易系统。
但是,目前的激励机制方案还存在一些问题。首先,这些方案大多数都是由一个中心化服务器向用户发起数据共享。然而,中心化系统存在例如单点故障、可扩展性低等问题。当该中心化节点受到外部攻击时会引起整个系统的失效,且中心化节点的可扩展性较低导致更容易到达性能瓶颈。其次,这些方案并没有考虑用户的隐私泄露问题。用户在数据共享的过程中,需要使用自己的设备收集并共享数据,然后与中心化服务器进行交易以获得相应的任务报酬。而这些数据与交易记录通常与用户的个人信息联系密切,恶意用户可以通过入侵中心化服务器直接获得其他用户的隐私数据,造成隐私泄露。因此,在设计激励机制时,还需要将数据安全以及隐私保护等问题考虑进去。
出于对数据存储安全问题以及隐私保护的考虑,区块链作为一种可以解决信任问题并提供安全的数据存储的前沿技术被引入到物联网的数据共享中。区块链中的每一个区块都包含了前一个区块的哈希值,时间戳以及交易记录等。区块之间前后连接的特性,使得记录到区块链中的交易难以被篡改。区块链的本质实际上是一个开放的分布式账本,可以校验并永久存储双方之间的交易记录。区块链中的所有用户通过地址来进行交易,从而隐藏了用户的身份信息,因此保护了用户的隐私。此外,智能合约的提出与实现使得区块链中的用户可以通过已部署的合约进行自动化的交互,而无需事先了解并获取信任。相较于中心化的方案,区块链的出现使无线网络中的数据共享可以进行分布式的存储,并节省了设备的管理成本,解决了中心化服务器的性能瓶颈问题,智能合约则可以在交易双方无信任关系的前提下搭建自动化的交互平台。因此,区块链与智能合约共同为无线网络中的数据共享提供了去中心化以及隐私保护的解决方案。虽然区块链可以为无线网络中的数据共享提供安全保障,但是用户所共享的未经处理的本地数据仍有非常大的隐私泄露风险。
近年来,联邦学习的出现为无线网络中的数据共享提供了新的解决方案。在以联邦学习为基础的解决方案中,用户共享的是使用自己的本地数据进行训练后的机器学习模型,而不再是原始数据,从而使用户的隐私安全得到了保证。出于对用户隐私的考量,设计合适的模型共享激励机制对以隐私保护为目的的物联网数据共享来说,是一个有前景的解决方案。
综上所述,本申请实施例提供一种基于区块链的联邦学习激励方法、装置、设备和介质,通过联邦学习,使用户共享的是使用自己的本地数据进行训练后的机器学习模型,而不再是原始数据,从而使用户的数据安全得到了保证。并且,在每一轮联邦学习中,选择最优化的参与用户进行联邦学习,提升训练的机器学习模型的质量。最后,在用户成功参与联邦学习后,通过区块链向用户发送相应的激励信息,以激励用户参与数据共享,并且提高激励过程中的数据安全性。
下面结合附图以及具体实施方式对本申请实施例的基于区块链的联邦学习激励方法进行介绍。
参考图1,本申请实施例提供了一种基于区块链的联邦学习激励方法,可应用于主节点,该基于区块链的联邦学习激励方法可以包括以下步骤:
S101,主节点与多个从节点之间进行多轮联邦学习过程中,每开启一轮联邦学习,执行以下S102-S106。
其中,主节点可以是数据共享发起方的设备,例如终端设备或者服务器等,从节点可以是参与联邦学习的用户设备,例如可以是终端设备或者服务器。终端设备包括但不限于桌面计算机、手机、电脑、智能家电、智能语音交互设备、车载终端等电子设备。服务器可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是云服务器,在此不作限定。
S102,分别向多个从节点发送当前一轮联邦学习的模型训练指示,以使多个从节点中的多个候选从节点根据模型训练指示,向主节点提交各自的目标模型精度和模型训练消耗信息。
其中,模型训练指示可以根据需要进行训练的机器学习模型确定,可以包括训练所需要的数据集的数据类型、训练设备、机器学习方法等,具体可以根据实际需求设置。其中,数据集为从节点自身产生的用户数据,训练设备即参与联邦学习的用户设备,用于使用本地的数据集基于机器学习方法对机器学习模型进行训练。
多个从节点接收到主节点发送给模型训练指示后,可以选择参与或者不参与本轮联邦学习,选择参与的多个候选从节点根据模型训练指示,向主节点提交各自的目标模型精度和模型训练消耗信息。
可选地,在S102中,主节点可以分别向多个从节点发送当前一轮联邦学习所需要的数据集的数据类型、训练设备、机器学习方法。
进一步地,多个从节点在接收到主节点发送的模型训练指示后,可以确定各自的目标模型精度和模型训练消耗信息,并将各自的目标模型精度和模型训练消耗信息发送给运营设备。
S103,基于多个候选从节点各自的目标模型精度和模型训练消耗信息,从多个候选从节点中选择当前一轮联邦学习的多个参与从节点。
该步骤中,目标模型精度可以决定候选从节点训练获得的本地机器学习模型的质量,可以兼顾本地机器学习模型的质量和模型训练消耗信息,选择最优化的多个参与从节点,使得获得的各个本地机器学习模型的总质量较高,且总模型训练消耗较低。
可选地,可以采用深度强化学习算法,从多个从节点中选择当前一轮联邦学习的多个候选从节点。具体地,深度强化学习算法可以采用参数化后的神经网络。本申请下面实施例中将对深度强化学习算法的训练过程进行介绍。
S104,分别向多个参与从节点发送前一轮联邦学习获得的全局机器学习模型,以使多个参与从节点采用各自的数据集对全局机器学习模型进行迭代训练,获得各自的本地机器学习模型。
其中,运营设备在发送全局机器学习模型时,还可以将超参数(如学习率等内容)发送给多个候选从节点。
S105,获取多个参与从节点各自提交的本地机器学习模型,并将获得的多个本地机器学习模型进行融合。
其中,运营设备可以采用联邦学习中的FedAvg算法将多个本地机器学习模型进行融合。FedAvg算法的思想很直观为,将训练过程分为多个回合,每个回合中选择CK(0≤C≤1)个局部模型(可以理解为本申请实施例的本地机器学习模型)对数据进行学习。第k个局部模型在一个回合中的epoch数量为E,batch大小为B,从而迭代次数为Enk/B。在一个回合结束之后,对所有参与学习的局部模型的参数进行加权平均得到全局模型(可以理解为本申请实施例的全局机器学习模型)。
同时,运营设备还可以验证每个参与用户设备提交的本地机器学习模型是否达到其提交的目标模型精度,如果没有达到,则该用户设备的模型训练任务失败,未成功参与本轮联邦学习。
S106,若融合后的全局机器学习模型满足预设条件,则通过区块链向参与联邦学习的各个从节点发送相应的激励信息。
其中,预设条件可以是达到收敛目标或者已达到最大迭代次数。参与联邦学习的各个从节点中的每个从节点,可以是在多轮联邦学习过程中成功参与联邦学习的从节点,成功参与联邦学习可以是成功参与一轮或多轮联邦学习。
针对参与联邦学习每个从节点,可以确定其成功参与的每一轮联邦学习的激励信息,该激励信息可以根据每一轮联邦学习的模型训练消耗信息和模型质量确定,其中,模型质量可以根据该从节点训练获得的本地机器学习模型的实际精度确定;然后将该从节点成功参与的多轮联邦学习的激励信息求和,获得总的激励信息。
在一些实施例中,如图2所示,上述S106若融合后的全局机器学习模型满足预设条件,则通过区块链向参与联邦学习的各个从节点发送相应的激励信息,可以包括以下步骤:
S1061,若融合后的全局机器学习模型达到收敛目标或者已达到最大迭代次数,则确定参与联邦学习的各个从节点中的每个从节点,参与多轮联邦学习获得的激励信息。
在一种可能的实施方式中,S1061中在确定各个从节点中的每个从节点,参与多轮联邦学习获得的激励信息时,可以包括以下步骤:
A1、确定每个从节点参与的多轮联邦学习中,每一轮联邦学习的模型训练消耗信息和模型质量。
具体地,每一轮联邦学习的模型训练消耗信息可以是从节点的用户设备的电量消耗等,模型质量可以根据从节点训练得到的本地机器学习模型的实际精度确定。在每个从节点成功参与一轮联邦学习后,可以记录本轮联邦学习的模型训练消耗信息和得到的本地机器学习模型的模型质量。
A2、根据每一轮联邦学习的模型训练消耗信息和模型质量,确定每一轮联邦学习的激励信息。
本申请实施例中,在完成整个联邦学习过程之后,主节点可以根据每一轮联邦学习过程中,参与本轮联邦学习的多个参与从节点各自训练得到的本地机器学习模型的模型质量,确定本轮联邦学习的收益,然后结合多个参与从节点各自的模型训练消耗信息,确定多个参与从节点各自的激励信息。
A3、根据每个从节点参与的多轮联邦学习中,每一轮联邦学习的激励信息,获得每个从节点参与多轮联邦学习获得的激励信息。
由上述A2,可以确定成功参与联邦学习的每个从节点,参与的每一轮联邦学习的激励信息,将多轮联邦学习分别获得的激励信息求和,可以得到每个从节点参与多轮联邦学习获得的激励信息。
S1062,通过区块链分别向各个从节点发送相应的激励信息。
其中,激励信息可以是主节点支付给从节点的报酬。具体地,主节点可以向各个从节点在区块链中的区块发送相应的激励信息,各个从节点可以从各自的区块中获取相应的激励信息,以完成激励信息的交易。
本申请实施例中,通过联邦学习,使从节点(可以理解为用户)共享的是使用自己的本地数据进行训练后的机器学习模型,而不再是原始数据,从而使用户的数据安全得到了保证。并且,在每一轮联邦学习中,选择最优化的参与用户进行联邦学习,提升训练的机器学习模型的质量。最后,在用户成功参与联邦学习后,通过区块链向用户发送相应的激励信息,以激励用户参与数据共享,并且提高激励过程中的数据安全性。
在一些实施例中,如图3所示,上述S103基于多个候选从节点各自的目标模型精度和模型训练消耗信息,从多个候选从节点中选择当前一轮联邦学习的多个参与从节点,可以包括以下步骤:
S1031,将多个候选从节点各自的目标模型精度和模型训练消耗信息,输入已训练的深度强化学习模型,输出多个候选从节点各自对应的参与概率。
在本申请实施例中,深度强化学习模型可以采用神经网络(例如Critic网络),使用神经网络来参数化智能体的策略与状态价值函数。智能体是人工智能领域中一个很重要的概念,任何独立的能够思考并可以同环境交互的实体都可以抽象为智能体。
S1032,将参与概率大于预设阈值的候选从节点作为参与从节点,获得多个参与从节点。
下面以主节点为运营设备,从节点为用户设备为例,对运营设备和多个用户设备之间的一轮联邦学习过程进行示例性介绍。
一次完整的联邦学习包括多轮联邦学习,即需要多轮次的迭代,定义第t轮迭代共有N个用户设备参与,并且每个用户设备i∈N都有一个大小为di的本地数据样本可用于本地机器学习模型的训练。为了使建模过程更加简洁,本申请中假设同一个用户设备所收集的数据样本大小是相同的。
假设用户设备i在第t轮本地模型训练过程中,计算一个数据样本的CPU周期为ci,用户设备可以计算得到ci的具体数值。定义fi为用户设备的CPU周期频率,ζi是用户设备i的有效电容参数,因此,对于用户设备来说,执行一次本地机器学习迭代所需要的能源消耗
Figure BDA0003440861400000131
可以通过式(1)计算:
Figure BDA0003440861400000132
另外,根据上述已有的参数,可以通过式(2)计算得出用户设备i执行一次本地迭代所需要的计算时间
Figure BDA0003440861400000133
Figure BDA0003440861400000141
在一轮本地迭代过程中,用户设备的本地迭代次数会受到自身的本地数据质量的影响,并影响最终的本地机器学习模型精度。本申请实施例将用户设备i在第t轮本地迭代中,所得到的模型精度设为
Figure BDA0003440861400000142
显然,当用户设备i的本地数据集质量更高时,所得到的模型精度
Figure BDA0003440861400000143
也会更高,从而降低所需要的迭代次数。
当最终所获得的全局机器学习模型精度是一个定值时,可以将用户设备i在第t轮迭代中进行一次本地机器学习所需要的迭代次数定义为
Figure BDA0003440861400000144
Figure BDA0003440861400000145
此外,由于网络中的下行带宽通常比上行带宽大很多,所以可以忽略用户设备从平台下载全局机器学习模型的时间,只考虑模型的训练时间以及模型参数的上传时间。
并且,可以认为用户设备在请求加入联邦学习的一次迭代过程中,位置是不变的。因此,可以得出第t轮迭代过程中,用户设备i的传输速率:
Figure BDA0003440861400000146
其中
Figure BDA0003440861400000147
Figure BDA0003440861400000148
分别为第t轮迭代中的传输带宽和信道噪声,
Figure BDA0003440861400000149
为传输功率,
Figure BDA00034408614000001410
为点对点连接中的信道增益。
另外,考虑在一次全局迭代过程中,由于训练模型的超参数如神经网络、激活函数等都是由平台进行设定的,即可以认为用户设备上传的数据大小即模型参数是恒定的,设为σ。因此,用户设备i将本地机器学习模型更新上传至平台所需要的传输时间
Figure BDA00034408614000001411
可以通过式(3)进行计算:
Figure BDA00034408614000001412
因此,可以得到用户设备i在第t轮迭代中,上传模型所需要消耗的电量
Figure BDA00034408614000001413
可以通过式(4)进行计算:
Figure BDA00034408614000001414
可以得到用户设备i在第t轮迭代中,进行本地机器学习模型更新所需要的总计算时间Tt,i,可以通过式(5)进行计算:
Figure BDA00034408614000001415
可以得到用户设备i在第t轮迭代中,进行本地机器学习模型更新所需要的总电量消耗Et,i,可以通过式(6)进行计算:
Figure BDA0003440861400000151
由于在本申请设计的激励机制中,用户设备仅在成功参与迭代时可获得报酬,其余时刻为0,因此,用户设备的收益
Figure BDA0003440861400000152
可以通过式(7)进行计算:
Figure BDA0003440861400000153
其中,
Figure BDA0003440861400000154
为运营设备支付给用户设备i的报酬。
接下来基于上述公式定义联邦学习运营设备的收益,该收益与用户设备的数据质量以及本地迭代时间有关。首先,将用户设备i的数据质量定义为
Figure BDA0003440861400000155
其中
Figure BDA0003440861400000156
是由本地机器学习模型精度所影响的本地机器学习模型迭代次数的相关系数。当
Figure BDA0003440861400000157
越大代表用户设备i的样本质量越好,本地机器学习模型精度越高。此外,在一次迭代中,联邦学习运营设备还会将本次迭代的最长等待时间
Figure BDA0003440861400000158
发送给用户设备,一旦用户设备超过
Figure BDA0003440861400000159
还没有提交本地机器学习模型,则运营设备会标记该用户设备任务失败,并不再支付报酬。
结合上述条件,本申请实施例中的用户设备i的模型质量
Figure BDA00034408614000001510
可以通过式(8)进行计算:
Figure BDA00034408614000001511
其中
Figure BDA00034408614000001512
为运营设备对用户设备i的本地训练时间的满意度,用户设备i的本地训练时间越短,运营设备对其满意度越高。然后,运营设备的收益
Figure BDA00034408614000001513
可以通过式(9)进行计算:
Figure BDA00034408614000001514
R(·)为运营设备的价值函数,运营设备的收益即为用户设备的模型带来的价值减去运营设备支付给用户设备的报酬总和。其中,R(·)具有以下特性:R(0)=0,R′(·)>0,R″(·)<0,即边际价值递减。
在激励机制中,所需要优化的目标通常为最大化总收益,即运营设备收益与用户设备收益的总和
Figure BDA0003440861400000161
可以通过式(10)进行计算:
Figure BDA0003440861400000162
其中,total为一次完整联邦学习过程中所需要的全局迭代总次数(即联邦学习的轮次)。用户设备i的报酬
Figure BDA0003440861400000163
可以通过式(11)进行计算:
Figure BDA0003440861400000164
其中,wi表示用户设备i参与第i轮迭代,w-i表示用户设备i不参与第i轮迭代,从全局(即一次完整联邦学习过程)来计算用户设备i在每一轮联邦学习的报酬。
下面介绍一下基于深度强化学习算法的动态激励机制。
强化学习(Reinforcement Learning,RL),又称再励学习、评价学习或增强学习,是机器学习的范式和方法论之一,用于描述和解决智能体(agent)在与环境的交互过程中通过学习策略以达成回报最大化或实现特定目标的问题。强化学习的常见模型是标准的马尔可夫决策过程(Markov Decision Process,MDP)。
因此,本申请的动态激励机制满足马尔可夫性,即每一轮迭代中的用户设备选择只与之前轮次有关,而与之后的轮次无关。因此,可以将每一轮次的迭代建模成马尔可夫决策过程,即构建状态空间,动作空间以及相应的奖励函数。
状态空间:结合本申请实施例所提出的动态激励机制,在每一轮的联邦学习迭代中,智能体从环境所观察到的状态由用户设备的模型质量以及用户设备的模型训练成本组成。定义任意一个epoch的状态为:
Figure BDA0003440861400000165
其中
Figure BDA0003440861400000166
为第t个epoch中用户设备i的模型质量,
Figure BDA0003440861400000167
为第t个epoch中用户设备i所提交的模型训练成本,
Figure BDA0003440861400000168
为前t-1个epoch中所选择参与迭代的用户设备总模型质量,
Figure BDA0003440861400000169
为前t-1个epoch中所选择参与迭代的用户设备总训练成本。
动作空间:基于从环境中观察得到的状态st,智能体根据学习到的策略做出相应的动作。结合本申请实施例,在第t个epoch中,需要根据当前的状态st中的用户设备模型质量与训练成本选择参与到当前迭代的用户设备,因此将第t个epoch的动作at定义为:
Figure BDA0003440861400000171
其中,
Figure BDA0003440861400000172
为决定是否将第t个epoch中第i个用户设备加入到当前轮次的迭代中。由于神经网络输出的都是连续值,因此定义
Figure BDA0003440861400000173
为不将用户设备i加入到当前轮次的迭代中,当
Figure BDA0003440861400000174
为决定将用户设备i加入到当前轮次的迭代中。
奖励函数:由于本申请所定义的总收益计算公式无法拆分成累加的形式,并且需要到最后一个epoch才可以将所有参与模型共享的用户设备集合确定下来,此时才能进行总收益的计算。基于这样的问题,假设一个episode(一次完整的联邦学习)一共有total个epoch,每个epoch为一轮联邦学习迭代,每一轮都需要选择可最大化总收益的用户设备参与。
因此,本申请将奖励函数rt可以通过式(12)计算:
Figure BDA0003440861400000175
本申请中所使用的深度强化学习算法总体训练流程如图4所示。从图4中可知,本申请实施例所使用的Actor-Critic框架的Critic网络近似的是状态价值函数
Figure BDA0003440861400000176
C ritic是一个神经网络,以状态s为输入,以期望的reward为输出。
状态价值函数用来评价当智能体处于状态s时,使用策略π可以得到的长期奖励,通过长期奖励来帮助智能体改进策略。当任意一个策略π有具体的状态价值函数时,就可以通过策略梯度方法来改进该策略。策略梯度方法的核心思想是增加获得高收益动作的概率,降低获得低收益动作的概率,直到获得最优的策略。
在本申请实施例中,可以使用神经网络(Critic网络)来参数化智能体的策略与状态价值函数。在对神经网络进行更新时,使用经验回放池中所采样的数据更新网络参数。具体地,使用优势函数的估计方法(generalized advantage estimator,GAE)以及状态价值函数V(s)来计算去除方差的优势函数估计器A(s,a)。
综上所述,基于Actor-Critic框架与随机梯度上升的深度强化学习算法的策略网络与价值函数更新方式可以包括式(13)-式(18):
Figure BDA0003440861400000181
Figure BDA0003440861400000182
Figure BDA0003440861400000183
Figure BDA0003440861400000184
Figure BDA0003440861400000185
Figure BDA0003440861400000186
其中,
Figure BDA0003440861400000187
为求期望的符号,θ指神经网络的参数,e表示第e个episode,θe+1表示可以最大化期望的下一轮的神经网络参数;k表示第e个episode的第k个epoch,
Figure BDA0003440861400000188
表示策略的更新差距;
Figure BDA0003440861400000189
表示每一个步骤所选择的状态所获得的奖励与折扣奖励之间的平方差,用来判断两者的差距;Υe和c分别是深度强化学习算法中的概率比例和状态价值函数的损失系数;
Figure BDA00034408614000001810
是从第k个epoch直至到达整个episode结束时的折扣奖励;θe′为用于采样的策略的参数;K表示第e个episode中当前一共迭代了K个epoch;g(∈,A)表示一个定义函数,∈是设定系数,表示旧策略与新策略之间的差距,更新的策略不能与旧策略相差太大。
接下来介绍算法的整体流程。首先,对策略网络参数θ、价值网络参数φ、价值函数的折扣因子γ、价值函数的损失系数c以及当前状态s0进行初始化。然后在第k个epoch中,将当前的状态sk输入到策略网络中获得相应的动作ak,根据奖励函数计算公式计算第k个epoch智能体获得的奖励rk并得到下一个状态sk+1。再将(sk,ak,rk,sk+1)放入经验回放池中,并将用于采样的策略网络的参数
Figure BDA00034408614000001811
设为θ。最后当已采集一定数量的样本后,从经验回放池中进行采样并根据上述式(14)和式(15)计算
Figure BDA00034408614000001812
Figure BDA00034408614000001813
并对策略网络与价值网络进行梯度更新,并在更新结束后清空经验回放池,最后进入下一个epoch。算法伪代码如下:
1、初始化策略网络与价值网络参数即θ与
Figure BDA0003440861400000191
折扣因子γ,损失系数c,当前状态s0
2、循环训练E个episode,对于每一次循环e,执行以下操作:
循环训练K个epoch,对于每一次循环k,执行以下操作:
将状态sk输入到策略网络πθ并获得相应的动作ak
根据奖励函数计算第k个epoch智能体获得的奖励rk
与环境交互获得下一个状态sk+1
将(sk,ak,rk,sk+1)放入经验回放池中;
将用于采样的策略网络的参数
Figure BDA0003440861400000192
设为θ;
当经验回放池中的样本数量已经满足一次批处理即B个以后,执行以下操作:
共循环训练M次,对于每一次循环,执行以下操作:
从经验回放池中进行采样并根据上述式(14)和式(15)计算
Figure BDA0003440861400000193
Figure BDA0003440861400000194
根据梯度方法更新两个网络的参数即θ与
Figure BDA0003440861400000195
循环结束后清空经验回放池。
在一些实施例中,考虑到区块链中的从节点的数量以及主机点与从节点之间的激励信息的交易数量不断增多,本申请实施例引入区块链的分片技术来加速交易的验证与上链过程。
示例性的,如图5所示,按照地区将交易分成多个区域来并发进行,即多链并行的全局状态,依次提高交易的吞吐量。在每一个区域中,设置单独的区块验证者(即矿工),此外可以设立一条单独的区块链来维护整个网络的操作。当不同的分片中需要跨分片交易时,涉及这些跨分片的多个片区中会共同产生区块,并且所属的矿工会协同验证这些交易。
因此,本申请实施例的区块链包括多个区块链分片,每个区块链分片包括同一区域的多个从节点各自的区块;上述S106中通过区块链向多个从节点发送相应的激励信息时,可以通过多个区块链分片各自对应的多个区块,分别向参与联邦学习的各个从节点发送相应的激励信息。
本申请实施例相对于已有的数据共享方案,具有隐私保护与交易溯源的优点。基于联邦学习技术可以使用户设备不上传原始数据而实现数据共享,从根源上杜绝了隐私泄露的可能性,达到了保护用户隐私的效果。基于区块链进行激励信息的交易,具有去中心化、可溯源的特性,实现了可信交易;进一步地,基于区块链分片技术可以大幅度提高交易吞吐量,并且链上交易不可篡改、可溯源,有利于提高系统的可信度。基于深度强化学习算法的动态激励机制,从实际场景出发,最优化参与每一轮联邦学习的用户设备,有利于将来的应用落地。
图6示出了本申请实施例的一种基于区块链的联邦学习激励方法的具体实施过程。
如图6所示,在本申请所提出的动态激励机制中,使用了联邦学习技术来进行全局机器学习模型更新,运营设备最终需要获得的是一个融合多个用户设备本地机器学习模型的全局机器学习模型。在联邦学习中,运营设备与用户设备之间有多轮全局迭代过程。运营设备在开启新一轮联邦学习后,联邦学习迭代流程如下:
S1,运营设备开启新一轮联邦学习。
S2,运营设备向用户设备发布本轮联邦学习的模型训练指示。
其中,模型训练指示可以包括数据集的数据类型、训练设备、机器学习方法等具体要求。
S3,参与联邦学习的多个用户设备分别向运营设备提交目标模型精度及其模型训练消耗信息。
其中,模型训练消耗信息可以是用户设备的消耗电量等。
S4,运营设备通过参数化后的神经网络,根据多个用户设备各自的目标模型精度及其模型训练成本,从多个用户设备中选择本轮联邦学习的多个参与用户设备。
S5,运营设备将上一轮联邦学习获得的全局机器学习模型分别发送给多个参与用户设备。
其中,运营设备在发送全局机器学习模型时,还可以将超参数(如学习率等内容)发送给多个参与用户设备。
S6,多个参与用户设备分别通过各自的数据集对全局机器学习模型进行迭代训练,获得各自的本地机器学习模型。
S7,多个参与用户设备分别将各自的本地机器学习模型发送给运营设备。
S8,运营设备将多个参与用户设备各自的本地机器学习模型进行融合,获得融合后的全局机器学习模型。
其中,可以使用联邦学习方法中的FedAvg算法将多个本地机器学习模型进行融合。同时,运营设备还可以验证每个参与用户设备提交的本地机器学习模型是否达到其提交的目标模型精度,如果没有达到,则该用户设备的模型训练任务失败。
S9,判断融合后的全局机器学习模型是否达到收敛目标或达到最大迭代次数;若是,则执行S10;若否,则返回S1;
S10,运营设备通过区块链向多个参与用户设备支付相应的报酬。
本申请实施例至少具有以下有益效果:
1)结合区块链分片技术与联邦学习技术,为大数据开发提供了一种隐私保护的数据共享方式,并且区块链分片技术提高了整个系统的交易吞吐量,以及其去中心化的特性提高了系统的可用性。
2)在多轮联邦学习的每一轮联邦学习过程中,从多个用户设备中选择一部分用户设备参与本轮联邦学习,使得网络中的用户设备随时离开与加入联邦学习,并且以一定的报酬激励用户设备参与到数据共享中,即采用动态的激励机制。
3)使用深度强化学习算法从多个用户设备中选择一部分用户设备参与每一轮联邦学习,从而最优化参与每一轮联邦学习的用户设备。
基于相同的发明构思,本申请实施例还提供了一种基于区块链的联邦学习激励装置,该装置解决问题的原理与上述实施例的方法相似,因此该装置的实施可以参见方法的实施,重复之处不再赘述。
参阅图7所示,本申请实施例提供一种基于区块链的联邦学习激励装置,包括指示发送模块71、选择模块72、模型发送模块73、融合模块74、激励模块75。
指示发送模块71,用于主节点与多个从节点之间进行多轮联邦学习过程中,每开启一轮联邦学习,分别向多个从节点发送当前一轮联邦学习的模型训练指示,以使多个从节点中的多个候选从节点根据模型训练指示,向主节点提交各自的目标模型精度和模型训练消耗信息;
选择模块72,用于基于多个候选从节点各自的目标模型精度和模型训练消耗信息,从多个候选从节点中选择当前一轮联邦学习的多个参与从节点;
模型发送模块73,用于分别向多个参与从节点发送前一轮联邦学习获得的全局机器学习模型,以使多个参与从节点采用各自的数据集对全局机器学习模型进行迭代训练,获得各自的本地机器学习模型;
融合模块74,用于获取多个参与从节点各自提交的本地机器学习模型,并将获得的多个本地机器学习模型进行融合;
激励模块75,用于若融合后的全局机器学习模型满足预设条件,则通过区块链向参与联邦学习的各个从节点发送相应的激励信息。
在一种可能的实施方式中,选择模块72还用于:
将多个候选从节点各自的目标模型精度和模型训练消耗信息,输入已训练的深度强化学习模型,输出多个候选从节点各自对应的参与概率;
将参与概率大于预设阈值的候选从节点作为参与从节点,获得多个参与从节点。
在一种可能的实施方式中,激励模块75还用于:
若融合后的全局机器学习模型达到收敛目标或者已达到最大迭代次数,则确定参与联邦学习的各个从节点中的每个从节点,参与多轮联邦学习获得的激励信息;
通过区块链分别向各个从节点发送相应的激励信息。
在一种可能的实施方式中,确定参与联邦学习的各个从节点中的每个从节点,参与多轮联邦学习获得的激励信息时,激励模块75还用于:
针对各个从节点中的每个从节点,分别执行以下操作:
确定每个从节点参与的多轮联邦学习中,每一轮联邦学习的模型训练消耗信息和模型质量;
根据每一轮联邦学习的模型训练消耗信息和模型质量,确定每一轮联邦学习的激励信息;
根据每个从节点参与的多轮联邦学习中,每一轮联邦学习的激励信息,获得每个从节点参与多轮联邦学习获得的激励信息。
在一种可能的实施方式中,区块链包括多个区块链分片,每个区块链分片包括同一区域的多个从节点各自的区块;
激励模块75还用于:
若融合后的全局机器学习模型满足预设条件,则通过多个区块链分片各自对应的多个区块,分别向参与联邦学习的各个从节点发送相应的激励信息。
在一种可能的实施方式中,指示发送模块71还用于:
分别向多个从节点发送当前一轮联邦学习所需要的数据集的数据类型、训练设备、机器学习方法。
关于上述实施例中的装置,其中各个模块的具体执行方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
基于相同的发明构思,本申请实施例还提供了一种电子设备,该电子设备解决问题的原理与上述实施例的方法相似,因此该电子设备的实施可以参见方法的实施,重复之处不再赘述。
参阅图8所示,电子设备可以包括处理器802和存储器801。存储器801向处理器802提供存储器801中存储的程序指令和数据。在本申请实施例中,存储器801可以用于存储本申请实施例中多媒体资源处理的程序。
处理器802通过调用存储器801存储的程序指令,处理器802用于执行上述任意方法实施例中的方法,例如图2所示的实施例提供的一种基于区块链的联邦学习激励方法。
本申请实施例中不限定上述存储器801和处理器802之间的具体连接介质。本申请实施例在图8中以存储器801和处理器802之间通过总线803连接,总线803在图8中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。总线803可以分为地址总线、数据总线、控制总线等。为便于表示,图8中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器可以包括只读存储器(Read-Only Memory,ROM)和随机存取存储器(RandomAccess Memory,RAM),还可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选地,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述处理器可以是通用处理器,包括中央处理器、网络处理器(NetworkProcessor,NP)等;还可以是数字指令处理器(Digital Signal Processing,DSP)、专用集成电路、现场可编程门陈列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。
本申请实施例还提供了一种计算机存储介质,该计算机可读存储介质内存储有计算机程序,电子设备的处理器从计算机可读存储介质读取该计算机程序,处理器执行该计算机程序,使得该电子设备执行上述任意方法实施例中的基于区块链的联邦学习激励方法。
在具体的实施过程中,计算机存储介质可以包括:通用串行总线闪存盘(USB,Universal Serial Bus Flash Drive)、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的存储介质。
与上述方法实施例基于同一发明构思,本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述任意一种基于区块链的联邦学习激励方法的步骤。
程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (10)

1.一种基于区块链的联邦学习激励方法,其特征在于,所述方法包括:
主节点与多个从节点之间进行多轮联邦学习过程中,每开启一轮联邦学习,执行以下操作:
分别向所述多个从节点发送当前一轮联邦学习的模型训练指示,以使所述多个从节点中的多个候选从节点根据所述模型训练指示,向所述主节点提交各自的目标模型精度和模型训练消耗信息;
基于所述多个候选从节点各自的目标模型精度和模型训练消耗信息,从所述多个候选从节点中选择当前一轮联邦学习的多个参与从节点;
分别向所述多个参与从节点发送前一轮联邦学习获得的全局机器学习模型,以使所述多个参与从节点采用各自的数据集对所述全局机器学习模型进行迭代训练,获得各自的本地机器学习模型;
获取所述多个参与从节点各自提交的本地机器学习模型,并将获得的多个本地机器学习模型进行融合;
若融合后的全局机器学习模型满足预设条件,则通过区块链向参与联邦学习的各个从节点发送相应的激励信息。
2.根据权利要求1所述的方法,其特征在于,所述基于所述多个候选从节点各自的目标模型精度和模型训练消耗信息,从所述多个候选从节点中选择当前一轮联邦学习的多个参与从节点,包括:
将所述多个候选从节点各自的目标模型精度和模型训练消耗信息,输入已训练的深度强化学习模型,输出所述多个候选从节点各自对应的参与概率;
将参与概率大于预设阈值的候选从节点作为参与从节点,获得多个参与从节点。
3.根据权利要求1所述的方法,其特征在于,所述若融合后的全局机器学习模型满足预设条件,则通过区块链向参与联邦学习的各个从节点发送相应的激励信息,包括:
若融合后的全局机器学习模型达到收敛目标或者已达到最大迭代次数,则确定参与联邦学习的各个从节点中的每个从节点,参与多轮联邦学习获得的激励信息;
通过区块链分别向所述各个从节点发送相应的激励信息。
4.根据权利要求3所述的方法,其特征在于,所述确定参与联邦学习的各个从节点中的每个从节点,参与多轮联邦学习获得的激励信息,包括:
针对所述各个从节点中的每个从节点,分别执行以下操作:
确定每个从节点参与的多轮联邦学习中,每一轮联邦学习的模型训练消耗信息和模型质量;
根据每一轮联邦学习的模型训练消耗信息和模型质量,确定每一轮联邦学习的激励信息;
根据每个从节点参与的多轮联邦学习中,每一轮联邦学习的激励信息,获得每个从节点参与多轮联邦学习获得的激励信息。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述区块链包括多个区块链分片,每个区块链分片包括同一区域的多个从节点各自的区块;
所述若融合后的全局机器学习模型满足预设条件,则通过区块链向参与联邦学习的各个从节点发送相应的激励信息,包括:
若融合后的全局机器学习模型满足预设条件,则通过所述多个区块链分片各自对应的多个区块,分别向参与联邦学习的各个从节点发送相应的激励信息。
6.根据权利要求1至4任一项所述的方法,其特征在于,所述分别向所述多个从节点发送当前一轮联邦学习的模型训练指示,包括:
分别向所述多个从节点发送当前一轮联邦学习所需要的数据集的数据类型、训练设备、机器学习方法。
7.一种基于区块链的联邦学习激励装置,其特征在于,所述装置包括:
指示发送模块,用于主节点与多个从节点之间进行多轮联邦学习过程中,每开启一轮联邦学习,分别向所述多个从节点发送当前一轮联邦学习的模型训练指示,以使所述多个从节点中的多个候选从节点根据所述模型训练指示,向所述主节点提交各自的目标模型精度和模型训练消耗信息;
选择模块,用于基于所述多个候选从节点各自的目标模型精度和模型训练消耗信息,从所述多个候选从节点中选择当前一轮联邦学习的多个参与从节点;
模型发送模块,用于分别向所述多个参与从节点发送前一轮联邦学习获得的全局机器学习模型,以使所述多个参与从节点采用各自的数据集对所述全局机器学习模型进行迭代训练,获得各自的本地机器学习模型;
融合模块,用于获取所述多个参与从节点各自提交的本地机器学习模型,并将获得的多个本地机器学习模型进行融合;
激励模块,用于若融合后的全局机器学习模型满足预设条件,则通过区块链向参与联邦学习的各个从节点发送相应的激励信息。
8.根据权利要求7所述的装置,其特征在于,所述选择模块还用于:
将所述多个候选从节点各自的目标模型精度和模型训练消耗信息,输入已训练的深度强化学习模型,输出所述多个候选从节点各自对应的参与概率;
将参与概率大于预设阈值的候选从节点作为参与从节点,获得多个参与从节点。
9.一种电子设备,其特征在于,其包括处理器和存储器,其中,所述存储器存储有程序代码,当所述程序代码被所述处理器执行时,使得所述处理器执行权利要求1~6中任一所述方法的步骤。
10.一种计算机可读存储介质,其特征在于,其包括程序代码,当所述程序代码在电子设备上运行时,所述程序代码用于使所述电子设备执行权利要求1~6中任一所述方法的步骤。
CN202111630365.9A 2021-12-28 2021-12-28 基于区块链的联邦学习激励方法、装置、设备和介质 Pending CN114580658A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111630365.9A CN114580658A (zh) 2021-12-28 2021-12-28 基于区块链的联邦学习激励方法、装置、设备和介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111630365.9A CN114580658A (zh) 2021-12-28 2021-12-28 基于区块链的联邦学习激励方法、装置、设备和介质

Publications (1)

Publication Number Publication Date
CN114580658A true CN114580658A (zh) 2022-06-03

Family

ID=81771107

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111630365.9A Pending CN114580658A (zh) 2021-12-28 2021-12-28 基于区块链的联邦学习激励方法、装置、设备和介质

Country Status (1)

Country Link
CN (1) CN114580658A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114819197A (zh) * 2022-06-27 2022-07-29 杭州同花顺数据开发有限公司 基于区块链联盟的联邦学习方法、系统、装置及存储介质
CN115296927A (zh) * 2022-09-28 2022-11-04 山东省计算中心(国家超级计算济南中心) 一种基于区块链的联邦学习可信融合激励方法及系统
CN115526339A (zh) * 2022-11-03 2022-12-27 中国电信股份有限公司 联邦学习方法、装置、电子设备及计算机可读存储介质
CN115660075A (zh) * 2022-11-10 2023-01-31 中国石油大学(华东) 一种异步的联邦强化学习方法、设备及存储介质
CN115994588A (zh) * 2023-03-16 2023-04-21 杭州海康威视数字技术股份有限公司 基于区块链与合同理论的联邦学习方法、装置及设备
CN116029370A (zh) * 2023-03-17 2023-04-28 杭州海康威视数字技术股份有限公司 基于区块链的联邦学习的数据共享激励方法、装置及设备

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114819197A (zh) * 2022-06-27 2022-07-29 杭州同花顺数据开发有限公司 基于区块链联盟的联邦学习方法、系统、装置及存储介质
CN114819197B (zh) * 2022-06-27 2023-07-04 杭州同花顺数据开发有限公司 基于区块链联盟的联邦学习方法、系统、装置及存储介质
CN115296927A (zh) * 2022-09-28 2022-11-04 山东省计算中心(国家超级计算济南中心) 一种基于区块链的联邦学习可信融合激励方法及系统
CN115526339A (zh) * 2022-11-03 2022-12-27 中国电信股份有限公司 联邦学习方法、装置、电子设备及计算机可读存储介质
CN115526339B (zh) * 2022-11-03 2024-05-17 中国电信股份有限公司 联邦学习方法、装置、电子设备及计算机可读存储介质
CN115660075A (zh) * 2022-11-10 2023-01-31 中国石油大学(华东) 一种异步的联邦强化学习方法、设备及存储介质
CN115660075B (zh) * 2022-11-10 2023-06-20 中国石油大学(华东) 一种异步的联邦强化学习方法、设备及存储介质
CN115994588A (zh) * 2023-03-16 2023-04-21 杭州海康威视数字技术股份有限公司 基于区块链与合同理论的联邦学习方法、装置及设备
CN115994588B (zh) * 2023-03-16 2023-07-25 杭州海康威视数字技术股份有限公司 基于区块链与合同理论的数据处理方法、装置及设备
CN116029370A (zh) * 2023-03-17 2023-04-28 杭州海康威视数字技术股份有限公司 基于区块链的联邦学习的数据共享激励方法、装置及设备
CN116029370B (zh) * 2023-03-17 2023-07-25 杭州海康威视数字技术股份有限公司 基于区块链的联邦学习的数据共享激励方法、装置及设备

Similar Documents

Publication Publication Date Title
CN114580658A (zh) 基于区块链的联邦学习激励方法、装置、设备和介质
Kang et al. Communication-efficient and cross-chain empowered federated learning for artificial intelligence of things
WO2020211491A1 (zh) 基于区块链的项目审核系统、方法、计算设备及存储介质
CN108520470B (zh) 用于生成用户属性信息的方法和装置
CN110417558A (zh) 签名的验证方法和装置、存储介质及电子装置
CN110533419B (zh) 基于区块链的风控模型的共享方法、装置及服务器
CN112039702B (zh) 基于联邦学习和相互学习的模型参数训练方法及装置
CN113422801B (zh) 边缘网络节点内容分配方法、系统、装置及计算机设备
Schneider et al. Social network analysis via multi-state reliability and conditional influence models
CN112948274A (zh) 测试用例评分模型训练方法和测试用例选择方法
Kanemura et al. Design of privacy-preserving mobile bitcoin client based on γ-deniability enabled bloom filter
CN111815169A (zh) 业务审批参数配置方法及装置
CN114327889A (zh) 一种面向分层联邦边缘学习的模型训练节点选择方法
CN111368984B (zh) 用于联盟学习的方法、装置及联盟学习系统
CN105681107A (zh) 一种无线路由器管理方法及系统
CN116684330A (zh) 基于人工智能的流量预测方法、装置、设备及存储介质
CN108805332B (zh) 一种特征评估方法和装置
CN103136417A (zh) 用于建模分析的基于互联网的托管系统和计算机可读介质
CN112926090A (zh) 基于差分隐私的业务分析方法及装置
WO2022068200A1 (zh) 缺陷预测方法和装置、存储介质和电子装置
CN115017362A (zh) 数据处理方法、电子设备及存储介质
KR102108504B1 (ko) 데이터베이스 구축 방법, 장치, 컴퓨터 프로그램 및 컴퓨터 판독 가능 기록매체
CN114662001A (zh) 资源交互预测模型训练方法和装置和资源推荐方法和装置
Zhang et al. An Approach to Determining Attribute Weights Based on Integrating Preference Information on Attributes with Decision Matrix.
CN114092162A (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