CN116633704B - 图计算方法和装置 - Google Patents
图计算方法和装置 Download PDFInfo
- Publication number
- CN116633704B CN116633704B CN202310919273.5A CN202310919273A CN116633704B CN 116633704 B CN116633704 B CN 116633704B CN 202310919273 A CN202310919273 A CN 202310919273A CN 116633704 B CN116633704 B CN 116633704B
- Authority
- CN
- China
- Prior art keywords
- node
- vector
- data
- edge
- participant
- 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.)
- Active
Links
- 238000004364 calculation method Methods 0.000 title claims abstract description 111
- 239000013598 vector Substances 0.000 claims abstract description 377
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 60
- 238000000034 method Methods 0.000 claims description 36
- 238000012545 processing Methods 0.000 claims description 8
- 238000010586 diagram Methods 0.000 description 19
- 230000008569 process Effects 0.000 description 13
- 230000005540 biological transmission Effects 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 8
- 238000013507 mapping Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 238000004590 computer program Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 5
- 238000012546 transfer Methods 0.000 description 5
- 238000004220 aggregation Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000007792 addition Methods 0.000 description 3
- 230000002776 aggregation Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000004931 aggregating effect Effects 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/098—Distributed learning, e.g. federated learning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/008—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/085—Secret sharing or secret splitting, e.g. threshold schemes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/46—Secure multiparty computation, e.g. millionaire problem
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Bioethics (AREA)
- Medical Informatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例提供一种图计算方法和装置,应用于图计算系统中的第一参与方,包括:获取第二参与方的节点向量中多个节点各自对应的第一节点数据;对第一节点数据和第一参与方的节点向量进行拼接,生成第一节点向量;采用第一预设算法对第一边向量和第一节点向量进行计算,得到第二边向量和节点更新向量;采用第二预设算法对节点更新向量和第一节点向量进行计算,得到第二节点向量;基于第二边向量和第二节点向量进行图计算,得到图计算结果。本申请实施例通过对两参与方中相同节点的节点数据进行拼接,并基于该拼接后的数据以及本地的图拓扑完成计算,不必完全各节点传输全部数据,提高了计算的安全性。
Description
技术领域
本申请涉及图计算技术领域,具体涉及图计算方法和装置。
背景技术
目前,图计算在反金融欺诈、知识图谱分析、虚假社交账户检测、精准广告营销等领域发挥着重要作用。且纵向联邦图计算正成为愈发重要的图数据合作场景。
一个比较常见的纵向联邦图计算的图数据分布场景是:两个参与方有高度重合的节点集合,且各自持有不同的节点之间的图拓扑,但是各自掌握的节点数据不同,例如银行和社交网络平台,银行掌握的图拓扑为转账关系,而社交网络平台掌握的图拓扑为社交关联。两个机构均期望通过对方掌握的节点数据丰富本地的节点数据,进而增强在本地进行图计算的效果。
目前纵向联邦图计算泄露过多的原始数据隐私,不具备安全性。
发明内容
本申请实施例提供一种图数据计算方法和装置,用以解决目前纵向联邦图计算泄露过多的原始数据隐私,不具备安全性的问题。
第一方面,本申请实施例中提供了一种电机的故障检测方法,应用于图计算系统中的第一参与方,包括:
获取第二参与方的节点向量中多个节点各自对应的第一节点数据;
基于多个所述第一节点数据和所述第一参与方的节点向量拼接,生成第一节点向量;
采用第一预设算法对所述第一边向量和所述第一节点向量进行计算,得到第二边向量和节点更新向量;
采用第二预设算法对所述节点更新向量和所述第一节点向量进行计算,得到第二节点向量;
基于所述第二边向量和所述第二节点向量进行图计算,得到图计算结果。
第二方面,本申请实施例提供了一种场景数据获取装置,应用于图计算系统中的第一参与方,包括:
获取模块,用于获取第二参与方的节点向量中多个节点各自对应的第一节点数据;
生成模块,用于基于多个所述第一节点数据和所述第一参与方的节点向量拼接,生成第一节点向量;
计算模块,用于采用第一预设算法对所述第一边向量和所述第一节点向量进行计算,得到第二边向量和节点更新向量;
所述计算模块,还用于采用第二预设算法对所述节点更新向量和所述第一节点向量进行计算,得到第二节点向量;
所述计算模块,还用于基于所述第二边向量和所述第二节点向量进行图计算,得到图计算结果。
第三方面,本申请实施例提供了一种电子设备,包括处理组件、存储组件以及显示组件,所述存储组件存储一条或多条计算机指令,所述一条或多条计算机指令用以被所述处理组件调用执行以实现第一方面所述的图数据计算方法。
第四方面,本申请实施例提供了一种计算机存储介质,存储有计算机程序,所述计算程序被计算机执行时,实现如第一方面所述的图数据计算方法。
所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。
本申请的实施例提供的技术方案至少带来以下有益效果:
本申请实施例提供一种图计算方法和装置,应用于图计算系统中的第一参与方,包括:获取第二参与方的节点向量中多个节点各自对应的第一节点数据;对第一节点数据和第一参与方的节点向量进行拼接,生成第一节点向量;采用第一预设算法对第一边向量和第一节点向量进行计算,得到第二边向量和节点更新向量;采用第二预设算法对节点更新向量和第一节点向量进行计算,得到第二节点向量;基于第二边向量和第二节点向量进行图计算,得到图计算结果。本申请实施例通过对两参与方中相同节点的节点数据进行拼接,并基于该拼接后的数据以及本地的图拓扑完成计算,不必完全传输各节点全部数据,提高了计算的安全性。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理,并不构成对本申请的不当限定。
图1示出了本申请实施例提供的一种两方纵向联邦图计算系统示意图;
图2示出了本申请实施例提供的一种图计算方法的流程示意图;
图3示出了本申请实施例提供的一种节点数据拼接的流程示意图;
图4示出了本申请实施例提供的一种在线计算的流程示意图;
图5示出了本申请实施例提供的一种图计算方法的流程示意图;
图6示出了本申请实施例提供的一种图计算装置的结构示意图;
图7示出了本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为了使本领域普通人员更好地理解本申请的技术方案,下面将结合附图,对本申请实施例中的技术方案进行清楚、完整地描述。应理解,此处所描述的具体实施例仅意在解释本申请,而不是限定本申请。对于本领域技术人员来说,本申请可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本申请的示例来提供对本申请更好的理解。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的例子。
在介绍本申请的方案之前,首先介绍一下本申请的背景技术:
承接上述背景技术,两个机构均期望通过对方掌握的节点数据丰富本地的节点数据,进而增强在本地进行图计算的效果。
在目前的纵向联邦图技术中,两个参与方有高度重合的节点集合,且各自持有不同的节点之间的图拓扑,但是各自掌握的节点数据不同,比如其中一个参与方P1有图拓扑,另一个参与方P2有节点数据,P2将各个节点的节点数据与对应的节点索引组合而成的节点向量发送至P1,P1进一步执行图神经网络训练和推理,由于直接传输明文的节点向量,并不具备隐私保护性。
进一步的,相关技术中保护数据隐私的图算法为横向联邦图技术,横向联邦图技术的应用场景为:若干参与方中每个参与方持有一张子图,各子图包含的节点集合不同,但要求节点中的节点数据类型相同。横向联邦图计算的目的是将这些子图拼接为一张全局图,之后在全局图上执行图计算算法。
但由于横向联邦图技术要求个参与方节点不同,且节点中的节点数据类型相同,因此无法满足各参与方获取不同数据类型的需求。
图1示出了本申请实施例提供的一种两方纵向联邦图计算系统示意图,如图1所示,该计算系统包括第一参与方和第二参与方,每个参与方包括有联邦图计算引擎和安全计算后端。联邦图计算引擎管控联邦图计算的执行流程、加载图计算任务配置和图数据、定义图算法细节且支撑参与方之间的数据交互;安全计算后端提供各种安全多方计算底层协议支持,包含同态加密、两方安全计算及隐私求交。
联邦图计算引擎包括多个单元,分别为:存储单元、控制单元、传输单元和算法单元。
存储单元:加载并存储图数据、联邦图计算配置信息、计算任务数据。其中图数据包含边数据、节点数据、中间更新数据,图数据可能为明文或者秘密共享状态;联邦图计算配置信息即各参与方网络通信信息、联邦计算的图算法等;计算任务数据为联邦图计算中产生的具体计算任务。
控制单元:控制单元是联邦图计算引擎的核心,负责整体计算与交互流程的控制,集中管控其他单元。具体地,控制单元通过存储单元读取图数据及联邦计算配置信息,控制传输单元完成与其他参与方的信道建立与后续数据交互,通过算法单元获取联邦图计算中涉及的具体计算任务,并调用计算引擎单元完成基于秘密共享或明文数据的任务计算。
传输单元:负责维护和其他参与方之间的信道,中间数据发送与接收。需要注意的是,各参与方之间交互的图计算中间数据均为秘密共享数据或同态加密的密态数据,且接收方无法直接解密。此外,安全计算后端可使用其特定的底层网络组件完成协议执行的中间数据传输,不必使用传输单元。传输单元需要保证端到端数据传输的完整性和保密性。
算法单元:定义图算法特定的数据结构,包含边数据结构、节点数据结构、更新数据结构。此外,算法单元定义特定的图算法所涉及的计算,并可基于图数据封装具体的计算任务,提供给控制单元,并定义计算任务写回图数据的规则。各算法单元具有统一的接口,使得控制单元无需处理具体的图算法细节。
为了解决现有技术问题,本申请实施例提供了一种图计算方法和装置。下面首先对本申请实施例所提供的图计算方法进行介绍。
图2示出了本申请一个实施例提供的图计算方法的流程示意图。如图2所示,该方法的执行装置可以是图计算系统中的第一参与方,该方法可以包括:
S201、获取第二参与方的节点向量中多个节点各自对应的第一节点数据。
其中,图计算系统中包括两个参与方:第一参与方和第二参与方,第一参与方和第二参与包括的节点高度重合,两参与方中其中一方存在图拓扑结构或者两参与方均存在图拓扑结构,且两参与方的节点数据的数据类型不同,比如,第一参与方为银行,第二参与方为运营商,第一参与方的节点数据为账户余额,第二参与方的节点数据为通话记录。
在本申请中,第一参与方存在图拓扑结构。
其中节点向量包括多个节点,每个节点包括节点索引以及节点对应的节点数据,节点索引用于标识节点,举例来说,第二参与方为运营商,节点索引可以是身份证号,手机号,节点数据可以为通话记录。
第一节点数据可以为节点对应的全部节点数据,也可以是节点对应的部分数据,比如,节点数据为近一个月的通话记录,第一节点数据可以是近一个月的通话记录,也可以是近半个月的通话记录。
S202、对多个第一节点数据和第一参与方的节点向量进行拼接,生成第一节点向量。
由于需要两参与方的节点数据进行图计算,一些实施例中,可以将第一节点数据与第一参与方的节点向量进行拼接。
其中,第一参与方的节点向量包括多个节点,每个节点包括节点索引以及节点对应的节点数据。
一些实施例中,可以将第一节点数据和第一参与方的节点向量中对应节点的数据进行拼接,得到第一节点向量。
第一节点向量包括第一参与方的多个节点,每个节点包括有第一节点数据和第一参与方的节点向量中每个节点中原有的节点数据进行拼接后的数据,以及节点索引。
S203、采用第一预设算法对第一参与方的第一边向量和第一节点向量进行计算,得到第二边向量和节点更新向量。
其中,第一预设算法可以是Scatter算法。
其中,第一边向量包括多个边,每个边包括源节点索引、目的节点索引以及边数据,其中边数据可以是源节点与目的节点的关系数据,比如第一参与方为银行,边数据可以为转账金额。
第二边向量为更新后的第一边向量,第二边向量中每个边的边数据可以根据算法要求确定,比如,图数据的目的为计算出第一参与方中的危险用户,可以计算出每个边的危险权重以及每个节点的危险系数,因此边数据可以是原始边数据和危险系数。节点更新向量为用于更新节点的向量,比如,节点数据中包括危险系数,节点更新向量中可以包括危险系数变化量,比如可以是危险系数减5等等。
S204、采用第二预设算法对节点更新向量和第一节点向量进行计算,得到第二节点向量。
其中,第二预设算法可以是Gather算法。
第二节点向量为更新后的第一节点向量,对应的,节点数据可以包括原始节点数据和危险系数。
上述S203-S204为迭代过程,若当前迭代次数小于预设次数,或者第二节点向量和/或第二边向量不满足预设条件,则将第二节点向量作为第一节点向量,第二边向量作为第一边向量,执行S203的步骤,直到当前迭代次数大于或等于预设次数,或者第二节点向量和/或第二边向量满足预设条件。
预设条件可以根据实际情况灵活设定,比如可以是第二边向量中多个边的边数据与第以边向量中多个边的边数据一致,或者第二节点向量中多个节点的节点数据与第二边向量中多个节点的节点数据一致。
S205、基于第二边向量和第二节点向量进行图计算,得到图计算结果。
在当前迭代次数大于或等于预设次数,或者第二节点向量和/或第二边向量满足预设条件的条件下,基于第二边向量和第二节点向量进行图计算,得到图计算结果。
可以理解的是,如果第二参与方存在拓扑结构,可以将在第二参与方进行图计算得到的结果与第一参与方进行图计算的结果进行合并。
其中,图计算可以是广度优先搜索、最短路径、网络流、图模式挖掘或者图神经网络等算法。
本申请实施例提供的联邦图计算方法,应用于图计算系统中的第一参与方,包括:获取第二参与方的节点向量中多个节点各自对应的第一节点数据;对第一节点数据和第一参与方的节点向量进行拼接,生成第一节点向量;采用第一预设算法对第一边向量和第一节点向量进行计算,得到第二边向量和节点更新向量;采用第二预设算法对节点更新向量和第一节点向量进行计算,得到第二节点向量;基于第二边向量和第二节点向量进行图计算,得到图计算结果。本申请实施例通过对两参与方中相同节点的节点数据进行拼接,并基于该拼接后的数据以及本地的图拓扑完成计算,不必完全输全各节点传部数据,提高了计算的安全性。
一些实施例中,由于两方纵向图计算是计算两参与方公共节点的节点数据,在S202对多个第一节点数据和第一参与方的节点向量进行拼接,生成第一节点向量之前,还包括:
获取第一参与方的节点向量。
获取第一参与方的节点向量,包括:
获取第一参与方和第二参与方的多个公共节点索引,多个公共节点索引为第一参与方和第二参与方运行隐私求交协议得到的;
确定第一参与方中多个公共节点索引各自对应的公共节点,公共节点包括公共节点索引和公共节点数据;
按照预设索引顺序,排列多个公共节点,以得到第一参与方的节点向量。
其中,隐私求交协议为多个参与方之间运行的密码学协议,输入是每个参与方手中持有的一个集合,输出是所有集合的交集,能够不泄露交集之外的任意集合元素的信息。
在本申请实施例中,多个参与方为第一参与方和第二参与方,集合为节点索引的集合。其中,节点索引可以身份证号、手机号等等。且两参与方的节点索引一致,比如,均为身份证号、手机号等等。
其中,可以在两参与方均运行隐私求交协议,或者在第三方运行隐私求交协议,并将得到的多个公共节点索引发送至两参与方。
由于获取到的仅仅是公共节点索引,且节点向量中包括多个公共节点,因此,可以在第一参与方的所有节点中确定出多个公共节点索引各自对应的公共节点,该公共节点包括公共节点索引和公共节点数据。
由于需要对第一参与方的节点数据与第二参与方的节点数据进行拼接,而第二参与方不能共享公共节点的索引,只能共享公共节点的节点数据,因此,需要按照预设,排列多个公共节点,以得到第一参与方的节点向量。需要说明的是,第二参与方的节点向量中的公共节点也是按照预设索引顺序进行排列的。
其中预设索引顺序可以基于实际情况灵活设定,比如可以是身份证号的数字大小进行排序。
一些实施例中,第二参与方的节点向量包括多个公共节点索引各自对应的公共节点,公共节点包括公共节点索引和第二公共节点数据,基于多个第一节点数据和第一参与方的节点向量拼接,生成第一节点向量,包括:
获取按照预设索引顺序排列的多个第二公共节点数据;
按照预设索引顺序,将多个第一公共节点数据和多个第二公共节点数据进行拼接,得到拼接节点数据;
结合拼接节点数据和多个节点索引,得到第一节点向量。
其中,第二参与方的节点向量中的多个公共节点的索引顺序与第一参与方的节点向量的索引顺序相同。
一些实施例中,假设两参与方分别为参与方和/>将其掌握的节点向量拆分成两方加法秘密共享的形式分享给对方, 特别地,设/>为/>(/>)所掌握的节点向量,而和/>为其秘密共享形式,节点x拼接方式的公式如下:
其中,为拼接后的节点数据,/>为参与方i中节点x的节点数据,为参与方j中节点x的节点数据,/>为公共节点的集合。
一些实施例中,由于第二参与方的节点向量中的多个公共节点的索引顺序与第一参与方的节点向量的索引顺序相同,因此,多个第二公共节点数据的索引顺序与多个第一公共节点数据的索引顺序相同,因此,第二参与方只需按照索引顺序多个第二公共节点数据,第一参与方就可以将不同参与方中相同节点的数据进行拼接。
为了方便说明,图3示出了本申请实施例提供的一种节点数据拼接的流程示意图。首先组合第一参与方的节点形成节点向量1,组合第二参与方的节点形成节点向量2,节点向量1包括有多个节点,分别为节点索引为1、2、3、4、5的节点,分别对应的节点数据为节点数据1、节点数据2、节点数据3、节点数据4、节点数据5,节点向量1中多个节点的索引顺序是按照索引从小到大排列的。节点向量2包括有多个节点,分别为节点索引为1、2、3、4、5的节点,分别对应的节点数据为节点数据6、节点数据7、节点数据8、节点数据9、节点数据10,节点向量2中多个节点的索引顺序是按照索引从小到大排列的。
第二参与方将节点数据6、节点数据7、节点数据8、节点数据9、节点数据10发送至第一参与方,第一参与方按照索引顺序分别拼接对应的节点数据,即拼接节点数据1、节点数据6;拼接节点数据2、节点数据7等,直到将第二参与方发送的数据全部拼接完成。得到包括节点索引1、2、3、4、5,节点数据为节点数据1-10的第一节点向量。
由于节点向量1和节点向量2中多个节点是按照一样的索引顺序排列的,因此,第二参与方只需按照索引顺序发送节点数据,第一参与方就可以将不同参与方中相同节点的数据进行拼接。
在本申请实施例中,通过获取两参与方的公共节点索引,并将公共节点索引对应的公共节点按照一定索引顺序进行组合,得到第一参与方的节点向量,进一步将第一参与方按照索引顺序排列的多个节点数据与第一参与方的节点向量的多个节点数据拼接进行拼接,从而得到包括有两参与方数据进行拼接后的节点向量。
一些实施例中,第一边向量中的边也需要是公共节点中对应的边,在S202对多个第一节点数据和第一参与方的节点向量进行拼接,生成第一节点向量之前,还包括:获取第一参与方的边向量。
获取第一参与方的边向量包括:
针对任一公共节点,确定以公共节点为目标节点的边的数量,目标节点为源节点或者目的节点;
在边的数量不满足预设数量条件的情况下,插入目标数量条冗余边,目标数量与边数量的和满足预设数量条件;
基于多个公共节点各自对应的至少一个边以及目标数量个冗余边,得到第一边向量。
其中预设数量条件为2的N次幂,N为非负整数。
一些实施例中,为了保证第一边向量中每条边的源节点和目的节点均为公共节点,可以确定出公共节点为目标节点的边。
由于在进行第一预设算法的计算的过程中,在进行第一预设算法的计算时,需要第一边向量中目标节点所对应的边的数量为2的N次幂,在边的数量不满足预设数量条件的情况下,插入目标数量条冗余边,目标数量与边数量的和满足预设数量条件。
进一步基于所有公共点节点对应的边和所有公共几点对应的冗余边,生成第一边向量。
一些实施例中,由于在进行第一预设算法的计算的过程中,要求第一边向量中边的源节点和目的节点的索引顺序与第一节点向量中节点的索引顺序一致,因此,可以按照源节点和目的节点的索引顺序确定出第一边向量中边的顺序。
一些实施例中,可以将同一目标节点的至少一条边放置于边向量中的相邻位置,进一步可以按照预设顺序排列目标节点。
比如,可以按照目标节点对应边的数量多排列目标节点的至少一条边,比如,索引为1的目标节点对应边的数量为3,索引为2的目标节点对应边的数量为2,则在第一边向量中优先插入索引为1的目标节点的对应边。
比如,可以按照目标节点的索引顺序排列目标节点的至少一条边,索引顺序可以是从小到大,或者从大到小等等。比如,索引顺序为从小到大,在第一边向量中优先插入索引为1的目标节点的对应边,其次插入索引为2的目标节点的对应边。
一些实施例中,在进行第一预设算法的计算过程中,要求第一边向量中边的源节点和目的节点的索引顺序与第一节点向量中节点的索引顺序一致,S204采用第一预设算法对第一边向量和第一节点向量进行计算,得到第二边向量和节点更新向量,包括:
对第一节点向量依据第一边向量进行转换,得到源节点向量,源节点向量中节点的索引顺序与第一边向量的多个边的源节点索引顺序相同。
采用第一预设算法对源节点向量以及第一节点向量进行计算,得到第二边向量以及节点更新向量。
为了节省计算中的传输开销,可以预先确定出第一节点向量中节点索引与第一边向量中多个边源节点索引的映射关系。
具体可以是:两参与方建立信道,本地生成同态加密密钥对,并共享公钥给对面参与方。
第一参与方基于第二参与方本地私钥以及映射关系生成第一随机数。
在采用第一预设算法时,基于公钥获取第一随机数的映射关系,并基于该映射关系以及第一节点向量生成源节点向量,且源节点向量中节点的索引顺序与第一边向量的多个边的源节点索引顺序相同。
基于同样的道理,在进行第一预设算法的计算过程中,要求第一节点向量中节点的索引顺序与节点更新向量中多个边的目的节点索引顺序相同,S204、采用第二预设算法对节点更新向量和第一节点向量进行计算,得到第二节点向量,包括:
对节点更新向量依据第一节点向量进行转换,得到目标节点更新向量,第一节点向量中节点的索引顺序与节点更新向量中多个边的目的节点索引顺序相同;
采用第二预设算法对目标节点更新向量以及第一节点向量进行计算,得到第二节点向量。
得到目标节点更新向量的过程与得到源节点向量的过程类似,在此不在赘述。
一些实施例中,为了简化计算,可以将目标节点一样的边的数据进行聚合,从而将聚合后的向量与第一节点向量进行计算,对节点更新向量依据第一节点向量进行转换,得到目标节点更新向量,包括:
将节点更新向量中多个边中目标节点相同的边的更新数据进行聚合处理,得到聚合节点更新向量;
对聚合节点更新向量依据第一节点向量进行转换,得到目标节点更新向量,第一节点向量中节点的索引顺序与聚合节点更新向量中多个边的目的节点索引顺序相同。
其中,由于节点更新向量为更新节点向量的向量,且一个节点有至少一条边,因此,在更新节点向量时,节点更新向量中可能存在用于更新同一个节点的更新数据,为了采用第二预设算法进行计算的简便性,可以预先将用于更新同一个节点的更新数据进行聚合,其中,聚合可以有多种方式,比如,可以将多个更新数据进行加和处理,对多个更新数据进行相乘等等。
比如,节点数据为危险系数,某一节点数据对应的多个更新数据分别为危险系数加1,危险系数减一,危险系数加3,聚合为多个更新数据进行加和处理,聚合后的更新数据为危险系数加3。
需要说明的是,目标节点更新向量可能存在为空的更新数据,也即对应的节点没有更新数据,因此,可以用掩码向量防止为空的更新数据在Gather计算中影响对应节点数据。
比如,如果索引为1的节点数据没有对应的更新数据,可以利用掩码向量生成更新数据0,以防止空的更新数据在Gather计算中影响对应节点数据。
为了将在线计算的过程表述清楚,图4示出了本申请实施例提供的一种在线计算的流程图,如图4所示,在线计算的输入为第一节点向量和第一边向量/>。
准备源节点向量:根据第一随机数,使用向量元素映射协议/>,将第一节点向量/>转换成源节点向量/>。
Scatter计算:利用源节点向量和第一边向量/>进行Scatter计算,得到第二边向量/>和节点更新向量/>。其中,/>表示Scatter计算。
聚合节点更新向量:使用向量元素预聚合协议对/>进行预聚合,得到聚合节点更新向量/>。
准备目标节点更新向量:根据第二随机数,使用向量元素映射协议/>,将聚合节点更新向量/>转换成目标节点更新向量/>。
Gather计算:利用目标节点更新向量和第一节点向量/>进行 Gather计算,得到第二节点向量/>。其中,用/>表示 Gather计算。
需要说明的是,中可能存在为空的更新数据,也即对应的节点没有更新数据,在图中已用虚线框标明,因此我们用掩码向量/>防止为空的更新变量在Gather计算中影响对应节点数据。
图5示出了本申请实施例提供的一种图计算方法的流程示意图,如如5所示,该方法包括输入图数据,预处理,在线计算和终止。
第一参与方为参与方i,第二参与方为参与方j。其中,第一参与方有边向量和节点向量,第二参与方有节点向量。
预处理包括:
建议秘钥:两参与方建立信道,本地生成同态加密密钥对,并共享公钥给对面参与方,以便运行隐私保护的向量元素映射协议基于密钥对生成第一关联随机数和第二关联随机数。
对齐公共节点:两参与方运行隐私求交协议,确定公共节点索引。此处假设各参与方采用相同的节点索引方案,比如都使用身份证号作为节点索引,因此可以通过隐私求交协议发现公共节点索引。公共节点索引确定后,可以根据身份证号从小到大的顺序排列节点向量中的多个公共节点。
重组织边向量:参与方i重新组织边向量,目标节点相同的边放置于边向量中的相邻位置,令目标节点相同的边为一组,依据组中边的数量对各组进行降序排序。随后,参与方i在各组的最后插入最少量的冗余边,使得该组的边的数量为2的幂次。
生成关联随机数:运行隐私保护的向量元素映射协议基于密钥对生成第一关联随机数以及第二关联随机数,第一关联随机数用于基于第一节点向量生成源节点向量,第二关联随机数用于基于聚合节点更新向量生成目标节点更新向量。
秘密共享图数据:共享节点上存储的数据,不共享节点索引。对于每个节点,拼接两个参与方分别提供的节点数据的秘密碎片。例如,当用户为节点时,拼接银行提供的用户账户余额和运营商提供的通话数据。
在线计算:
在线计算的过程与图4所示的实施例的实现过程一致,在此不在赘述。
终止:判定是否达到图算法迭代的终止条件,该终止条件可以是固定的迭代次数或算法特定的收敛条件。如果未达到终止条件,则回到在线计算阶段,继续执行算法迭代;如果达到终止条件,则公开图算法执行的结果给两个参与方。
基于上述实施例提供的图计算方法,相应地,本申请还提供了图计算装置,如图6所示。
如图6所示,本申请实施例提供的图计算装置可以包括获取模块601、生成模块602、和计算模块603。
获取模块601,用于获取第二参与方的节点向量中多个节点各自对应的第一节点数据;
生成模块602,用于基于多个第一节点数据和第一参与方的节点向量拼接,生成第一节点向量;
计算模块603,用于采用第一预设算法对第一边向量和第一节点向量进行计算,得到第二边向量和节点更新向量;
计算模块603,还用于采用第二预设算法对节点更新向量和第一节点向量进行计算,得到第二节点向量;
计算模块603,还用于基于第二边向量和第二节点向量进行图计算,得到图计算结果。
本申请实施例提供的图计算装置,应用于图计算系统中的第一参与方,包括:获取第二参与方的节点向量中多个节点各自对应的第一节点数据;对第一节点数据和第一参与方的节点向量进行拼接,生成第一节点向量;采用第一预设算法对第一边向量和第一节点向量进行计算,得到第二边向量和节点更新向量;采用第二预设算法对节点更新向量和第一节点向量进行计算,得到第二节点向量;基于第二边向量和第二节点向量进行图计算,得到图计算结果。本申请实施例通过对两参与方中相同节点的节点数据进行拼接,并基于该拼接后的数据以及本地的图拓扑完成计算,不必完全传输各节点全部数据,提高了计算的安全性。
一些实施例中,由于两方纵向图计算是计算两参与方公共节点的节点数据,获取模块601,还用于:
获取第一参与方的节点向量。
获取模块601具体用于获取第一参与方和第二参与方的多个公共节点索引,多个公共节点索引为第一参与方和第二参与方运行隐私求交协议得到的;
确定第一参与方中多个公共节点索引各自对应的公共节点,公共节点包括公共节点索引和公共节点数据;
按照预设索引顺序,排列多个公共节点,以得到第一参与方的节点向量。
一些实施例中,第二参与方的节点向量包括多个公共节点索引各自对应的公共节点,公共节点包括公共节点索引和公共节点数据,生成模块602,具体用于:
按照预设索引顺序,将多个公共节点数据和多个公共节点数据进行拼接,得到拼接节点数据;
结合拼接节点数据和多个节点索引,得到第一节点向量。
一些实施例中,第一边向量中的边也是公共节点中对应的边,获取模块601,还用于:
获取第一参与方的边向量。
获取模块601,还具体用于:
针对任一公共节点,确定以公共节点为目标节点的边的数量,目标节点为源节点或者目的节点;
在边的数量不满足预设数量条件的情况下,插入目标数量条冗余边,目标数量与边数量的和满足预设数量条件;
基于多个公共节点各自对应的至少一个边以及目标数量个冗余边,得到第一边向量。
一些实施例中,预设数量条件为2的N次幂,N为非负整数。
一些实施例中,在进行第一预设算法的计算过程中,要求第一边向量中边的源节点和目的节点的索引顺序与第一节点向量中节点的索引顺序一致,计算模块603,具体用于:
对第一节点向量依据第一边向量进行转换,得到源节点向量,源节点向量中节点的索引顺序与第一边向量的多个边的源节点索引顺序相同。
采用第一预设算法对源节点向量以及第一节点向量进行计算,得到第二边向量以及节点更新向量。
一些实施例中,在进行第一预设算法的计算过程中,要求第一节点向量中节点的索引顺序与节点更新向量中多个边的目的节点索引顺序相同,计算模块603,还用于:
对节点更新向量依据第一节点向量进行转换,得到目标节点更新向量,第一节点向量中节点的索引顺序与节点更新向量中多个边的目的节点索引顺序相同;
采用第二预设算法对目标节点更新向量以及第一节点向量进行计算,得到第二节点向量。
一些实施例中,为了简化计算,可以将目标节点一样的边的数据进行聚合,从而将聚合后的向量与第一节点向量进行计算,计算模块603,进一步具体用于:
将节点更新向量中多个边中目标节点相同的边的边数据进行加和处理,得到聚合节点更新向量;
对聚合节点更新向量依据第一节点向量进行转换,得到目标节点更新向量,第一节点向量中节点的索引顺序与聚合节点更新向量中多个边的目的节点索引顺序相同。
一些实施例中,计算模块603还具体用于:
在第二边向量和/或第二节点向量满足预设条件的情况下,基于第二边向量和述第二节点向量生成计算结果。
图7是本申请实施例提供的一种电子设备的结构示意图。如图7所示,电子设备可以包括处理器701以及存储有计算机程序或指令的存储器702。
具体地,上述处理器701可以包括中央处理器(CPU),或者特定集成电路(Application Specific Integrated Circuit ,ASIC),或者可以被配置成实施本发明实施例的一个或多个集成电路。
存储器702可以包括用于数据或指令的大容量存储器。举例来说而非限制,存储器702可包括硬盘驱动器(Hard Disk Drive,HDD)、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(Universal Serial Bus,USB)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器702可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器702可在综合网关容灾设备的内部或外部。在特定实施例中,存储器702是非易失性固态存储器。存储器可包括只读存储器(Read Only Memory image,ROM)、随机存取存储器(Random-Access Memory,RAM)、磁盘存储介质设备、光存储介质设备、闪存设备、电气、光学或其他物理/有形的存储器存储设备。因此,通常,存储器包括一个或多个编码有包括计算机可执行指令的软件的有形(非暂态)计算机可读存储介质(例如,存储器设备),并且当该软件被执行(例如,由一个或多个处理器)时,其可操作来执行上述实施例提供的场景数据获取方法所描述的操作。
处理器701通过读取并执行存储器702中存储的计算机程序指令,以实现上述实施例中的任意一种场景数据获取方法。
在一个示例中,电子设备还可包括通信接口703和总线710。其中,如图7所示,处理器701、存储器702、通信接口703通过总线710连接并完成相互间的通信。
通信接口703,主要用于实现本发明实施例中各模块、设备、单元和/或设备之间的通信。
总线707包括硬件、软件或两者,将电子设备的部件彼此耦接在一起。举例来说而非限制,总线可包括加速图形端口(AGP)或其他图形总线、增强工业标准架构(EISA)总线、前端总线(FSB)、超传输(HT)互连、工业标准架构(ISA)总线、无限带宽互连、低引脚数(LPC)总线、存储器总线、微信道架构(MCA)总线、外围组件互连(PCI)总线、PCI-Express(PCI-X)总线、串行高级技术附件(SATA)总线、视频电子标准协会局部(VLB)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线710可包括一个或多个总线。尽管本发明实施例描述和示出了特定的总线,但本发明考虑任何合适的总线或互连。
该电子设备可以执行本发明实施例中的图计算方法,从而实现上述实施例描述的图计算方法。
另外,结合上述实施例中的图计算方法,本发明实施例可提供一种可读存储介质来实现。该可读存储介质上存储有程序指令,该程序指令被处理器执行时实现上述实施例中的任意一种图计算方法。
需要明确的是,本发明并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本发明的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本发明的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。
以上所述的结构框图中所示的功能块可以实现为硬件、软件、固件或者它们的组合。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(ASIC)、适当的固件、插件、功能卡等等。当以软件方式实现时,本发明的要素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、ROM、闪存、可擦除ROM(EROM)、软盘、CD-ROM、光盘、硬盘、光纤介质、射频(RF)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。
还需要说明的是,本发明中提及的示例性实施例,基于一系列的步骤或者装置描述一些方法或系统。但是,本发明不局限于上述步骤的顺序,也就是说,可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。
上面参考根据本申请的实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本申请的各方面。应当理解,流程图和/或框图中的每个方框以及流程图和/或框图中各方框的组合可以由计算机程序指令实现。这些计算机程序指令可被提供给通用计算机、专用计算机、或其它可编程数据处理装置的处理器,以产生一种机器,使得经由计算机或其它可编程数据处理装置的处理器执行的这些指令使能对流程图和/或框图的一个或多个方框中指定的功能/动作的实现。这种处理器可以是但不限于是通用处理器、专用处理器、特殊应用处理器或者现场可编程逻辑电路。还可理解,框图和/或流程图中的每个方框以及框图和/或流程图中的方框的组合,也可以由执行指定的功能或动作的专用硬件来实现,或可由专用硬件和计算机指令的组合来实现。
以上所述,仅为本发明的具体实施方式,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。应理解,本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。
Claims (9)
1.一种图计算方法,其特征在于,应用于图计算系统中的第一参与方,所述图计算方法包括:
获取第二参与方的节点向量中多个节点各自对应的第一节点数据;
对多个所述第一节点数据和所述第一参与方的节点向量进行拼接,生成第一节点向量;
采用第一预设算法对第一边向量和所述第一节点向量进行计算,得到第二边向量和节点更新向量;
采用第二预设算法对所述节点更新向量和所述第一节点向量进行计算,得到第二节点向量;
基于所述第二边向量和所述第二节点向量进行图计算,得到图计算结果;
所述对多个所述第一节点数据和所述第一参与方的节点向量进行拼接,生成第一节点向量之前,所述图计算方法包括:
获取所述第一参与方的节点向量;
所述获取所述第一参与方的节点向量,包括:
获取所述第一参与方和所述第二参与方的多个公共节点索引,所述多个公共节点索引为所述第一参与方和所述第二参与方运行隐私求交协议得到的;
确定所述第一参与方中所述多个公共节点索引各自对应的公共节点,所述公共节点包括公共节点索引和公共节点数据;
按照预设索引顺序,排列多个所述公共节点,以得到所述第一参与方的节点向量。
2.根据权利要求1所述的图计算方法,其特征在于,所述第二参与方的节点向量包括所述多个公共节点索引各自对应的公共节点,所述公共节点包括所述公共节点索引和公共节点数据,所述基于多个所述第一节点数据和所述第一参与方的节点向量拼接,生成第一节点向量,包括:
按照所述预设索引顺序,将多个所述公共节点数据和多个所述公共节点数据进行拼接,得到拼接节点数据;
结合所述拼接节点数据和多个所述节点索引,得到第一节点向量。
3.根据权利要求1或2所述的图计算方法,其特征在于,所述对多个所述第一节点数据和所述第一参与方的节点向量进行拼接,生成第一节点向量之前,所述图计算方法还包括:
获取所述第一参与方的边向量;
所述获取所述第一参与方的边向量,包括:
针对任一公共节点,确定以所述公共节点为目标节点的边的数量,所述目标节点为源节点或者目的节点;
在所述边的数量不满足预设数量条件的情况下,插入目标数量条冗余边,所述目标数量与所述边的数量的和满足预设数量条件;
基于多个所述公共节点各自对应的至少一个边以及目标数量个冗余边,得到第一边向量。
4.根据权利要求3所述的方法,其特征在于,所述预设数量条件为2的N次幂,所述N为非负整数。
5.根据权利要求1所述的图计算方法,其特征在于,所述采用第一预设算法对所述第一边向量和所述第一节点向量进行计算,得到第二边向量和节点更新向量,包括:
对所述第一节点向量依据所述第一边向量进行转换,得到源节点向量,所述源节点向量中节点的索引顺序与所述第一边向量的多个边的源节点索引顺序相同;
采用第一预设算法对所述源节点向量以及所述第一节点向量进行计算,得到第二边向量以及节点更新向量。
6.根据权利要求1所述的方法,其特征在于,所述采用第二预设算法对所述节点更新向量和所述第一节点向量进行计算,得到第二节点向量,包括:
对所述节点更新向量依据所述第一节点向量进行转换,得到目标节点更新向量,所述第一节点向量中节点的索引顺序与所述节点更新向量中多个边的目的节点索引顺序相同;
采用第二预设算法对所述目标节点更新向量以及所述第一节点向量进行计算,得到第二节点向量。
7.根据权利要求6所述的方法,其特征在于,所述对所述节点更新向量依据所述第一节点向量进行转换,得到目标节点更新向量,包括:
将所述节点更新向量中多个边中目标节点相同的边的边数据进行加和处理,得到聚合节点更新向量;
对所述聚合节点更新向量依据所述第一节点向量进行转换,得到目标节点更新向量,所述第一节点向量中节点的索引顺序与所述聚合节点更新向量中多个边的目的节点索引顺序相同。
8.根据权利要求6所述的方法,其特征在于,所述基于所述第二边向量和所述第二节点向量进行图计算,得到图计算结果,包括:
在所述第二边向量和/或所述第二节点向量满足预设条件的情况下,基于所述第二边向量和所述第二节点向量生成计算结果。
9.一种图计算装置,其特征在于,应用于图计算系统中的第一参与方,所述装置包括:
获取模块,用于获取第二参与方的节点向量中多个节点各自对应的第一节点数据;
生成模块,用于基于多个所述第一节点数据和所述第一参与方的节点向量拼接,生成第一节点向量;
计算模块,用于采用第一预设算法对第一边向量和所述第一节点向量进行计算,得到第二边向量和节点更新向量;
所述计算模块,还用于采用第二预设算法对所述节点更新向量和所述第一节点向量进行计算,得到第二节点向量;
所述计算模块,还用于基于所述第二边向量和所述第二节点向量进行图计算,得到图计算结果;
所述获取模块还用于:获取所述第一参与方的节点向量;
所述获取模块,具体用于:
获取所述第一参与方和所述第二参与方的多个公共节点索引,所述多个公共节点索引为所述第一参与方和所述第二参与方运行隐私求交协议得到的;
确定所述第一参与方中所述多个公共节点索引各自对应的公共节点,所述公共节点包括公共节点索引和公共节点数据;
按照预设索引顺序,排列多个所述公共节点,以得到所述第一参与方的节点向量。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310919273.5A CN116633704B (zh) | 2023-07-25 | 2023-07-25 | 图计算方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310919273.5A CN116633704B (zh) | 2023-07-25 | 2023-07-25 | 图计算方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116633704A CN116633704A (zh) | 2023-08-22 |
CN116633704B true CN116633704B (zh) | 2023-10-31 |
Family
ID=87610286
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310919273.5A Active CN116633704B (zh) | 2023-07-25 | 2023-07-25 | 图计算方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116633704B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020029585A1 (zh) * | 2018-08-10 | 2020-02-13 | 深圳前海微众银行股份有限公司 | 基于迁移学习的神经网络联邦建模方法、设备及存储介质 |
WO2021004551A1 (zh) * | 2019-09-26 | 2021-01-14 | 深圳前海微众银行股份有限公司 | 纵向联邦学习系统优化方法、装置、设备及可读存储介质 |
CN115587535A (zh) * | 2022-09-29 | 2023-01-10 | 深圳前海微众银行股份有限公司 | 模型构建优化方法、设备、存储介质及程序产品 |
CN115796229A (zh) * | 2022-09-22 | 2023-03-14 | 北京富算科技有限公司 | 图节点的嵌入方法、系统、设备及存储介质 |
CN116150810A (zh) * | 2023-04-17 | 2023-05-23 | 北京数牍科技有限公司 | 向量元素预聚合方法、电子设备及计算机可读存储介质 |
CN116186782A (zh) * | 2023-04-17 | 2023-05-30 | 北京数牍科技有限公司 | 联邦图计算方法、装置及电子设备 |
CN116204909A (zh) * | 2023-04-17 | 2023-06-02 | 北京数牍科技有限公司 | 向量元素映射方法、电子设备及计算机可读存储介质 |
-
2023
- 2023-07-25 CN CN202310919273.5A patent/CN116633704B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020029585A1 (zh) * | 2018-08-10 | 2020-02-13 | 深圳前海微众银行股份有限公司 | 基于迁移学习的神经网络联邦建模方法、设备及存储介质 |
WO2021004551A1 (zh) * | 2019-09-26 | 2021-01-14 | 深圳前海微众银行股份有限公司 | 纵向联邦学习系统优化方法、装置、设备及可读存储介质 |
CN115796229A (zh) * | 2022-09-22 | 2023-03-14 | 北京富算科技有限公司 | 图节点的嵌入方法、系统、设备及存储介质 |
CN115587535A (zh) * | 2022-09-29 | 2023-01-10 | 深圳前海微众银行股份有限公司 | 模型构建优化方法、设备、存储介质及程序产品 |
CN116150810A (zh) * | 2023-04-17 | 2023-05-23 | 北京数牍科技有限公司 | 向量元素预聚合方法、电子设备及计算机可读存储介质 |
CN116186782A (zh) * | 2023-04-17 | 2023-05-30 | 北京数牍科技有限公司 | 联邦图计算方法、装置及电子设备 |
CN116204909A (zh) * | 2023-04-17 | 2023-06-02 | 北京数牍科技有限公司 | 向量元素映射方法、电子设备及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN116633704A (zh) | 2023-08-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3114602B1 (en) | Method and apparatus for verifying processed data | |
CN116186782B (zh) | 联邦图计算方法、装置及电子设备 | |
CN113259106B (zh) | 一种数据处理方法和系统 | |
CN116204909B (zh) | 向量元素映射方法、电子设备及计算机可读存储介质 | |
CN113722744A (zh) | 用于联邦特征工程的数据处理方法、装置、设备以及介质 | |
CN114358782A (zh) | 区块链交易审计方法、装置、设备及存储介质 | |
CN113591097A (zh) | 业务数据处理方法、装置、电子设备及存储介质 | |
CN116150810B (zh) | 向量元素预聚合方法、电子设备及计算机可读存储介质 | |
CN114548418A (zh) | 一种基于秘密分享的横向联邦iv算法 | |
CN117171779B (zh) | 基于交集保护的数据处理装置 | |
CN116561787A (zh) | 视觉图像分类模型的训练方法、装置及电子设备 | |
CN115982747A (zh) | 安全多方乘法运算方法及其装置、设备、介质及产品 | |
CN116527824B (zh) | 图卷积神经网络训练方法、装置及设备 | |
CN117708887A (zh) | 一种基于纵向逻辑回归的联邦学习模型获取方法及系统 | |
CN116633704B (zh) | 图计算方法和装置 | |
CN113992393B (zh) | 用于纵向联邦学习的模型更新的方法、设备、系统和介质 | |
CN104486311B (zh) | 一种支持可扩展性的远程数据完整性检查方法 | |
CN114389822B (zh) | 基于区块链的签名生成方法、装置、设备和存储介质 | |
CN116975366A (zh) | 数据对齐方法、装置、电子设备和可读存储介质 | |
CN114398975A (zh) | 物联网卡识别方法及装置 | |
CN114547684A (zh) | 一种保护隐私数据的多方联合训练树模型的方法及装置 | |
CN116186341B (zh) | 一种联邦图计算方法、装置、设备及存储介质 | |
CN117094421B (zh) | 非对称纵向联邦学习方法、装置、电子设备及存储介质 | |
CN111292461B (zh) | 电子投票方法、装置和存储介质 | |
CN118709230A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |