一种联邦学习参数传输方法、聚合服务器及联邦学习系统技术方案

技术编号:38902362 阅读:20 留言:0更新日期:2023-09-22 14:20
本发明专利技术实施例公开了一种联邦学习参数传输方法、聚合服务器及联邦学习系统,方法包括:对第一模型参数进行加密生成第三密文,将第三密文发送给所有的设备节点,以使设备节点对第三密文进行解密获得第一模型参数;接收设备节点发送的第四密文,对第四密文进行解密获得梯度信息,第四密文为设备节点对梯度信息加密生成,梯度信息为设备节点根据第一模型参数更新本地模型后进行新一轮训练结束后得到;对第二模型参数进行加密生成第五密文,将第五密文将第五密文发送给设备节点,以使设备节点对第五密文进行解密获得第二模型参数并根据第二模型参数进行新一轮训练,第二模型参数通过调用飞地将梯度信息作为输入执行预设聚合算法后得到。得到。得到。

【技术实现步骤摘要】
一种联邦学习参数传输方法、聚合服务器及联邦学习系统


[0001]本专利技术涉及计算机软件
,具体涉及一种联邦学习参数传输方法、聚合服务器及联邦学习系统。

技术介绍

[0002]联邦学习(Federated Learning)是一种分布式机器学习技术,其核心思想是通过在多个拥有本地数据的数据源之间进行分布式模型训练,在不需要交换本地个体或样本数据的前提下,仅通过交换模型参数或中间结果的方式,构建基于虚拟融合数据下的全局模型,从而实现数据隐私保护和数据共享计算的平衡,即“数据可用不可见”、“数据不动模型动”的应用新范式。
[0003]联邦学习框架中有两个角色:参与训练的设备节点和进行聚合工作的聚合服务器。本专利技术描述的场景为:由多个设备节点与一个聚合服务器节点组成的共同训练统一模型的场景。具体而言,在联邦学习参数聚合过程中,参与训练的设备节点将本地训练的参数发送到聚合服务器,聚合服务器对收集到参数进行聚合并下发到各个参与训练的设备节点,设备节点接收到新的参数后更新本地参数并继续训练,直到模型收敛。在该过程中,训练参数对聚合服务器明文可见,会导致可以采用逆向工程的方式推导出原始数据,进而导致参与训练的本地节点设备的信息泄露。
[0004]可信执行环境(TEE),包括intel的SGX,AMD的SEV等,能保证程序在受保护的环境下运行,实现代码无法被窜改,中间变量无法被获取这两个基本目标。在本专利技术中,可信执行环境技术保证了保证数据提供方传入TEE的API结果无法被数据使用方获取。通常,运行在TEE中的一个程序称作一个飞地(enclave)。

技术实现思路

