CN115277696A - 一种跨网络联邦学习***及方法 - Google Patents

一种跨网络联邦学习***及方法 Download PDF

Info

Publication number
CN115277696A
CN115277696A CN202210823096.6A CN202210823096A CN115277696A CN 115277696 A CN115277696 A CN 115277696A CN 202210823096 A CN202210823096 A CN 202210823096A CN 115277696 A CN115277696 A CN 115277696A
Authority
CN
China
Prior art keywords
network
external network
participant
intranet
gradient
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
CN202210823096.6A
Other languages
English (en)
Other versions
CN115277696B (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.)
Jingxin Data Technology Co ltd
Original Assignee
Jingxin Data 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 Jingxin Data Technology Co ltd filed Critical Jingxin Data Technology Co ltd
Priority to CN202210823096.6A priority Critical patent/CN115277696B/zh
Publication of CN115277696A publication Critical patent/CN115277696A/zh
Application granted granted Critical
Publication of CN115277696B publication Critical patent/CN115277696B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0806Configuration setting for initial configuration or provisioning, e.g. plug-and-play
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/145Network analysis or design involving simulating, designing, planning or modelling of a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Medical Informatics (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种跨网络联邦学习***及方法,包括至少两个完全物理隔离的网络及一离线传输模块,其中:外网发起方用于与内网参与方共同完成联邦学习联合建模任务;内网参与方用于提供本地数据,接受外网发起方的邀请,以及参与联邦学习联合建模任务;外网协调方用于对外网发起方和内网参与方执行联邦学习迭代计算过程中的中间参数进行聚合优化,生成新的中间参数;外网传输监听模块用于从离线传输模块读取中间参数后发送至外网协调方,以及从外网协调方接收中间参数后写入离线传输模块;离线传输模块用于交互传输两个网络之间经过加密的中间参数。本发明能实现联邦学习计算任务隔离网络中间数据的有效传输,进而完成跨网络联邦学习计算任务。

Description

一种跨网络联邦学习***及方法
技术领域
本发明涉及联邦学习***,尤其涉及一种跨网络联邦学习***及方法。
背景技术
联邦学习(federated learning)的定义是指:一种多个参与方在保证各自原始私有数据不出数据方定义的私有边界的前提下,协作完成某项机器学习任务的模式。联邦学习主要包括参与方、中心协调方、发起方三个角色,参与方与发起方联合共建机器学习模型,进行联合计算任务,通过协调方进行中间参数传输,在数据不出本域情况下,实现多方数据融合分析应用。
现有技术中,联邦学习要求各数据资源参与方只有在网络相互连通的情况下,方可实现联邦学习联合建模及运算,无法满足双方数据资源方在网络隔离情况下,双方或多方通过联邦学习计算方式实现数据的融合应用,例如政务领域分为政务外网和政务内网,因两个网络完全物理隔离,导致现有主流技术无法在跨网络下建立联邦学习任务,不能满足应用需求。
发明内容
本发明要解决的技术问题在于,针对现有技术的不足,提供一种能够实现联邦学习计算任务隔离网络中间数据的有效传输,进而完成跨网络联邦学习计算任务的***及方法。
为解决上述技术问题,本发明采用如下技术方案。
一种跨网络联邦学习***,其包括有至少两个完全物理隔离的网络以及连接于两个网络之间的离线传输模块,两个网络分别定义为外网和内网,每个网络包括有发起方、参与方、协调方和传输监听模块,其中:外网发起方用于与内网参与方共同完成联邦学习联合建模任务;内网参与方用于提供本地数据,接受外网发起方的邀请,并参与所述联邦学习联合建模任务;外网协调方用于对外网发起方和内网参与方执行联邦学习迭代计算过程中的中间参数进行聚合优化,并生成新的中间参数;外网传输监听模块用于从所述离线传输模块读取中间参数后发送至外网协调方,以及从外网协调方接收中间参数后写入所述离线传输模块;所述离线传输模块用于交互传输两个网络之间经过加密的中间参数。
优选地,所述离线传输模块还用于对两个网络之间交互传输的中间参数进行存储。
一种跨网络联邦学习方法,该方法基于一***实现,所述***包括有至少两个完全物理隔离的网络以及连接于两个网络之间的离线传输模块,两个网络分别定义为外网和内网,每个网络包括有发起方、参与方、协调方和传输监听模块,所述方法包括如下步骤:步骤S10,初始化所述传输监听模块;步骤S20,外网发起方与内网参与方共同完成联邦学习模型创建,外网协调方进行环境初始化,开始首次批次迭代计算任务;步骤S30,外网协调方将所述步骤S20中迭代优化后的双方单边梯度分别发送给外网发起方与外网传输监听模块,设置执行下一轮迭代批次的数据区间,并开始下一轮迭代批次计算;步骤S40:重复迭代执行所述步骤S30,直至联邦学习任务结束。
本发明公开的跨网络联邦学习***中,当所述传输监听模块初始化完成后,由外网发起方与内网参与方共同完成联邦学习模型创建,外网协调方进行环境初始化,开始首次批次迭代计算任务,并将迭代优化后的双方单边梯度分别发送给外网发起方与外网传输监听模块,之后设置执行下一轮迭代批次的数据区间,并开始下一轮迭代批次计算,重复执行迭代计算,直至联邦学习任务结束。相比现有技术而言,本发明实现了在隔离网络下,任意一方数据节点均可与隔离方网联邦学习计算节点创建联邦学习任务。本发明提供了跨网络下联邦学习离线传输模块,实现了在联邦学习任务迭代过程中,对中间参数的离线传输,较好地完成了跨网络联邦学习任务计算时的中间参数交互功能。
附图说明
图1为本发明跨网络联邦学习***的组成框图;
图2为本发明跨网络联邦学习方法的流程图;
图3为本发明第一实施例的流程图;
图4为本发明第二实施例的流程图;
图5为本发明第三实施例的流程图一;
图6为本发明第三实施例的流程图二。
具体实施方式
下面结合附图和实施例对本发明作更加详细的描述。
本发明公开了一种跨网络联邦学习***,请参见图1,其包括有至少两个完全物理隔离的网络1以及连接于两个网络1之间的离线传输模块2,两个网络1分别定义为外网和内网,每个网络包括有发起方10、参与方11、协调方12和传输监听模块13,其中:
外网发起方10用于与内网参与方11共同完成联邦学习联合建模任务;
内网参与方11用于提供本地数据,接受外网发起方10的邀请,以及参与所述联邦学习联合建模任务;
外网协调方12用于对外网发起方10和内网参与方11执行联邦学习迭代计算过程中的中间参数进行聚合优化,并生成新的中间参数;
外网传输监听模块13用于从所述离线传输模块2读取中间参数后发送至外网协调方12,以及从外网协调方12接收中间参数后写入所述离线传输模块2;
所述离线传输模块2用于交互传输两个网络1之间经过加密的中间参数。此外,所述离线传输模块2还用于对两个网络1之间交互传输的中间参数进行存储。
上述***中,当所述传输监听模块13初始化完成后,由外网发起方10与内网参与方11共同完成联邦学习模型创建,外网协调方12进行环境初始化,开始首次批次迭代计算任务,并将迭代优化后的双方单边梯度分别发送给外网发起方10与外网传输监听模块13,之后设置执行下一轮迭代批次的数据区间,并开始下一轮迭代批次计算,重复执行迭代计算,直至联邦学习任务结束。相比现有技术而言,本发明实现了在隔离网络下,任意一方数据节点均可与隔离方网联邦学习计算节点创建联邦学习任务,例如,当内网节点作为发起方,外网节点作为参与方时,采用内网中心方作为联邦学习协调节点,而当外网节点作为发起方,内网节点作为参与方时,采用外网中心方联邦学习协调节点。本发明提供了跨网络下联邦学习离线传输模块,实现了在联邦学习任务迭代过程中,对中间参数的离线传输,较好地完成了跨网络联邦学习任务计算时的中间参数交互功能。
在上述***的基础上,本发明还涉及一种跨网络联邦学习方法,结合图1和图2所示,该方法基于一***实现,所述***包括有至少两个完全物理隔离的网络1以及连接于两个网络1之间的离线传输模块2,两个网络1分别定义为外网和内网,每个网络包括有发起方10、参与方11、协调方12和传输监听模块13,所述方法包括如下步骤:
步骤S10,初始化所述传输监听模块13;
步骤S20,外网发起方10与内网参与方11共同完成联邦学习模型创建,外网协调方12进行环境初始化,开始首次批次迭代计算任务;
步骤S30,外网协调方12将所述步骤S20中迭代优化后的双方单边梯度分别发送给外网发起方10与外网传输监听模块13,设置执行下一轮迭代批次的数据区间,并开始下一轮迭代批次计算;
步骤S40:重复迭代执行所述步骤S30,直至联邦学习任务结束。
上述方法中,在两个网络完全物理隔离环境下,在各自网络环境分别均部署了联邦学习集群,每个网络环境分别部署了发起方、参与方、中心节点、传输监听模块。通过离线传输模块实现联邦学习计算任务隔离网络的中间数据的传输,最终完成跨网络联邦学习计算任务,各个模块定义如下:
发起方:指联邦学习计算任务的数据应用方,在参与方提供数据配合下,共同完成联邦学习联合建模任务;
参与方:指联邦学习计算任务的数据提供方,协助发起方,提供本地数据,加入联邦学习任务,协助发起方共同完成联邦学习联合建模任务;
中心节点:指联邦学习计算任务的协调方,用于聚合优化发起方和参与方迭代计算过程中的中间参数,生成新的中间参数;
中间参数:指联邦学习迭代计算过程中,生成的模型梯度、损失值等中间因子;
传输监听模块指:指用于向中协调方接收或发送联邦学习迭代计算过程的中间参数,并将中间参数写入离线传输模块或从离线传输模块读取中间参数。
离线传输模块指:指用于存储、传输通过加密后的每次联邦学习迭代计算中间参数的设备装置,离线传输模块包括但不限于移动U盘、关闸、网闸等可用于异构网络下离线数据传输介质。
本发明通过构建传输监听模块,在发起方网络环境下,监听协调方联邦学习任务迭代过程的中间参数,并将中间参数写入离线传输模块以及对离线传输模块的合法性验证,在参与方网络环境,读取离线传输模块中间参数,发给参与方进行模型更新。
关于本发明方法的具体实现过程,请参见实施例一至实施例三。
实施例一
请参见图3,本实施例是对步骤S10,初始化所述传输监听模块13过程的进一步解释。在本实施例中,所述步骤S10包括有如下过程:
步骤S101,分别启动内网和外网的传输监听模块13;具体地,所述步骤S101中,内网和外网的所述传输监听模块13基于TLCP密码协议建立安全传输通道,分别加入各方联邦学习集群网络环境,并采用Netty协议与本方联邦学习集群网络各计算节点及中心节点建立安全连接,用于存储和传输联邦学习计算批次迭代过程中的中间参数。
步骤S102,内网和外网的传输监听模块13分别采用RSA或SM2非对称算法,基于本方联邦学习集群网络各参与节点标识,生成密钥对集合S和公钥集合X;
进一步地,在所述步骤S102中,节点标识定义为:U={h1,h2,h3......hi},其中,U为所在网络环境下节点标识集合,hi定义为联邦学习节点标识,i表示联邦学习集群节点数量,基于节点标识,采用RSA或SM2加密算法,分别生成生成每个节点标识对应的公私钥集合及公钥集合,其中,密钥对集合S定义为:
Figure BDA0003744893050000061
公钥集合X定义为:
Figure BDA0003744893050000062
其中,hi表示联邦学习节点标识,pi表示联邦学习节点标识hi的公钥,ki表示联邦学习节点标识hi的私钥。
步骤S103,内网和外网的传输监听模块13分别加载对方网络在所述步骤S102中生成的公钥集合X,并标记为X0;例如,内网传输监听模块加载外网传输监听模块生成的公钥集合X,并标记为X0,目的是与步骤S102中生成的集合X进行区分。外网传输监听模块加载内网传输监听模块生成的公钥集合X,并标记为X0,同样目的是与步骤S102中生成的结合X区分。
步骤S104,启动所述离线传输模块2扫描监听进程,实时监听对所述离线传输模块2进行读写的离线联邦学习迭代批次中间参数。
进一步地,所述步骤S104中,所述离线传输模块2的离线传输规则包括中间参数密文数据存储路径和中间参数密文数据验证组合,双方将存储路径规则约定为:
[drive#:][/]fldir/hi/task/n/;
其中,fldir表示设备根目录,hi表示参与方节点标识,task为固定文件夹名称,n表示任务迭代计算的轮次,依次从01、02...n递增,密文数据验证过程中,采用密钥对集合S的参与方节点标识hi的节点公钥对从离线传输模块读取的中间参数进行数据解密验签,判断是否正常解密。如若验证接入的离线传输模块是否被篡改,确保传输设备的合法性,避免非法参与方接入,截取中间参数,造成数据泄露风险。
实施例二
本实施例是对步骤S20的进一步解释,在本实施例中,请参见图4,所述步骤S20包括有如下过程:
步骤S201,外网协调方12基于paillier算法,生成初始化公私钥对,并将公钥PubKey和内网参与方节点标识hi分别发送给外网发起方10与外网传输监听模块13,对提供给外网发起方与内网参与方迭代批次的中间参数进行加密,外网协调方12保存PrivKey,以及在接收迭代批次中间参数后进行解密,同时设置当前迭代批次参与训练的数据区间;
步骤S202,外网发起方10接收到PubKey,设置本地数据每次迭代参与训练批次,创建paillier加密处理器,初始化模型并开始首次迭代计算,生成当前迭代轮次单边梯度标记为:
Figure BDA0003744893050000081
损失值标记为
Figure BDA0003744893050000082
得到中间参数,其中n为任务迭代计算的轮次,j1为外网发起方的所属参数标识,通过paillier加密处理器,采用PubKey对中间参数
Figure BDA0003744893050000083
进行加密,生成密文数据CT0n,并将发送给外网协调方12;
步骤S203:将所述离线传输模块2接入外网联邦学习集群网络,外网传输监听模块13接收到步骤S201中传输的PubKey及内网参与方11节点标识hi,通过步骤S103中接收到的内网公钥集合X0中的公钥Pi对协调方PubKey、hi进行加密,生成加密文件priFile,同时将加密文件写入离线传输模块2,文件路径为:[drive#:][/]fldir/hi/task/n/priFile,当前任务为首次批次迭代任务,此时n值为01;
步骤S204:所述离线传输模块2断开与外网的连接,接入内网联邦学习集群网络,内网传输监听模块13扫描所述离线传输模块2的文件路径,并读取步骤S203中生成的加密文件priFile,通过步骤S102中生成的密钥对集合S,使用节点标识hi的私钥ki对加密文件进行解密,得到协调方公钥PubKey,将所得PukKey发送给内网参与方11(节点标识hi);
步骤S205,内网参与方11接收步骤S204解密后的公钥PubKey,同步设置本地数据每次迭代参与的训练批次,创建paillier加密处理器,初始化模型,开始首次迭代计算,并将当前迭代生成的单边梯度标记为:
Figure BDA0003744893050000084
损失值标记为
Figure BDA0003744893050000085
得到中间参数,其中,n为任务迭代计算的轮次,j2为内网参与方11的所属参数标识,通过paillier加密处理器,采用PubKey对中间参数
Figure BDA0003744893050000086
Figure BDA0003744893050000087
进行加密,生成中间参数密文数据CT1n,并将密文数据发送给内网传输监听模块13;
步骤S206,内网传输监听模块13接收步骤S205中的密文数据CT1n,基于步骤S102生成的密钥对S,参与方节点标识hi对应的私钥ki,对密文数据CT1n进行签名,生成签名文件CTFilen,并将签名文件写入离线传输模块2,文件路径为:[drive#:][/]fldir/hi/task/n/CTFilen
步骤S207,当步骤S203完成后,离线传输模块2断开与内网连接,并接入外网联邦学习集群网络,外网传输监听模块13扫描离线传输模块2的文件路径,读取步骤S206中生成的签名文件CTFile,通过步骤S103接收的内网公钥集合X0中的参与方hi标识对应的公钥Pi对签名文件CTFile进行验签,验签成功后,得到步骤S205生成的密文数据CT1,并将密文数据发送给协调方12,若验签失败,说明离线传输模块2存在被篡改风险,终止隐私计算任务;
步骤S208,外网协调方12分别接收步骤S207中的中间参数密文数据CT1和步骤S202中的中间参数密文数据CT0,再通过步骤S201中生成的私钥PrivKey对双方中间参数进行解密,解密后,外网协调方12得到首轮迭代计算过程中,由外网发起方10的单边梯度
Figure BDA0003744893050000091
损失值
Figure BDA0003744893050000092
和内网参与方11的单边梯度
Figure BDA0003744893050000093
损失值
Figure BDA0003744893050000094
组成的中间参数明文数据;
步骤S209,外网协调方12将步骤S208中得到的双方梯度进行优化、聚合后,得出首轮迭代优化后的总梯度,标记为:total_dtn,并将优化后总梯度进行切分,分别得到外网发起方10优化后的单边梯度,标记为:
Figure BDA0003744893050000095
以及内网参与方11优化后的单边梯度,标记为:
Figure BDA0003744893050000096
分别将优化后的梯度发送给外网发起方10和外网传输监听模块13,同时将步骤S208中到的双方损失值进行聚合,得到首轮迭代后的损失值,标记为:iter_lossn
实施例三
本实施例是对所述步骤S30的进一步解释,结合图5和图6所示,所述步骤S30包括有:
步骤S301,外网协调方将优化后的单边梯度
Figure BDA0003744893050000097
发送给外网发起方节点,优化后的单边梯度
Figure BDA0003744893050000101
和内网参与方节点标识hi发送给外网传输监听模块,外网发起方节点接收单边梯度
Figure BDA0003744893050000102
根据优化后的梯度更新本地模型参数,并进行下一轮迭代批次计算,生成当前迭代轮次单边梯度标记为:
Figure BDA0003744893050000103
损失值标记为
Figure BDA0003744893050000104
作为中间参数,采用PubKey对中间参数
Figure BDA0003744893050000105
通过paillier加密处理器进行加密,生成密文数据CT0n+1
步骤S302,将离线传输模块接入外网联邦学习集群网络,外网传输监听模块接收步骤S301传输的优化后的单边梯度
Figure BDA0003744893050000106
及参与方节点标识hi,通过步骤S103接收到的内网公钥集合X0中的公钥Pi
Figure BDA0003744893050000107
hi进行加密,生成加密文件,标记为wFilen,并将加密文件写入离线传输模块,文件路径为:[drive#:][/]fldir/hi/task/n/wFilen
步骤S303,完成步骤S302后,离线传输模块断开与外网的连接,并接入内网联邦学习集群网络,内网传输监听模块扫描离线传输模块的文件路径,并读取步骤S2中生成的加密文件wFilen,通过步骤S102中生成的密钥对集合S,使用节点标识hi的私钥ki对加密文件进行解密,得到解密后的单边梯度
Figure BDA0003744893050000108
将所得梯度
Figure BDA0003744893050000109
发送给内网参与方;
步骤S304,内网参与方接收步骤S303解密后的单边梯度
Figure BDA00037448930500001010
根据接收的单边梯度更新本地模型参数,并进行下一轮迭代批次计算,生成当前迭代轮次单边梯度标记为:
Figure BDA00037448930500001011
损失值标记为
Figure BDA00037448930500001012
作为中间参数,通过paillier加密处理器,采用PubKey对中间参数
Figure BDA00037448930500001013
通过paillier加密处理器进行加密,生成中间参数密文数据CT1n+1,并将密文数据发送给内网传输监听模块;
步骤S305,内网传输监听模块接收步骤S304中的中间参数密文数据CT1n+1,基于步骤S102中生成的秘钥对S,以及内网参与方节点标识hi对应的私钥ki,对密文数据CT1n+1进行签名,生成签名文件CTFilen+1,并将签名文件写入离线传输模块,文件路径为:
[drive#:][/]fldir/hi/task/n/CTFilen+1
步骤S306,完成步骤S305之后,离线传输模块断开与内网连接,并离线传输模块接入外网联邦学习集群网络;
步骤S307,外网传输监听模块扫描离线传输模块的文件路径,读取步骤S305中生成的签名文件CTFilen+1,通过步骤S103接收的内网公钥集合X0中的参与方标识hi对应的公钥Pi,对签名文件CTFilen+1进行验签,验签成功后,获取步骤S304生成的密文数据CT1n+1,并将密文数据发送给外网协调方,若验签失败,说明离线传输模块存在被篡改风险,则终止隐私计算任务;
步骤S308,外网协调方分别接收中间参数密文数据CT1n+1和中间参数密文数据CT0n+1,通过步骤S201中生成的私钥PrivKey对双方中间参数进行解密,经解密后,外网协调方得到首轮迭代计算过程中,由外网发起方的单边梯度
Figure BDA0003744893050000111
损失值
Figure BDA0003744893050000112
和内网参与方的单边梯度
Figure BDA0003744893050000113
损失值
Figure BDA0003744893050000114
组成的中间参数明文数据;
外网协调方将得到的双方梯度进行优化、聚合得到当前轮次迭代优化后的总梯度,标记为:total_dtn+1,并将优化后总梯度进行切分,分别得到外网发起方优化后的单边梯度,标记为:
Figure BDA0003744893050000115
以及内网参与方优化后的单边梯度,标记为:
Figure BDA0003744893050000116
并分别把优化后的梯度发送给外网发起方与外网传输监听模块。同时将得到的双方损失值进行聚合后得出当前轮次轮迭代后的损失值,标记为:iter_lossi,外网协调方将所有迭代批次的损失值进行计算,得到收敛阀值σ2,计算公式为:
Figure BDA0003744893050000117
n为迭代轮次,i为当前轮次变量,σ2为收敛阀值,通过σ2是否达到预设阀值,判断模型是否收敛。
本实施例中,在两个或多个网络隔离下的联邦学习集群网络中,每个集群网络下的中心节点均可根据发联邦学习起方所在的网络环境充当协调方角色,请参见图5,当外网节点作为发起方,内网作为参与方时,外网中心节点作为当前任务协调方;同理,请参见图6,当内网节点作为发起方,外网作为参与方时,内网中心节点作为当前任务协调方。具体过程按照步骤S30来实现,具体计算流程均可按照步骤S10~步骤S40进行批次迭代训练。
以上所述只是本发明较佳的实施例,并不用于限制本发明,凡在本发明的技术范围内所做的修改、等同替换或者改进等,均应包含在本发明所保护的范围内。

Claims (10)

1.一种跨网络联邦学习***,其特征在于,包括有至少两个完全物理隔离的网络以及连接于两个网络之间的离线传输模块,两个网络分别定义为外网和内网,每个网络包括有发起方、参与方、协调方和传输监听模块,其中:
外网发起方用于与内网参与方共同完成联邦学习联合建模任务;
内网参与方用于提供本地数据,接受外网发起方的邀请,以及参与所述联邦学习联合建模任务;
外网协调方用于对外网发起方和内网参与方执行联邦学习迭代计算过程中的中间参数进行聚合优化,并生成新的中间参数;
外网传输监听模块用于从所述离线传输模块读取中间参数后发送至外网协调方,以及从外网协调方接收中间参数后写入所述离线传输模块;
所述离线传输模块用于交互传输两个网络之间经过加密的中间参数。
2.如权利要求1所述的跨网络联邦学习***,其特征在于,所述离线传输模块还用于对两个网络之间交互传输的中间参数进行存储。
3.一种跨网络联邦学习方法,其特征在于,该方法基于一***实现,所述***包括有至少两个完全物理隔离的网络以及连接于两个网络之间的离线传输模块,两个网络分别定义为外网和内网,每个网络包括有发起方、参与方、协调方和传输监听模块,所述方法包括如下步骤:
步骤S10,初始化所述传输监听模块;
步骤S20,外网发起方与内网参与方共同完成联邦学习模型创建,外网协调方进行环境初始化,开始首次批次迭代计算任务;
步骤S30,外网协调方将所述步骤S20中迭代优化后的双方单边梯度分别发送给外网发起方与外网传输监听模块,设置执行下一轮迭代批次的数据区间,并开始下一轮迭代批次计算;
步骤S40,重复迭代执行所述步骤S30,直至联邦学习任务结束。
4.如权利要求3所述的跨网络联邦学习方法,其特征在于,所述步骤S10包括有如下过程:
步骤S101,分别启动内网和外网的传输监听模块;
步骤S102,内网和外网的传输监听模块分别采用RSA或SM2非对称算法,基于本方联邦学习集群网络各参与节点标识,生成密钥对集合S和公钥集合X;
步骤S103,内网和外网的传输监听模块分别加载对方网络在所述步骤S102中生成的公钥集合X,并标记为X0
步骤S104,启动所述离线传输模块扫描监听进程,实时监听对所述离线传输模块进行读写的离线联邦学习迭代批次中间参数。
5.如权利要求4所述的跨网络联邦学习方法,其特征在于,所述步骤S101中,内网和外网的所述传输监听模块基于TLCP密码协议建立安全传输通道,分别加入各方联邦学习集群网络环境,并采用Netty协议与本方联邦学习集群网络各计算节点及中心节点建立安全连接,用于存储和传输联邦学习计算批次迭代过程中的中间参数。
6.如权利要求5所述的跨网络联邦学习方法,其特征在于,所述步骤S102中,节点标识定义为:U={h1,h2,h3......hi},其中,U为所在网络环境下节点标识集合,hi定义为联邦学习节点标识,i表示联邦学习集群节点数量,基于节点标识,采用RSA或SM2加密算法,分别生成生成每个节点标识对应的公私钥集合及公钥集合,其中,密钥对集合S定义为:
Figure FDA0003744893040000021
公钥集合X定义为:
Figure FDA0003744893040000031
其中,Pi表示联邦学习节点标识hi的公钥,ki表示联邦学习节点标识hi的私钥。
7.如权利要求6所述的跨网络联邦学习方法,其特征在于,所述步骤S104中,所述离线传输模块的离线传输规则包括中间参数密文数据存储路径和中间参数密文数据验证组合,双方将存储路径规则约定为:
[drive#:][/]fldir/hi/task/n/;
其中,fldir表示设备根目录,hi表示参与方节点标识,task为固定文件夹名称,n表示任务迭代计算的轮次,依次从01、02...n递增,密文数据验证过程中,采用密钥对集合S的参与方节点标识hi的节点公钥对从离线传输模块读取的中间参数进行数据解密验签,判断是否正常解密。
8.如权利要求7所述的跨网络联邦学习方法,其特征在于,所述步骤S20包括有如下过程:
步骤S201,外网协调方基于paillier算法,生成初始化公私钥对,并将公钥PubKey和内网参与方节点标识hi分别发送给外网发起方与外网传输监听模块,对提供给外网发起方与内网参与方迭代批次的中间参数进行加密,外网协调方保存PrivKey,以及在接收迭代批次中间参数后进行解密,同时设置当前迭代批次参与训练的数据区间;
步骤S202,外网发起方接收到PubKey,设置本地数据每次迭代参与训练批次,创建paillier加密处理器,初始化模型并开始首次迭代计算,生成当前迭代轮次单边梯度标记为:
Figure FDA0003744893040000032
损失值标记为
Figure FDA0003744893040000033
得到中间参数,其中n为任务迭代计算的轮次,j1为外网发起方的所属参数标识,通过paillier加密处理器,采用PubKey对中间参数
Figure FDA0003744893040000041
进行加密,生成密文数据CT0n,并将发送给外网协调方;
步骤S203:将所述离线传输模块接入外网联邦学习集群网络,外网传输监听模块接收到步骤S201中传输的PubKey及内网参与方节点标识hi,通过步骤S103中接收到的内网公钥集合X0中的公钥Pi对协调方PubKey、hi进行加密,生成加密文件priFile,同时将加密文件写入离线传输模块,文件路径为:[drive#:][/]fldir/hi/task/n/priFile,当前任务为首次批次迭代任务,此时n值为01;
步骤S204:所述离线传输模块断开与外网的连接,接入内网联邦学习集群网络,内网传输监听模块扫描所述离线传输模块的文件路径,并读取步骤S203中生成的加密文件priFile,通过步骤S102中生成的密钥对集合S,使用节点标识hi的私钥ki对加密文件进行解密,得到协调方公钥PubKey,将所得PukKey发送给内网参与方;
步骤S205,内网参与方接收步骤S204解密后的公钥PubKey,同步设置本地数据每次迭代参与的训练批次,创建paillier加密处理器,初始化模型,开始首次迭代计算,并将当前迭代生成的单边梯度标记为:
Figure FDA0003744893040000042
损失值标记为
Figure FDA0003744893040000043
得到中间参数,其中,n为任务迭代计算的轮次,j2为内网参与方的所属参数标识,通过paillier加密处理器,采用PubKey对中间参数
Figure FDA0003744893040000044
进行加密,生成中间参数密文数据CT1n,并将密文数据发送给内网传输监听模块;
步骤S206,内网传输监听模块接收步骤S205中的密文数据CT1n,基于步骤S102生成的密钥对S,参与方节点标识hi对应的私钥ki,对密文数据CT1n进行签名,生成签名文件CTFilen,并将签名文件写入离线传输模块,文件路径为:[drive#:][/]fldir/hi/task/n/CTFilen
9.如权利要求8所述的跨网络联邦学习方法,其特征在于,所述步骤S20还包括有:
步骤S207,当步骤S203完成后,离线传输模块断开与内网连接,并接入外网联邦学习集群网络,外网传输监听模块扫描离线传输模块的文件路径,读取步骤S206中生成的签名文件CTFile,通过步骤S103接收的内网公钥集合X0中的参与方hi标识对应的公钥Pi对签名文件CTFile进行验签,验签成功后,得到步骤S205生成的密文数据CT1,并将密文数据发送给协调方,若验签失败,说明离线传输模块存在被篡改风险,终止隐私计算任务;
步骤S208,外网协调方分别接收步骤S207中的中间参数密文数据CT1和步骤S202中的中间参数密文数据CT0,再通过步骤S201中生成的私钥PrivKey对双方中间参数进行解密,解密后,外网协调方得到首轮迭代计算过程中,由外网发起方的单边梯度
Figure FDA0003744893040000051
损失值
Figure FDA0003744893040000052
和内网参与方的单边梯度
Figure FDA0003744893040000053
损失值
Figure FDA0003744893040000054
组成的中间参数明文数据;
步骤S209,外网协调方将步骤S208中得到的双方梯度进行优化、聚合后,得出首轮迭代优化后的总梯度,标记为:total_dtn,并将优化后总梯度进行切分,分别得到外网发起方优化后的单边梯度,标记为:
Figure FDA0003744893040000055
以及内网参与方优化后的单边梯度,标记为:
Figure FDA0003744893040000056
分别将优化后的梯度发送给外网发起方和外网传输监听模块,同时将步骤S208中到的双方损失值进行聚合,得到首轮迭代后的损失值,标记为:iter_lossn
10.如权利要求9所述的跨网络联邦学习方法,其特征在于,所述步骤S30包括有:
步骤S301,外网协调方将优化后的单边梯度
Figure FDA0003744893040000057
发送给外网发起方节点,优化后的单边梯度
Figure FDA0003744893040000058
和内网参与方节点标识hi发送给外网传输监听模块,外网发起方节点接收单边梯度
Figure FDA0003744893040000059
根据优化后的梯度更新本地模型参数,并进行下一轮迭代批次计算,生成当前迭代轮次单边梯度标记为:
Figure FDA0003744893040000061
损失值标记为
Figure FDA0003744893040000062
作为中间参数,采用PubKey对中间参数
Figure FDA0003744893040000063
通过paillier加密处理器进行加密,生成密文数据CT0n+1
步骤S302,将离线传输模块接入外网联邦学习集群网络,外网传输监听模块接收步骤S301传输的优化后的单边梯度
Figure FDA0003744893040000064
及参与方节点标识hi,通过步骤S103接收到的内网公钥集合X0中的公钥Pi
Figure FDA0003744893040000065
hi进行加密,生成加密文件,标记为wFilen,并将加密文件写入离线传输模块,文件路径为:[drive#:][/]fldir/hi/task/n/wFilen
步骤S303,完成步骤S302后,离线传输模块断开与外网的连接,并接入内网联邦学习集群网络,内网传输监听模块扫描离线传输模块的文件路径,并读取步骤S2中生成的加密文件wFilen,通过步骤S102中生成的密钥对集合S,使用节点标识hi的私钥ki对加密文件进行解密,得到解密后的单边梯度
Figure FDA0003744893040000066
将所得梯度
Figure FDA0003744893040000067
发送给内网参与方;
步骤S304,内网参与方接收步骤S303解密后的单边梯度
Figure FDA0003744893040000068
根据接收的单边梯度更新本地模型参数,并进行下一轮迭代批次计算,生成当前迭代轮次单边梯度标记为:
Figure FDA0003744893040000069
损失值标记为
Figure FDA00037448930400000610
作为中间参数,通过paillier加密处理器,采用PubKey对中间参数
Figure FDA00037448930400000611
通过paillier加密处理器进行加密,生成中间参数密文数据CT1n+1,并将密文数据发送给内网传输监听模块;
步骤S305,内网传输监听模块接收步骤S304中的中间参数密文数据CT1n+1,基于步骤S102中生成的秘钥对S,以及内网参与方节点标识hi对应的私钥ki,对密文数据CT1n+1进行签名,生成签名文件CTFilen+1,并将签名文件写入离线传输模块,文件路径为:
[drive#:][/]fldir/hi/task/n/CTFilen+1
步骤S306,完成步骤S305之后,离线传输模块断开与内网连接,并离线传输模块接入外网联邦学习集群网络;
步骤S307,外网传输监听模块扫描离线传输模块的文件路径,读取步骤S305中生成的签名文件CTFilen+1,通过步骤S103接收的内网公钥集合X0中的参与方标识hi对应的公钥Pi,对签名文件CTFilen+1进行验签,验签成功后,获取步骤S304生成的密文数据CT1n+1,并将密文数据发送给外网协调方,若验签失败,说明离线传输模块存在被篡改风险,则终止隐私计算任务;
步骤S308,外网协调方分别接收中间参数密文数据CT1n+1和中间参数密文数据CT0n+1,通过步骤S201中生成的私钥PrivKey对双方中间参数进行解密,经解密后,外网协调方得到首轮迭代计算过程中,由外网发起方的单边梯度
Figure FDA0003744893040000071
损失值
Figure FDA0003744893040000072
和内网参与方的单边梯度
Figure FDA0003744893040000073
损失值
Figure FDA0003744893040000074
组成的中间参数明文数据;
外网协调方将得到的双方梯度进行优化、聚合得到当前轮次迭代优化后的总梯度,标记为:total_dtn+1,并将优化后总梯度进行切分,分别得到外网发起方优化后的单边梯度,标记为:
Figure FDA0003744893040000075
以及内网参与方优化后的单边梯度,标记为:
Figure FDA0003744893040000076
并分别把优化后的梯度发送给外网发起方与外网传输监听模块。同时将得到的双方损失值进行聚合后得出当前轮次轮迭代后的损失值,标记为:iter_lossi,外网协调方将所有迭代批次的损失值进行计算,得到收敛阀值σ2,计算公式为:
Figure FDA0003744893040000077
n为迭代轮次,i为当前轮次变量,σ2为收敛阀值,通过σ2是否达到预设阀值,判断模型是否收敛。
CN202210823096.6A 2022-07-13 2022-07-13 一种跨网络联邦学习***及方法 Active CN115277696B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210823096.6A CN115277696B (zh) 2022-07-13 2022-07-13 一种跨网络联邦学习***及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210823096.6A CN115277696B (zh) 2022-07-13 2022-07-13 一种跨网络联邦学习***及方法

Publications (2)

Publication Number Publication Date
CN115277696A true CN115277696A (zh) 2022-11-01
CN115277696B CN115277696B (zh) 2023-04-18

Family

ID=83765984

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210823096.6A Active CN115277696B (zh) 2022-07-13 2022-07-13 一种跨网络联邦学习***及方法

Country Status (1)

Country Link
CN (1) CN115277696B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115766189A (zh) * 2022-11-10 2023-03-07 贵州电网有限责任公司 一种多通道隔离安全防护方法及***

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113487042A (zh) * 2021-06-28 2021-10-08 海光信息技术股份有限公司 一种联邦学习方法、装置及联邦学习***
CN114003950A (zh) * 2021-10-19 2022-02-01 南京三眼精灵信息技术有限公司 基于安全计算的联邦机器学习方法、装置、设备及介质
CN114139722A (zh) * 2021-11-29 2022-03-04 广发银行股份有限公司 基于区块链的联邦学习任务调度方法、***、设备及介质
WO2022060264A1 (en) * 2020-09-18 2022-03-24 Telefonaktiebolaget Lm Ericsson (Publ) Methods and systems for updating machine learning models
CN114490704A (zh) * 2020-11-13 2022-05-13 深圳前海微众银行股份有限公司 数据处理方法、装置、设备及存储介质
CN114640498A (zh) * 2022-01-27 2022-06-17 天津理工大学 一种基于联邦学习的网络入侵协同检测方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022060264A1 (en) * 2020-09-18 2022-03-24 Telefonaktiebolaget Lm Ericsson (Publ) Methods and systems for updating machine learning models
CN114490704A (zh) * 2020-11-13 2022-05-13 深圳前海微众银行股份有限公司 数据处理方法、装置、设备及存储介质
CN113487042A (zh) * 2021-06-28 2021-10-08 海光信息技术股份有限公司 一种联邦学习方法、装置及联邦学习***
CN114003950A (zh) * 2021-10-19 2022-02-01 南京三眼精灵信息技术有限公司 基于安全计算的联邦机器学习方法、装置、设备及介质
CN114139722A (zh) * 2021-11-29 2022-03-04 广发银行股份有限公司 基于区块链的联邦学习任务调度方法、***、设备及介质
CN114640498A (zh) * 2022-01-27 2022-06-17 天津理工大学 一种基于联邦学习的网络入侵协同检测方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115766189A (zh) * 2022-11-10 2023-03-07 贵州电网有限责任公司 一种多通道隔离安全防护方法及***
CN115766189B (zh) * 2022-11-10 2024-05-03 贵州电网有限责任公司 一种多通道隔离安全防护方法及***

Also Published As

Publication number Publication date
CN115277696B (zh) 2023-04-18

Similar Documents

Publication Publication Date Title
Cui et al. RSMA: Reputation system-based lightweight message authentication framework and protocol for 5G-enabled vehicular networks
Khan et al. An efficient and provably secure certificateless key-encapsulated signcryption scheme for flying ad-hoc network
US20210336792A1 (en) Leveraging multiple devices to enhance security of biometric authentication
CN113194469A (zh) 基于区块链的5g无人机跨域身份认证方法、***及终端
RU2009120689A (ru) Распределенная отмена полномочий устройств
CN110113334A (zh) 基于区块链的合同处理方法、设备及存储介质
CN115277696B (zh) 一种跨网络联邦学习***及方法
CN116957064A (zh) 基于知识蒸馏的联邦学习隐私保护模型训练方法及***
CN115935438A (zh) 数据隐私求交***及方法
Zhao et al. Fuzzy identity-based dynamic auditing of big data on cloud storage
CN116011014A (zh) 一种隐私计算方法和隐私计算***
CN105610872A (zh) 物联网终端加密方法和物联网终端加密装置
CN111709053B (zh) 基于松散耦合交易网络的作业方法及作业装置
CN114124347A (zh) 一种基于区块链的安全多方计算方法及***
CN113328854A (zh) 基于区块链的业务处理方法及***
Zhou et al. VDFChain: Secure and verifiable decentralized federated learning via committee-based blockchain
CN114257419B (zh) 设备认证方法、装置、计算机设备和存储介质
Zeng et al. Concurrently Deniable Group Key Agreement and Its Application to Privacy‐Preserving VANETs
Kiefer et al. Universally composable two-server PAKE
CN115361196A (zh) 一种基于区块链网络的业务交互方法
Ayad et al. An efficient authenticated group key agreement protocol for dynamic UAV fleets in untrusted environments
He et al. Efficient group key management for secure big data in predictable large‐scale networks
CN114172742A (zh) 基于节点地图与边缘认证的电力物联网终端设备分层认证方法
CN116614273B (zh) 基于cp-abe的对等网络中联邦学习数据共享***及模型构建方法
Tian et al. A new construction for linkable secret handshake

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