CN114218447A - 一种图处理方法和系统 - Google Patents
一种图处理方法和系统 Download PDFInfo
- Publication number
- CN114218447A CN114218447A CN202111520037.3A CN202111520037A CN114218447A CN 114218447 A CN114218447 A CN 114218447A CN 202111520037 A CN202111520037 A CN 202111520037A CN 114218447 A CN114218447 A CN 114218447A
- Authority
- CN
- China
- Prior art keywords
- nodes
- graph
- node
- candidate
- account
- 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.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 9
- 238000000034 method Methods 0.000 claims abstract description 26
- 238000012545 processing Methods 0.000 claims abstract description 25
- 238000003860 storage Methods 0.000 claims description 10
- 238000009826 distribution Methods 0.000 claims description 5
- 238000012098 association analyses Methods 0.000 description 10
- 238000004458 analytical method Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 238000000605 extraction Methods 0.000 description 4
- 229940079593 drug Drugs 0.000 description 3
- 239000003814 drug Substances 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 230000000644 propagated effect Effects 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 2
- 238000013475 authorization Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010219 correlation analysis Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000010977 jade Substances 0.000 description 1
- 238000007477 logistic regression Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 241000894007 species Species 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- 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
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
- G06F16/288—Entity relationship models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/36—Creation of semantic tools, e.g. ontology or thesauri
- G06F16/367—Ontology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Animal Behavior & Ethology (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本说明书实施例公开了一种图处理方法和系统。其中,所述图包括节点和边,所述图被划分为两个或以上部分。所述方法包括:为图中的一个或多个节点分别确定其对应的候选节点集,每个候选节点集所包括的候选节点来自于所述图;将所述一个或多个节点的候选节点集分别与其对应节点所在的部分组合在一起,得到两个或以上分组;将所述两个或以上分组分发给两个或以上设备,以便各设备基于其接收的分组进行图计算。
Description
技术领域
本说明书涉及信息技术领域,特别涉及一种图处理方法和系统。
背景技术
在一些场景下,需要确定某两个或多个实体之间是否存在一定关联。以两个实体为例,通常的解决思路为:任意选取两个实体组成实体对,获取这两个实体的数据并根据这两个实体的数据进行计算,以确定这两个实体之间是否存在一定关联。
可以理解,实体越多,参与计算的实体对也就越多,进而计算量越大。当实体数量达到一定程度时,庞大的计算量造成的计算成本(如时间成本、计算资源成本)是难以甚至不可接受的。
发明内容
本说明书实施例之一提供一种图处理方法。其中,所述图包括节点和边,所述图被划分为两个或以上部分。所述方法包括:为图中的一个或多个节点分别确定其对应的候选节点集,每个候选节点集所包括的候选节点来自于所述图;将所述一个或多个节点的候选节点集分别与其对应节点所在的部分组合在一起,得到两个或以上分组;将所述两个或以上分组分发给两个或以上设备,以便各设备基于其接收的分组进行图计算。
本说明书实施例之一提供一种图处理系统。其中,所述图包括节点和边,所述图被划分为两个或以上部分。所述系统包括:确定模块,用于为图中的一个或多个节点分别确定其对应的候选节点集,每个候选节点集所包括的候选节点来自于所述图;组合模块,用于将所述一个或多个节点的候选节点集分别与其对应节点所在的部分组合在一起,得到两个或以上分组;分发模块,用于将所述两个或以上分组分发给两个或以上设备,以便各设备基于其接收的分组进行图计算。
本说明书实施例之一提供一种图处理装置,包括处理器和存储设备,所述存储设备用于存储指令。其中,当所述处理器执行指令时,实现如本说明书任一实施例所述的图处理方法。
本说明书实施例之一提供一种计算机可读存储介质,所述存储介质中存储有指令。其中,当处理器执行指令时,实现如本说明书任一实施例所述的图处理方法。
附图说明
本说明书将以示例性实施例的方式进一步说明,这些示例性实施例将通过附图进行详细描述。这些实施例并非限制性的,在这些实施例中,相同的编号表示相同的结构,其中:
图1是根据本说明书一些实施例所示的特征抽取的应用场景示意图;
图2是根据本说明书一些实施例所示的图处理方法的示例性流程图;
图3是根据本说明书一些实施例所示的图处理系统的示例性模块图。
具体实施方式
为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本说明书的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本说明书应用于其它类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。
应当理解,本文使用的“系统”、“装置”、“单元”和/或“模组”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换所述词语。
如本说明书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。
本说明书中使用了流程图用来说明根据本说明书的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
本说明书部分涉及图处理/计算,知识图谱是图的一种典型应用,以下将以知识图谱为主进行介绍,在无特别说明的情况下,知识图谱的相关术语的解释亦适用于其他类型的图。
知识图谱,本质上,是一种揭示实体之间关系的语义网络。图谱中的节点表示实体。节点可以有多种类型,称作节点类型,用于指示各类实体。图谱中的边表示关系。边也可以有多种类型,称作边类型,用于指示各类关系。实体可以指现实世界中的事物,例如,人、地名、概念、药物、公司、账户等等。关系可用于表达不同实体之间的联系,例如,某人“居住在”北京、张三和李四是“朋友”、逻辑回归是深度学习的“先导知识”、账户间发生过交易等等。
节点/边可以具有属性。可以理解,节点的属性即节点所表示的实体的属性,边属性即边所表示的关系的属性。例如,表示某种药物的节点的属性可以包括此药物的服用方法、服用频率、疗程、禁忌信息等,表示“曾服役于”的关系的属性可以包括服役的时长。又如,对于账户间发生过交易这一关系,其属性可以包括账户间发生过的交易的一个或多个数据项,如交易时间、交易地点(位置)、交易方式、交易金额、交易商品等。
在一些场景下,需要确定两个或更多个实体之间是否存在一定关联(可简称为实体的关联分析),以两个实体为例,通常的解决思路为:任意选取两个实体组成实体对,获取这两个实体的数据并根据获取的数据进行计算,以确定这两个实体之间是否存在一定关联。出于示范的目的,本说明书将主要以同店分析这一业务场景为例进行说明,其中,同店分析可指分析不同账户(实体)是否归属于相同商户。应当理解,本说明书的原理还可以应用于更一般的场景或其他具体场景,例如,用于分析不同账号/账户(实体)是否归属于同一主体(如个人、公司、工作室等)、用于分析不同设备(实体)的使用者是否为同一个人、用于识别某产品(实体)的热门配套产品(实体)、用于分析某些实体是否属于相同类型等等。不同场景下进行实体的关联分析的目的可以是不同的。例如,通过同店分析可以对多个账户的归属进行梳理,以便于规范管理。又如,通过识别产品A的热门配套产品(不妨设为产品B),可以在产品A的购买界面中推荐产品B。
可以理解,实体越多,参与计算的实体对也就越多,进而计算量越大。当实体数量达到一定程度时,庞大的计算量造成的计算成本(如时间成本、计算资源成本)是难以甚至不可接受的。以同店分析为例,假设数据库中存储有1亿(即108)个账户的数据,则参与计算的账户对的数量可以近似等于1016(账户对的数量可以等于),这意味着要对1016组数据分别进行计算,如此庞大的计算量会促使计算时间过长和/或采用价格昂贵的高性能计算设备。
在一些实施例中,可以通过粗召回降低参与计算的实体对的数量,从而降低关联分析的计算量。其中,粗召回是指:对于任一实体,可以根据预设筛选机制从各实体中选取与该实体之间有可能存在一定关联的实体(以下称为候选实体),并将筛选出的候选实体加入该实体对应的候选实体集。粗召回之后,在后续的关联分析流程中,只会在实体对应的候选实体集中选取候选实体与该实体组成实体对。可以理解,粗召回旨在降低计算量,因此适宜设置简单的筛选机制,以避免粗召回本身产生过高的计算量。以同店分析为例,假设经过粗召回得到账户A对应的候选账户集{A1,A2,A3},则后续可以仅分别针对于账户对A-A1、A-A2、A-A3(不考虑候选账户集{A1,A2,A3}之外的节点与节点A组成的节点对)进行关联分析,以进一步确定候选账户集{A1,A2,A3}中是否包含账户A的同店账户和/或从候选账户集{A1,A2,A3}中确定账户A的同店账户。
图1是根据本说明书一些实施例所示的特征抽取的应用场景示意图。
如图1所示,场景100可以包括图计算系统110和搜索引擎120。其中,图计算系统110可以包括多个图计算节点,如图计算节点110-1、图计算节点110-2、图计算节点110-3、...、图计算节点110-n。需要区分的是,本说明书中的节点是指表示实体的图节点,而图计算节点是指机器节点(亦可称为设备)。
在一些实施例中,图计算系统110可以采用分布式图k-v存储方式存储图中各节点的数据。即,每个图计算节点可以存储部分图节点的数据。
搜索引擎120可以提供粗召回服务。在抽取实体间的关联特征进行具体的关联分析时,图计算节点可以实时向搜索引擎120发起粗召回请求。进而,搜索引擎120可以响应于图计算节点的请求,向图计算节点返回实体对应的候选节点集。当图规模(受节点/实体数量影响)达到一定程度时,各个图计算节点均需要频繁地访问搜索引擎以实现大规模图场景下的关联分析。
上述方式带来了一些问题,包括但不限于:(1)图计算节点频繁访问搜索引擎120意味着高通信成本和处理时间的延长;(2)搜索引擎120属于图计算系统110的外部系统,调用外部系统需要考虑可能存在的风险,如数据安全风险、系统稳定性风险(搜索引擎120的稳定性会影响到图计算系统110的稳定性)。
本说明书实施例还提供一种图处理方法和系统,图处理系统可以在图加载阶段实现“原始图数据+粗召回数据”的加载,提前为关联分析做好准备。如此,可以避免对提供实时粗召回服务的外部系统(如搜索引擎120)的依赖,从而可以大幅缩短处理时间、节省通信成本、增加系统稳定性等等。需要说明的是,本说明书提及的关联分析仅作为示例,在一些实施例中,关联分析可以替换为其他的图计算,如表示学习,具体的,利用目标节点的候选节点集中的候选节点的向量表示确定目标节点的向量表示。
图2是根据本说明书一些实施例所示的图处理方法的示例性流程图。
其中,所述图包括节点和边,所述图被划分成两个或以上部分。在一些实施例中,划分出来的部分可以对于所述图的子图,进一步地,划分出来的部分可以包括所述子图的节点数据以及边数据。在一些实施例中,可以从数据仓库中获取图的各部分,每个部分可以是文件形式的。例如,图较大时,一个文件难以存储,为此可以将图分为多个部分以多文件的形式存储。在一些实施例中,一个文件可以用于存储一个子图的节点数据或边数据,如此,一个子图可以对应有一个节点文件和一个边文件。在一些实施例中,一个文件可以同时存储子图的节点数据和边数据。本说明书对数据仓库存储图的数据形式不做限制。
在一些实施例中,流程200可以由独立于数据仓库、图计算节点的处理设备执行,或者可以由与数据仓库相关的处理设备(如数据库服务器)执行,又或者可以由多个图计算节点中的一个执行。即,由处理设备从数据仓库加载图的各个部分,执行流程200获得多个分组后分发给多个图计算节点。在一些实施例中,流程200可以由实现于处理设备上的图3所示的图处理系统300执行。如图2所示,流程200可以包括:
步骤210,为图中的一个或多个节点分别确定其对应的候选节点集。在一些实施例中,步骤210可以由确定模块310执行。
可以理解,每个节点可对应一个候选节点集。每个候选节点集所包括的候选节点可来自于所述图。图中不一定每个节点都有候选节点集。仅作为示例,对于图中的节点A、B和C,可以分别确定与节点A对应的候选节点集{A1,A2}、与节点B对应的候选节点集{B1,B2,B3}和与节点C对应的候选节点集{C1}。
参考前文有关粗召回的内容,任一节点对应的候选节点集中的候选节点与该节点之间可能存在一定关联。例如,节点A对应的候选节点集为{A1,A2},则节点A与节点A1之间可能存在一定关联,节点A与节点A2之间也可能存在一定关联。
在一些实施例中,所述一个或多个节点可以指图中特定类型的节点(表示特定类型的实体)。例如,所述一个或多个节点可以均为账户节点(表示账户这类实体)。进一步地,仅作为示例,在同店分析的业务场景中,所述一个或多个节点可以均为商户账户。
在一些实施例中,可以预设用于检索得到候选节点的检索条件。进而,确定模块310可以基于预设的检索条件从图的节点中检索,并将检索得到的一个或多个候选节点加入该节点的候选节点集。在一些实施例中,所述一个或多个节点可以均为账户节点,且账户节点可以具有位置信息。进而,确定模块310可以基于位置相关的检索条件从图(如存储图的多个文件)中检索并得到候选节点。仅作为示例,位置相关的检索条件可以包括两个账户节点的位置信息指示的距离不超过预设值。即,对于所述一个或多个节点中的某一个,确定模块310可以从图的节点中检索与该节点的位置间的距离不超过预设值的账户节点,作为该节点的一个或多个候选节点。可以理解,两个账户节点的位置之间的距离可基于这两个节点的位置信息得到。更具体地,在同店分析的业务场景中,表示商户账户的节点可以具有位置信息,该位置信息可以指示商户位置。考虑到同一商户的不同账户所具有的位置通常是接近的,对于表示商户账户的某个节点(不妨设为节点A)而言,确定模块310可以从图的节点中检索与节点A的位置间的距离不超过预设值的同样表示商户账户的节点,作为节点A的一个或多个候选节点。
在一些实施例中,账户节点的位置信息可以来自节点数据中的属性数据。即,账户节点的位置信息可以作为该账户节点的节点属性被写入节点数据中。例如,账户节点与收款机具具有绑定关系,收款机具的位置信息可以作为该账户节点的节点属性。在一些实施例中,账户节点的位置信息可以基于对应账户的交易数据确定。其中,账户的交易数据可以作为相关边的边属性被写入边数据中。例如,图中包含有用户节点(或用户账户节点)以及反映用户向某商户账户节点转账的关系,即用户节点与商户账户节点之间具有边(或称为交易边),相应边数据具有交易时间、交易地点等属性值。进而可以基于边数据中的交易地点确定商户账户节点的位置信息。例如,可以通过商户账户节点的多个交易边中的交易地点属性值确定一个综合或有代表性的交易地点,作为商户账户节点的位置信息。值得说明的是,位置信息可以在商户/用户授权的情况下获得,例如,由用户/商户自行输入,或者在用户/商户同意授权后从用户/商户的终端设备中获取。
步骤220,将所述一个或多个节点的候选节点集分别与其对应节点所在的部分组合在一起,得到两个或以上分组。在一些实施例中,步骤220可以由组合模块320执行。
仅作为示例,假设对于图中的节点A、B和C,分别确定了与节点A对应的候选节点集{A1,A2}、与节点B对应的候选节点集{B1,B2,B3}和与节点C对应的候选节点集{C1},以及节点A被划分在第一部分,节点B被划分在第二部分,节点C被划分在第三部分。那么,可以将候选节点集{A1,A2}与第一部分组合在一起,将候选节点集{B1,B2,B3}与第二部分组合在一起,以及将候选节点集{C1}与第三部分组合在一起。
可以理解,分组的数量可以等于图被划分成的份数(一份即一部分)。例如,若图被划分成100个部分,则可以得到100个分组。
在一些实施例中,节点数据包括节点的属性数据,对于所述一个或多个节点中的某一个,组合模块320可以将该节点的候选节点集作为该节点的新增的属性数据,进而将该节点的候选节点集与该节点所在的部分组合在一起,得到对应的分组。即,组合模块320可以将节点的候选节点集作为新增的点属性写入节点数据。在一些实施例中,节点的属性数据可以以k-v(键值对)形式存储,其中,可以将节点标识(如ID)作为key,并将节点对应的候选节点集所包含的候选节点的ID写入value,以生成键值对形式的点属性。例如,假设与节点A对应的候选节点集为{A1,A2},则可以将A作为key,并将[A1,A2]写入value,以生成键值对形式的点属性。
在一些实施例中,确定模块310可以将所述一个或多个节点的候选节点集存储为一个文件,以下称为第三方文件。相应地,组合模块320在组合时,可以按所述一个或多个节点分布在的一个或多个图部分将第三方文件划分成若干部分,再将第三方文件的每一部分与其对应的图部分组合在一起,得到两个或以上分组。可以理解,第三方文件被划分成的份数与图被划分成的份数相等(一份即一部分),且第三方文件的各部分与所述一个或多个节点分布在的一个或多个图部分一一对应。例如,假设所述一个或多个节点包括在图的第一部分的X_1~X_i、在图的第二部分的Y_1~Y_j和在图的第三部分的Z_1~Z_k,则组合模块320可以将第三方文件划分成与图的这三个部分一一对应的三个部分,即包含与X_1~X_i分别对应的候选节点集的第一部分、包含与Y_1~Y_j分别对应的候选节点集的第二部分和包含与Z_1~Z_k分别对应的候选节点集的第三部分。进而,组合模块320可以将第三方文件的第一部分与图的第一部分组合在一起,将第三方文件的第二部分与图的第二部分组合在一起,以及将第三方文件的第三部分与图的第三部分组合在一起。
在一些实施例中,数据仓库可能会将节点和边混合存储,例如,一个文件中同时包括节点和边。在从数据仓库获得图数据后,可以将图数据中的节点数据和边数据分离,即将图数据转换成节点数据和边数据,以使组合模块320可以将节点的候选节点集作为新增的点属性写入分离出的节点数据。
步骤230,将所述两个或以上分组分发给两个或以上设备,以便各设备基于其接收的分组进行图计算。在一些实施例中,步骤230可以由分发模块330执行。
所述两个或以上设备可组成图计算系统110,即,每个设备可作为一个图计算节点。
参考前述内容,这里的图计算可以用于实体的关联分析。以同店分析为例,这里的图计算可以用于确定账户节点与其对应的候选节点集中的候选节点是否属于同一商户。在一些实施例中,这里的图计算可以指实体(节点)间关联特征的抽取。节点对应的候选节点集可用于选取参与特征抽取计算的实体(节点)对,具体地,可以将该节点与其对应的候选节点集中的任一候选节点组成实体(节点)对。在一些实施例中,图计算还可以是其他计算,如图表示学习,规则推理等等,本说明书对此不做限制。
可以理解,将节点对应的候选节点集与该节点所在的部分组合在一起,可以使相同节点对应的数据传输至同一设备上,进而有助于在同一设备上整合属于相同节点对应的数据。
通过流程200,可以在图计算之前批量完成针对多个节点(如亿级或更高数量级)的粗召回,并将粗召回数据分发至图计算节点。如此,图计算节点无需实时访问提供粗召回服务的外部系统(如搜索引擎120)以完成候选节点召回,从而可以大幅缩短处理时间、节省通信成本、增加系统稳定性等等。
应当注意的是,上述有关流程的描述仅仅是为了示例和说明,而不限定本说明书的适用范围。对于本领域技术人员来说,在本说明书的指导下可以对流程进行各种修正和改变。然而,这些修正和改变仍在本说明书的范围之内。
图3是根据本说明书一些实施例所示的图处理系统的示例性模块图。
在一些实施例中,图处理系统300(以下简称系统300)可以在图计算系统110中的任一图计算节点(即所述两个或以上设备中的任一设备)上实现,或者可以在图计算系统110以外的单独设备上实现。如图3所示,系统300可以包括确定模块310、组合模块320和分发模块330。其中,所述图包括节点和边,所述图被划分成两个或以上部分。
在一些实施例中,确定模块310可以用于为图中的一个或多个节点分别确定其对应的候选节点集,每个候选节点集所包括的候选节点来自于所述图。
在一些实施例中,组合模块320可以用于将所述一个或多个节点的候选节点集分别与其对应节点所在的部分组合在一起,得到两个或以上分组。
在一些实施例中,分发模块330可以用于将所述两个或以上分组分发给两个或以上设备,以便各设备基于其接收的分组进行图计算。
关于系统300及其模块的更多细节,可以参考图2及其相关描述。
应当理解,图3所示的系统及其模块可以利用各种方式来实现。例如,在一些实施例中,系统及其模块可以通过硬件、软件或者软件和硬件的结合来实现。其中,硬件部分可以利用专用逻辑来实现;软件部分则可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域技术人员可以理解上述的方法和系统可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本说明书的系统及其模块不仅可以有诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用例如由各种类型的处理器所执行的软件实现,还可以由上述硬件电路和软件的结合(例如,固件)来实现。
需要注意的是,以上对于系统及其模块的描述,仅为描述方便,并不能把本说明书限制在所举实施例范围之内。可以理解,对于本领域的技术人员来说,在了解系统的原理后,可能在不背离这一原理的情况下,对各个模块进行任意组合,或者构成子系统与其他模块连接。例如,在一些实施例中,组合模块320和分发模块330可以是两个分立的模块,也可以合并为一个模块。诸如此类的变形,均在本说明书的保护范围之内。
本说明书实施例可能带来的有益效果包括但不限于:(1)在图计算之前批量完成针对多个节点(如亿级或更高数量级)的粗召回,并将粗召回数据分发至图计算节点。如此,图计算节点无需实时访问提供粗召回服务的外部系统(如搜索引擎120)以完成候选节点召回,从而可以大幅缩短处理时间、节省通信成本、增加系统稳定性等等;(2)在图计算系统110中的任一图计算节点上实现本说明书实施例提供的图处理系统,可以降低整个系统的复杂度。需要说明的是,不同实施例可能产生的有益效果不同,在不同的实施例里,可能产生的有益效果可以是以上任意一种或几种的组合,也可以是其他任何可能获得的有益效果。
上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述详细披露仅仅作为示例,而并不构成对本说明书实施例的限定。虽然此处并没有明确说明,本领域技术人员可能会对本说明书实施例进行各种修改、改进和修正。该类修改、改进和修正在本说明书实施例中被建议,所以该类修改、改进、修正仍属于本说明书示范实施例的精神和范围。
同时,本说明书使用了特定词语来描述本说明书的实施例。如“一个实施例”、“一实施例”和/或“一些实施例”意指与本说明书至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一个替代性实施例”并不一定是指同一实施例。此外,本说明书的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。
此外,本领域技术人员可以理解,本说明书实施例的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的工序、机器、产品或物质的组合,或对他们的任何新的和有用的改进。相应地,本说明书实施例的各个方面可以完全由硬件执行、可以完全由软件(包括固件、常驻软件、微码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“数据块”、“模块”、“引擎”、“单元”、“组件”或“系统”。此外,本说明书实施例的各方面可能表现为位于一个或多个计算机可读介质中的计算机产品,该产品包括计算机可读程序编码。
计算机存储介质可能包含一个内含有计算机程序编码的传播数据信号,例如在基带上或作为载波的一部分。该传播信号可能有多种表现形式,包括电磁形式、光形式等,或合适的组合形式。计算机存储介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行系统、装置或设备以实现通讯、传播或传输供使用的程序。位于计算机存储介质上的程序编码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、RF、或类似介质,或任何上述介质的组合。
本说明书实施例各部分操作所需的计算机程序编码可以用任意一种或多种程序语言编写,包括面向对象编程语言如Java、Scala、Smalltalk、Eiffel、JADE、Emerald、C++、C#、VB.NET、Python等,常规程序化编程语言如C语言、VisualBasic、Fortran2003、Perl、COBOL2002、PHP、ABAP,动态编程语言如Python、Ruby和Groovy,或其他编程语言等。该程序编码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机运行、或完全在远程计算机或处理设备上运行。在后种情况下,远程计算机可以通过任何网络形式与用户计算机连接,比如局域网(LAN)或广域网(WAN),或连接至外部计算机(例如通过因特网),或在云计算环境中,或作为服务使用如软件即服务(SaaS)。
此外,除非权利要求中明确说明,本说明书实施例所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本说明书实施例流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本说明书实施例实质和范围的修正和等价组合。例如,虽然以上所描述的系统组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的处理设备或移动设备上安装所描述的系统。
同理,应当注意的是,为了简化本说明书实施例披露的表述,从而帮助对一个或多个发明实施例的理解,前文对本说明书实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本说明书实施例对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。
针对本说明书引用的每个专利、专利申请、专利申请公开物和其他材料,如文章、书籍、说明书、出版物、文档等,特此将其全部内容并入本说明书作为参考。与本说明书内容不一致或产生冲突的申请历史文件除外,对本申请权利要求最广范围有限制的文件(当前或之后附加于本申请中的)也除外。需要说明的是,如果本说明书附属材料中的描述、定义和/或术语的使用与本说明书所述内容有不一致或冲突的地方,以本说明书的描述、定义和/或术语的使用为准。
最后,应当理解的是,本说明书中所述实施例仅用以说明本说明书实施例的原则。其他的变形也可能属于本说明书实施例的范围。因此,作为示例而非限制,本说明书实施例的替代配置可视为与本说明书的教导一致。相应地,本说明书的实施例不仅限于本说明书明确介绍和描述的实施例。
Claims (10)
1.一种图处理方法,其中,所述图包括节点和边,所述图被划分为两个或以上部分;所述方法包括:
为图中的一个或多个节点分别确定其对应的候选节点集;每个候选节点集所包括的候选节点来自于所述图;
将所述一个或多个节点的候选节点集分别与其对应节点所在的部分组合在一起,得到两个或以上分组;
将所述两个或以上分组分发给两个或以上设备,以便各设备基于其接收的分组进行图计算。
2.如权利要求1所述的方法,所述部分对应所述图的子图,且包括所述子图的节点数据以及边数据。
3.如权利要求2所述的方法,所述节点数据包括节点的属性数据;
所述将所述一个或多个节点的候选节点集分别与其对应节点所在的部分组合在一起,得到两个或以上分组,包括对于所述一个或多个节点中的某一个:
将该节点的候选节点集作为该节点的新增的属性数据,进而将该节点的候选节点集与该节点所在的部分组合在一起,得到对应的分组。
4.如权利要求1所述的方法,所述为图中的一个或多个节点分别确定其对应的候选节点集,包括对于所述一个或多个节点中的某一个:
基于预设的检索条件从所述图的节点中检索并得到一个或多个候选节点,进而得到该节点的候选节点集。
5.如权利要求4所述的方法,所述一个或多个节点均为账户节点,且账户节点具有位置信息;对于所述一个或多个节点中的某一个,基于预设的检索条件从所述图的节点中检索并得到一个或多个候选节点,包括:
从所述图的节点中检索与该节点的位置间的距离不超过预设值的账户节点,作为该节点的一个或多个候选节点。
6.如权利要求5所述的方法,所述账户节点的位置信息来自节点数据中的属性数据或者基于对应账户的交易数据确定。
7.如权利要求5所述的方法,所述图计算用于确定账户节点与其对应的候选节点集中的候选节点是否属于同一商户。
8.一种图处理系统,其中,所述图包括节点和边,所述图被划分为两个或以上部分;所述系统包括:
确定模块,用于为图中的一个或多个节点分别确定其对应的候选节点集;每个候选节点集所包括的候选节点来自于所述图;
组合模块,用于将所述一个或多个节点的候选节点集分别与其对应节点所在的部分组合在一起,得到两个或以上分组;
分发模块,用于将所述两个或以上分组分发给两个或以上设备,以便各设备基于其接收的分组进行图计算。
9.一种图处理装置,包括处理器和存储设备,所述存储设备用于存储指令,其中,当所述处理器执行指令时,实现如权利要求1~7中任一项所述的方法。
10.一种计算机可读存储介质,所述存储介质中存储有指令,其中,当处理器执行指令时,实现如权利要求1~7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111520037.3A CN114218447A (zh) | 2021-12-13 | 2021-12-13 | 一种图处理方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111520037.3A CN114218447A (zh) | 2021-12-13 | 2021-12-13 | 一种图处理方法和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114218447A true CN114218447A (zh) | 2022-03-22 |
Family
ID=80701539
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111520037.3A Pending CN114218447A (zh) | 2021-12-13 | 2021-12-13 | 一种图处理方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114218447A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200358815A1 (en) * | 2019-03-28 | 2020-11-12 | NTT Security Corporation | Graph stream mining pipeline for efficient subgraph detection |
US20200410012A1 (en) * | 2019-06-28 | 2020-12-31 | Facebook Technologies, Llc | Memory Grounded Conversational Reasoning and Question Answering for Assistant Systems |
CN113326377A (zh) * | 2021-06-02 | 2021-08-31 | 上海生腾数据科技有限公司 | 一种基于企业关联关系的人名消歧方法及系统 |
CN113537960A (zh) * | 2021-07-19 | 2021-10-22 | 中国工商银行股份有限公司 | 一种异常资源转移链路的确定方法、装置和设备 |
US20210342352A1 (en) * | 2020-04-29 | 2021-11-04 | International Business Machines Corporation | Method for duplicate determination in a graph |
-
2021
- 2021-12-13 CN CN202111520037.3A patent/CN114218447A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200358815A1 (en) * | 2019-03-28 | 2020-11-12 | NTT Security Corporation | Graph stream mining pipeline for efficient subgraph detection |
US20200410012A1 (en) * | 2019-06-28 | 2020-12-31 | Facebook Technologies, Llc | Memory Grounded Conversational Reasoning and Question Answering for Assistant Systems |
US20210342352A1 (en) * | 2020-04-29 | 2021-11-04 | International Business Machines Corporation | Method for duplicate determination in a graph |
CN113326377A (zh) * | 2021-06-02 | 2021-08-31 | 上海生腾数据科技有限公司 | 一种基于企业关联关系的人名消歧方法及系统 |
CN113537960A (zh) * | 2021-07-19 | 2021-10-22 | 中国工商银行股份有限公司 | 一种异常资源转移链路的确定方法、装置和设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11403464B2 (en) | Method and system for implementing semantic technology | |
WO2021004333A1 (zh) | 基于知识图谱的事件处理方法、装置、设备和存储介质 | |
US20200050968A1 (en) | Interactive interfaces for machine learning model evaluations | |
US20200272645A1 (en) | Identity resolution in big, noisy, and/or unstructured data | |
US10725981B1 (en) | Analyzing big data | |
US8943059B2 (en) | Systems and methods for merging source records in accordance with survivorship rules | |
US11886438B2 (en) | Record matching system | |
US9996605B2 (en) | Managing data within a temporal relational database management system | |
US11887013B2 (en) | System and method for facilitating model-based classification of transactions | |
US10839349B1 (en) | User behavior confidence level of automation | |
US10990988B1 (en) | Finding business similarities between entities using machine learning | |
CN114218447A (zh) | 一种图处理方法和系统 | |
US10649812B1 (en) | Computation using tenant and commingling processors | |
CN117786632A (zh) | 业务系统对目标对象的身份审核方法、装置及计算机设备 | |
CN116975051A (zh) | 血缘关系数据确定方法、装置、计算机设备和存储介质 | |
Minajagi et al. | Crime Analysis and Prediction Using Big Data | |
CN115408400A (zh) | 业务数据跑批方法、装置、电子设备及存储介质 | |
CN116091209A (zh) | 信贷业务处理方法、装置、计算机设备和存储介质 | |
CN118093515A (zh) | 数据处理方法、装置、设备、介质和程序产品 | |
CN115455207A (zh) | 引用关系检索方法、装置、电子设备和存储介质 | |
CN113505172A (zh) | 数据处理方法、装置、电子设备及可读存储介质 | |
CN112364181A (zh) | 一种保险产品匹配度确定方法及装置 | |
CN118095425A (zh) | 基于知识图谱的需求关联方法、装置、设备及存储介质 | |
CN116910352A (zh) | 基于人工智能的报表推荐方法、装置、设备及介质 | |
CN111177132A (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 |