[0005]针对现有技术中的技术缺陷,本专利技术实施例的目的在于提供一种联邦学习参数传输方法、聚合服务器及联邦学习系统,该方法对参数信息加密后发送,只对可信执行环境和目标节点可见,避免了其他训练节点或学习方以外第三方通过抓包等方式获取原始梯度信息从而逆向窃取节点的数据信息,进一步提升联邦学习系统的安全性。
[0006]为实现上述目的,第一方面,本专利技术实施例提供了一种联邦学习参数传输方法,该方法应用于聚合服务器的可信执行环境中,在所述可信执行环境中具有执行预设聚合算法的飞地,所述方法包括:
[0007]对第一模型参数进行加密生成第三密文,将所述第三密文发送给所有的设备节点,以使所述设备节点对所述第三密文进行解密获得第一模型参数;
[0008]接收所述设备节点发送的第四密文,对所述第四密文进行解密获得梯度信息,所述第四密文为所述设备节点对所述梯度信息加密生成,所述梯度信息为所述设备节点根据所述第一模型参数更新本地模型后进行新一轮训练结束后得到;
[0009]对第二模型参数进行加密生成第五密文,将所述第五密文将所述第五密文发送给
所述设备节点,以使所述设备节点对所述第五密文进行解密获得第二模型参数并根据所述第二模型参数进行新一轮训练,所述第二模型参数通过调用所述飞地将所述梯度信息作为输入执行预设聚合算法后得到。
[0010]进一步,所述聚合服务器的可信执行环境中通过隐私计算中间件随机生成有典公私钥对和梯度公私钥对
[0011]所述设备节点具有通过隐私计算中间件随机生成有枢公私钥对
[0012]进一步,所述方法还包括:
[0013]接收所述设备节点发送的第一密文,通过所述典私钥对所述第一密文进行解密获得枢私钥其中,所述第一密文为所述设备节点通过典公钥对枢私钥加密生成;
[0014]通过枢公钥对梯度私钥加密生成第二密文,将所述第二密文发送给所述设备节点,以使所述设备节点通过枢私钥对所述第二密文进行解密获得梯度私钥
[0015]进一步,通过梯度公钥对第一模型参数加密生成第三密文;
[0016]所述设备节点通过梯度私钥对所述第三密文进行解密获得所述第一模型参数。
[0017]进一步,所述第四密文为所述设备节点通过枢公钥对所述梯度信息加密生成;
[0018]通过枢私钥对所述第四密文进行解密获得梯度信息。
[0019]进一步,通过梯度公钥对所述第二模型参数进行加密生成第五密文;
[0020]所述设备节点通过梯度私钥对所述第五密文进行解密获得所述第二模型参数。
[0021]第二方面,本专利技术实施例还提供了一种用于联邦学习的聚合服务器,所述聚合服务器具有执行如第一方面所述的方法的可信执行环境。
[0022]第三方面,本专利技术实施例还提供了一种联邦学习系统,包括聚合服务器和若干个设备节点,所述聚合服务器具有执行如第一方面所述的方法的可信执行环境。
[0023]实施本专利技术实施例提供的方法,聚合服务器通过可信执行环境(TEE)进行模型参数聚合,参与训练的设备节点也通过TEE发送训练过程中的训练参数给到聚合服务器,全过程中发送的数据都是通过公钥加密的,对外部节点不可见。此外,即使是对于聚合服务器,由于TEE的特殊设置,也保证了聚合服务器无法对聚合过程进行篡改,进一步保证了结果的可信。保证了联邦学习训练过程中参数不泄露。
附图说明
[0024]为了更清楚地说明本专利技术具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍。
[0025]图1是本专利技术实施例提供的一种联邦学习参数传输方法的流程示意图。
具体实施方式
[0026]这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
[0027]需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素,此外,本申请不同实施例中具有同样命名的部件、特征、要素可能具有相同含义,也可能具有不同含义,其具体含义需以其在该具体实施例中的解释或者进一步结合该具体实施例中上下文进行确定。
[0028]应当理解,尽管在本文可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本文范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语"如果"可以被解释成为"在
……
时"或"当
……
时"或"响应于确定"。再者,如同在本文中所使用的,单数形式“一”、“一个”和“该”旨在也包括复数形式,除非上下文中有相反的指示。应当本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种联邦学习参数传输方法,其特征在于,该方法应用于聚合服务器的可信执行环境中,在所述可信执行环境中具有执行预设聚合算法的飞地,所述方法包括:对第一模型参数进行加密生成第三密文,将所述第三密文发送给所有的设备节点,以使所述设备节点对所述第三密文进行解密获得第一模型参数;接收所述设备节点发送的第四密文,对所述第四密文进行解密获得梯度信息,所述第四密文为所述设备节点对所述梯度信息加密生成,所述梯度信息为所述设备节点根据所述第一模型参数更新本地模型后进行新一轮训练结束后得到;对第二模型参数进行加密生成第五密文,将所述第五密文将所述第五密文发送给所述设备节点,以使所述设备节点对所述第五密文进行解密获得第二模型参数并根据所述第二模型参数进行新一轮训练,所述第二模型参数通过调用所述飞地将所述梯度信息作为输入执行预设聚合算法后得到。2.如权利要求1所述的一种联邦学习参数传输方法,其特征在于,所述聚合服务器的可信执行环境中通过隐私计算中间件随机生成有典公私钥对和梯度公私钥对所述设备节点具有通过隐私计算中间件随机生成有枢公私钥对3.如权利要求2所述的一种联邦学习参数传输方法,其特征在于,所述方法还包括:接收所述设备节点发送的第一密文,通过所述典私钥对所述第...

【专利技术属性】
技术研发人员:张金波曾驭龙范学鹏汤载阳王宸敏
申请(专利权)人:北京熠智科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1