CN117313141A - 一种异常检测方法、装置、设备及可读存储介质 - Google Patents
一种异常检测方法、装置、设备及可读存储介质 Download PDFInfo
- Publication number
- CN117313141A CN117313141A CN202311147658.0A CN202311147658A CN117313141A CN 117313141 A CN117313141 A CN 117313141A CN 202311147658 A CN202311147658 A CN 202311147658A CN 117313141 A CN117313141 A CN 117313141A
- Authority
- CN
- China
- Prior art keywords
- detected
- target
- abnormality detection
- nodes
- moment
- 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
- 238000001514 detection method Methods 0.000 title claims abstract description 249
- 238000003860 storage Methods 0.000 title claims abstract description 21
- 230000005856 abnormality Effects 0.000 title claims description 116
- 230000002159 abnormal effect Effects 0.000 claims abstract description 113
- 238000013528 artificial neural network Methods 0.000 claims description 73
- 238000000034 method Methods 0.000 claims description 56
- 238000012549 training Methods 0.000 claims description 43
- 238000000605 extraction Methods 0.000 claims description 30
- 238000004590 computer program Methods 0.000 claims description 16
- 230000004931 aggregating effect Effects 0.000 claims description 11
- 238000010586 diagram Methods 0.000 abstract description 16
- 230000008859 change Effects 0.000 abstract description 10
- 230000008569 process Effects 0.000 description 14
- 230000006870 function Effects 0.000 description 13
- 230000004927 fusion Effects 0.000 description 12
- 238000012546 transfer Methods 0.000 description 11
- 230000006872 improvement Effects 0.000 description 9
- 230000002776 aggregation Effects 0.000 description 8
- 238000004220 aggregation Methods 0.000 description 8
- 238000013145 classification model Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 6
- 238000012512 characterization method Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 208000001613 Gambling Diseases 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000004900 laundering Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 229920001296 polysiloxane Polymers 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000010979 ruby Substances 0.000 description 1
- 229910001750 ruby Inorganic materials 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/86—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using syntactic or structural representations of the image or video pattern, e.g. symbolic string recognition; using graph matching
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Bioethics (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- Mathematical Physics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本说明书公开了一种异常检测方法、装置、设备及可读存储介质,确定在异常检测时刻包含待检测对象的目标拓扑图,根据目标拓扑图中与待检测对象通过边连接的邻居节点、待检测对象以及待检测对象与邻居节点之间的边,确定待检测对象的目标特征,基于待检测对象的目标特征,确定待检测对象在异常检测时刻的异常检测结果。基于在异常检测时刻的目标拓扑图确定待检测对象的目标特征,利用随时间变化的邻居节点的信息,以及随时间变化的待检测对象与邻居节点之间的边的信息,汇总动态变化的图结构和时序信息,从而得到待检测对象在异常检测时刻的异常检测结果,从而基于异常检测结果判断待检测对象是否存在异常,保证了线上业务和隐私数据的安全性。
Description
技术领域
本说明书涉及计算机技术领域,尤其涉及一种异常检测方法、装置、设备及可读存储介质。
背景技术
随着人们对隐私数据关注度的提高,以及人工智能技术的快速发展,线上业务得到了快速的发展和广泛的关注。用户可以通过业务平台与其他业务对象进行线上业务。但是,如果用户与参与过异常业务的业务对象进行线上业务,用户的线上业务可能会受到影响。因此,业务平台可以预先对业务对象进行异常检测,及时识别出参与过异常业务的业务对象,从而为用户进行风险预警,提升用户进行线上业务的安全性。
基于此,本说明书提供一种异常检测方法。
发明内容
本说明书提供一种异常检测方法、装置、设备及可读存储介质,以部分的解决现有技术存在的上述问题。
本说明书采用下述技术方案:
本说明书提供了一种异常检测方法,包括:
响应于异常检测请求,获取待检测对象以及异常检测时刻;
确定在所述异常检测时刻包含所述待检测对象的目标拓扑图,所述目标拓扑图中各节点分别对应于各业务对象,所述各节点之间的边用于表征在所述异常检测时刻之前所述各业务对象之间存在业务关系,在不同异常检测时刻的目标拓扑图不完全相同;
根据所述目标拓扑图中与所述待检测对象通过边连接的邻居节点、所述待检测对象以及所述待检测对象与所述邻居节点之间的边,确定所述待检测对象的目标特征;
根据所述待检测对象的目标特征,得到所述待检测对象在所述异常检测时刻的异常检测结果。
本说明书提供了一种异常检测装置,包括:
获取模块,用于响应于异常检测请求,获取待检测对象以及异常检测时刻;
目标拓扑图确定模块,用于确定在所述异常检测时刻包含所述待检测对象的目标拓扑图,所述目标拓扑图中各节点分别对应于各业务对象,所述各节点之间的边用于表征在所述异常检测时刻之前所述各业务对象之间存在业务关系,在不同异常检测时刻的目标拓扑图不完全相同;
目标特征确定模块,用于根据所述目标拓扑图中与所述待检测对象通过边连接的邻居节点、所述待检测对象以及所述待检测对象与所述邻居节点之间的边,确定所述待检测对象的目标特征;
异常检测结果确定模块,用于根据所述待检测对象的目标特征,得到所述待检测对象在所述异常检测时刻的异常检测结果。本说明书提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述异常检测方法。本说明书提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述异常检测方法。
本说明书采用的上述至少一个技术方案能够达到以下有益效果:
本说明书提供的异常检测方法中,确定在异常检测时刻包含待检测对象的目标拓扑图,根据目标拓扑图中与待检测对象通过边连接的邻居节点、待检测对象以及待检测对象与邻居节点之间的边,确定待检测对象的目标特征,从而基于待检测对象的目标特征,确定待检测对象在异常检测时刻的异常检测结果。基于在异常检测时刻的目标拓扑图确定待检测对象的目标特征,能够利用随时间变化的邻居节点的信息,以及随时间变化的待检测对象与邻居节点之间的边的信息,汇总目标拓扑图表征的动态变化的图结构和时序信息,从而得到待检测对象在异常检测时刻的异常检测结果,从而基于异常检测结果判断待检测对象是否存在异常,保证了线上业务和隐私数据的安全性。
附图说明
此处所说明的附图用来提供对本说明书的进一步理解,构成本说明书的一部分,本说明书的示意性实施例及其说明用于解释本说明书,并不构成对本说明书的不当限定。在附
图中:
图1为本说明书中一种异常检测方法的流程示意图;
图2为本说明书中一种目标拓扑图的示意图;
图3为本说明书中一种异常检测方法的流程示意图;
图4为本说明书中一种异常检测方法的流程示意图;
图5为本说明书提供的一种异常检测装置的示意图;
图6为本说明书提供的对应于图1的电子设备示意图。
具体实施方式
为使本说明书的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本说明书技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本说明书保护的范围。另外,需要说明的是,本说明书中所有获取信号、信息或数据的动作都是在遵照所在地相应的数据保护法规政策的前提下,并获得由相应装置所有者给予授权的情况下进行的。以下结合附图,详细说明本说明书各实施例提供的技术方案。
图1为本说明书提供的一种异常检测方法的流程示意图。
S100:响应于异常检测请求,获取待检测对象以及异常检测时刻。
本说明书实施例中提供的一种异常检测方法,该方法的执行过程可由对待检测对象进行异常检测的服务器等电子设备执行。另外,对于执行该异常检测请求中,所涉及到的异常检测模型,执行其预先训练过程的电子设备和执行异常检测方法的电子设备可以相同也可以不同,本说明书对此不做限定。
在计算机技术中,拓扑图能够用于表征出节点之间的关系,通过特征聚合,聚合各节点的邻居节点的信息,并结合节点自身的信息确定出节点的特征,从而能够将拓扑图应用到用户风控等各种业务场景中。例如,通过拓扑图能够表示各账户之间的资金流动关系、账户之间的设备共用关系、账户的持有人之间的关系等。
在本说明书中,待检测对象以及目标拓扑图中的节点对应的业务对象可以是用户或者用户的账户。基于业务对象可以构建的拓扑图中不同的节点对应于不同的业务对象,各节点之间的边用于表示各业务对象之间的业务关系,如各账户之间的资金往来关系,各账户之间操作设备的共用关系。本说明书实施例以业务对象为用户的账户,业务关系为资金往来关系为例,对具体的技术方案进行阐述。
另外,在本说明书实施例中,为了进一步丰富待检测对象的目标特征的所表征的信息,在静态的目标拓扑图的基础上增加了时间维度,构建动态的目标拓扑图,使其能够在表征复杂的图结构(节点以及节点之间的关系)之外,还能够表征时序信息,并且,动态的目标拓扑图所包含的节点和节点之间的边所对应的属性和数量会随着时间的变化而产生变化。在某一时刻的目标拓扑图中各节点以及各节点之间的边均包含了时序信息,例如,当t1时刻的目标拓扑图中节点为用户的账户时,则该节点表征了在t1时刻下用户的账户信息,该节点与其他节点之间的边表征了在t1时刻之前用户的账户与其他账户之间发生的资金往来。
由于本说明书实施例中基于包含了时间维度的动态的目标拓扑图对待检测对象进行异常检测,因此当服务器接收到异常检测请求后,可基于该异常检测请求确定待检测对象以及异常检测时刻。其中,该待检测对象可以是需要进行异常检测的用户或者账户。异常检测时刻是针对待检测对象进行异常检测的时间,该异常检测时刻可以是当前时刻之前的任一时刻。服务器根据待检测对象还可以获取到该待检测对象的属性信息,如账户的资金流水、账户的开户行、账户的持有人信息等。
S102:确定在所述异常检测时刻包含所述待检测对象的目标拓扑图,所述目标拓扑图中各节点分别对应于各业务对象,所述各节点之间的边用于表征在所述异常检测时刻之前所述各业务对象之间存在业务关系,在不同异常检测时刻的目标拓扑图不完全相同。具体的,异常检测时刻下包含待检测对象的目标拓扑图可以是,在异常检测时刻下以待检测对象为中心,根据待检测对象与其他业务对象之间的业务关系延伸得到的,也可以是从异常检测时刻下包含待检测对象的大规模拓扑图中分割得到的,本说明书对此目标拓扑图包含的节点的数量和边的数量不做限定,但目标拓扑图中至少包含待检测对象。在异常检测时刻下的目标拓扑图中,各节点分别表征异常检测时刻下的各业务对象,各节点之间的边分别表征在异常检测时刻之前,各业务对象之间的业务关系,或者是各节点之间发生的业务事件。由于目标拓扑图中,节点的属性、节点的数量、节点之间的边的数量以及边的属性均有可能随着时间的变化而变化,因此,不同时刻下的目标拓扑图的图结构不完全相同,因此,需要在步骤S100基于异常检测请求,确定异常检测时刻,从而才能应用异常检测时刻下的目标拓扑图确定待检测对象的异常检测结果。
需要注意的是,异常检测时刻下的目标拓扑图中包含的边,实际上各节点在异常检测时刻之前就已经存在业务关系,也相当于,目标拓扑图表征了通过边相连的两个业务对象之间在异常检测时刻之前发生的业务事件。随着时间的变化,目标拓扑图中的边可以增加,即业务对象之间发生了新的业务事件,目标拓扑图中的边也可以减少,即将发生时间比较久的业务时间从目标拓扑图中移除。
S104:根据所述目标拓扑图中与所述待检测对象通过边连接的邻居节点、所述待检测对象以及所述待检测对象与所述邻居节点之间的边,确定所述待检测对象的目标特征。具体的,待检测对象的目标特征可以基于待检测对象本身的信息、邻居节点的信息,以及待检测对象与邻居节点之间的边的信息确定。
在此步骤中,可分别获取目标拓扑图中待检测对象的信息、与待检测对象通过边连接的邻居节点的信息以及待检测对象与邻居节点之间的边的信息,之后,基于前述三者分别确定待检测对象的初始特征、邻居节点的初始特征以及待检测对象与邻居节点之间的边的特征,进而进行特征融合以得到待检测对象的目标特征。特征融合的方式可以是拼接、加权融合等现有的任意融合方式,本说明书对此不做限定。
在本说明书中,目标拓扑图中节点对应的业务对象的信息可以是业务对象本身的属性信息,也可以是业务对象所涉及的业务的数据。例如,对于业务对象为账户的情况,业务对象的信息可以是账户的开户行、使用账户的电子设备的类型、账户持有人的身份信息、账户的注册地等业务对象本身的属性信息。还可以是账户专用于对公业务、专用于私人理财业务、社保账户、工资账户等业务对象所涉及的业务的数据。
根据待检测对象的信息确定待检测对象的特征的方式可以是人工构建结构化特征、通过预先训练的神经网络进行特征提取等现有的任一特征提取的方式,本说明书对此不做限定。邻居节点的特征以及边的特征的确定方式同理。并且,在本说明书实施例中,由于目标拓扑图包含的节点和边都含有异常检测时刻的时序信息,因此,前述基于待检测对象的信息确定待检测对象的特征,相当于是基于异常检测时刻下的待检测对象的信息,确定异常检测时刻下待检测对象的特征,邻居节点的特征以及边的特征同理。从而基于异常检测时刻下待检测对象的特征、异常检测时刻下邻居节点的特征以及异常检测时刻下边的特征,确定异常检测时刻下待检测对象的目标特征。
例如,图2左图为t2时刻下的目标拓扑图,右图为t3时刻下的目标拓扑图,二者不完全相同,但都包含了灰色节点表征的待检测对象,由于不同时刻下的目标拓扑图的图结构不相同,待检测对象的邻居节点发生了变化,并且待检测对象和邻居节点之间的边也发生了变化,因此,基于t2时刻下的目标拓扑图确定的待检测对象的目标特征,与基于t3时刻下的目标拓扑图确定的待检测对象的目标特征存在差异。
另外,此步骤还可以通过迭代的方式实现,具体的,根据待检测对象的信息确定待检测对象的初始特征,根据邻居节点的信息确定邻居节点的初始特征,根据待检测对象与一个或多个邻居节点之间的一个或多个边的信息,确定边表征的业务关系对应的目标事件,根据目标事件的信息确定目标事件的特征,并且根据用于表征目标事件的发生时间的时间戳,将目标事件按照发生时间从前至后排列构建事件序列。将待检测对象的初始特征、邻居节点的初始特征以及时间序列中位于末尾的目标事件的特征融合,得到待检测对象的目标特征,判断待检测对象的目标特征是否满足预设条件,若否,则从事件序列中查找当前融合所采用的目标事件的上一个目标事件,并基于重新确定的目标事件和当前融合得到目标特征重新得到的待检测对象的目标特征,直到待检测对象的目标特征满足预设条件。S106:根据所述待检测对象的目标特征,得到所述待检测对象在所述异常检测时刻的异常检测结果。
异常检测时刻下待检测对象的目标特征综合了待检测对象本身的信息、待检测对象的邻居节点的信息,以及待检测对象与邻居节点之间边的信息,因此,基于待检测对象的目标特征,得到待检测对象在异常检测时刻的异常检测结果,从而以该异常检测结果为依据确定待检测对象是否存在异常,进而根据该异常检测结果,对待检测对象进行处理。具体的,可在数据库中预先存储多个业务对象在不同时刻的特征和业务对象在不同时刻的异常检测结果的对应关系,当确定了待检测对象在异常检测时刻的目标特征时,可基于该目标特征与数据库中预存的各特征之间的相似度,查询得到与待检测对象相似的业务对象,进而,基于与待检测对象相似的业务对象的异常检测结果,确定待检测对象的异常检测结果。也可以基于神经网络的方法,以待检测对象的目标特征作为输入,通过神经网络得到待检测对象在异常检测时刻的异常检测结果。还可以基于待检测对象的目标特征,通过聚类的方法,得到待检测对象在异常检测时刻的异常检测结果。根据不同的应用场景,可以通过不同的方案基于目标特征得到异常检测结果,本说明书对此不做限定。本说明提供的异常检测方法中,确定在异常检测时刻包含待检测对象的目标拓扑图,根据目标拓扑图中与待检测对象通过边连接的邻居节点、待检测对象以及待检测对象与邻居节点之间的边,确定待检测对象的目标特征,从而基于待检测对象的目标特征,确定待检测对象在异常检测时刻的异常检测结果。
可见,基于在异常检测时刻的目标拓扑图确定待检测对象的目标特征,能够利用随时间变化的邻居节点的信息,以及随时间变化的待检测对象与邻居节点之间的边的信息,汇总目标拓扑图表征的动态变化的图结构和时序信息,从而得到待检测对象在异常检测时刻的异常检测结果,从而基于异常检测结果判断待检测对象是否存在异常,保证了线上业务的安全性。
在本说明书一个或多个实施例中,如图1步骤S104确定待检测对象的特征中,由于目标拓扑图所表征的图结构中包含了在异常检测时刻下,待检测对象的邻居节点以及待检测对象与邻居节点之间的边,因此,可以基于异常检测时刻下待检测对象与邻居节点之间的边所表征的信息,提升待检测对象的目标特征的维度。具体方案如下,如图3所示:S200:获取所述待检测对象的初始特征,以及与所述待检测对象通过边连接的邻居节点的初始特征。
具体的,可根据待检测对象的信息,通过人工构建结构化特征、通过预先训练的神经网络进行特征提取等现有的任一特征提取的方式,确定待检测对象的初始特征。其中,待检测对象的信息所包含的内容与前述步骤S104类似,此处不再赘述。同理,邻居节点的初始特征的确定方式与待检测对象的初始特征的确定方式类似。
需要注意的是,由于目标拓扑图是动态的,因此,待检测对象的信息可能会随时间的变化而发生变化,因此,在此步骤中,实际上是基于异常检测时刻下待检测对象的信息,确定的异常检测时刻下待检测对象的初始特征,以及基于异常检测时刻下邻居节点的信息,确定异常检测时刻下,邻居节点的初始特征。随着待检测对象的信息和/或邻居节点的信息的改变,待检测对象的初始特征和/或邻居节点的初始特征也会随之变化。因此,不同异常检测时刻的待检测对象的初始特征不完全相同,同理,不同异常检测时刻的邻居节点的初始特征不完全相同。
S202:根据所述待检测对象与所述邻居节点之间的边,确定所述边表征的业务关系对应的目标事件。
具体的,目标拓扑图中的边表征了两个业务对象之间在异常检测时刻之前存在业务关系,该业务关系可以是通过边相连的两个业务对象之间发生了业务事件。例如,账户A和账户B在异常检测时刻之前存在从账户A向账户B转账的转账事件,则在异常检测时刻的目标图谱图中账户A对应的节点和账户B对应的节点之间会通过边相连,并且基于该边的信息可以确定边表征的业务关系是从账户A向账户B转账的转账事件。
由此,在此步骤中,可基于待检测对象与邻居节点之间的边的信息,确定边表征的业务关系对应的目标事件,该目标事件是由待检测对象与邻居节点对应的业务对象共同参与的,并且,该目标事件的发生时刻在异常检测时刻之前,至于该目标事件的发生时刻具体为何时,需要基于该边的信息确定。
在实际应用中,待检测对象的邻居节点的数量可以是一个或多个,待检测对象与一个邻居节点之间的边的数量也可以是一个或多个,不同的边代表了待检测对象与邻居节点共同参与的不同业务事件,每个边对应的业务事件的发生时刻可以相同也可以不同,本说明书对此均不做限定。
S204:获取所述目标事件的时间戳,以及确定所述目标事件的属性特征。具体的,根据待检测对象与邻居节点之间边的信息,可以确定边对应的目标事件的信息,其中包括目标事件的时间戳、事件类型、文本备注、事件执行方式等。其中,目标事件的时间戳用于指示目标事件的发生时刻。在实际应用中,待检测对象参与的业务事件的发生时刻可能会指示该业务事件是否涉及异常业务。例如,当正常账户通常在白天执行转账事件时,异常账户会在夜间频繁执行转账事件,或者正常账户执行转账事件的时刻不规律的分布在不同时刻,而异常账户会在固定时刻执行转账事件。因此,目标事件的时间戳所指示的目标事件的事件特征尤为重要。
另外,根据目标事件的信息中除目标事件的时间戳之外的信息,确定目标事件的属性特征,确定特征的方式与确定待检测对象的初始特征的方式类似,此处不再赘述。以待检测对象为账户A,邻居节点也为账户B,目标事件为账户A向账户B转账的转账事件为例,异常检测时刻为ty时刻,目标事件的时间戳是tx时刻,其中tx时刻在ty时刻之前,目标事件的信息可包括tx时刻、事件类型为转账、文本备注为账户A备注的转账用途、事件执行方式为电子银行转账,当然还可以包括转账金额等信息。
S206:聚合所述待检测对象的初始特征、所述邻居节点的初始特征、所述目标事件的时间戳以及所述目标事件的属性特征,确定所述待检测对象的目标特征。
具体的,可以将待检测对象的初始特征、邻居节点的初始特征、目标事件的时间戳和目标事件的属性特征进行特征融合,得到待检测对象的目标特征,特征融合的方式可以是现有的如拼接、加权融合等任一特征融合的方式,本说明书对此不做限定。这样,待检测对象的目标特征中不仅包含了待检测对象本身的信息,还包含了与待检测对象存在业务关系的邻居节点的信息,以及待检测对象在异常检测时刻之前执行过的目标事件的时间信息以及属性信息。从而,待检测对象的目标特征包含了多维度的信息,能够较为准确的反映异常检测下的待检测对象。
另外,上述步骤S206也可以是迭代的过程,可以采用预先训练的异常检测模型实现,具体方案如下:
首先,从所述目标拓扑图中查找所述待检测对象对应的各事件,并根据所述各事件分别对应的时间戳以及所述目标事件的时间戳,确定所述目标事件的时间特征。
本说明书实施例中,除了可以利用目标事件的时间戳所指示的目标事件的发生时刻确定目标事件的事件特征,还可以基于目标事件的时间戳,与待检测对象执行过的其他各事件分别对应的时间戳,确定目标事件在待检测对象执行过的其他各事件中的时序信息。具体的,在异常检测时刻的目标拓扑图中查找待检测对象对应的各边,基于查找到的各边的信息,确定待检测对象在异常检测时刻之前执行的各事件。分别获取各事件的时间戳,按照发生时刻从前至后的顺序,将各事件进行排列得到事件序列,根据目标事件的时间戳,确定目标事件在事件序列中的位置,并基于该位置以及目标事件的时间戳,确定目标事件的事件特征。
另外,根据目标事件的时间戳和事件序列,还可以确定目标事件的发生时刻与事件序列中位于首位的事件的发生时刻之间的时差,并将该时差也引入目标事件的时间特征中,这是因为,该时差能够表征待检测对象执行事件的频率和是时序信息,是仅通过目标事件的时间戳无法直接得到的。
其次,将所述待检测对象的初始特征、所述邻居节点的初始特征、所述目标事件的时间特征以及所述目标事件的属性特征输入所述特征提取网络,通过所述特征提取网络包括的第一层图神经网络,将所述待检测对象的初始特征、所述邻居节点的初始特征、所述目标事件的属性特征以及所述目标事件的时间特征进行聚合,得到所述第一层图神经网络输出的所述待检测对象的目标特征。
具体的,本说明书实施例中采用的异常检测模型确定待检测对象的目标特征,并进而以待检测对象的目标特征为依据确定待检测对象的异常检测结果。
具体的,本说明书所涉及异常检测模型用于识别待检测对象是否存在异常风险,相当于,该异常检测模型用于确定待检测对象所执行的业务是否包含不正常的交易业务。异常检测模型包括特征提取网络和分类网络,异常检测模型的输入包括目标拓扑图以及目标拓扑图中各节点的信息,因此,异常检测模型中的特征提取网络可以是基于的图神经网络(Graph Neural Networks,GNN)构建的、用于特征聚合的神经网络,分类网络是基于特征聚合后的待检测对象的目标特征进行异常检测(分类)的神经网络。该异常检测模型涉及的GNN技术可以包括现有的任一图神经网络技术,如图卷积神经网络(Graph ConvolutionNeural Networks,GCNNs)和图注意力网络(Graph attention networks,GAT),本说明书对此不做限定。
其中,异常检测模型可以是二分类模型,可以是多分类模型,这取决于异常检测模型包含的用于异常检测(分类)的分类网络是何种类型的神经网络,如softmax用于二分类模型,sigmoid用于多分类模型,本说明书对此不做限定。
由此,异常检测模型输出的待检测对象的异常检测结果可以是待检测对象存在异常,或者待检测对象不存在异常,也可以是不存在异常或者具体的异常类型(欺诈类型、洗钱类型、赌博类型等)。
特征提取网络可包括多层图神经网络,每一层图神经网络的都可以基于输入的特征进行特征聚合,得到更为丰富的待检测对象的特征。其中,对于特征提取网络的第一层图神经网络而言,第一层图神经网络的输入为待检测对象的初始特征、邻居节点的初始特征、目标事件的时间特征以及所述目标事件的属性特征,第一层图神经网络会将输入的各类特征进行特征传播以及聚合,得到第一层图神经网络输出的待检测对象的目标特征。然后,针对所述第一层图神经网络之后的每层图神经网络,通过该层图神经网络,将该层图神经网络的上一层图神经网络输出的所述邻居节点的目标特征、所述目标事件的属性特征以及所述目标事件的时间特征进行聚合,得到所述待检测对象的中间特征。对于特征提取网络的第一层图神经网络之后的每层图神经网络而言,为了实现待检测对象的目标特征不断迭代聚合的目的,该层图神经网络的输入与第一层图神经网络的输入不完全相同,该层图神经网络的输入包括该层图神经网络的上一层图神经网络的输出,以及所述目标事件的属性特征以及所述目标事件的时间特征。并且,由于特征提取网络的输入是目标拓扑图,因此,特征提取网络的每一层图神经网络会输出目标拓扑图的每个节点的目标特征,并非仅仅针对待检测对象,因此,对于特征提取网络的第一层图神经网络之后的每层图神经网络,该层图神经网络的上一层图神经网络的输出,可以包括邻居节点的目标特征,以及待检测对象的目标特征。
因此,在此步骤中,首先对上一层图神经网络输出的所述邻居节点的目标特征、所述目标事件的属性特征以及所述目标事件的时间特征进行聚合,得到待检测对象的中间特征。一种可选的得到待检测对象的中间特征的公式如下:
其中,是异常检测时刻ty下特征提取网络的第k层图神经网络确定的待检测对象的中间特征,AGG(k)是第k层图神经网络的聚合操作,vj∈P(vi,ty)是待检测对象vi在异常检测时刻ty下的邻居节点,/>是第k-1层图神经网络输出的邻居节点的目标特征,xij是待检测对象和邻居节点之间的边对应的目标事件的属性特征,/>是目标事件的时间特征。
最后,将该层图神经网络输出的所述待检测对象的中间特征,与该层图神经网络的上一层图神经网络输出的所述待检测对象的目标特征进行融合,得到该层图神经网络输出的所述待检测对象的目标特征。
进而通过将该层图神经网络聚合得到的待检测对象的中间特征,与上一层图神经网络输出的待检测对象的目标特征进行特征融合,得到该层图神经网络输出的待检测对象的目标特征。
一种可选地特征融合公式如下:
其中,是异常检测时刻ty下特征提取网络的第k层图神经网络输出的待检测对象的目标特征,/>是异常检测时刻ty下特征提取网络的第k-1层图神经网络输出的待检测对象的目标特征。
从而,经过多层图神经网络的传播和聚合,最终可以得到特征提取网络输出的待检测对象的目标特征。
进一步的,由于预先训练的异常检测模型除了包括用于提取待检测对象的目标特征的特征提取网络之外,还包括分类网络,因此,可基于特征提取网络输出的待检测对象的目标特征,通过分类网络得到待检测对象在异常检测时刻的异常检测结果,具体如下:
第一步:将所述待检测对象的目标特征输入所述异常检测模型的分类网络,得到所述待检测对象的异常概率。
如前所述,异常检测模型可以是二分类模型,可以是多分类模型,这取决于异常检测模型包含的用于异常检测(分类)的分类网络是何种类型的神经网络,如softmax用于二分类模型,sigmoid用于多分类模型。
由此,异常检测模型输出的待检测对象的异常检测结果可以是待检测对象存在异常,或者待检测对象不存在异常,也可以是不存在异常或者具体的异常类型(欺诈类型、洗钱类型、赌博类型等)。
具体的,分类网络可以就与待检测对象的目标特征输出待检测对象属于预设的各类别的概率,例如,当分类网络是二分类网络时,分类网络可输出待检测对象属于异常的概率为p,相应的待检测对象属于正常的概率为(1-p)。当分类网络是多分类网络时,分类网络可输出待检测对象分别属于各预设类别(正常以及多个异常类型)的概率。
下述以二分类为例,对具体的技术方案进行阐述。
第二步:当所述待检测对象的异常概率高于预设概率阈值,确定所述待检测对象在所述异常检测时刻的异常检测结果为异常。
可预先设置概率阈值,该概率阈值可基于先验人工设置,也可以基于异常检测时刻或目标拓扑图的图结果类型动态设置,本说明书对预设概率阈值的具体数值和设置方式不做限定。
如果待检测对象的异常概率高于预设概率阈值,则说明待检测对象在异常检测时刻存在异常的概率较高,因此,确定所述待检测对象在所述异常检测时刻的异常检测结果为异常,并反馈给用户,以便用户及时风控,避免出现业务风险。
第三步:当所述待检测对象的异常概率不高于预设概率阈值,确定所述待检测对象在所述异常检测时刻的异常检测结果为正常。
如果待检测对象的异常概率不高于预设概率阈值,则说明待检测对象在异常检测时刻存在异常的概率较低,因此,确定所述待检测对象在所述异常检测时刻的异常检测结果为正常。
在本说明书一个或多个实施例中,前述方案所采用的异常检测模型可通过下述步骤迭代训练得到,如图4所示:
S300:获取各历史时刻分别对应的参考拓扑图,所述参考拓扑图中不同节点分别对应于不同业务对象,各节点之间的边用于表征在所述各历史时刻之前各业务对象之间存在业务关系,不同历史时刻分别对应的参考拓扑图不完全相同。
具体的,各历史时刻分别对应的参考拓扑图与前述步骤S100获取的异常检测时刻的目标拓扑图类似。不同历史时刻的参考拓扑图所包含的节点以及边可以不完全相同,也可以完全不同,本说明书对此不做限定。
S302:针对每个历史时刻,将该历史时刻对应的参考拓扑图输入待训练的异常检测模型,通过所述异常检测模型的特征提取网络,得到该历史时刻对应的参考拓扑图包含的各节点在该历史时刻的目标特征。
具体的,在待训练的异常检测模型的一次训练过程中,可采用多个历史时刻的参考拓扑图作为训练样本,训练样本所包含的节点可以存在标签,也可以不存在标签,也即,训练样本中的节点可以是异常节点、正常节点或者是无标节点。
通过特征提取网络得到各节点在该历史时刻的目标特征的方式与前述基于特征提取网络得到待检测对象的目标特征的方式类似,此处不再赘述。
S304:将所述各节点在该历史时刻的目标特征输入所述异常检测模型的分类网络,得到所述分类网络输出的所述各节点在该历史时刻的异常概率。
此步骤与前述通过分类网络得到待检测对象在异常检测时刻的异常概率类似,此处不再赘述。
S306:根据所述各节点在该历史时刻的异常概率,生成所述各节点对应的伪标签。具体的,由于作为训练样本的各历史时刻的参考拓扑图中存在有标的异常节点和正常节点,以及无标节点,即,不是所有节点都存在标签,无法直接基于有监督学习的方式训练异常检测模型。为此,本说明书实施例中,采用生成伪标签的方法,在每一次迭代训练的过程中,基于异常检测模型输出的训练样本包含的各节点在相应的历史时刻的异常概率,为每个节点赋予伪标签,从而基于伪标签确定损失,以训练异常检测模型。生成伪标签的方法可以是基于人工先验设置一个或多个概率阈值,将属于同一概率区间的节点赋予相同的伪标签的阈值法,也可以是基于少数有标节点的异常概率和无标节点的异常概率之间的差异进行聚类的方法等任意现有的伪标签生成方法,本说明书对此不做限定。
需要说明的,可以对训练样本中各节点均赋予伪标签,也可以仅针对各节点中的无标节点赋予伪标签,这可以根据具体的应用场景动态确定,本说明书对此不做限定。可选地,根据所述各节点在该历史时刻的异常概率,分别确定所述各节点在该历史时刻的异常概率之间的差异,将所述差异小于预设差异阈值的各节点作为属于同一异常检测结果的节点,将所述差异不小于所述预设差异阈值的各节点作为属于不同异常检测结果的节点,根据所述各节点分别所属的异常检测结果,确定所述各节点对应的伪标签。在该方案中,利用异常概率之间的差异,对各节点进行聚类,将属于同一类的各节点赋予相同的伪标签,将属于不同类型的各节点赋予不同的伪标签。其中预设差异阈值可以根据先验人工设置,本说明书对预设差异阈值的具体数值不做限定。
S308:以具有相同伪标签的各节点在该历史时刻的目标特征之间的差异的最小化为训练目标,训练所述异常检测模型。
根据具有相同伪标签的各节点在该历史时刻的目标特征之间的差异确定损失,以损失的最小化为训练目标训练异常检测模型,确定损失所采用的损失函数可以现有的任意类型的损失函数,本说明书对此不做限定。
在本说明书一个可选地实施例中,在如图3步骤S308中,除了以具有相同伪标签的各节点在该历史时刻的目标特征之间的差异的最小化为训练目标,训练所述异常检测模型,还可以在训练目标中引入其他历史时刻下节点的历史异常概率,从而使得异常检测模型能够更好的区分异常样本和无标样本,具体方案如下:
第一步:获取该历史时刻的参考拓扑图包含的各节点中部分目标节点对应的实际标签。在此步骤中,各节点中部分目标节点实际上是有标的节点,目标节点可以是标签为正常的正常节点,也可以是标签为异常的异常节点。
第二步:从预先部署的记忆组件查找若干历史异常概率,所述记忆组件用于存储该历史时刻之前的历史时刻对应的参考拓扑图中实际标签为正常的节点的历史异常概率以及无标签的节点的历史异常概率。
在服务器中可部署有记忆组件,该记忆组件中可存储异常检测模型在每一次迭代训练的过程中,异常检测模型输出的正常节点的历史异常概率和无标节点的历史异常概率,并在存储时为每个历史异常概率标注相对应的历史时刻,从而,在当前训练的过程中,可以基于当前训练之前的训练过程中存储的历史异常概率,和当前训练过程模型输出的历史异常概率之间的差异进行训练,由于记忆组件中存储的是正常节点的历史异常概率和无标节点的历史异常概率,这样可以让模型学习到将正常节点和特征明显偏离正常节点的异常节点区分的能力。
基于此,在此步骤中,从预先部署的记忆组件查找若干历史异常概率,查找的方式可以是根据存储的历史异常概率的历史时刻作为权重进行采样,也可以是随机采样,本说明书对此不做限定。
第三步:根据所述查找的历史异常概率对应的历史时刻与该历史时刻之间的差异,确定时间偏移权重。
另外,由于记忆组件中存储的历史异常概率都有相对应的历史时刻,历史异常概率对应的历史时刻可以是在当前训练过程中采用的训练样本对应的历史时刻之前。为了使得时间距离越近的历史异常概率对当前训练所起到的作用越大,可以基于查找的历史异常概率对应的历史时刻与该历史时刻之间的差异,确定时间偏移权重。查找的历史异常概率对应的历史时刻与该历史时刻之间的差异越小,时间偏移权重越大,从而使得时间距离越近的历史异常概率获得更高的时间偏移权重,以更好地利用到训练样本中的时间隐含信息。一种可选的时间偏移权重确定公式如下:
其中,t是当前训练样本对应的历史时刻,ti是查找到的历史异常概率对应的历史时刻。第四步:根据所述目标节点的异常概率与所述历史异常概率之间的差异,以及所述时间偏移权重,确定第一损失。
进一步的,采用偏差损失,使得模型的训练目标中包含在异常概率的空间中区分出正常节点和特征明显偏离正常节点的异常节点的目标。为此,可先确定目标节点的异常概率与查找到的历史异常概率之间的差异。进而,根据目标节点的异常概率与查找到的历史异常概率之间的差异,通过现有的任意类型的损失函数,确定第一损失。
基于此,在上述步骤S308时可根据具有相同伪标签的各节点在该历史时刻的目标特征之间的差异确定第二损失,分别获取所述第一损失对应的第一权重和所述第二损失对应的第二权重。根据所述第一权重和所述第二权重,对所述第一损失和所述第二损失加权求和,得到总损失,并以所述总损失最小化为训练目标,训练所述异常检测模型。图5为本说明书提供的一种异常检测装置示意图,具体包括:
获取模块400,用于响应于异常检测请求,获取待检测对象以及异常检测时刻;目标拓扑图确定模块402,用于确定在所述异常检测时刻包含所述待检测对象的目标拓扑图,所述目标拓扑图中各节点分别对应于各业务对象,所述各节点之间的边用于表征在所述异常检测时刻之前所述各业务对象之间存在业务关系,在不同异常检测时刻的目标拓扑图不完全相同;
目标特征确定模块404,用于根据所述目标拓扑图中与所述待检测对象通过边连接的邻居节点、所述待检测对象以及所述待检测对象与所述邻居节点之间的边,确定所述待检测对象的目标特征;
异常检测结果确定模块406,用于根据所述待检测对象的目标特征,得到所述待检测对象在所述异常检测时刻的异常检测结果。
可选地,所述目标特征确定模块404具体用于,获取所述待检测对象的初始特征,以及与所述待检测对象通过边连接的邻居节点的初始特征;根据所述待检测对象与所述邻居节点之间的边,确定所述边表征的业务关系对应的目标事件;获取所述目标事件的时间戳,以及确定所述目标事件的属性特征;聚合所述待检测对象的初始特征、所述邻居节点的初始特征、所述目标事件的时间戳以及所述目标事件的属性特征,确定所述待检测对象的目标特征。
可选地,预先训练的异常检测模型包括特征提取网络和分类网络,所述特征提取网络包括多层图神经网络;
可选地,所述目标特征确定模块404具体用于,从所述目标拓扑图中查找所述待检测对象对应的各事件,并根据所述各事件分别对应的时间戳以及所述目标事件的时间戳,确定所述目标事件的时间特征;将所述待检测对象的初始特征、所述邻居节点的初始特征、所述目标事件的时间特征以及所述目标事件的属性特征输入所述特征提取网络,通过所述特征提取网络包括的第一层图神经网络,将所述待检测对象的初始特征、所述邻居节点的初始特征、所述目标事件的属性特征以及所述目标事件的时间特征进行聚合,得到所述第一层图神经网络输出的所述待检测对象的目标特征;针对所述第一层图神经网络之后的每层图神经网络,通过该层图神经网络,将该层图神经网络的上一层图神经网络输出的所述邻居节点的目标特征、所述目标事件的属性特征以及所述目标事件的时间特征进行聚合,得到所述待检测对象的中间特征;将该层图神经网络输出的所述待检测对象的中间特征,与该层图神经网络的上一层图神经网络输出的所述待检测对象的目标特征进行融合,得到该层图神经网络输出的所述待检测对象的目标特征。
可选地,所述异常检测结果确定模块406具体用于,将所述待检测对象的目标特征输入所述异常检测模型的分类网络,得到所述待检测对象的异常概率;当所述待检测对象的异常概率高于预设概率阈值,确定所述待检测对象在所述异常检测时刻的异常检测结果为异常;当所述待检测对象的异常概率不高于预设概率阈值,确定所述待检测对象在所述异常检测时刻的异常检测结果为正常。
可选地,所述装置还包括:
训练模块408,具体用于获取各历史时刻分别对应的参考拓扑图,所述参考拓扑图中不同节点分别对应于不同业务对象,各节点之间的边用于表征在所述各历史时刻之前各业务对象之间存在业务关系,不同历史时刻分别对应的参考拓扑图不完全相同;针对每个历史时刻,将该历史时刻对应的参考拓扑图输入待训练的异常检测模型,通过所述异常检测模型的特征提取网络,得到该历史时刻对应的参考拓扑图包含的各节点在该历史时刻的目标特征;将所述各节点在该历史时刻的目标特征输入所述异常检测模型的分类网络,得到所述分类网络输出的所述各节点在该历史时刻的异常概率;根据所述各节点在该历史时刻的异常概率,生成所述各节点对应的伪标签;以具有相同伪标签的各节点在该历史时刻的目标特征之间的差异的最小化为训练目标,训练所述异常检测模型。
可选地,所述训练模块408具体用于,根据所述各节点在该历史时刻的异常概率,分别确定所述各节点在该历史时刻的异常概率之间的差异;将所述差异小于预设差异阈值的各节点作为属于同一异常检测结果的节点,将所述差异不小于所述预设差异阈值的各节点作为属于不同异常检测结果的节点;根据所述各节点分别所属的异常检测结果,确定所述各节点对应的伪标签。
可选地,所述训练模块408具体用于,获取该历史时刻的参考拓扑图包含的各节点中部分目标节点对应的实际标签;从预先部署的记忆组件查找若干历史异常概率,所述记忆组件用于存储该历史时刻之前的历史时刻对应的参考拓扑图中实际标签为正常的节点的历史异常概率以及无标签的节点的历史异常概率;根据所述查找的历史异常概率对应的历史时刻与该历史时刻之间的差异,确定时间偏移权重;根据所述目标节点的异常概率与所述历史异常概率之间的差异,以及所述时间偏移权重,确定第一损失;
可选地,所述训练模块408具体用于,根据具有相同伪标签的各节点在该历史时刻的目标特征之间的差异确定第二损失;分别获取所述第一损失对应的第一权重和所述第二损失对应的第二权重;根据所述第一权重和所述第二权重,对所述第一损失和所述第二损失加权求和,得到总损失,并以所述总损失最小化为训练目标,训练所述异常检测模型。本说明书还提供了一种计算机可读存储介质,该存储介质存储有计算机程序,计算机程序可用于执行上述图1所示的异常检测方法。
本说明书还提供了图6所示的电子设备的示意结构图。如图6所述,在硬件层面,该电子设备包括处理器、内部总线、网络接口、内存以及非易失性存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,以实现上述图1所示的异常检测方法。当然,除了软件实现方式之外,本说明书并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。在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 UniversityProgramming 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。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本说明书的实施例可提供为方法、系统、或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本说明书的实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书的权利要求范围之内。
Claims (10)
1.一种异常检测方法,所述方法包括:
响应于异常检测请求,获取待检测对象以及异常检测时刻;
确定在所述异常检测时刻包含所述待检测对象的目标拓扑图,所述目标拓扑图中各节点分别对应于各业务对象,所述各节点之间的边用于表征在所述异常检测时刻之前所述各业务对象之间存在业务关系,在不同异常检测时刻的目标拓扑图不完全相同;
根据所述目标拓扑图中与所述待检测对象通过边连接的邻居节点、所述待检测对象以及所述待检测对象与所述邻居节点之间的边,确定所述待检测对象的目标特征;
根据所述待检测对象的目标特征,得到所述待检测对象在所述异常检测时刻的异常检测结果。
2.如权利要求1所述的方法,根据所述目标拓扑图中与所述待检测对象通过边连接的邻居节点、所述待检测对象以及所述待检测对象与所述邻居节点之间的边,确定所述待检测对象的目标特征,具体包括:
获取所述待检测对象的初始特征,以及与所述待检测对象通过边连接的邻居节点的初始特征;
根据所述待检测对象与所述邻居节点之间的边,确定所述边表征的业务关系对应的目标事件;
获取所述目标事件的时间戳,以及确定所述目标事件的属性特征;
聚合所述待检测对象的初始特征、所述邻居节点的初始特征、所述目标事件的时间戳以及所述目标事件的属性特征,确定所述待检测对象的目标特征。
3.如权利要求2所述的方法,预先训练的异常检测模型包括特征提取网络和分类网络,所述特征提取网络包括多层图神经网络;
聚合所述待检测对象的初始特征、所述邻居节点的初始特征、所述目标事件的时间戳以及所述目标事件的属性特征,确定所述待检测对象的目标特征,具体包括:
从所述目标拓扑图中查找所述待检测对象对应的各事件,并根据所述各事件分别对应的时间戳以及所述目标事件的时间戳,确定所述目标事件的时间特征;
将所述待检测对象的初始特征、所述邻居节点的初始特征、所述目标事件的时间特征以及所述目标事件的属性特征输入所述特征提取网络,通过所述特征提取网络包括的第一层图神经网络,将所述待检测对象的初始特征、所述邻居节点的初始特征、所述目标事件的属性特征以及所述目标事件的时间特征进行聚合,得到所述第一层图神经网络输出的所述待检测对象的目标特征;
针对所述第一层图神经网络之后的每层图神经网络,通过该层图神经网络,将该层图神经网络的上一层图神经网络输出的所述邻居节点的目标特征、所述目标事件的属性特征以及所述目标事件的时间特征进行聚合,得到所述待检测对象的中间特征;
将该层图神经网络输出的所述待检测对象的中间特征,与该层图神经网络的上一层图神经网络输出的所述待检测对象的目标特征进行融合,得到该层图神经网络输出的所述待检测对象的目标特征。
4.如权利要求3所述的方法,根据所述待检测对象的目标特征,得到所述待检测对象在所述异常检测时刻的异常检测结果,具体包括:
将所述待检测对象的目标特征输入所述异常检测模型的分类网络,得到所述待检测对象的异常概率;
当所述待检测对象的异常概率高于预设概率阈值,确定所述待检测对象在所述异常检测时刻的异常检测结果为异常;
当所述待检测对象的异常概率不高于预设概率阈值,确定所述待检测对象在所述异常检测时刻的异常检测结果为正常。
5.如权利要求3所述的方法,预先训练异常检测模型,具体包括:
获取各历史时刻分别对应的参考拓扑图,所述参考拓扑图中不同节点分别对应于不同业务对象,各节点之间的边用于表征在所述各历史时刻之前各业务对象之间存在业务关系,不同历史时刻分别对应的参考拓扑图不完全相同;
针对每个历史时刻,将该历史时刻对应的参考拓扑图输入待训练的异常检测模型,通过所述异常检测模型的特征提取网络,得到该历史时刻对应的参考拓扑图包含的各节点在该历史时刻的目标特征;
将所述各节点在该历史时刻的目标特征输入所述异常检测模型的分类网络,得到所述分类网络输出的所述各节点在该历史时刻的异常概率;
根据所述各节点在该历史时刻的异常概率,生成所述各节点对应的伪标签;
以具有相同伪标签的各节点在该历史时刻的目标特征之间的差异的最小化为训练目标,训练所述异常检测模型。
6.如权利要求5所述的方法,根据所述各节点在该历史时刻的异常概率,生成所述各节点对应的伪标签,具体包括:
根据所述各节点在该历史时刻的异常概率,分别确定所述各节点在该历史时刻的异常概率之间的差异;
将所述差异小于预设差异阈值的各节点作为属于同一异常检测结果的节点,将所述差异不小于所述预设差异阈值的各节点作为属于不同异常检测结果的节点;
根据所述各节点分别所属的异常检测结果,确定所述各节点对应的伪标签。
7.如权利要求5所述的方法,所述方法还包括:
获取该历史时刻的参考拓扑图包含的各节点中部分目标节点对应的实际标签;
从预先部署的记忆组件查找若干历史异常概率,所述记忆组件用于存储该历史时刻之前的历史时刻对应的参考拓扑图中实际标签为正常的节点的历史异常概率以及无标签的节点的历史异常概率;
根据所述查找的历史异常概率对应的历史时刻与该历史时刻之间的差异,确定时间偏移权重;
根据所述目标节点的异常概率与所述历史异常概率之间的差异,以及所述时间偏移权重,确定第一损失;
以具有相同伪标签的各节点在该历史时刻的目标特征之间的差异的最小化为训练目标,训练所述异常检测模型,具体包括:
根据具有相同伪标签的各节点在该历史时刻的目标特征之间的差异确定第二损失;
分别获取所述第一损失对应的第一权重和所述第二损失对应的第二权重;
根据所述第一权重和所述第二权重,对所述第一损失和所述第二损失加权求和,得到总损失,并以所述总损失最小化为训练目标,训练所述异常检测模型。
8.一种异常检测装置,包括:
获取模块,用于响应于异常检测请求,获取待检测对象以及异常检测时刻;
目标拓扑图确定模块,用于确定在所述异常检测时刻包含所述待检测对象的目标拓扑图,所述目标拓扑图中各节点分别对应于各业务对象,所述各节点之间的边用于表征在所述异常检测时刻之前所述各业务对象之间存在业务关系,在不同异常检测时刻的目标拓扑图不完全相同;
目标特征确定模块,用于根据所述目标拓扑图中与所述待检测对象通过边连接的邻居节点、所述待检测对象以及所述待检测对象与所述邻居节点之间的边,确定所述待检测对象的目标特征;
异常检测结果确定模块,用于根据所述待检测对象的目标特征,得到所述待检测对象在所述异常检测时刻的异常检测结果。
9.一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述权利要求1~7任一项所述的方法。
10.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述权利要求1~7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311147658.0A CN117313141A (zh) | 2023-09-06 | 2023-09-06 | 一种异常检测方法、装置、设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311147658.0A CN117313141A (zh) | 2023-09-06 | 2023-09-06 | 一种异常检测方法、装置、设备及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117313141A true CN117313141A (zh) | 2023-12-29 |
Family
ID=89241633
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311147658.0A Pending CN117313141A (zh) | 2023-09-06 | 2023-09-06 | 一种异常检测方法、装置、设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117313141A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117574363A (zh) * | 2024-01-15 | 2024-02-20 | 杭州美创科技股份有限公司 | 数据安全事件检测方法、装置、计算机设备及存储介质 |
-
2023
- 2023-09-06 CN CN202311147658.0A patent/CN117313141A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117574363A (zh) * | 2024-01-15 | 2024-02-20 | 杭州美创科技股份有限公司 | 数据安全事件检测方法、装置、计算机设备及存储介质 |
CN117574363B (zh) * | 2024-01-15 | 2024-04-16 | 杭州美创科技股份有限公司 | 数据安全事件检测方法、装置、计算机设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111080304B (zh) | 一种可信关系识别方法、装置及设备 | |
CN110322349B (zh) | 一种数据的处理方法、装置及设备 | |
US11200381B2 (en) | Social content risk identification | |
CN109508879B (zh) | 一种风险的识别方法、装置及设备 | |
CN108596410B (zh) | 一种风控事件自动处理方法及装置 | |
CN111538794B (zh) | 一种数据融合方法、装置及设备 | |
CN110119860A (zh) | 一种垃圾账号检测方法、装置以及设备 | |
CN114943307B (zh) | 一种模型训练的方法、装置、存储介质以及电子设备 | |
US20230229738A1 (en) | Unsupervised anomaly detection machine learning frameworks | |
CN117313141A (zh) | 一种异常检测方法、装置、设备及可读存储介质 | |
CN113837635A (zh) | 风险检测处理方法、装置及设备 | |
CN115035347A (zh) | 图片识别方法、装置及电子设备 | |
CN116152933A (zh) | 一种异常检测模型的训练方法、装置、设备及存储介质 | |
CN116957329A (zh) | 一种风险识别方法、装置、设备及可读存储介质 | |
CN116757278B (zh) | 一种预测模型的训练方法、装置、存储介质及电子设备 | |
CN116308738B (zh) | 一种模型训练的方法、业务风控的方法及装置 | |
CN116468096B (zh) | 一种模型训练方法、装置、设备及可读存储介质 | |
CN116797231A (zh) | 一种风险识别模型的训练方法及装置 | |
CN115567371B (zh) | 一种异常检测方法、装置、设备及可读存储介质 | |
CN115564450B (zh) | 一种风控方法、装置、存储介质及设备 | |
CN116204838A (zh) | 一种异常业务识别的方法、装置、存储介质及电子设备 | |
CN116186298A (zh) | 信息检索方法和装置 | |
CN116052250A (zh) | 一种检测模型的训练方法、装置、设备及存储介质 | |
KR102282328B1 (ko) | Lstm을 이용한 국가별 선호도 예측 시스템 및 방법 | |
CN116340852B (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 |