CN113221163A - 一种训练模型的方法及*** - Google Patents

一种训练模型的方法及*** Download PDF

Info

Publication number
CN113221163A
CN113221163A CN202110473057.3A CN202110473057A CN113221163A CN 113221163 A CN113221163 A CN 113221163A CN 202110473057 A CN202110473057 A CN 202110473057A CN 113221163 A CN113221163 A CN 113221163A
Authority
CN
China
Prior art keywords
model
cluster
blockchain
edge
edge servers
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.)
Granted
Application number
CN202110473057.3A
Other languages
English (en)
Other versions
CN113221163B (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.)
Shenzhen University
Original Assignee
Shenzhen University
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 Shenzhen University filed Critical Shenzhen University
Priority to CN202110473057.3A priority Critical patent/CN113221163B/zh
Publication of CN113221163A publication Critical patent/CN113221163A/zh
Application granted granted Critical
Publication of CN113221163B publication Critical patent/CN113221163B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/502Proximity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Mathematical Physics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Artificial Intelligence (AREA)
  • Medical Informatics (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Bioethics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Databases & Information Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请实施例提供的训练模型的方法,获取第一请求,第一请求包括用户的地理位置;根据地理位置,向第一集群发送指示信息,从而指示第一集群中的每个边缘服务器训练第一模型;从第一集群获取通过区块链中的至少部分边缘服务器验证的第一模型;根据通过验证的第一模型,生成目标模型。该方法由中心服务器根据第一模型生成目标模型,不需要用户提供本地样本集,保护了用户的数据安全;在边缘服务器受到攻击时,不会泄露用户的全部数据,保证了数据的安全性;根据区块链中的至少部分边缘服务器对第一模型进行验证,根据通过验证的第一模型生成目标模型,提高了目标模型的可靠性。

Description

一种训练模型的方法及***
技术领域
本申请属于边缘计算技术领域,尤其涉及一种训练模型的方法及***。
背景技术
随着计算机技术的迅速发展,深度学习(Deep Learning,DL)受到越来越多的关注。应用深度学习需要训练深度学习模型(DL模型)。但是,训练一个有效的DL模型需要大量的资源,例如设备的计算能力、存储能力等。一些个人用户或小型公司可能缺乏足够的设备或资金训练复杂的DL模型。
深度学***台的出现缓解了DL模型训练的问题。相关技术中,DLaaS平台在云数据中心设置了DL资源池,用户提供原始数据集以及目标DL模型,DLaaS平台自动调度训练机器并部署运行环境,最终将训练结果和模型返回给用户。该技术使得用户能够将DL模型的训练过程卸载到DLaaS平台。
由于用户需要将原始数据集上传到DLaaS平台,当DLaaS平台受到攻击者的入侵时,用户的信息、数据将可能被泄露和篡改,基于篡改后的数据得到的DL模型并不是真实的模型。因此,DLaaS平台的安全性和可靠性较低。
发明内容
针对上述技术问题,本申请实施例提供一种训练模型的方法及***,能够保证数据的安全性和模型的可靠性。
第一方面,本申请实施例提供了一种训练模型的方法,应用于训练模型的***,所述***包括中心服务器、多个边缘服务器以及区块链,所述多个边缘服务器为所述区块链中的多个区块链节点,所述方法包括:
获取第一请求,所述第一请求包括用户的地理位置;
根据所述地理位置,向第一集群发送指示信息,所述第一集群是根据所述地理位置确定的,所述指示信息指示所述第一集群中的每个边缘服务器训练第一模型,训练得到的多个所述第一模型属于目标模型的多个子模型;
从所述第一集群获取通过所述区块链中的至少部分边缘服务器验证的所述第一模型;
根据所述通过所述区块链中的至少部分边缘服务器验证的所述第一模型,生成所述目标模型。
特别地,根据所述地理位置,向第一集群发送指示信息,包括:
根据所述地理位置、所述目标模型的类型,向第一集群发送指示信息,所述第一集群是根据所述地理位置以及所述目标模型的类型确定的。
特别地,所述方法还包括:
获取所述多个边缘服务器的运行状况;
所述根据所述地理位置,向第一集群发送指示信息,包括:
根据所述地理位置、所述多个边缘服务器的运行状况,向第一集群发送指示信息,所述第一集群是根据所述地理位置以及所述多个边缘服务器的运行状况确定的。
考虑到地理位置以及边缘服务器的运行状况,能够快速响应第一请求,最小化模型训练任务的计算延迟。
特别地,所述第一模型是所述第一集群中的每个边缘服务器在所述指示信息的指示下,获取资源后,根据所述资源训练得到的,所述资源包括训练环境。
特别地,对于通过验证的任意一个第一模型,所述第一模型对应的所述区块链中的至少部分边缘服务器包括所述区块链中除生成所述第一模型的边缘服务器以外的边缘服务器。
特别地,所述至少部分边缘服务器是根据所述区块链产生的多个随机数确定的。
根据随机数确定至少部分边缘服务器,能够在确定部分边缘服务器时保证公平性与随机性。
特别地,所述多个随机数是根据所述区块链产生的随机数种子生成的。
特别地,每个所述随机数是根据所述区块链产生的随机数种子以及所述区块链中每个边缘服务器的权重生成的。
特别地,每个所述随机数是根据所述区块链产生的随机数种子、所述区块链中每个边缘服务器的权重以及所述区块链中每个边缘服务器的私钥生成的,经过公钥验证后所述随机数用于确定所述至少部分边缘服务器,所述私钥与所述公钥是对应的。
公钥/私钥对确保了随机数与边缘服务器是对应的,提高了确定部分边缘服务器的准确度。
第二方面,本申请实施例提供了一种训练模型的***,所述***包括中心服务器、多个边缘服务器以及区块链,所述多个边缘服务器为所述区块链中的多个区块链节点,所述***用于实现第一方面所述的方法。
第三方面,本申请实施例提供了一种训练模型的装置,所述装置包括:
获取模块,用于获取第一请求,所述第一请求包括用户的地理位置;
处理模块,用于根据所述地理位置,向第一集群发送指示信息,所述第一集群是根据所述地理位置确定的,所述指示信息指示所述第一集群中的每个边缘服务器训练第一模型,训练得到的多个所述第一模型属于目标模型的多个子模型;从所述第一集群获取通过所述区块链中的至少部分边缘服务器验证的所述第一模型;根据所述通过所述区块链中的至少部分边缘服务器验证的所述第一模型,生成所述目标模型。
第四方面,本申请实施例还提供了一种电子设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述的方法。
第五方面,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,当所述计算机指令在计算机上运行时,使得所述计算机执行如第一方面所述的方法。
第六方面,本申请实施例还提供了一种计算机程序产品,所述计算机程序产品包括计算机程序,当所述计算机程序产品在计算机上运行时,实现如第一方面所述的方法。
本申请实施例提供的训练模型的方法,获取第一请求,第一请求包括用户的地理位置;根据地理位置,向第一集群发送指示信息,从而指示第一集群中的每个边缘服务器训练第一模型;从第一集群获取通过区块链中的至少部分边缘服务器验证的第一模型;根据通过区块链中的至少部分边缘服务器验证的第一模型,生成目标模型。
本申请实施例提供的方法具有以下有益效果:
第一,中心服务器根据第一模型生成目标模型,不需要用户提供本地样本集,保护了用户的数据安全;
第二,将模型训练的过程迁移到第一集群中的每个边缘服务器,模型训练的过程是分散的,第一集群中的每个边缘服务器训练得到的第一模型都属于目标模型的子模型,每个第一模型对应的数据是全部数据中的部分数据,在边缘服务器受到攻击时,不会泄露用户的全部数据,保证了数据的安全性;
第三,根据区块链中的至少部分边缘服务器对第一模型进行验证,根据通过验证的第一模型生成目标模型,提高了目标模型的可靠性;
第四,利用第一集群中的边缘服务器对模型进行并行训练,大幅提高了训练模型的速度。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种训练模型的***的结构示意图;
图2是本申请实施例提供的一种训练模型的方法的流程示意图;
图3是本申请实施例提供的另一种训练模型的方法的流程示意图;
图4是本申请实施例提供的另一种训练模型的***的结构示意图;
图5是本申请实施例提供的一种训练模型的装置的结构框图;
图6是本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本申请实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
训练一个有效的DL模型需要大量的资源,例如设备算力、存储等。因此,一些个人用户或小公司可能因为缺乏足够的设备或资金,而难以运行复杂的DL算法。DLaaS平台的出现大幅缓解了训练DL模型的资源问题。它允许用户将DL模型的训练过程卸载到DLaaS平台,并且利用高性能的计算设备为用户处理提交的DL任务,进而减少DL模型的训练时间。目前,已有多家厂商和研究人员开发了不同的DLaaS平台,并从时延、吞吐量、能耗等方面提高了网络性能。然而,现有的DLaaS平台仍面临着***安全性和模型可靠性问题。用户需要向中心化的DLaaS平台提供原始数据集。一方面,一些用户可能不愿意暴露自己的敏感商业数据集。另一方面,攻击者可能入侵DLaaS平台,破坏平台中存储的原始数据集,导致信息泄露和篡改;由于缺乏信任机制,DLaaS平台提供的服务仍不可靠。攻击者可能会提供伪造的DL模型,然而用户却无法甄别DL模型的有效性,导致用户的需求无法得到满足。基于上述问题,本申请实施例提供了一种训练模型的方法及***,以保证数据的安全和隐私,保证模型的有效性和可靠性。
如图1所示,本申请实施例提供了一种训练模型的***100,该***100包括中心服务器11、多个边缘服务器12以及区块链13,多个边缘服务器12为区块链13中的多个区块链节点(#1、#2、#3、#4等)。中心服务器11负责调度边缘资源,以及对目标模型进行聚合和存储。边缘服务器12负责训练第一模型,为用户提供训练结果。
其中,中心服务器11为用户提供统一的资源访问接口,用户通过资源访问接口向中心服务器11发送第一请求,第一请求指示中心服务器11为用户提供训练DL模型的服务。
第一请求包括用户的地理位置,中心服务器11根据地理位置确定第一集群,然后向第一集群发送指示信息,指示信息指示第一集群中的每个边缘服务器12训练第一模型。第一集群中的每个边缘服务器12从用户位置获取样本集。
第一集群中的每个边缘服务器12训练得到第一模型后,区块链13中的至少部分边缘服务器12对每个第一模型进行验证。中心服务器11从第一集群获取通过区块链中的至少部分边缘服务器验证的第一模型。并根据通过区块链中的至少部分边缘服务器验证的第一模型,生成目标模型。
用户包括但不限于具有训练DL模型需求的个人、各种企业或者各种终端。中心服务器11可以用独立的服务器或者是多个服务器组成的服务器集群来实现。边缘服务器12可以用独立的服务器或者是多个服务器组成的服务器集群来实现。多个边缘服务器12通过中心服务器11提供的资源访问接口或其他接口与中心服务器11通信。
除此之外,中心服务器11还包括费用中心,负责计算和记录用户对应的DLaaS资源费用。中心服务器11还提供数据可视化服务,为用户提供任务调度、执行和费用统计等实时状态。
实际应用时,***100可以命名为SAPE(Secure and decentralized DLaaSPlatform in Edge computing,基于DLaaS的安全可靠的边缘计算平台)。SAPE***是一个基于DLaaS的边缘计算平台。SAPE***为用户提供统一的资源访问接口,用户利用SAPE***得到DL模型,无需提供原始数据集,保证了数据的安全和隐私,且大幅降低了训练模型的成本。
如图2所示,本申请实施例提供了一种训练模型的方法200,该方法200由***100中的中心服务器执行,该方法200包括:
S201:获取第一请求,第一请求包括用户的地理位置。
S202:根据地理位置,向第一集群发送指示信息,第一集群是根据地理位置确定的,指示信息指示第一集群中的每个边缘服务器训练第一模型,训练得到的多个第一模型属于目标模型的多个子模型。
S203:从第一集群获取通过区块链中的至少部分边缘服务器验证的第一模型。
S204:根据通过区块链中的至少部分边缘服务器验证的第一模型,生成目标模型。
用户向中心服务器发送第一请求,中心服务器接收到第一请求后,对第一请求进行解析得到与用户相关的信息。中心服务器将与用户相关的信息输入到预先训练的边缘资源调度模型中,得到边缘资源调度策略,即确定第一集群。
一种实现方式中,第一请求包括用户的地理位置,中心服务器根据用户的地理位置确定第一集群。中心服务器中存储每个边缘服务器的地址信息,包括互联网协议地址(Internet Protocol Address,IP地址)和地理位置。此时,第一集群中每个边缘服务器的地理位置与用户的地理位置之间的距离小于预设距离阈值。
一种实现方式中,除了用户的地理位置外,中心服务器还获取目标模型的类型,中心服务器根据用户的地理位置与目标模型的类型确定第一集群。目标模型的类型可以携带在第一请求中,也可以在第一请求之后由用户发送给中心服务器。
一种实现方式中,除了用户的地理位置外,目标模型的类型与目标模型的参数,中心服务器根据用户的地理位置、目标模型的类型与目标模型的参数确定第一集群。此时,第一集群中每个边缘服务器的地理位置与用户的地理位置之间的距离小于预设距离阈值,且第一集群中每个边缘服务器均能够更有效的完成第一模型的训练。
作为一个示例,目标模型的类型可以是检测类模型,比如检测图像、检测文字等,目标模型的参数包括但不限于隐藏层的数量、神经元的数量等。
针对前述三种实现方式中的任意一种实现方式,中心服务器还可以获取多个边缘服务器的运行状况;在确定第一集群时,将多个边缘服务器的运行状况输入边缘资源调度模型中。
作为一个示例,中心服务器根据用户的地理位置以及多个边缘服务器的运行状况,确定第一集群。边缘服务器的运行状况包括:拥塞状况、丢包率、传播延迟以及可用资源等。将边缘服务器的运行状况作为一个决定因素,能够动态优化用户任务的计算响应延迟。
在确定第一集群之后,中心服务器通过一次广播的形式,向第一集群中的每个边缘服务器发送指示信息,指示信息指示第一集群中的每个边缘服务器训练第一模型。指示信息中包含用户的标识,比如用户的名称、用户的IP地址等。
边缘服务器接收到指示信息后,与用户进行通信,获取用户的训练样本集。第一集群包括至少两个边缘服务器,第一集群中的每个边缘服务器均只获取用户的训练样本集中的一部分。边缘服务器从用户或者中心服务器获取目标模型的类型、参数等信息,根据目标模型的类型与参数部署相应的容器资源,容器资源包括训练环境,比如语言环境、运行环境等。
一种实现方式中,边缘服务器本地具有资源池,可以根据目标模型的类型与参数从本地调取相应的容器资源并进行部署。
一种实现方式中,中心服务器具有资源池,中心服务器根据目标模型的类型与参数确定容器资源,指示信息还包括容器资源的存储地址。边缘服务器根据存储地址下载并安装相应的容器资源,免去了复杂的环境配置。
容器资源部署完成后,第一集群中的每个边缘服务器根据获取的样本集训练第一模型,得到多个第一模型,多个第一模型属于目标模型的多个子模型。
区块链中的至少部分边缘服务器对多个第一模型进行验证,通过验证的第一模型将由对应的边缘服务器上传给中心服务器。中心服务器根据通过区块链中的至少部分边缘服务器验证的第一模型,生成目标模型,即DL模型。
本申请实施例提供的训练模型的方法,不需要用户提供本地样本集,保护了用户的数据安全;将模型训练的过程迁移到第一集群中的每个边缘服务器,模型训练的过程是分散的,第一集群中的每个边缘服务器训练得到的第一模型都属于目标模型的子模型,每个第一模型对应的数据是全部数据中的部分数据,在边缘服务器受到攻击时,不会泄露用户的全部数据,保证了数据的安全性;根据区块链中的至少部分边缘服务器对第一模型进行验证,根据通过验证的第一模型生成目标模型,提高了目标模型的可靠性;利用第一集群中的边缘服务器对模型进行并行训练,大幅提高了训练模型的速度。
如图3所示,在生成目标模型时,中心服务器将通过验证的第一模型31聚合为第一全局模型32,并根据联邦平均算法(FederatedAveraging,FedAvg),更新第一全局模型的参数,参数包括神经元的权重和偏差值等。判断第一全局模型是否收敛。当第一全局模型收敛时,将第一全局模型作为目标模型。
当第一全局模型32未收敛时,向第一集群中的每个边缘服务器发送广播消息,第一集群中的每个边缘服务器接收到广播消息后,下载第一全局模型32,利用样本集进行下一轮的训练,得到多个第二模型,多个第二模型属于目标模型的多个子模型。
区块链中的至少部分边缘服务器对多个第二模型进行验证,通过验证的第二模型将由对应的边缘服务器上传给中心服务器。中心服务器根据通过区块链中的至少部分边缘服务器验证的第二模型,生成第二全局模型,当第二全局模型收敛时,将第二全局模型作为目标模型。当第二全局模型未收敛时,重复上述过程,直到全局模型收敛得到目标模型。
目标模型可能经过多次聚合才能得到,本申请实施例中,当任务量较少时,可以在每一轮聚合过程中都进行验证。当任务量过大时,即中心服务器接收的请求过多时,中心服务器可以将验证方式设置为定期验证。比如,每3轮或者每5轮进行一次验证。
在每一轮训练过程,中心控制器负责聚合与发配全局模型,而分布式边缘服务器根据本地数据集,对全局模型进行训练更新,并将更新后的子模型提供给中心服务器。整个联邦训练过程将持续到全局模型收敛为止。通过将训练过程迁移到边缘端,一方面允许多个高性能的边缘服务器并行训练,大幅提高了DL模型的训练速度;另一方面,联邦学习机制使得边缘服务器无需提供原始数据集,保证了数据的安全和隐私。
为了保证DLaaS服务的可靠性,本申请实施例在区块链中设置了智能合约,通过智能合约对第一集群中每个边缘服务器训练得到的第一模型进行验证,并将通过验证的第一模型记录在区块链上。
其中,智能合约包括:(1)身份合约,用于维护和管理边缘服务器的身份信息;(2)数据合约,用于管理分布式边缘服务器和区块链之间的数据交互(包括模型下载和上传);(3)验证合约,用于对第一模型的有效性进行投票;(4)信誉合约,用于管理网络实体的信誉值,并提供代币奖励或惩罚。其中,验证合约,还用于选举成立委员会,通过委员会对第一模型的有效性进行投票。
如图4所示,边缘服务器接入***100时,首先调用身份合约确认边缘服务器的身份信息。通过身份认证的边缘服务器才可以被中心服务器调度。
区块链中的区块链节点的工作结果是透明的,每个边缘服务器作为区块链中的区块链节点,可以获取除自身之外的其他边缘服务器训练得到的模型的结果,达成共识。每个边缘服务器可以利用数据合约下载其他的边缘服务器训练的模型。当第一集群中的边缘服务器训练得到第一模型后,使用验证合约分别对得到的多个第一模型进行验证。
第一模型通过验证后,对应的边缘服务器根据数据合约将通过验证的第一模型上传到区块链中,形成交易记录。中心服务器从区块链中获取通过验证的第一模型,进而生成目标模型。
如果一个边缘服务器训练的第一模型通过了验证,则该边缘服务器得到区块链代币的奖励;如果一个边缘服务器训练的第一模型没有通过验证,则该边缘服务器得到区块链代币的惩罚。奖励或者惩罚影响边缘服务器的信誉值,根据信誉合约更新边缘服务器的信誉值。
本申请实施例中,通过对模型的有效性进行投票的方式,完成对第一模型的验证。在一种实现方式中,针对任意一个第一模型,区块链中的所有边缘服务器下载并评估该第一模型的性能(例如准确性等指标),并对该第一模型进行投票,投票可选择有效或者无效。当该第一模型获得的有效票数大于预设值时,认为该第一模型通过了验证。
在一种实现方式中,针对任意一个第一模型,区块链中除生成第一模型的边缘服务器以外的边缘服务器下载并评估该第一模型的性能,并对该第一模型进行投票,以评估该第一模型的有效性。此时,对于通过验证的任意一个第一模型,第一模型对应的区块链中的至少部分边缘服务器包括区块链中除生成第一模型的边缘服务器以外的边缘服务器。
如果所有边缘服务器都参与投票的过程,那么在海量的边缘服务器之间达成共识可能会非常耗时。因此,本申请实施例中采用了基于委员会的验证机制。在每一轮训练中,根据一定的规则建立委员会,区块链中的部分边缘服务器为委员会的成员。当一个第一模型在委员会成员中获得的有效票数大于预设值时(例如超过50%的选票),该第一模型被认为是有效的,即通过了验证。
在一种实现方式中,委员会成员是直接根据区块链中每个边缘服务器的信誉值的高低确定的。按照信誉值从高到低的排序,选取预设数量的边缘服务器建立委员会。
在一种实现方式中,委员会成员是根据区块链产生的多个随机数确定的。一个边缘服务器对应一个随机数。在一种实现方式中,多个随机数是根据区块链产生的随机数种子生成的。一个随机数种子可以生成一个数列,数列中包括多个随机数,多个随机数中可能存在相同的随机数。按照随机数的非递增顺序对边缘服务器进行排序,并选择数值最大的前r个边缘服务器作为委员会成员。
在一种实现方式中,每个随机数是根据区块链产生的随机数种子以及区块链中每个边缘服务器的权重(即信誉值)生成的。委员会成员的选举过程包括以下几个步骤:
(1)、底层分布式协议生成一个随机数种子;
(2)、获取区块链中每个边缘服务器的权重;
(3)、根据步骤(1)生成的随机数种子及区块链中每个边缘服务器的权重,***100运行可验证随机函数(Verifiable Random Function,VRF),为每个边缘服务器生成随机数;
(4)、***100根据步骤(3)的随机数,按非递增顺序进行排序,并选择数值最大的前r个边缘服务器作为委员会成员。
在一种实现方式中,每个随机数是根据区块链产生的随机数种子、区块链中每个边缘服务器的权重(即信誉值)以及区块链中每个边缘服务器的私钥生成的,经过公钥验证后随机数用于确定至少部分边缘服务器,私钥与公钥是对应的。委员会成员的选举过程包括以下几个步骤:
(1)、底层分布式协议生成一个随机数种子;
(2)、获取区块链中每个边缘服务器的权重,并确定区块链中每个边缘服务器的公钥/私钥对;
(3)、根据步骤(1)生成的随机数种子、区块链中每个边缘服务器的权重以及私钥,运行VRF函数,为每个边缘服务器生成随机数;
(4)、***100使用公钥对每个边缘服务器的随机数进行验证,验证成功后的随机数,按非递增顺序进行排序,并选择数值最大的前r个边缘服务器作为委员会成员。
本申请实施例中采用区块链技术,对第一集群中每个边缘服务器提供的第一模型进行记录和共识,并设置智能合约,对第一集群中每个边缘服务器训练得到的第一模型进行随机采样和定时验证,并根据模型验证的结果,对诚实/不诚实的边缘服务器提供相应的区块链代币奖励/惩罚,以维护边缘服务器的可靠性,从而确保模型的可靠性。
综上所述,本申请实施例提供的训练模型的方法,能够为用户提供低延迟、高可靠的DLaaS边缘计算服务。SAPE***中,中心服务器为用户提供了统一的资源访问接口,以接收用户发送的第一请求。同时中心服务器以全局角度,管理和调度全网的边缘服务器,提高任务的响应速度。SAPE***采用了联邦学***台的安全性。
图5为本申请实施例提供的训练模型的装置,该装置500包括获取模块501、处理模块502。
获取模块501,用于获取第一请求,第一请求包括用户的地理位置。
处理模块502,用于根据地理位置,向第一集群发送指示信息,第一集群是根据地理位置确定的,指示信息指示第一集群中的每个边缘服务器训练第一模型,训练得到的多个第一模型属于目标模型的多个子模型;从第一集群获取通过区块链中的至少部分边缘服务器验证的第一模型;根据通过区块链中的至少部分边缘服务器验证的第一模型,生成目标模型。
特别地,处理模块502,还用于根据地理位置、目标模型的类型,向第一集群发送指示信息,第一集群是根据地理位置以及目标模型的类型确定的。
特别地,处理模块502,还用于获取多个边缘服务器的运行状况;根据地理位置、多个边缘服务器的运行状况,向第一集群发送指示信息,第一集群是根据地理位置以及多个边缘服务器的运行状况确定的。
特别地,第一模型是第一集群中的每个边缘服务器在指示信息的指示下,获取资源后,根据资源训练得到的,资源包括训练环境。
特别地,对于通过验证的任意一个第一模型,第一模型对应的区块链中的至少部分边缘服务器包括区块链中除生成第一模型的边缘服务器以外的边缘服务器。
特别地,至少部分边缘服务器是根据区块链产生的多个随机数确定的。
特别地,多个随机数是根据区块链产生的随机数种子生成的。
特别地,每个随机数是根据区块链产生的随机数种子以及区块链中每个边缘服务器的权重生成的。
特别地,每个随机数是根据区块链产生的随机数种子、区块链中每个边缘服务器的权重以及区块链中每个边缘服务器的私钥生成的,经过公钥验证后随机数用于确定至少部分边缘服务器,私钥与公钥是对应的。
应理解的是,本申请实施例的装置500可以通过专用集成电路(application-specific integrated circuit,ASIC)实现,或可编程逻辑器件(programmable logicdevice,PLD)实现,上述PLD可以是复杂程序逻辑器件(complex programmable logicaldevice,CPLD),现场可编程门阵列(field-programmable gate array,FPGA),通用阵列逻辑(generic array logic,GAL)或其任意组合。也可以通过软件实现图2所示的训练模型的方法,通过软件实现图2所示的训练模型的方法时,控制装置500及其各个模块也可以为软件模块。
图6为本申请实施例提供的一种电子设备600的结构示意图。如图6所示,该设备600包括处理器601、存储器602、通信接口603和总线604。其中,处理器601、存储器602、通信接口603通过总线604进行通信,也可以通过无线传输等其他手段实现通信。该存储器602用于存储指令,该处理器601用于执行该存储器602存储的指令。该存储器602存储程序代码6021,且处理器601可以调用存储器602中存储的程序代码6021执行图2所示的训练模型的方法。
应理解,在本申请实施例中,处理器601可以是CPU,处理器601还可以是其他通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者是任何常规的处理器等。
该存储器602可以包括只读存储器和随机存取存储器,并向处理器601提供指令和数据。存储器602还可以包括非易失性随机存取存储器。该存储器602可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electricallyEPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double datadate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。
该总线604除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图6中将各种总线都标为总线604。
上述实施例,可以全部或部分地通过软件、硬件、固件或其他任意组合来实现。当使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载或执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以为通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集合的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质。半导体介质可以是固态硬盘(solid state drive,SSD)。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

Claims (10)

1.一种训练模型的方法,其特征在于,应用于训练模型的***,所述***包括中心服务器、多个边缘服务器以及区块链,所述多个边缘服务器为所述区块链中的多个区块链节点,所述方法包括:
获取第一请求,所述第一请求包括用户的地理位置;
根据所述地理位置,向第一集群发送指示信息,所述第一集群是根据所述地理位置确定的,所述指示信息指示所述第一集群中的每个边缘服务器训练第一模型,训练得到的多个所述第一模型属于目标模型的多个子模型;
从所述第一集群获取通过所述区块链中的至少部分边缘服务器验证的所述第一模型;
根据所述通过所述区块链中的至少部分边缘服务器验证的所述第一模型,生成所述目标模型。
2.根据权利要求1所述的方法,其特征在于,根据所述地理位置,向第一集群发送指示信息,包括:
根据所述地理位置、所述目标模型的类型,向第一集群发送指示信息,所述第一集群是根据所述地理位置以及所述目标模型的类型确定的。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述多个边缘服务器的运行状况;
所述根据所述地理位置,向第一集群发送指示信息,包括:
根据所述地理位置、所述多个边缘服务器的运行状况,向第一集群发送指示信息,所述第一集群是根据所述地理位置以及所述多个边缘服务器的运行状况确定的。
4.根据权利要求1所述的方法,其特征在于,所述第一模型是所述第一集群中的每个边缘服务器在所述指示信息的指示下,获取资源后,根据所述资源训练得到的,所述资源包括训练环境。
5.根据权利要求1至4任一项所述的方法,其特征在于,对于通过验证的任意一个第一模型,所述第一模型对应的所述区块链中的至少部分边缘服务器包括所述区块链中除生成所述第一模型的边缘服务器以外的边缘服务器。
6.根据权利要求5所述的方法,其特征在于,所述至少部分边缘服务器是根据所述区块链产生的多个随机数确定的。
7.根据权利要求6所述的方法,其特征在于,所述多个随机数是根据所述区块链产生的随机数种子生成的。
8.根据权利要求6所述的方法,其特征在于,每个所述随机数是根据所述区块链产生的随机数种子以及所述区块链中每个边缘服务器的权重生成的。
9.根据权利要求6至8任一项所述的方法,其特征在于,每个所述随机数是根据所述区块链产生的随机数种子、所述区块链中每个边缘服务器的权重以及所述区块链中每个边缘服务器的私钥生成的,经过公钥验证后所述随机数用于确定所述至少部分边缘服务器,所述私钥与所述公钥是对应的。
10.一种训练模型的***,其特征在于,所述***包括中心服务器、多个边缘服务器以及区块链,所述多个边缘服务器为所述区块链中的多个区块链节点,所述***用于实现权利要求1至9中任一项所述的方法。
CN202110473057.3A 2021-04-29 2021-04-29 一种训练模型的方法及*** Active CN113221163B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110473057.3A CN113221163B (zh) 2021-04-29 2021-04-29 一种训练模型的方法及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110473057.3A CN113221163B (zh) 2021-04-29 2021-04-29 一种训练模型的方法及***

Publications (2)

Publication Number Publication Date
CN113221163A true CN113221163A (zh) 2021-08-06
CN113221163B CN113221163B (zh) 2023-05-23

Family

ID=77090032

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110473057.3A Active CN113221163B (zh) 2021-04-29 2021-04-29 一种训练模型的方法及***

Country Status (1)

Country Link
CN (1) CN113221163B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114884944A (zh) * 2022-04-28 2022-08-09 广东电网有限责任公司 一种数据处理方法、装置、设备和存储介质
CN115460053A (zh) * 2022-07-28 2022-12-09 山东浪潮科学研究院有限公司 服务调用方法、装置及边缘计算***
CN116484922A (zh) * 2023-04-23 2023-07-25 深圳大学 一种联邦学习方法、***、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110428056A (zh) * 2018-04-30 2019-11-08 慧与发展有限责任合伙企业 使用区块链的分散式机器学习的***和方法
CN110599173A (zh) * 2019-09-20 2019-12-20 腾讯科技(深圳)有限公司 区块链的共识节点确定方法、装置、设备及存储介质
US20200351344A1 (en) * 2019-04-30 2020-11-05 EMC IP Holding Company LLC Data tiering for edge computers, hubs and central systems
WO2020253266A1 (zh) * 2019-06-15 2020-12-24 华为技术有限公司 一种提供边缘服务的方法、装置和设备
CN112580822A (zh) * 2020-12-16 2021-03-30 北京百度网讯科技有限公司 机器学习模型的对抗训练方法装置、电子设备和介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110428056A (zh) * 2018-04-30 2019-11-08 慧与发展有限责任合伙企业 使用区块链的分散式机器学习的***和方法
US20200351344A1 (en) * 2019-04-30 2020-11-05 EMC IP Holding Company LLC Data tiering for edge computers, hubs and central systems
WO2020253266A1 (zh) * 2019-06-15 2020-12-24 华为技术有限公司 一种提供边缘服务的方法、装置和设备
CN110599173A (zh) * 2019-09-20 2019-12-20 腾讯科技(深圳)有限公司 区块链的共识节点确定方法、装置、设备及存储介质
CN112580822A (zh) * 2020-12-16 2021-03-30 北京百度网讯科技有限公司 机器学习模型的对抗训练方法装置、电子设备和介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
吴琪等: "边缘学习:关键技术、应用与挑战", 《无线电通信技术》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114884944A (zh) * 2022-04-28 2022-08-09 广东电网有限责任公司 一种数据处理方法、装置、设备和存储介质
CN115460053A (zh) * 2022-07-28 2022-12-09 山东浪潮科学研究院有限公司 服务调用方法、装置及边缘计算***
CN115460053B (zh) * 2022-07-28 2023-06-27 山东浪潮科学研究院有限公司 服务调用方法、装置及边缘计算***
CN116484922A (zh) * 2023-04-23 2023-07-25 深圳大学 一种联邦学习方法、***、设备及存储介质
CN116484922B (zh) * 2023-04-23 2024-02-06 深圳大学 一种联邦学习方法、***、设备及存储介质

Also Published As

Publication number Publication date
CN113221163B (zh) 2023-05-23

Similar Documents

Publication Publication Date Title
JP6918245B2 (ja) 本人確認方法および装置
CN113221163B (zh) 一种训练模型的方法及***
Xiong et al. Peertrust: Supporting reputation-based trust for peer-to-peer electronic communities
US20130290226A1 (en) System and method for social graph and graph assets valuation and monetization
EP2689371B1 (en) Fast device classification
Witt et al. Decentral and incentivized federated learning frameworks: A systematic literature review
CN111681091B (zh) 基于时间域信息的金融风险预测方法、装置及存储介质
US11388165B2 (en) Systems and methods for preventing a fraudulent registration
CN111125420B (zh) 基于人工智能的对象推荐方法、装置及电子设备
CN110113366A (zh) 一种csrf漏洞的检测方法及装置
US20220138753A1 (en) Interactive swarming
Xie et al. Primary node election based on probabilistic linguistic term set with confidence interval in the PBFT consensus mechanism for blockchain
CN113111359A (zh) 基于信息安防的大数据资源共享方法及资源共享***
Mujawar et al. Behavior and feedback based trust computation in cloud environment
CN112990921A (zh) 基于区块链的数据处理方法、装置、计算机及存储介质
CN114048515A (zh) 一种基于联邦学习和区块链的医疗大数据共享方法
Bruschi et al. Tunneling trust into the blockchain: A merkle based proof system for structured documents
CN112702410B (zh) 一种基于区块链网络的评估***、方法及相关设备
US11095528B2 (en) Identity network onboarding based on confidence scores
Cui et al. Message spreading in networks with stickiness and persistence: Large clustering does not always facilitate large-scale diffusion
Marti Trust and reputation in peer-to-peer networks
Liu et al. Blockchain-empowered lifecycle management for AI-generated content products in edge networks
CN111222885B (zh) 数据处理请求背书方法、装置、计算机设备及存储介质
CN109905388A (zh) 一种基于区块链的域名信用的处理方法及***
US20180191821A1 (en) Automatic User Group Clustering

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