1.本文件涉及计算机技术领域,尤其涉及一种图谱的处理方法、装置及设备。
背景技术:2.近年来,图神经网络在金融领域有着广泛的应用前景,然而,金融交易网络往往显示出有向多边动态图的特性,上述三种信息(有向、多边、动态)在目前已有的图网络架构中仍未出现。目前,图表示学习已经得到了很好的发展,与此同时,也在被越来越多地应用于各种领域。在金融风控领域中,图谱数据中最具代表性的数据结构是有向多边的动态图,该数据结构能够同时捕捉金融数据的资源流向、交易的频度和时间特性等,从而在各类应用中具备优异的价值,然而,有向多边动态图上的图表示学习架构目前仍然是缺乏的。当前的图表示学习主要针对于无向图。除此之外,图表示学习中存在若干基本问题,除了最为广泛出现的点分类之外,还有边预测和边分类等问题,其中,边分类问题需要系统性地使用边上的特征从而需要一个特别的边表征构造过程,而在有向图上,上述处理仍很难实现。为此,需要提供一种适用于有向多边动态图的图谱处理机制。
技术实现要素:3.本说明书实施例的目的是提供一种适用于有向多边动态图的图谱处理机制。
4.为了实现上述技术方案,本说明书实施例是这样实现的:
5.本说明书实施例提供的一种图谱的处理方法,所述方法包括:获取待处理的目标图谱,所述目标图谱中包括节点和有向边。基于所述目标图谱,获取所述目标图谱中的每个节点的内邻域信息和外邻域信息,以及获取所述目标图谱中的每条有向边的内邻域信息和外邻域信息。基于所述目标图谱中的每个节点的内邻域信息和外邻域信息分别与相应的节点的信息进行聚合处理,得到每个节点的聚合信息,并基于所述目标图谱中的每条有向边的内邻域信息和外邻域信息分别与相应的有向边的信息进行聚合处理,得到每条有向边的聚合信息。基于所述每个节点的聚合信息和所述每条有向边的聚合信息,确定所述目标图谱中是否包括异常的节点和/或有向边。
6.本说明书实施例提供的一种图谱的处理装置,所述装置包括:图谱获取模块,获取待处理的目标图谱,所述目标图谱中包括节点和有向边。邻域信息获取模块,基于所述目标图谱,获取所述目标图谱中的每个节点的内邻域信息和外邻域信息,以及获取所述目标图谱中的每条有向边的内邻域信息和外邻域信息。聚合模块,基于所述目标图谱中的每个节点的内邻域信息和外邻域信息分别与相应的节点的信息进行聚合处理,得到每个节点的聚合信息,并基于所述目标图谱中的每条有向边的内邻域信息和外邻域信息分别与相应的有向边的信息进行聚合处理,得到每条有向边的聚合信息。异常确定模块,基于所述每个节点的聚合信息和所述每条有向边的聚合信息,确定所述目标图谱中是否包括异常的节点和/或有向边。
7.本说明书实施例提供的一种图谱的处理设备,所述图谱的处理设备包括:处理器;
以及被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器:获取待处理的目标图谱,所述目标图谱中包括节点和有向边。基于所述目标图谱,获取所述目标图谱中的每个节点的内邻域信息和外邻域信息,以及获取所述目标图谱中的每条有向边的内邻域信息和外邻域信息。基于所述目标图谱中的每个节点的内邻域信息和外邻域信息分别与相应的节点的信息进行聚合处理,得到每个节点的聚合信息,并基于所述目标图谱中的每条有向边的内邻域信息和外邻域信息分别与相应的有向边的信息进行聚合处理,得到每条有向边的聚合信息。基于所述每个节点的聚合信息和所述每条有向边的聚合信息,确定所述目标图谱中是否包括异常的节点和/或有向边。
8.本说明书实施例还提供了一种存储介质,所述存储介质用于存储计算机可执行指令,所述可执行指令在被处理器执行时实现以下流程:获取待处理的目标图谱,所述目标图谱中包括节点和有向边。基于所述目标图谱,获取所述目标图谱中的每个节点的内邻域信息和外邻域信息,以及获取所述目标图谱中的每条有向边的内邻域信息和外邻域信息。基于所述目标图谱中的每个节点的内邻域信息和外邻域信息分别与相应的节点的信息进行聚合处理,得到每个节点的聚合信息,并基于所述目标图谱中的每条有向边的内邻域信息和外邻域信息分别与相应的有向边的信息进行聚合处理,得到每条有向边的聚合信息。基于所述每个节点的聚合信息和所述每条有向边的聚合信息,确定所述目标图谱中是否包括异常的节点和/或有向边。
附图说明
9.为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
10.图1为本说明书一种图谱的处理方法实施例;
11.图2为本说明书另一种图谱的处理方法实施例;
12.图3为本说明书又一种图谱的处理方法实施例;
13.图4为本说明书一种图谱的处理装置实施例;
14.图5为本说明书一种图谱的处理设备实施例。
具体实施方式
15.本说明书实施例提供一种图谱的处理方法、装置及设备。
16.为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
17.实施例一
18.如图1所示,本说明书实施例提供一种图谱的处理方法,该方法的执行主体可以为终端设备或服务器,其中,该终端设备可以如手机、平板电脑等一定终端设备,还可以如笔
记本电脑或台式电脑等计算机设备,或者,也可以为iot设备(具体如智能手表、车载设备等)等。该服务器可以是独立的一个服务器,还可以是由多个服务器构成的服务器集群等,该服务器可以是如金融业务或网络购物业务等的后台服务器,也可以是某应用程序的后台服务器等。本实施例中以服务器为例进行详细说明,对于终端设备的执行过程可以参见下述相关内容,在此不再赘述。该方法具体可以包括以下步骤:
19.在步骤s102中,获取待处理的目标图谱,该目标图谱中包括节点和有向边。
20.其中,目标图谱可以是多边图的图谱,多边图可以包括有向多边图和无向多边图,有向多边图可以是具有方向性的多条边构成的图,有向多边图可以包括一组节点和一组有方向的边(为了后续说明方便,可以称为有向边),每条有向边都连接着一对有序的节点,而且,多边图中的两个节点之间容许出现多于一条同向的边,本实施例中的目标图谱可以包括有向多边图的图谱,或者,可以是有向图和无向图的混合图,具体如某个图谱中的两个节点之间存在双向连边,则该部分可以作为该图谱的局部而被视作无向的,其它节点之间也存在仅有单向连边的情况等,上述目标图谱可以应用于多种不同的业务中,例如,在线交易业务、社交业务、金融类相关的业务、风险防控业务、推荐业务等,具体可以根据实际情况设定,本说明书实施例对此不做限定。
21.在实施中,近年来,图神经网络在金融领域有着广泛的应用前景,然而,金融交易网络往往显示出有向多边动态图的特性,上述三种信息(有向、多边、动态)在目前已有的图网络架构中仍未出现。目前,图表示学习(graph representation learning)已经得到了很好的发展,与此同时,也在被越来越多地应用于各种领域,如金融风控(frm)领域等。在金融风控领域中,图谱数据中最具代表性的数据结构是有向多边的动态图(temporal directed multigraph),该数据结构能够同时捕捉金融数据的资源流向、交易的频度和时间特性等,从而在各类应用中具备优异的价值,然而,有向多边动态图上的图表示学习架构目前仍然是缺乏的。当前的图表示学习主要针对于无向图。除此之外,图表示学习中存在若干基本问题,除了最为广泛出现的点分类(node classification)之外,还有边预测(link prediction)和边分类(edge classification)等问题,其中,边分类问题需要系统性地使用边上的特征(edge feature)从而需要一个特别的边表征构造过程,而在有向图上,上述处理仍很难实现。为此,需要提供一种适用于有向多边动态图的图谱处理机制。本说明书实施例提供一种可实现的技术方案,具体可以包括以下内容:
22.当需要对某图谱(即目标图谱)进行处理时,可以确定该图谱所对应的业务,然后,可以从确定的业务中获取相应的业务数据,可以对该业务数据进行分析,确定其中包含的各种不同的实体(可以包括节点(具体如账户、用户标识等)和边(或两个节点之间的关系等)等),具体如,用户a向用户b转账50元,则其中的实体可以包括用户a、用户b和由用户a指向用户b的有向边可以基于确定的实体构建相应的图谱,最终,可以得到目标图谱;或者,目标图谱已经构建完成,并被存储在指定的存储区域,此时,可以获取目标图谱的存储区域,可以从该存储区域获取目标图谱,此外,还可以通过多种不同的方式获取待处理的目标图谱,具体可以根据实际情况设定,本说明书实施例对此不做限定。
23.在步骤s104中,基于目标图谱,获取目标图谱中的每个节点的内邻域信息和外邻域信息,以及获取目标图谱中的每条有向边的内邻域信息和外邻域信息。
24.其中,针对其中的任意一个节点,该节点的内邻域信息可以包括指向该节点的其
它节点及该其它节点的信息,该节点的外邻域信息可以包括从该节点指向的其它节点及该其它节点的信息,具体如,以用户a作为节点,以及以转账业务为例,该节点的内邻域信息可以包括:所有向用户a转账过的其他用户及其属性信息,该节点的外邻域信息可以包括:所有用户a对其转账的其他用户及其属性信息。针对其中的任意一条有向边,有向边的内邻域信息可以包括该有向边产生的时间之前的有向边及其相应的属性信息,有向边的外邻域信息可以包括该有向边产生的时间之后的有向边及其相应的属性信息,具体如,以有向边为一条交易为例,则有向边的内邻域信息可以为该交易的上游交易及其交易属性信息,有向边的外邻域信息可以为该交易的下游交易及其交易属性信息。
25.在实施中,通过上述方式得到待处理的目标图谱后,可以对目标图谱中包含的节点、有向边进行分析,确定不同节点之间的关系,以及每种关系的相关属性信息,例如,节点a与节点b是某交易的双方,其中节点a为买家,节点b为商户,节点a与节点b之间可以为交易关系,相应的属性信息可以包括交易的商品信息、商品数量、交易金额、交易时间等,具体可以根据实际情况设定。然后,可以基于确定的不同节点之间的关系,以及每种关系的相关属性信息等,确定目标图谱中的每个节点的内邻域信息和外邻域信息,此外,还可以基于确定的不同节点之间的关系,以及每种关系的相关属性信息等,确定目标图谱中的每条有向边的内邻域信息和外邻域信息。
26.在步骤s106中,基于目标图谱中的每个节点的内邻域信息和外邻域信息分别与相应的节点的信息进行聚合处理,得到每个节点的聚合信息,并基于目标图谱中的每条有向边的内邻域信息和外邻域信息分别与相应的有向边的信息进行聚合处理,得到每条有向边的聚合信息。
27.在实施中,设g=(v,e)是一个有向多边图,节点集合为v,边集合为e,对于任何节点对(u,v),μ(u,v)作为从u到v的有向边的数量,然后,g成为一个(简单的)图,当maxu∈v,v∈vμ(uv)≤1,为每个v∈v表示n
+
(v)={u,(vu)∈e}和n-(v)={u,(uv)∈e}分别作为其内邻域和外邻域,n(v)=n
+
(v)∪n-(v)是其的邻域。为了表达清晰,可以将对无向图中的边或有向多边图中从u到v的有向边使用uv表示,并在上下文中明确其确切含义,在一般情况下,其中节点特征x={xv}v∈v和边特征z={zuv}(u,v)∈e,假设上述两种特征的维度都是d。基于无向图的消息传递方案,消息传递图神经网络协议描述为:
[0028][0029]
其中,combine机制、agg机制和message机制的不同组合形成了无向图的设计空间。有向图有三种泛化策略,最优的解决方案是通过填充必要的反向边来“使其无向”,以便构成n(v)=n
+
(v)=n-(v),并基于无向图的标准图神经网络(如gcn或gat)进行处理。尽管上述方式简单明了,但却丢弃了有向图中的方向信息,在处理有向多边图时可能会引起一定的变化。显然,通过只聚合内邻域信息的方式对有向多边图进行处理,尽管是一种自然的扩展,但会丢失每个节点的方向信息,从而对有向多边图造成影响,为了解决上述问题,可以对节点的内邻域信息和外邻域信息进行聚合,同时,也对有向边的内邻域信息和外邻域信息进行聚合,从而减少对有向多边图的影响,即基于目标图谱中的每个节点的内邻域信息和外邻域信息分别与相应的节点的信息进行聚合处理,得到每个节点的聚合信息,在实际应用中,基于目标图谱中的每个节点的内邻域信息和外邻域信息分别与相应的节点的信息
进行聚合处理的方式可以包括多种,例如,可以将每个节点的内邻域信息和外邻域信息分别叠加到相应的节点的信息中,从而使得每个节点的信息中都加入了其内邻域信息和外邻域信息,或者,还可以通过下述公式进行聚合处理:
[0030][0031]
其中,内邻域信息和外邻域信息分别如下:
[0032][0033][0034]
通过上述公式,可以得到每个节点的聚合信息。
[0035]
同时,还可以基于目标图谱中的每条有向边的内邻域信息和外邻域信息分别与相应的有向边的信息进行聚合处理,得到每条有向边的聚合信息,在实际应用中,基于目标图谱中的每条有向边的内邻域信息和外邻域信息分别与相应的有向边的信息进行聚合处理的方式可以包括多种,例如,可以将每条有向边的内邻域信息和外邻域信息分别叠加到相应的有向边的信息中,从而使得每条有向边的信息中都加入了其内邻域信息和外邻域信息,或者,还可以通过下述公式进行聚合处理:
[0036][0037]
其中,内邻域信息和外邻域信息分别如下:
[0038][0039][0040][0041]
通过上述公式,可以得到每条有向边的聚合信息。
[0042]
需要说明的是,上述各公式是基于bimpnn-de协议确定,bimpnn-de协议提供了比bimpnn协议更大的设计空间,bimpnn-de协议增强了bimpnn协议的对偶信息。在上述公式中,可以指定多种不同的机制,对应于不同的merge、combine、agg和message等操作,从实用的角度来看,可以共享相同底层结构的参数化函数来设计上述操作。
[0043]
在步骤s108中,基于每个节点的聚合信息和每条有向边的聚合信息,确定目标图谱中是否包括异常的节点和/或有向边。
[0044]
在实施中,通过上述聚合处理,可以得到目标图谱中的每个节点的聚合信息和每条有向边的聚合信息,基于得到的聚合信息,可以对目标图谱中包含的每个节点和每条有向边进行分析,确定其中可能存在异常的节点和/或可能存在异常的有向边,如果确定某个节点或某条有向边异常,则可以将相应的节点或有向边提供给相应的管理人员,管理人员可以采取相应的警示和调整措施,从而将异常的节点或有向边对业务造成的影响降到最低。
[0045]
本说明书实施例提供一种图谱的处理方法,通过获取待处理的目标图谱,目标图
谱中包括节点和有向边,然后,基于目标图谱,获取目标图谱中的每个节点的内邻域信息和外邻域信息,以及获取目标图谱中的每条有向边的内邻域信息和外邻域信息,基于目标图谱中的每个节点的内邻域信息和外邻域信息分别与相应的节点的信息进行聚合处理,得到每个节点的聚合信息,并基于目标图谱中的每条有向边的内邻域信息和外邻域信息分别与相应的有向边的信息进行聚合处理,得到每条有向边的聚合信息,最终,基于每个节点的聚合信息和每条有向边的聚合信息,确定目标图谱中是否包括异常的节点和/或有向边,这样,通过设计基于内邻域信息和外邻域信息的双向带对偶增强的消息传播协议bimpnn-de来系统性地捕获有向多边图中的方向信息、多条有向边的信息以及有向边与有向边之间的关系,从而形成对复杂网络同时输出点边表征的建模体系,此外,还提供了一个具体的图网络架构grande,并将其拓展到动态图,从而使得取得有向多边图的处理得到很好的效果,提高了有向多边图的处理效率和灵活性。
[0046]
实施例二
[0047]
如图2所示,本说明书实施例提供一种图谱的处理方法,该方法的执行主体可以为终端设备或服务器,其中,该终端设备可以如手机、平板电脑等一定终端设备,还可以如笔记本电脑或台式电脑等计算机设备,或者,也可以为iot设备(具体如智能手表、车载设备等)等。该服务器可以是独立的一个服务器,还可以是由多个服务器构成的服务器集群等,该服务器可以是如金融业务或网络购物业务等的后台服务器,也可以是某应用程序的后台服务器等。本实施例中以服务器为例进行详细说明,对于终端设备的执行过程可以参见下述相关内容,在此不再赘述。该方法具体可以包括以下步骤:
[0048]
在步骤s202中,获取待处理的目标图谱,目标图谱中包括节点和有向边。
[0049]
在步骤s204中,基于目标图谱,获取目标图谱中的每个节点的内邻域信息和外邻域信息,以及获取目标图谱中的每条有向边的内邻域信息和外邻域信息。
[0050]
在步骤s206中,基于目标图谱中的每个节点的内邻域信息和外邻域信息分别与相应的节点的信息进行聚合处理,得到每个节点的聚合信息,并基于目标图谱中的每条有向边的内邻域信息和外邻域信息分别与相应的有向边的信息进行聚合处理,得到每条有向边的聚合信息。
[0051]
在实际应用中,为了降低处理压力,还可以预先设定剪枝策略,通过该剪枝策略可以将聚合信息中的无用信息、不相关信息或错误信息等去除,具体可以参见下述内容:基于预设的剪枝策略对每个节点的聚合信息和每条有向边的聚合信息进行削减处理,得到剪枝后的聚合信息。
[0052]
其中,剪枝策略可以包括多种,具体可以基于相应的算法构建,例如分类算法或相似度算法等,或者,还可以基于预设的规则构建,例如,可以预先设定信息的选取规则或通过专家经验设定相应的规则等,具体可以根据实际情况设定,本说明书实施例对此不做限定。
[0053]
基于上述处理,后续可以基于剪枝后的聚合信息,确定目标图谱中是否包括异常的节点和/或有向边,此时不需要在执行下述步骤s208的处理。
[0054]
在步骤s208中,基于每个节点的聚合信息和每条有向边的聚合信息,以及基于目标图谱中至少两条有向边共享的节点的信息和至少两条有向边对应的相邻类型信息确定的附加信息,确定目标图谱中是否包括异常的节点和/或有向边。
[0055]
在实施中,可以将目标图谱中至少两条有向边共享的节点的信息和至少两条有向边对应的相邻类型信息确定的附加信息代入下述公式进行计算:
[0056][0057]
可以将得到的相应计算结果与每个节点的聚合信息和每条有向边的聚合信息相结合,通过分析,可以得到目标图谱中是否包括异常的节点和/或有向边。
[0058]
本说明书实施例提供一种图谱的处理方法,通过获取待处理的目标图谱,目标图谱中包括节点和有向边,然后,基于目标图谱,获取目标图谱中的每个节点的内邻域信息和外邻域信息,以及获取目标图谱中的每条有向边的内邻域信息和外邻域信息,基于目标图谱中的每个节点的内邻域信息和外邻域信息分别与相应的节点的信息进行聚合处理,得到每个节点的聚合信息,并基于目标图谱中的每条有向边的内邻域信息和外邻域信息分别与相应的有向边的信息进行聚合处理,得到每条有向边的聚合信息,最终,基于每个节点的聚合信息和每条有向边的聚合信息,确定目标图谱中是否包括异常的节点和/或有向边,这样,通过设计基于内邻域信息和外邻域信息的双向带对偶增强的消息传播协议bimpnn-de来系统性地捕获有向多边图中的方向信息、多条有向边的信息以及有向边与有向边之间的关系,从而形成对复杂网络同时输出点边表征的建模体系,此外,还提供了一个具体的图网络架构grande,并将其拓展到动态图,从而使得取得有向多边图的处理得到很好的效果,提高了有向多边图的处理效率和灵活性。
[0059]
实施例三
[0060]
如图3所示,本说明书实施例提供一种图谱的处理方法,该方法的执行主体可以为终端设备或服务器,其中,该终端设备可以如手机、平板电脑等一定终端设备,还可以如笔记本电脑或台式电脑等计算机设备,或者,也可以为iot设备(具体如智能手表、车载设备等)等。该服务器可以是独立的一个服务器,还可以是由多个服务器构成的服务器集群等,该服务器可以是如金融业务或网络购物业务等的后台服务器,也可以是某应用程序的后台服务器等。本实施例中以服务器为例进行详细说明,对于终端设备的执行过程可以参见下述相关内容,在此不再赘述。该方法具体可以包括以下步骤:
[0061]
在步骤s302中,获取待处理的目标图谱,目标图谱中包括节点和有向边。
[0062]
在步骤s304中,将目标图谱输入到训练训练的图神经网络gnn模型中,通过gnn模型,并基于目标图谱,获取目标图谱中的每个节点的内邻域信息和外邻域信息,以及获取目标图谱中的每条有向边的内邻域信息和外邻域信息。
[0063]
在实施中,基于上述bimpnn-de协议,可以派生出一个具体的gnn模型,通过该gnn模型可以输出节点和有向边的表征,以及针对有向边的属性信息预测任务的策略。具体地,gnn模型可以通过多种不同的方式构建,本实施例中,以gnn模型由一个或多个transformer块构成为例进行说明,其中,该transformer块可以基于目标图谱中的每条有向边的倍增注意力信息和目标图谱中的每个节点的信息确定,具体地,可以设定目标图谱中的每条有向边的倍增注意力信息如下:
[0064]
[0065][0066][0067]
transformer块中常用的操作包括layernorm(ln)、跳跃式连接和可学习的两层mlp(ff)作为非线性部分,则transformer块变为:
[0068][0069][0070]
基于上述内容,可以得到
[0071][0072][0073][0074][0075][0076][0077]
上述公式涉及很对多可学习的参数,可以使用字母φ、ψ、θ和γ表示在中取值的投影矩阵,使用下标n表示节点相关的投影,e表示边相关的投影。
[0078]
可以将grande框架扩展到需要利用沿边的时间戳信息来产生时间感知节点和有向边的表征。为此,提出一种扩展的通用时间编码机制,该机制增强了具有时间信息的bimpnn-de的节点和有向边,具体如下公式:
[0079][0080][0081][0082]
其中te(|δt
uv
|)表示通过fte机制获得的时间嵌入。
[0083][0084]
其中,ρ1,
…
,ρd为参数。
[0085]
目标图谱中的每条有向边的倍增注意力信息可以基于与相应的节点相关联的时间戳信息和与所述有向边相关联的时间戳信息确定,具体地,获取与有向边相关联的时间
戳信息,以及获取与相应的节点相关联的时间戳信息,基于与有向边相关联的时间戳信息和与相邻有向边相关联的时间戳信息中时间戳的最小值,确定有向边对应的第一时间差,并基于有向边的两个节点中每个节点相关联的时间戳信息,确定有向边的两个节点对应的第二时间差;基于第一时间差和第二时间差,确定目标图谱中的每条有向边的倍增注意力信息。
[0086]
可以使用fte机制将节点对应的第二时间差计算的attn分量替换为tattn分量,对于有向边,由于在双重公式中边缘时间戳作为节点时间戳,所以普通的节点时差方式自然适用。时间信息和剪枝策略所提出的线图增强策略产生无向图,虽然该无向图通常可能提供有价值的信息,在金融风险管理场景中,边代表时间戳交易,交易之间的有向邻接会存在相互影响,例如,一个从bob到alice的交易et0,合理的假设et0的下游交易(即et与t》t0的交易)将受到et0的影响,但其上游交易不受影响,基于此,引入了一种因果剪枝策略,该策略适用于底层图中可用的时间信息,例如,对于一条从u到v的边e,可以有它出现的时间te,剪枝策略删除其中的头部节点的出现时间比尾部节点的出现时间早的有向边。当修剪策略适用时,我们可以修剪目标图谱中多达50%的信息。
[0087]
通过上述构建的gnn模型可以实现步骤s304~步骤s310的处理。
[0088]
在步骤s306中,通过gnn模型,基于目标图谱中的每个节点的内邻域信息和外邻域信息分别与相应的节点的信息进行聚合处理,得到每个节点的聚合信息,并通过gnn模型,基于目标图谱中的每条有向边的内邻域信息和外邻域信息分别与相应的有向边的信息进行聚合处理,得到每条有向边的聚合信息。
[0089]
在步骤s308中,通过gnn模型,基于预设的剪枝策略对所述每个节点的聚合信息和所述每条有向边的聚合信息进行削减处理,得到剪枝后的聚合信息。
[0090]
在步骤s310中,通过gnn模型,基于剪枝后的聚合信息,确定所述目标图谱中是否包括异常的节点和/或有向边。
[0091]
基于上述内容,可以通过实际数据对上述处理机制进行验证,可以使用一个工业数据集和两个公共数据集,此外,将用户视为节点,将事务视为具有任意多重性的有向边来构造底层图(即有向多边图),对于其中的节点特征和有向边特征可以采用两个阶段的过程实现:第一阶段:通过统计总结特定时间段内相应用户在数据处理平台上的行为来获得原始节点特征,有向边包括交易属性以及参与交易的两个用户的相关特征;第二阶段:将决策树特征变换应用到两个特征上,使得所有评估模型的输入节点和有向边特征都是维数为6400的稀疏分类特征。对于上述数据集,可以通过时间对其进行分割,可以使用70%的数据进行模型训练,使用10%的数据进行模型验证,使用20%的数据进行模型测试。
[0092]
考虑两种具有代表性的gnn模型的架构,即gcn模型和gat模型,上述两个模型通常运行在无向图上,由于上述三个数据集中都提供了时态信息,因此还可以设置tgat架构。由于上述方式都产生了节点级表示,因此,可以根据邻接结构,将节点表示的拼接作为边表示。由于直接输出边表示的框架仍然很少,包括了ehgnn架构作为一个强基线。为了使无向结构与有向图兼容,在有向图中不存在边多重性的情况下,添加具有重复边特征的反向边。否则,在每对节点之间只保留一条有向边,并使用deepset方式将原始边特征聚合生成相应的边特征,然后添加反向边。考虑两种利用有向图拉普拉斯算子不同概念的有向多边图对应的gnn模型的架构,即dgcn模型和magnet模型。由于可伸缩性问题,上述基线排除了最近
提出的一些最先进的gnn模型,如用于无向图的graphormer,或用于digcn的有向图方式,即要么需要全图关注,要么需要在全图拉普拉斯算子上解决特征程序,这在计算上对于工业规模的图谱是不可行的。
[0093]
在上述数据集和模型中,可以使用一个两层的模型架构,隐藏维度d=128,无需进一步调优。对于具有通用时间编码的模型,可以将时间编码的维数固定为128。对于变压器相关的架构,可以使用一个带有隐藏维度为512的relu激活的两层mlp。由于所有相关任务都是二元分类,可以采用二元交叉熵损失作为训练目标,在所有实验中均采用系数0.0001下的l2正则化。图数据是通过agl系统的graphflat组件构造的,该组件将原始图数据通过适当的采样转换为批量子图。在所有任务和模型中使用了学习率为0.0001的adam优化器。可以使用128批大小的每个模型训练的10个epoch,每100步定期评估下,根据验证数据的roc-auc评分选择性能最好的一个。
[0094]
除了提出的grande架构之外,还提出了一个简化版的grande,它丢弃了在增强边邻接图上的所有操作,以及交叉查询关注模块。所得到的模型可以看作是在bimpnn协议下实现了一种时间感知的图转换器变体,实验结果总结如下:
[0095]
在上述数据集上,相对于最佳基线,得到的结果均得到了相应的提升,相对改进更显著。将上述改进归因于grande所利用的方向信息和对偶信息,方向信息的改进可以从简化的大变型的结果中推断出来,它在所有基线上都有明显的改进,结合有向边到节点的对偶性和交叉查询注意,系统地编码更多的结构信息,从而得到进一步的改进。
[0096]
在强特征制度下,性能改善显著,这种改进在frm应用中仍然是有价值的,因为在不同的精度水平下,grande的召回率超过最佳基线的绝对值和相对值。
[0097]
本说明书实施例提供一种图谱的处理方法,通过获取待处理的目标图谱,目标图谱中包括节点和有向边,然后,基于目标图谱,获取目标图谱中的每个节点的内邻域信息和外邻域信息,以及获取目标图谱中的每条有向边的内邻域信息和外邻域信息,基于目标图谱中的每个节点的内邻域信息和外邻域信息分别与相应的节点的信息进行聚合处理,得到每个节点的聚合信息,并基于目标图谱中的每条有向边的内邻域信息和外邻域信息分别与相应的有向边的信息进行聚合处理,得到每条有向边的聚合信息,最终,基于每个节点的聚合信息和每条有向边的聚合信息,确定目标图谱中是否包括异常的节点和/或有向边,这样,通过设计基于内邻域信息和外邻域信息的双向带对偶增强的消息传播协议bimpnn-de来系统性地捕获有向多边图中的方向信息、多条有向边的信息以及有向边与有向边之间的关系,从而形成对复杂网络同时输出点边表征的建模体系,此外,还提供了一个具体的图网络架构grande,并将其拓展到动态图,从而使得取得有向多边图的处理得到很好的效果,提高了有向多边图的处理效率和灵活性。
[0098]
实施例四
[0099]
以上为本说明书实施例提供的图谱的处理方法,基于同样的思路,本说明书实施例还提供一种图谱的处理装置,如图4所示。
[0100]
该图谱的处理装置包括:图谱获取模块401、邻域信息获取模块402、聚合模块403和异常确定模块404,其中:
[0101]
图谱获取模块401,获取待处理的目标图谱,所述目标图谱中包括节点和有向边;
[0102]
邻域信息获取模块402,基于所述目标图谱,获取所述目标图谱中的每个节点的内
邻域信息和外邻域信息,以及获取所述目标图谱中的每条有向边的内邻域信息和外邻域信息;
[0103]
聚合模块403,基于所述目标图谱中的每个节点的内邻域信息和外邻域信息分别与相应的节点的信息进行聚合处理,得到每个节点的聚合信息,并基于所述目标图谱中的每条有向边的内邻域信息和外邻域信息分别与相应的有向边的信息进行聚合处理,得到每条有向边的聚合信息;
[0104]
异常确定模块404,基于所述每个节点的聚合信息和所述每条有向边的聚合信息,确定所述目标图谱中是否包括异常的节点和/或有向边。
[0105]
本说明书实施例中,所述异常确定模块404,基于所述每个节点的聚合信息和所述每条有向边的聚合信息,以及基于所述目标图谱中至少两条有向边共享的节点的信息和所述至少两条有向边对应的相邻类型信息确定的附加信息,确定所述目标图谱中是否包括异常的节点和/或有向边。
[0106]
本说明书实施例中,所述邻域信息获取模块402,将所述目标图谱输入到训练训练的图神经网络gnn模型中,通过所述gnn模型,并基于所述目标图谱,获取所述目标图谱中的每个节点的内邻域信息和外邻域信息,以及获取所述目标图谱中的每条有向边的内邻域信息和外邻域信息;
[0107]
所述聚合模块403,通过所述gnn模型,基于所述目标图谱中的每个节点的内邻域信息和外邻域信息分别与相应的节点的信息进行聚合处理,得到每个节点的聚合信息,并通过所述gnn模型,基于所述目标图谱中的每条有向边的内邻域信息和外邻域信息分别与相应的有向边的信息进行聚合处理,得到每条有向边的聚合信息;
[0108]
所述异常确定模块404,通过所述gnn模型,基于所述每个节点的聚合信息和所述每条有向边的聚合信息,确定所述目标图谱中是否包括异常的节点和/或有向边。
[0109]
本说明书实施例中,所述gnn模型由一个或多个transformer块构成,所述transformer块基于所述目标图谱中的每条有向边的倍增注意力信息和所述目标图谱中的每个节点的信息确定。
[0110]
本说明书实施例中,所述目标图谱中的每条有向边的倍增注意力信息基于与相应的节点相关联的时间戳信息和与所述有向边相关联的时间戳信息确定。
[0111]
本说明书实施例中,所述装置还包括:
[0112]
时间获取模块,获取与所述有向边相关联的时间戳信息,以及获取与相应的节点相关联的时间戳信息;
[0113]
时间差确定模块,基于所述与所述有向边相关联的时间戳信息和与相邻有向边相关联的时间戳信息中时间戳的最小值,确定所述有向边对应的第一时间差,并基于所述有向边的两个节点中每个节点相关联的时间戳信息,确定所述有向边的两个节点对应的第二时间差;
[0114]
信息确定模块,基于所述第一时间差和所述第二时间差,确定所述目标图谱中的每条有向边的倍增注意力信息。
[0115]
本说明书实施例中,所述异常确定模块404,包括:
[0116]
剪枝单元,基于预设的剪枝策略对所述每个节点的聚合信息和所述每条有向边的聚合信息进行削减处理,得到剪枝后的聚合信息;
[0117]
异常确定单元,基于剪枝后的聚合信息,确定所述目标图谱中是否包括异常的节点和/或有向边。
[0118]
本说明书实施例提供一种图谱的处理装置,通过获取待处理的目标图谱,目标图谱中包括节点和有向边,然后,基于目标图谱,获取目标图谱中的每个节点的内邻域信息和外邻域信息,以及获取目标图谱中的每条有向边的内邻域信息和外邻域信息,基于目标图谱中的每个节点的内邻域信息和外邻域信息分别与相应的节点的信息进行聚合处理,得到每个节点的聚合信息,并基于目标图谱中的每条有向边的内邻域信息和外邻域信息分别与相应的有向边的信息进行聚合处理,得到每条有向边的聚合信息,最终,基于每个节点的聚合信息和每条有向边的聚合信息,确定目标图谱中是否包括异常的节点和/或有向边,这样,通过设计基于内邻域信息和外邻域信息的双向带对偶增强的消息传播协议bimpnn-de来系统性地捕获有向多边图中的方向信息、多条有向边的信息以及有向边与有向边之间的关系,从而形成对复杂网络同时输出点边表征的建模体系,此外,还提供了一个具体的图网络架构grande,并将其拓展到动态图,从而使得取得有向多边图的处理得到很好的效果,提高了有向多边图的处理效率和灵活性。
[0119]
实施例五
[0120]
以上为本说明书实施例提供的图谱的处理装置,基于同样的思路,本说明书实施例还提供一种图谱的处理设备,如图5所示。
[0121]
所述图谱的处理设备可以为上述实施例提供终端设备或服务器等。
[0122]
图谱的处理设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上的处理器501和存储器502,存储器502中可以存储有一个或一个以上存储应用程序或数据。其中,存储器502可以是短暂存储或持久存储。存储在存储器502的应用程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括对图谱的处理设备中的一系列计算机可执行指令。更进一步地,处理器501可以设置为与存储器502通信,在图谱的处理设备上执行存储器502中的一系列计算机可执行指令。图谱的处理设备还可以包括一个或一个以上电源503,一个或一个以上有线或无线网络接口504,一个或一个以上输入输出接口505,一个或一个以上键盘506。
[0123]
具体在本实施例中,图谱的处理设备包括有存储器,以及一个或一个以上的程序,其中一个或者一个以上程序存储于存储器中,且一个或者一个以上程序可以包括一个或一个以上模块,且每个模块可以包括对图谱的处理设备中的一系列计算机可执行指令,且经配置以由一个或者一个以上处理器执行该一个或者一个以上程序包含用于进行以下计算机可执行指令:
[0124]
获取待处理的目标图谱,所述目标图谱中包括节点和有向边;
[0125]
基于所述目标图谱,获取所述目标图谱中的每个节点的内邻域信息和外邻域信息,以及获取所述目标图谱中的每条有向边的内邻域信息和外邻域信息;
[0126]
基于所述目标图谱中的每个节点的内邻域信息和外邻域信息分别与相应的节点的信息进行聚合处理,得到每个节点的聚合信息,并基于所述目标图谱中的每条有向边的内邻域信息和外邻域信息分别与相应的有向边的信息进行聚合处理,得到每条有向边的聚合信息;
[0127]
基于所述每个节点的聚合信息和所述每条有向边的聚合信息,确定所述目标图谱
中是否包括异常的节点和/或有向边。
[0128]
本说明书实施例中,所述基于所述每个节点的聚合信息和所述每条有向边的聚合信息,确定所述目标图谱中是否包括异常的节点和/或有向边,包括:
[0129]
基于所述每个节点的聚合信息和所述每条有向边的聚合信息,以及基于所述目标图谱中至少两条有向边共享的节点的信息和所述至少两条有向边对应的相邻类型信息确定的附加信息,确定所述目标图谱中是否包括异常的节点和/或有向边。
[0130]
本说明书实施例中,所述基于所述目标图谱,获取所述目标图谱中的每个节点的内邻域信息和外邻域信息,以及获取所述目标图谱中的每条有向边的内邻域信息和外邻域信息,包括:
[0131]
将所述目标图谱输入到训练训练的图神经网络gnn模型中,通过所述gnn模型,并基于所述目标图谱,获取所述目标图谱中的每个节点的内邻域信息和外邻域信息,以及获取所述目标图谱中的每条有向边的内邻域信息和外邻域信息;
[0132]
所述基于所述目标图谱中的每个节点的内邻域信息和外邻域信息分别与相应的节点的信息进行聚合处理,得到每个节点的聚合信息,并基于所述目标图谱中的每条有向边的内邻域信息和外邻域信息分别与相应的有向边的信息进行聚合处理,得到每条有向边的聚合信息,包括:
[0133]
通过所述gnn模型,基于所述目标图谱中的每个节点的内邻域信息和外邻域信息分别与相应的节点的信息进行聚合处理,得到每个节点的聚合信息,并通过所述gnn模型,基于所述目标图谱中的每条有向边的内邻域信息和外邻域信息分别与相应的有向边的信息进行聚合处理,得到每条有向边的聚合信息;
[0134]
所述基于所述每个节点的聚合信息和所述每条有向边的聚合信息,确定所述目标图谱中是否包括异常的节点和/或有向边,包括:
[0135]
通过所述gnn模型,基于所述每个节点的聚合信息和所述每条有向边的聚合信息,确定所述目标图谱中是否包括异常的节点和/或有向边。
[0136]
本说明书实施例中,所述gnn模型由一个或多个transformer块构成,所述transformer块基于所述目标图谱中的每条有向边的倍增注意力信息和所述目标图谱中的每个节点的信息确定。
[0137]
本说明书实施例中,所述目标图谱中的每条有向边的倍增注意力信息基于与相应的节点相关联的时间戳信息和与所述有向边相关联的时间戳信息确定。
[0138]
本说明书实施例中,还包括:
[0139]
获取与所述有向边相关联的时间戳信息,以及获取与相应的节点相关联的时间戳信息;
[0140]
基于所述与所述有向边相关联的时间戳信息和与相邻有向边相关联的时间戳信息中时间戳的最小值,确定所述有向边对应的第一时间差,并基于所述有向边的两个节点中每个节点相关联的时间戳信息,确定所述有向边的两个节点对应的第二时间差;
[0141]
基于所述第一时间差和所述第二时间差,确定所述目标图谱中的每条有向边的倍增注意力信息。
[0142]
本说明书实施例中,所述基于所述每个节点的聚合信息和所述每条有向边的聚合信息,确定所述目标图谱中是否包括异常的节点和/或有向边,包括:
[0143]
基于预设的剪枝策略对所述每个节点的聚合信息和所述每条有向边的聚合信息进行削减处理,得到剪枝后的聚合信息;
[0144]
基于剪枝后的聚合信息,确定所述目标图谱中是否包括异常的节点和/或有向边。
[0145]
本说明书实施例提供一种图谱的处理设备,通过获取待处理的目标图谱,目标图谱中包括节点和有向边,然后,基于目标图谱,获取目标图谱中的每个节点的内邻域信息和外邻域信息,以及获取目标图谱中的每条有向边的内邻域信息和外邻域信息,基于目标图谱中的每个节点的内邻域信息和外邻域信息分别与相应的节点的信息进行聚合处理,得到每个节点的聚合信息,并基于目标图谱中的每条有向边的内邻域信息和外邻域信息分别与相应的有向边的信息进行聚合处理,得到每条有向边的聚合信息,最终,基于每个节点的聚合信息和每条有向边的聚合信息,确定目标图谱中是否包括异常的节点和/或有向边,这样,通过设计基于内邻域信息和外邻域信息的双向带对偶增强的消息传播协议bimpnn-de来系统性地捕获有向多边图中的方向信息、多条有向边的信息以及有向边与有向边之间的关系,从而形成对复杂网络同时输出点边表征的建模体系,此外,还提供了一个具体的图网络架构grande,并将其拓展到动态图,从而使得取得有向多边图的处理得到很好的效果,提高了有向多边图的处理效率和灵活性。
[0146]
实施例六
[0147]
进一步地,基于上述图1到图3所示的方法,本说明书一个或多个实施例还提供了一种存储介质,用于存储计算机可执行指令信息,一种具体的实施例中,该存储介质可以为u盘、光盘、硬盘等,该存储介质存储的计算机可执行指令信息在被处理器执行时,能实现以下流程:
[0148]
获取待处理的目标图谱,所述目标图谱中包括节点和有向边;
[0149]
基于所述目标图谱,获取所述目标图谱中的每个节点的内邻域信息和外邻域信息,以及获取所述目标图谱中的每条有向边的内邻域信息和外邻域信息;
[0150]
基于所述目标图谱中的每个节点的内邻域信息和外邻域信息分别与相应的节点的信息进行聚合处理,得到每个节点的聚合信息,并基于所述目标图谱中的每条有向边的内邻域信息和外邻域信息分别与相应的有向边的信息进行聚合处理,得到每条有向边的聚合信息;
[0151]
基于所述每个节点的聚合信息和所述每条有向边的聚合信息,确定所述目标图谱中是否包括异常的节点和/或有向边。
[0152]
本说明书实施例中,所述基于所述每个节点的聚合信息和所述每条有向边的聚合信息,确定所述目标图谱中是否包括异常的节点和/或有向边,包括:
[0153]
基于所述每个节点的聚合信息和所述每条有向边的聚合信息,以及基于所述目标图谱中至少两条有向边共享的节点的信息和所述至少两条有向边对应的相邻类型信息确定的附加信息,确定所述目标图谱中是否包括异常的节点和/或有向边。
[0154]
本说明书实施例中,所述基于所述目标图谱,获取所述目标图谱中的每个节点的内邻域信息和外邻域信息,以及获取所述目标图谱中的每条有向边的内邻域信息和外邻域信息,包括:
[0155]
将所述目标图谱输入到训练训练的图神经网络gnn模型中,通过所述gnn模型,并基于所述目标图谱,获取所述目标图谱中的每个节点的内邻域信息和外邻域信息,以及获
取所述目标图谱中的每条有向边的内邻域信息和外邻域信息;
[0156]
所述基于所述目标图谱中的每个节点的内邻域信息和外邻域信息分别与相应的节点的信息进行聚合处理,得到每个节点的聚合信息,并基于所述目标图谱中的每条有向边的内邻域信息和外邻域信息分别与相应的有向边的信息进行聚合处理,得到每条有向边的聚合信息,包括:
[0157]
通过所述gnn模型,基于所述目标图谱中的每个节点的内邻域信息和外邻域信息分别与相应的节点的信息进行聚合处理,得到每个节点的聚合信息,并通过所述gnn模型,基于所述目标图谱中的每条有向边的内邻域信息和外邻域信息分别与相应的有向边的信息进行聚合处理,得到每条有向边的聚合信息;
[0158]
所述基于所述每个节点的聚合信息和所述每条有向边的聚合信息,确定所述目标图谱中是否包括异常的节点和/或有向边,包括:
[0159]
通过所述gnn模型,基于所述每个节点的聚合信息和所述每条有向边的聚合信息,确定所述目标图谱中是否包括异常的节点和/或有向边。
[0160]
本说明书实施例中,所述gnn模型由一个或多个transformer块构成,所述transformer块基于所述目标图谱中的每条有向边的倍增注意力信息和所述目标图谱中的每个节点的信息确定。
[0161]
本说明书实施例中,所述目标图谱中的每条有向边的倍增注意力信息基于与相应的节点相关联的时间戳信息和与所述有向边相关联的时间戳信息确定。
[0162]
本说明书实施例中,还包括:
[0163]
获取与所述有向边相关联的时间戳信息,以及获取与相应的节点相关联的时间戳信息;
[0164]
基于所述与所述有向边相关联的时间戳信息和与相邻有向边相关联的时间戳信息中时间戳的最小值,确定所述有向边对应的第一时间差,并基于所述有向边的两个节点中每个节点相关联的时间戳信息,确定所述有向边的两个节点对应的第二时间差;
[0165]
基于所述第一时间差和所述第二时间差,确定所述目标图谱中的每条有向边的倍增注意力信息。
[0166]
本说明书实施例中,所述基于所述每个节点的聚合信息和所述每条有向边的聚合信息,确定所述目标图谱中是否包括异常的节点和/或有向边,包括:
[0167]
基于预设的剪枝策略对所述每个节点的聚合信息和所述每条有向边的聚合信息进行削减处理,得到剪枝后的聚合信息;
[0168]
基于剪枝后的聚合信息,确定所述目标图谱中是否包括异常的节点和/或有向边。
[0169]
本说明书实施例提供一种存储介质,通过获取待处理的目标图谱,目标图谱中包括节点和有向边,然后,基于目标图谱,获取目标图谱中的每个节点的内邻域信息和外邻域信息,以及获取目标图谱中的每条有向边的内邻域信息和外邻域信息,基于目标图谱中的每个节点的内邻域信息和外邻域信息分别与相应的节点的信息进行聚合处理,得到每个节点的聚合信息,并基于目标图谱中的每条有向边的内邻域信息和外邻域信息分别与相应的有向边的信息进行聚合处理,得到每条有向边的聚合信息,最终,基于每个节点的聚合信息和每条有向边的聚合信息,确定目标图谱中是否包括异常的节点和/或有向边,这样,通过设计基于内邻域信息和外邻域信息的双向带对偶增强的消息传播协议bimpnn-de来系统性
地捕获有向多边图中的方向信息、多条有向边的信息以及有向边与有向边之间的关系,从而形成对复杂网络同时输出点边表征的建模体系,此外,还提供了一个具体的图网络架构grande,并将其拓展到动态图,从而使得取得有向多边图的处理得到很好的效果,提高了有向多边图的处理效率和灵活性。
[0170]
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
[0171]
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(programmable logic device,pld)(例如现场可编程门阵列(field programmable gate array,fpga))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片pld上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(hardware description language,hdl),而hdl也并非仅有一种,而是有许多种,如abel(advanced boolean expression language)、ahdl(altera hardware description language)、confluence、cupl(cornell university programming language)、hdcal、jhdl(java hardware description language)、lava、lola、myhdl、palasm、rhdl(ruby hardware description language)等,目前最普遍使用的是vhdl(very-high-speed integrated circuit hardware description language)与verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
[0172]
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(application specific integrated circuit,asic)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:arc 625d、atmel at91sam、microchip pic18f26k20以及silicone labs c8051f320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
[0173]
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
[0174]
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书一个或多个实施例时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
[0175]
本领域内的技术人员应明白,本说明书的实施例可提供为方法、系统、或计算机程序产品。因此,本说明书一个或多个实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书一个或多个实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0176]
本说明书的实施例是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程欺诈案例的串并设备的处理器以产生一个机器,使得通过计算机或其他可编程欺诈案例的串并设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0177]
这些计算机程序指令也可存储在能引导计算机或其他可编程欺诈案例的串并设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0178]
这些计算机程序指令也可装载到计算机或其他可编程欺诈案例的串并设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0179]
在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
[0180]
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。内存是计算机可读介质的示例。
[0181]
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算
机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
[0182]
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
[0183]
本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书一个或多个实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书一个或多个实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0184]
本说明书一个或多个实施例可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书一个或多个实施例,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
[0185]
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0186]
以上所述仅为本说明书的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本说明书可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书的权利要求范围之内。