CN112288094A - 联邦网络表示学习方法及*** - Google Patents
联邦网络表示学习方法及*** Download PDFInfo
- Publication number
- CN112288094A CN112288094A CN202011072793.XA CN202011072793A CN112288094A CN 112288094 A CN112288094 A CN 112288094A CN 202011072793 A CN202011072793 A CN 202011072793A CN 112288094 A CN112288094 A CN 112288094A
- Authority
- CN
- China
- Prior art keywords
- node
- participant
- training
- local
- distributed
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 61
- 238000012549 training Methods 0.000 claims abstract description 127
- 239000013598 vector Substances 0.000 claims abstract description 66
- 238000005070 sampling Methods 0.000 claims abstract description 46
- 238000004220 aggregation Methods 0.000 claims abstract description 28
- 230000002776 aggregation Effects 0.000 claims abstract description 26
- 230000008569 process Effects 0.000 claims description 28
- 238000004422 calculation algorithm Methods 0.000 claims description 25
- 238000004364 calculation method Methods 0.000 claims description 15
- 238000005295 random walk Methods 0.000 claims description 15
- 230000006870 function Effects 0.000 claims description 13
- 238000003860 storage Methods 0.000 claims description 9
- 238000009826 distribution Methods 0.000 claims description 7
- 238000005457 optimization Methods 0.000 claims description 6
- 230000004931 aggregating effect Effects 0.000 claims description 5
- 238000010801 machine learning Methods 0.000 claims description 4
- 230000007935 neutral effect Effects 0.000 claims description 4
- NAWXUBYGYWOOIX-SFHVURJKSA-N (2s)-2-[[4-[2-(2,4-diaminoquinazolin-6-yl)ethyl]benzoyl]amino]-4-methylidenepentanedioic acid Chemical compound C1=CC2=NC(N)=NC(N)=C2C=C1CCC1=CC=C(C(=O)N[C@@H](CC(=C)C(O)=O)C(O)=O)C=C1 NAWXUBYGYWOOIX-SFHVURJKSA-N 0.000 claims description 3
- 235000008694 Humulus lupulus Nutrition 0.000 claims description 3
- 239000000654 additive Substances 0.000 claims description 3
- 230000000996 additive effect Effects 0.000 claims description 3
- 238000013507 mapping Methods 0.000 claims description 3
- 230000008859 change Effects 0.000 claims description 2
- 101100391182 Dictyostelium discoideum forI gene Proteins 0.000 claims 1
- 230000000295 complement effect Effects 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- QVRVXSZKCXFBTE-UHFFFAOYSA-N n-[4-(6,7-dimethoxy-3,4-dihydro-1h-isoquinolin-2-yl)butyl]-2-(2-fluoroethoxy)-5-methylbenzamide Chemical compound C1C=2C=C(OC)C(OC)=CC=2CCN1CCCCNC(=O)C1=CC(C)=CC=C1OCCF QVRVXSZKCXFBTE-UHFFFAOYSA-N 0.000 description 1
- 238000003012 network analysis Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting 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/6245—Protecting personal data, e.g. for financial or medical purposes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bioethics (AREA)
- Medical Informatics (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种联邦网络表示学习方法及***,提出一种隐私保护的上下文节点采样的方法来生成训练节点对,通过多轮本地训练、分布式训练、全局聚合这三个步骤来学习每个数据拥有者的节点低维向量表示。本发明主要基于联邦学习的思想,考虑多个参与者所拥有的网络数据互补的特征和数据私密性问题,提出了一种联邦网络表示学习的表示学习方法及***。本方法充分考虑多个参与者所拥有的网络共享部分相同的节点集的特性,通过隐私保护的上下文节点采样和联邦训练来让多个参与者在隐私保护的前提下共同协作来学习各自的节点向量表示。通过本发明,每个参与者获得的节点向量表示将比使用自己的网络单独训练更加有效。
Description
技术领域
本发明属于计算机科学领域,涉及一种网络表示学习方法及***,具体涉及一种联邦网络表示学习方法及***。
背景技术
网络(Network)数据广泛存在于现实世界中,例如在金融科技场景中,将客户建模为网络中的节点,并将客户之间特定的交互(如信用担保、资金流转、股份持有)建模为连接节点的边,然后可以在此网络上可以进行各种网络分析来分析潜在的财务风险或团伙欺诈。网络表示学习(Network Representation Learning)旨为网络中的每个节点学习低维有效的向量表示,近来已经成为了最有效的网络分析基础工具之一,因为基于学习到的节点表示,可以利用一些成熟的机器学习算法来进行深入的网络数据的分析。
然而对于银行这类对隐私敏感的数据拥有者而言,网络表示学习的应用存在这一个重大挑战。对于每家银行,它只有一个孤立的客户交易网络。因为孤立的客户交易网络缺少了其他银行中相同用户之间的某些直接或间接交互,孤立的客户交易网络描绘的客户关系往往不是准确、完整的。例如,在银行1中客户A与客户B(已被识别为风险用户)不存在交易关系而在银行2中客户A与客户B之间存在一条交易关系,这种情况下银行1的客户交易网络无法准确的反映客户A和B的完整的交易关系,可能会忽视客户A也是有风险的。并且在现实世界中,出于对用户数据的隐私保护,银行之间无法进行直接的数据交换进行物理地合并每家银行持有的交易网络来获得一个完整的交易网络。
因此像银行这样的数据拥有者拥有互补的网络并且不允许交换原生数据,希望网络表示学习可以被“联邦”,即从一组分散在多个数据拥有者的网络(Network)学习出节点更加有效完整的表示而又不会侵犯数据隐私。
现有的网络表示学习方法如DeepWalk、node2vec等只考虑对单个孤立网络进行表示学习。近年来,联邦学习被提出用来在多个去中心化的数据拥有者之间训练共享模型而无需交换原生数据,很好的实现对每个数据拥有者的数据隐私的保护。但是现有的联邦学习只是针对非关系型数据,比如表格类数据,样本之间是独立同分布的,不能简单的扩展到网络(Network)这类关系型数据。所以,如何让多个共享一些相同节点的数据拥有者持有的网络数据能够协同学习出更加有效的节点表示是网络表示学习领域中一个具有挑战的问题。
发明内容
本发明为多个对隐私敏感数据拥有者持有的共享一些相同节点的多个网络,提供一种联邦网络表示的方法及***,使得每个参与联邦网络表示学习的数据提供者能够从其他方所拥有的数据中获的更丰富的拓扑结构信息,获得到更有效节点表示,同时不会泄漏各方的数据隐私。
本发明的方法所采用的技术方案为:一种联邦网络表示学习方法,给定m个参与者提供的m个本地网络G1,...,Gm和一个正整数d<<|V|;每个参与者Pi拥有一个本地网络Gi=(Vi,Ei),其中Vi代表网络的节点集,表示节点之间的边集;对于任意的一个本地网络Gi一定存在另一个本地网络Gj使得令G=(V,E)=(V1∪…∪Vm,E1∪……∪Em)表示所有由本地网络在逻辑上合并的全局网络;
所述方法包含隐私保护的上下文节点采样(privacy-preserved context nodesampling)和联邦训练(federated training)两个阶段。隐私保护的上下文节点采样是为了生成源-上下文节点对(source-context node pair),这些节点对可以准确的描述了原始网络中节点之间的关系,用于作为训练数据。此阶段包含以下步骤:
步骤1:节点对齐;
步骤2:本地采样;
对每个参与者Pi所持有的网络单独地应用随机游走策略来生成源-上下文节点对;所述随机游走策略为以网络中的每个节点u作为起点进行γ次长度为l的游走,获得固定长度节点序列,对于每一条节点序列中的每一个节点,取其前后窗口大小为w范围内的节点v作为上下文节点,从而获得若干类似于(u,v)的源-上下节点对作为本地训练样本
步骤3:分布式采样;
对任意共享部分相同节点集的两个参与者Pi和Pj所拥有的两个网络进行采样生成源-上下文节点对;对于每一个相同的节点c,在参与者Pi和Pj的网络中的节点c的w-order范围内的邻居节点集合分别表示为和 与组成源-上下文节点对;节点c的w-order范围是指离节点c最短距离不超过w跳的范围内的节点;其中,节点u的信息物理存储在参与者Pi,而节点v的信息存储在参与者Pj,这样的源-上下文节点对被称为分布式样本使用随机唯一的样本ID来标识分布式样本,训练时通过对齐样本ID来重构真实的分布式样本;
步骤4:初始化节点向量表示;
步骤5:训练本地样本;
每个参与者Pi应用负采样等价后的Skip-gram模型来训练其生成的本地样本参与者Pi使用mini-batch梯度下降优化算法在本地优化来更新节点的表示,优化后的能够捕获参与者i本地的网络拓扑结构信息;
步骤6:训练分布式样本;
分布式样本的源节点和上下文节点的信息分别存储于两个参与者,在训练的过程中需要两个参与者和一个中立的服务器互相交换中间数据,训练期间的计算是在加法同态加密下完成的,保证数据隐私;
步骤7:全局聚合;
将任意两个参与者共享的相同节点集对应的节点向量表示进行聚合,然后将聚合后的节点表示推回给相应的参与者并更新对应的节点表示;训练过程总的损失的变化小于指定的阈值ε则停止训练,否则转到步骤5;其中,本地样本训练产生的损失和分布式样本产生的损失之和为训练过程总的损失。
本发明的***所采用的技术方案是:一种联邦网络表示学习***,其特征在于:包括网络数据加载模块、节点对齐模块、本地采样模块、分布式采样模块、本地样本训练模块、分布式样本训练模块、全局聚合模块、结束判断模块、存储模块和服务器;
所述网络数据加载模块,用于每个参与者Pi从磁盘里加载本地的节点和边信息到内存中形成本地网络Gi;
所述分布式采样模块,用于每个参与者Pi与其他任意拥有相同节点的参与者Pj共同生成分布式样本此模块用Pi和Pj的共享相同的节点作为桥梁,节点在两个参与者w-order范围内的邻居节点集互为上下文节点;在生成分布式样本的时候新增样本ID来标识分布式样本;
所述本地样本训练模块,用于每个参议者Pi训练本地样本此模块使用负采样近似的Skip-gram来进行训练,用mini-batch梯度下降进行优化,来更新节点的表示;此模块完成训练之后还会将产生的损失发送给服务器,将节点的向量表示输入分布式训练模块;
所述分布式样本训练模块,用于每个参与者Pi与其他任意拥有相同节点的参与者Pj,服务器共同训练分布式样本此模块使用加法同态加密来完成损失的计算并将其发送到服务器,同时用同态加密完成节点梯度的计算,保证了双方的数据隐私;将节点的向量表示输入全局聚合模块;
所述全局聚合模块,用于聚合被两个及两个以上参与者所共享的相同节点的向量表示;每个参与者Pi将发送到服务器;服务器进行聚合然后将聚合后的节点向量表示传播给相应的参与者;参与者接收到聚合后的节点向量表示后更新本地相应的节点的向量表示;
所述结束判断模块,用于判断是否还需要进行训练;服务器接收参与者发送的本地样本训练损失和分布式样本训练的损失并计算总的损失;将上一轮的总的损失和当前总的损失相减,若差值小于给定阈值ε,则将停止信号设为真,并将其发送给各个参与者,然后停止运行;否则,将停止信号设为假,并将其发送给各个参与者,然后转到本地样本训练模块;参与者接收停止信号,若信号为真则将节点的向量表示输入到存储模块,否则转到本地样本训练模块;
所述存储模块,用于持久化学习的节点向量表示,以用于下游的机器学习任务。
本发明利用已有的加密算法如RSA为每个参与者生成本地样本和分布式样本,基于联邦学习的思想,通过进行多轮本地样本训练、分布式样本训练和全局聚合三个步骤,使得多个参与者所拥有的多个网络能够协作起来训练,每方获得的节点特征表示将比仅用自己的网络数据学到的特征表示更加有效,并且不会要求物理的合并多个参与者的原生数据,保护了数据隐私。
附图说明
图1是本发明实施例的方法流程图。
图2是本发明实施例的分布式采样流程图。
图3是本发明实施例的***框图。
具体实施方式
为了便于本领域普通技术人员理解和实施本发明,下面结合附图及实施例对本发明作进一步的详细描述,应当理解,此处所描述的实施示例仅用于说明和解释本发明,并不用于限定本发明。
参见图1,本实施例以m个参与者为例对本发明的流程进行一个具体的阐述,如下:假设有m个参与者参与联邦网络表示学习,每个参与者Pi拥有一个本地网络(localnetwork)Ci=(Vi,Ei),其中Vi代表网络的节点集,表示节点之间的边集。对于任意的一个本地网络Gi一定存在另一个本地网络Gj使得令G=(V,E)=(V1∪…∪Vm,E1∪……∪Em)表示所有由本地网络在逻辑上合并的全局网络(global network)。显然,任意的本地网络Gi必须与其他至少一个本地网络共享一些相同的节点,否则Gi则是G中的一个孤立的连通分量而无法从联邦网络表示学习中获益。
联邦网络表示学习(Federated Network Embedding):给定m个参与者提供的m个本地网络G1,...,Gm和一个正整数d<<|V|,联邦网络表示学习的目的是学习一个统一的映射函数f:V→Rd,其中hu=f(u)表示节点u在嵌入空间里向量表示,与此同时不会把任意参与者的数据泄漏到其他参与者。通过联邦表示学习的向量表示尽量和直接从逻辑上的全局图G上应用普通的网络表示学习方法DeepWalk一样有效。每个参与者Pi最终会获得它自己的节点对应的向量表示
为了便于实施参考起见,本发明建议用下游的任务的性能来评判节点表示的有效性。
本发明提供的一种联邦网络表示学习方法,包括以下步骤:
步骤1:节点对齐;
对于任意两个参与者Pi和Pj需要在隐私保护的条件下获取它们共享的节点。
本实施例具体的实施过程如下:
步骤2:本地采样(local sampling)。
本地采样是对每个参与者Pi所持有的网络单独地应用随机游走策略来生成源-上下文节点对。所述的随机游走策略为以网络中的每个节点u作为起点进行次长度为l的游走,这样就会产生很多固定长度节点序列。对于每一条节点序列中的每一个节点,取其前后窗口大小为w范围内的节点v作为上下文节点,这样就能得到大量的类似于(u,v)的源-上下节点对作为本地训练样本(local sample)
实施例具体的实施过程说明如下:
随机游走是从给定的起始节点出发,当到达某一个节点时,下一步将从该节点的邻居节点随机选取一个节点作为下一步到达的节点。通过这种随机游走的策略可以产生大量的节点序列,然后对于每条序列,在其上滑动长度为2w+1的窗口,窗口中心的节点作为源节点(source node),窗口内的其他节点作为源节点的上下文节点(context node)。这一步骤每个参与者独立在本地运行的。一个实施例可能采用的采样参数集合比如γ=10,w=10,l=80,每个参与者Pi应用上述采样参数进行本地样本采样即会获得本地训练样本
步骤3:分布式采样(distributed sampling)。
分布式采样是对于任意共享部分相同节点集的两个参与者Pi和Pj所拥有的两个网络进行采样生成源-上下文节点对的过程。对于每一个相同的节点c,在参与者Pi(Pj)的网络中的节点c的w-order范围内的邻居节点集合表示为 可以与组成源-上下文节点对。节点c的w-order范围是指离节点c最短距离不超过w跳的范围内的节点;值得注意的是,节点u的信息物理存储在参与者Pi,而节点v的信息存储在参与者Pj,所以这样的源-上下文节点对被称为分布式样本(distributed sample)为了保护各方的数据隐私,使用随机唯一的样本ID来标识分布式样本,训练时可以通过对齐样本ID来重构真实的分布式样本。
实施例具体的实施过程说明如下:
分布式采样是由任意两个共享部分相同节点集的两个参与者协作完成的,这里说明参与者Pi和Pj的分布式采样过程,参照图2,其他的两个参与者也有着相同的步骤。
首先,在步骤1中利用RSA非对称加密算法和散列算法进行节点对齐之后Pi和Pj都会获得自己与对方共享的节点集与此同时Pi和Pj不会知道对方独有的节点的任何信息。对于节点集中的节点c,其在Gi和Gj中w-order范围内的邻居节点集分别记为和对于逻辑上的全局图G来说,如果在其上进行随机游走,则中的节点与中的节点可能会被处于同一节点序列中并且处于长度为2w+1的窗口内,所以中的任意节点u与中的任意节点v互为上下文节点。对于节点c的w-order范围内的邻居可以通过从节点c出发进行t次长度为w的随机游走(RW)近似采样取得。逻辑上分布式样本集合为中的每个节点c的邻居节点集和的笛卡尔积的并集,即
然后,由于中的任意节点u与中的任意节点v是处于两个参与者,它们不能相互暴露自己的节点ID,所以我们新增样本ID来标识分布式样本,这样在训练的时候即可通过样本ID的对齐来实现真正分布式样本的构建。Pi将发送给Pj,然后Pj生成个随机唯一的样本id集合Sji并且发送给Pi(命名为Sij)。
最后,Pi将Sij中的一个元素对应分配给由把中的元素重复次的多重集中的一个元素即可得到逻辑上分布式样本的一半(partial sample)同理,Pj将Sji中的一个元素对应分配给由把中的元素重复次的多重集中的一个元素即可得到逻辑上分布式样本的另一半(partial sample)明显,和Sij之间存在一种单射关系其中,fij为函数即映射关系,(u,v)为自变量。
步骤4:节点向量表示的初始化。
此步骤每个参与者都是独立运行的。每个参与者Pi根据其节点数量|Vi|和节点向量表示的维度d,采用均匀或者高斯分布来初始化节点的向量表示。
步骤5:本地样本训练(local sample training)。
本地样本训练是每个参与者Pi应用负采样等价后的Skip-gram模型来训练其生成的本地样本参与者Pi使用mini-batch梯度下降优化算法在本地优化来更新节点的表示,优化后的能够捕获参与者Pi本地的网络拓扑结构信息。
实施例具体的实施过程说明如下:
参与者具体的实施过程:
针对步骤2中每个参与者Pi中生成的本地样本参与者Pi可以在本地独立地使用负采样近似后的Skip-gram的目标函数进行训练,这个步骤是所有参与者并行执行的,因为训练过程只用每个参与者在本地训练。具体的,每个参与者Pi本地样本训练的目标函数如下:
其中σ(x)=1(1+exp(-x)),表示参与者Pi中节点u的向量表示,nk表示第k个负上下文节点;对于每个源-上下文节点对(u,v)都会从一个给定的概率分布中采样K个负上下文节点。为了便于实施参考起见,本发明建议采样负上下文节点的概率分布为即每个节点被采样到的概率与其度数的次幂成正比。参与者Pi可以使用mini-batch梯度下降优化算法在本地优化来更新节点的表示,这样获得的节点表示能够捕获参与者本地网络的拓扑结构信息,同时,Pi会将发送给服务器。这类似横向联邦学习的本地模型训练过程。
步骤6:分布式样本训练(distributed sample training)。
分布式样本训练是用于训练分布式样本的过程。因为分布式样本的源节点和上下文节点的信息分别存储于两个参与者,在训练的过程中需要两个参与者和一个中立的服务器互相交换中间数据,训练期间的计算是在加法同态加密(additively homomorphicencryption)下完成的,从而保证了数据隐私。
步骤3中生成的分布式样本总是由两个参与者存储的信息共同构成,其中一个参与者存有分布式样本的源节点信息,而另外一个参与者存有分布式样本的上下文节点信息,这种数据分布类似纵向联邦学习场景下的数据分布,每一方只有训练样本的一部分特征(feature-partitioned),训练过程类似纵向联邦学习。针对分布式样本,我们提出了一种分布式样本训练的方法。此处本发明仅考虑由参与者Pi与Pj共同构成的分布式样本的训练过程,其他的任意两个参与者的组合有着相同的训练过程。
实施例具体的实施过程说明如下:
其中表示参与者Pi和Pj之间的分布式样本的损失。这里本实施例没有采用像步骤4本地样本训练中的负采样,这样不仅可以减少计算的复杂度还可以使得在计算的时候Pi和Pj有着相同的身份(对称)。对于Pi中的一个特定节点a和Pj中的一个特定节点b而言,它们的向量的表示的梯度计算如下:
其中I(x)为指示函数,当x为真时,则I(x)=1,否则I(x)=0。从上述公式可以看出计算Pi或Pj中节点的梯度需要对方所拥有的节点表示。然而实际上Pi和Pj之间不能相互直接泄漏它们的原始信息给对方,所以本发明使用Paillier加法同态加密算法来完成分布式样本训练的损失和梯度的计算。
其中[[x]]代表对x进行加密操作。同样的,梯度的计算也相应更改为:
从上述梯度计算公式可以看出Pi和Pj的作用是对称的,所以在本发明提出的分布式训练过程中Pi和Pj的身份是等价的。
除了提供网络数据的这些参与者,分布式训练还需要一个中立的服务器来协调训练过程。服务器在训练开始会将用于加密的公钥发送给每个参与者。服务器在训练过程中负责接收加密后的模型更新值和损失,解密模型更新值并发送给相应参与者。Algorithm 1描述了分布式训练中任意参与者Pi的工作流程(1-13,21-26行)和服务器的工作流程(14-20行)。
步骤7:全局聚合。
全局聚合是将任意两个参与者共享的相同节点集对应的节点向量表示上传到服务器进行聚合,然后将聚合后的节点表示推回给相应的参与者并更新对应的节点表示。训练过程总的损失(本地样本训练产生的损失和分布式样本产生的损失之和)小于指定的阈值ε则停止训练,否则转到步骤5。
实施例具体的实施过程说明如下:
参与者具体的实施过程:在经历过步骤5中的本地样本训练和步骤6中的分布式样本训练,本地网络中节点对应的节点表示能够捕获对应节点在本地网络中的拓扑结构信息和部分和其他本地网络中的节点形成的邻域关系(分布式样本所反映的结构信息)。表示参与者Pi与其他参与者共享的相同节点集。为了合并相同节点(至少被两个参与者所共享的相同节点)在多个本地网络所捕获的信息,每个参与者Pi会将中每个节点的向量表示(步骤6训练完成之后的值)上传到服务器用FederatedAveraging算法进行全局聚合。对于中的每个节点a,表示节点a的向量表示在参与者Pi进行本地样本训练和分布式样本训练时被更新的参数之和,可由公式(9)计算得到:
其中I(x)为指示函数,当x为真时,则I(x)=1,否则I(x)=0;
参与者Pi将发送到服务器([[ID(a)]]表示加密后的节点ID)。Pi接收服务器聚合后的a节点表示ha并更新本地的a节点表示。然后,Pi接收停止信号,如果停止信号为真,将学习到的节点向量的表示存储到本地,停止运行。否则,转到步骤5。
服务器具体的实施过程:服务器可以根据接收到的上述数据根据加密后的节点ID进行对齐后根据公式(10)进行全局聚合。n表示拥有节点a的参与者的数量。ha代表者n个参与者中节点a的向量表示全局聚合的结果。服务器完成全局聚合后会将广播给这n个参与者,相应的参与者会更新共享节点a的向量表示以用于下一轮的训练。本发明建议也可以使用最新的聚合算法Secure Aggregation来进行全局聚合。
服务器会对在本地样本训练和分布式样本训练期间接收到的损失求和得到总的损失如果上一轮得到的总损失L与当前的总损失L之差小于阈值ε则服务器设置停止信号为真,并给各个参与者发送停止信号,然后停止运行。否则,设置停止信号为假,并给各个参与者发送停止信号,然后转到步骤5。
本发明提供的方法,也可以利用模块化设计技术实现为相应***。如图3所示,可建立联邦网络表示学习***,***中包含网络数据加载模块、节点对齐模块、本地采样模块、分布式采样模块、本地样本训练模块、分布式样本训练模块、全局聚合模块、结束判断模块、存储模块和服务器;
网络数据加载模块,用于每个参与者Pi从磁盘里加载本地的节点和边信息到内存中形成本地网络Gi;
分布式采样模块,用于每个参与者Pi与其他任意拥有相同节点的参与者Pj共同生成分布式样本此模块用Pi和Pj的共享相同的节点作为桥梁,c节点在两个参与者w-order范围内的邻居节点集互为上下文节点;在生成分布式样本的时候新增样本ID来标识分布式样本;
本地样本训练模块,用于每个参议者Pi训练本地样本此模块使用负采样近似的Skip-gram来进行训练,用mini-batch梯度下降进行优化,来更新节点的表示;此模块完成训练之后还会将产生的损失发送给服务器,将节点的向量表示输入分布式训练模块;
分布式样本训练模块,用于每个参与者Pi与其他任意拥有相同节点的参与者Pj,服务器共同训练分布式样本此模块使用加法同态加密来完成损失的计算并将其发送到服务器,同时用同态加密完成节点梯度的计算,保证了双方的数据隐私;将节点的向量表示输入全局聚合模块;
全局聚合模块,用于聚合被两个及两个以上参与者所共享的相同节点的向量表示;每个参与者Pi将发送到服务器;服务器用公式(10)进行聚合然后将聚合后的节点向量表示传播给相应的参与者;参与者接收到聚合后的节点向量表示后更新本地相应的节点的向量表示;
结束判断模块,用于判断是否还需要进行训练;服务器接收参与者发送的本地样本训练损失和分布式样本训练的损失并计算总的损失;将上一轮的总的损失和当前总的损失相减,若差值小于给定阈值ε,则将停止信号设为真,并将其发送给各个参与者,然后停止运行;否则,将停止信号设为假,并将其发送给各个参与者,然后转到本地样本训练模块;参与者接收停止信号,若信号为真则将节点的向量表示输入到存储模块,否则转到本地样本训练模块;
存储模块,用于持久化学习的节点向量表示,以用于下游的机器学习任务。
本发明主要基于联邦学习的思想,考虑多个参与者所拥有的网络数据互补的特征和数据私密性问题,提出了一种联邦网络表示学习的表示学习方法及***。本方法充分考虑多个参与者所拥有的网络共享部分相同的节点集的特性,通过隐私保护的上下文节点采样和联邦训练来让多个参与者在隐私保护的前提下共同协作来学习各自的节点向量表示。通过本发明,每个参与者获得的节点向量表示将比使用自己的网络单独训练更加有效。
本发明提供的方法能够用计算机软件技术实现流程。
应当理解的是,本说明书未详细阐述的部分均属于现有技术。
应当理解的是,上述针对较佳实施例的描述较为详细,并不能因此而认为是对本发明专利保护范围的限制,本领域的普通技术人员在本发明的启示下,在不脱离本发明权利要求所保护的范围情况下,还可以做出替换或变形,均落入本发明的保护范围之内,本发明的请求保护范围应以所附权利要求为准。
Claims (7)
1.一种联邦网络表示学习方法,给定m个参与者提供的m个本地网络G1,...,Gm和一个正整数d<<|V|;每个参与者Pi拥有一个本地网络Gi=(Vi,Ei),其中Vi代表网络的节点集,表示节点之间的边集;对于任意的一个本地网络Gi一定存在另一个本地网络Gj使得令G=(V,E)=(V1∪…∪Vm,E1∪……∪Em)表示所有由本地网络在逻辑上合并的全局网络;
其特征在于,所述方法包括以下步骤:
步骤1:节点对齐;
步骤2:本地采样;
对每个参与者Pi所持有的网络单独地应用随机游走策略来生成源-上下文节点对;所述随机游走策略为以网络中的每个节点u作为起点进行γ次长度为l的游走,获得固定长度节点序列,对于每一条节点序列中的每一个节点,取其前后窗口大小为w范围内的节点v作为上下文节点,从而获得若干类似于(u,v)的源-上下节点对作为本地训练样本
步骤3:分布式采样;
对任意共享部分相同节点集的两个参与者Pi和Pj所拥有的两个网络进行采样生成源-上下文节点对;对于每一个相同的节点c,在参与者Pi和Pj的网络中的节点c的w-order范围内的邻居节点集合分别表示为和 与组成源-上下文节点对;节点c的w-order范围是指离节点c最短距离不超过w跳的范围内的节点;其中,节点u的信息物理存储在参与者Pi,而节点v的信息存储在参与者Pj,这样的源-上下文节点对被称为分布式样本使用随机唯一的样本ID来标识分布式样本,训练时通过对齐样本ID来重构真实的分布式样本;
步骤4:初始化节点向量表示;
步骤5:训练本地样本;
每个参与者Pi应用负采样等价后的Skip-gram模型来训练其生成的本地样本参与者Pi使用mini-batch梯度下降优化算法在本地优化来更新节点的表示,优化后的能够捕获参与者i本地的网络拓扑结构信息;
步骤6:训练分布式样本;
分布式样本的源节点和上下文节点的信息分别存储于两个参与者,在训练的过程中需要两个参与者和一个中立的服务器互相交换中间数据,训练期间的计算是在加法同态加密下完成的,保证数据隐私;
步骤7:全局聚合;
将任意两个参与者共享的相同节点集对应的节点向量表示进行聚合,然后将聚合后的节点表示推回给相应的参与者并更新对应的节点表示;训练过程总的损失的变化小于指定的阈值ε则停止训练,否则转到步骤5;其中,本地样本训练产生的损失和分布式样本产生的损失之和为训练过程总的损失。
2.根据权利要求1所述的联邦网络表示学习方法,其特征在于:在步骤1中,利用RSA非对称加密算法和散列算法进行节点对齐之后Pi和Pj都会获得自己与对方共享的节点集与此同时Pi和Pj不会知道对方独有的节点的任何信息;对于节点集中的节点c,其在Gi和Gj中ω-order范围内的邻居节点集分别记为和分布式样本集合为中的每个节点c的邻居节点集和的笛卡尔积的并集,即
3.根据权利要求1所述的联邦网络表示学习方法,其特征在于:在步骤4中,每个参与者Pi根据其节点数量|Vi|和节点向量表示的维度d,采用均匀或者高斯分布来初始化节点的向量表示。
分布式训练的目标函数如下:
对于Pi中的一个特定节点a和Pj中的一个特定节点b而言,它们的向量的表示的梯度计算如下:
其中I(x)为指示函数,当x为真时,则I(x)=1,否则I(x)=0;
其中[[x]]代表对x进行加密操作;
同样的,梯度的计算也相应更改为:
6.根据权利要求1所述的联邦网络表示学习方法,其特征在于:在步骤7中,表示参与者Pi与其他参与者共享的相同节点集,对于中的每个节点a,表示节点a的向量表示在参与者Pi进行本地样本训练和分布式样本训练时被更新的次数之和,由公式(9)计算得到:
其中I(x)为指示函数,当x为真时,则I(x)=1,否则I(x)=0;
参与者Pi将发送到服务器,[[ID(a)]]表示加密后的节点ID;Pi接收服务器聚合后的a节点表示ha并更新本地的a节点表示;然后,Pi接收停止信号,如果停止信号为真,将学习到的节点向量的表示存储到本地,停止运行;否则,转到步骤5;
服务器根据接收到的上述数据根据加密后的节点ID进行对齐后根据公式(10)进行全局聚合;
7.一种联邦网络表示学习***,其特征在于:包括网络数据加载模块、节点对齐模块、本地采样模块、分布式采样模块、本地样本训练模块、分布式样本训练模块、全局聚合模块、结束判断模块、存储模块和服务器;
所述网络数据加载模块,用于每个参与者Pi从磁盘里加载本地的节点和边信息到内存中形成本地网络Gi;
所述分布式采样模块,用于每个参与者Pi与其他任意拥有相同节点的参与者Pj共同生成分布式样本此模块用Pi和Pj的共享相同的节点作为桥梁,c节点在两个参与者w-order范围内的邻居节点集互为上下文节点;在生成分布式样本的时候新增样本ID来标识分布式样本;
所述本地样本训练模块,用于每个参议者Pi训练本地样本此模块使用负采样近似的Skip-gram来进行训练,用mini-batch梯度下降进行优化,来更新节点的表示;此模块完成训练之后还会将产生的损失发送给服务器,将节点的向量表示输入分布式训练模块;
所述分布式样本训练模块,用于每个参与者Pi与其他任意拥有相同节点的参与者Pj,服务器共同训练分布式样本此模块使用加法同态加密来完成损失的计算并将其发送到服务器,同时用同态加密完成节点梯度的计算,保证了双方的数据隐私;将节点的向量表示输入全局聚合模块;
所述全局聚合模块,用于聚合被两个及两个以上参与者所共享的相同节点的向量表示;每个参与者Pi将发送到服务器;服务器进行聚合然后将聚合后的节点向量表示传播给相应的参与者;参与者接收到聚合后的节点向量表示后更新本地相应的节点的向量表示;
所述结束判断模块,用于判断是否还需要进行训练;服务器接收参与者发送的本地样本训练损失和分布式样本训练的损失并计算总的损失;将上一轮的总的损失和当前总的损失相减,若差值小于给定阈值ε,则将停止信号设为真,并将其发送给各个参与者,然后停止运行;否则,将停止信号设为假,并将其发送给各个参与者,然后转到本地样本训练模块;参与者接收停止信号,若信号为真则将节点的向量表示输入到存储模块,否则转到本地样本训练模块;
所述存储模块,用于持久化学习的节点向量表示,以用于下游的机器学习任务。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011072793.XA CN112288094B (zh) | 2020-10-09 | 2020-10-09 | 联邦网络表示学习方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011072793.XA CN112288094B (zh) | 2020-10-09 | 2020-10-09 | 联邦网络表示学习方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112288094A true CN112288094A (zh) | 2021-01-29 |
CN112288094B CN112288094B (zh) | 2022-05-17 |
Family
ID=74423030
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011072793.XA Active CN112288094B (zh) | 2020-10-09 | 2020-10-09 | 联邦网络表示学习方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112288094B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113837303A (zh) * | 2021-09-29 | 2021-12-24 | 中国联合网络通信集团有限公司 | 一种黑产用户识别方法、tee节点及计算机可读存储介质 |
CN114492647A (zh) * | 2022-01-28 | 2022-05-13 | ***股份有限公司 | 基于分布式图嵌入的联邦图聚类方法、装置及可读存储介质 |
CN114519306A (zh) * | 2022-02-21 | 2022-05-20 | 山西大学 | 一种去中心化的终端节点网络模型训练方法及*** |
CN114884688A (zh) * | 2022-03-28 | 2022-08-09 | 天津大学 | 一种跨多属性网络的联邦异常检测方法 |
CN114943345A (zh) * | 2022-06-10 | 2022-08-26 | 西安电子科技大学 | 基于主动学习和模型压缩的联邦学习全局模型训练方法 |
CN115600642A (zh) * | 2022-10-10 | 2023-01-13 | 南京栢拓视觉科技有限公司(Cn) | 一种面向流媒体基于邻居信任聚合的去中心化联邦学习方法 |
WO2023087549A1 (zh) * | 2021-11-16 | 2023-05-25 | 浙江大学 | 一种高效安全,低通信的纵向联邦学习方法 |
CN117910519A (zh) * | 2024-03-20 | 2024-04-19 | 烟台大学 | 进化图生成对抗网络的图应用方法、***及推荐方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109710638A (zh) * | 2019-01-01 | 2019-05-03 | 湖南大学 | 一种联邦型分布式rdf数据库上的多查询优化方法 |
CN110572253A (zh) * | 2019-09-16 | 2019-12-13 | 济南大学 | 一种联邦学习训练数据隐私性增强方法及*** |
CN110728376A (zh) * | 2019-10-21 | 2020-01-24 | 深圳前海微众银行股份有限公司 | 一种基于树状拓扑结构的联邦学习方法及装置 |
WO2020029590A1 (zh) * | 2018-08-10 | 2020-02-13 | 深圳前海微众银行股份有限公司 | 基于联邦训练的样本预测方法、装置及存储介质 |
CN111340614A (zh) * | 2020-02-28 | 2020-06-26 | 深圳前海微众银行股份有限公司 | 基于联邦学习的样本采样方法、设备及可读存储介质 |
-
2020
- 2020-10-09 CN CN202011072793.XA patent/CN112288094B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020029590A1 (zh) * | 2018-08-10 | 2020-02-13 | 深圳前海微众银行股份有限公司 | 基于联邦训练的样本预测方法、装置及存储介质 |
CN109710638A (zh) * | 2019-01-01 | 2019-05-03 | 湖南大学 | 一种联邦型分布式rdf数据库上的多查询优化方法 |
CN110572253A (zh) * | 2019-09-16 | 2019-12-13 | 济南大学 | 一种联邦学习训练数据隐私性增强方法及*** |
CN110728376A (zh) * | 2019-10-21 | 2020-01-24 | 深圳前海微众银行股份有限公司 | 一种基于树状拓扑结构的联邦学习方法及装置 |
CN111340614A (zh) * | 2020-02-28 | 2020-06-26 | 深圳前海微众银行股份有限公司 | 基于联邦学习的样本采样方法、设备及可读存储介质 |
Non-Patent Citations (3)
Title |
---|
LI T, ET.AL: "Federated Learning: Challenges, Methods, and Future Directions", 《ARXIV PREPRINT ARXIV:1908.07873》 * |
Q. LI, ET.AL: "Deeper insights into graph convolutional", 《PROC. 32ND AAAI CONF. ARTIF.》 * |
王燕鹏: "人工智能领域关键技术挖掘分析", 《世界科技研究与发展》 * |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113837303A (zh) * | 2021-09-29 | 2021-12-24 | 中国联合网络通信集团有限公司 | 一种黑产用户识别方法、tee节点及计算机可读存储介质 |
WO2023087549A1 (zh) * | 2021-11-16 | 2023-05-25 | 浙江大学 | 一种高效安全,低通信的纵向联邦学习方法 |
CN114492647A (zh) * | 2022-01-28 | 2022-05-13 | ***股份有限公司 | 基于分布式图嵌入的联邦图聚类方法、装置及可读存储介质 |
CN114519306B (zh) * | 2022-02-21 | 2023-03-28 | 山西大学 | 一种去中心化的终端节点网络模型训练方法及*** |
CN114519306A (zh) * | 2022-02-21 | 2022-05-20 | 山西大学 | 一种去中心化的终端节点网络模型训练方法及*** |
CN114884688A (zh) * | 2022-03-28 | 2022-08-09 | 天津大学 | 一种跨多属性网络的联邦异常检测方法 |
CN114884688B (zh) * | 2022-03-28 | 2023-07-04 | 天津大学 | 一种跨多属性网络的联邦异常检测方法 |
CN114943345A (zh) * | 2022-06-10 | 2022-08-26 | 西安电子科技大学 | 基于主动学习和模型压缩的联邦学习全局模型训练方法 |
CN114943345B (zh) * | 2022-06-10 | 2024-06-11 | 西安电子科技大学 | 基于主动学习和模型压缩的联邦学习全局模型训练方法 |
CN115600642A (zh) * | 2022-10-10 | 2023-01-13 | 南京栢拓视觉科技有限公司(Cn) | 一种面向流媒体基于邻居信任聚合的去中心化联邦学习方法 |
CN115600642B (zh) * | 2022-10-10 | 2024-02-06 | 南京栢拓视觉科技有限公司 | 一种面向流媒体基于邻居信任聚合的去中心化联邦学习方法 |
CN117910519A (zh) * | 2024-03-20 | 2024-04-19 | 烟台大学 | 进化图生成对抗网络的图应用方法、***及推荐方法 |
CN117910519B (zh) * | 2024-03-20 | 2024-06-07 | 烟台大学 | 进化图生成对抗网络的推荐方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112288094B (zh) | 2022-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112288094B (zh) | 联邦网络表示学习方法及*** | |
WO2021022707A1 (zh) | 一种混合联邦学习方法及架构 | |
Hao et al. | Towards efficient and privacy-preserving federated deep learning | |
Yang et al. | A quasi-newton method based vertical federated learning framework for logistic regression | |
CN112733967B (zh) | 联邦学习的模型训练方法、装置、设备及存储介质 | |
CN111935156B (zh) | 一种联邦学习的数据隐私保护方法 | |
CN109033865B (zh) | 一种空间众包中隐私保护的任务分配方法 | |
WO2023141809A1 (zh) | 一种基于元宇宙的共享信息隐私保护方法及相关装置 | |
US20230109352A1 (en) | Node group-based data processing method and system, device, and medium | |
CN111428887B (zh) | 一种基于多个计算节点的模型训练控制方法、装置及*** | |
CN113505882B (zh) | 基于联邦神经网络模型的数据处理方法、相关设备及介质 | |
CN111368319A (zh) | 一种联邦学习环境下基于区块链的数据安全访问方法 | |
CN114580009B (zh) | 基于联邦学习的区块链数据管理方法、***及存储介质 | |
US11991156B2 (en) | Systems and methods for secure averaging of models for federated learning and blind learning using secure multi-party computation | |
CN115270145A (zh) | 一种基于联盟链和联邦学习的用户窃电行为检测方法及*** | |
CN116627970A (zh) | 一种基于区块链和联邦学习的数据共享方法及装置 | |
CN113591097A (zh) | 业务数据处理方法、装置、电子设备及存储介质 | |
Lian et al. | Privacy-preserving blockchain-based global data sharing for federated learning with non-iid data | |
Zhou et al. | VDFChain: Secure and verifiable decentralized federated learning via committee-based blockchain | |
Li et al. | Privacy threats analysis to secure federated learning | |
CN114723068A (zh) | 联邦模型训练方法及装置 | |
CN114580661A (zh) | 基于联邦学习的数据处理方法、装置和计算机设备 | |
CN113887740A (zh) | 联合更新模型的方法、装置及*** | |
CN110147942A (zh) | 一种基于区块链的业务配置方法、装置以及电子设备 | |
Wang et al. | Federated Truth Discovery for Mobile Crowdsensing with Privacy-Preserving Trustworthiness Assessment. |
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 |