CN112131320A - 异常数据的检测方法、装置及存储介质 - Google Patents
异常数据的检测方法、装置及存储介质 Download PDFInfo
- Publication number
- CN112131320A CN112131320A CN201910554476.2A CN201910554476A CN112131320A CN 112131320 A CN112131320 A CN 112131320A CN 201910554476 A CN201910554476 A CN 201910554476A CN 112131320 A CN112131320 A CN 112131320A
- Authority
- CN
- China
- Prior art keywords
- entity
- entities
- behavior
- sequence
- relationship network
- 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
- 230000002159 abnormal effect Effects 0.000 title claims abstract description 55
- 238000001514 detection method Methods 0.000 title claims abstract description 26
- 230000006399 behavior Effects 0.000 claims abstract description 386
- 230000003068 static effect Effects 0.000 claims abstract description 54
- 238000000034 method Methods 0.000 claims abstract description 48
- 238000012545 processing Methods 0.000 claims abstract description 6
- 238000012549 training Methods 0.000 claims description 28
- 230000008569 process Effects 0.000 claims description 9
- 230000002547 anomalous effect Effects 0.000 claims description 5
- 230000015654 memory Effects 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000005295 random walk Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 3
- 230000003542 behavioural effect Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000010998 test method Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 230000003116 impacting effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000012163 sequencing technique 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/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/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2465—Query processing support for facilitating data mining operations in structured databases
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Fuzzy Systems (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种异常数据的检测方法、装置及存储介质,属于数据处理技术领域。所述方法包括:获取待处理数据,所述待处理数据包括多个实体的行为信息和静态属性信息,每个实体的行为信息包括多种行为的行为标识和行为执行时间,基于多个实体的行为信息,确定多个实体中每个实体的至少一个行为序列,以及构建至少一个实体关系网,基于多个实体的静态属性信息和至少一个行为序列、以及至少一个实体关系网,确定多个实体中每个实体的联合特征,根据多个实体中每个实体的联合特征,检测待处理数据中的异常数据。如此,解决了现有技术中仅考虑数据的基本特征可能损失一部分信息,导致检测结果不准确的问题,进而提高了检测结果的准确率。
Description
技术领域
本申请涉及数据处理技术领域,特别涉及一种异常数据的检测方法、装置及存储介质。
背景技术
在大数据时代,从海量数据中发现规律,从而挖掘出潜藏的信息具有一定的意义。但由于数据错误或一些其他原因,数据库中可能存在一些异常数据,例如,海量数据中由于某实体(如用户)的误操作行为可能导致该实体的相关数据存在异常。为了避免对数据挖掘产生影响,通常需要检测出异常数据。
在相关技术中,对待处理数据进行异常数据检测时,可以获取该待处理数据包括的多个实体中每个实体的多源数据,分别从每个实体的多源数据中提取基本特征,基于每个实体的多源数据的基本特征,可以构建多棵孤立树,进而构建孤立森林模型,根据孤立森林模型可以检测出异常数据。
但在上述实现方式中,由于只考虑了每个实体的多源数据的基本特征,没有进一步挖掘数据之间的相互关系,因此,可能会损失一部分信息,导致检测结果不准确。
发明内容
本申请实施例提供了一种异常数据的检测方法、装置及存储介质,可以解决现有技术中仅考虑数据的基本特征可能损失一部分信息,导致检测结果不准确的问题。所述技术方案如下:
一方面,提供了一种异常数据的检测方法,所述方法包括:
获取待处理数据,所述待处理数据包括多个实体的行为信息和静态属性信息,每个实体的行为信息包括多种行为的行为标识和行为执行时间;
基于所述多个实体的行为信息,确定所述多个实体中每个实体的至少一个行为序列,以及构建至少一个实体关系网,每个行为序列包括所述多种行为中的至少两种行为的行为标识;
基于所述多个实体的静态属性信息和至少一个行为序列、以及所述至少一个实体关系网,确定所述多个实体中每个实体的联合特征;
根据所述多个实体中每个实体的联合特征,检测所述待处理数据中的异常数据。
在本申请一种可能的实现方式中,所述基于所述多个实体的行为信息,确定所述多个实体中每个实体的至少一个行为序列,包括:
对于所述多个实体中的任一实体,根据所述任一实体的多种行为的行为执行时间,按照行为先后执行顺序,对所述任一实体的多种行为的行为标识进行排序;
按照从前向后的顺序,将排序后的行为标识中每相邻的M个行为标识作为一个行为序列,得到所述任一实体的至少一个行为序列,所述至少一个行为序列中相邻的两个行为序列存在一个交叉行为标识。
在本申请一种可能的实现方式中,每个实体的行为信息还包括所述多种行为的行为特征,所述行为特征用于描述行为的行为属性和具体行为;
基于所述多个实体的行为信息,构建至少一个实体关系网,包括:
根据所述多个实体的行为特征,对所述多个实体进行分组,得到至少一组实体,每组实体包括N个实体,且属于同一组的N个实体的行为属性相同,所述N为大于1的整数;
对于所述至少一组实体中的任一组实体,根据所述任一组实体的行为特征,将所述任一组实体中具有相同行为的实体建立关联关系;
以所述任一组实体中的N个实体为节点、所建立的关联关系为边,构建所述任一组实体的实体关系网,得到所述至少一个实体关系网。
在本申请一种可能的实现方式中,当所述任一组实体的实体关系网中的每条边具有方向性时,所述以所述任一组实体中的N个实体为节点、所建立的关联关系为边,构建所述任一组实体的实体关系网,包括:
对于所述任一组实体的N个实体中的任意具有关联关系的第一实体和第二实体,当所述第一实体的行为执行时间小于所述第二实体的行为执行时间时,确定所述第一实体与所述第二实体之间边的方向是由所述第一实体指向所述第二实体;
当所述第一实体的行为执行时间大于所述第二实体的行为执行时间时,确定所述第一实体与所述第二实体之间边的方向是由所述第二实体指向所述第一实体;
以所述任一组实体中的N个实体为节点,根据所确定的所述N个实体中具有关联关系的所有实体之间的有向边,确定所述任一组实体的实体关系网。
在本申请一种可能的实现方式中,所述基于所述多个实体的静态属性信息和至少一个行为序列、以及所述至少一个实体关系网,确定所述多个实体中每个实体的联合特征,包括:
基于所述至少一个实体关系网,确定所述多个实体中每个实体的特征向量,每个实体的特征向量包括每个实体在所述至少一个实体关系网上与其他实体相邻的概率;
基于所述多个实体的静态属性信息、至少一个行为序列以及所述至少一个实体关系网,确定所述多个实体中每个实体的基础特征;
将所述多个实体中每个实体的特征向量与基础特征进行拼接,得到所述多个实体中每个实体的联合特征。
在本申请一种可能的实现方式中,所述基于所述至少一个实体关系网,确定所述多个实体中每个实体的特征向量,包括:
对于所述至少一个实体关系网中的任一实体关系网,在所述任一实体关系网上随机确定多个不同的遍历路径,在确定过程中所述任一实体关系网的每个实体都被遍历到;
遍历每个遍历路径中的实体,并按照先后遍历顺序将每个遍历路径中的实体组成有序序列,得到所述任一实体关系网对应的多个随机序列;
基于所述至少一个实体关系网对应的所有随机序列,确定所述多个实体中每个实体的特征向量。
在本申请一种可能的实现方式中,所述基于所述至少一个实体关系网对应的所有随机序列,确定所述多个实体中每个实体的特征向量,包括:
对于所述所有随机序列中的任一随机序列,遍历所述任一随机序列中的每个实体,将每个实体分别与前、后相邻且位于参考尺寸大小的窗口内的其他实体组成实体对,得到所述任一随机序列对应的多个实体对;
将所述所有随机序列对应的实体对输入至网络模型中进行训练;
当到达参考训练条件时,停止训练,并将所述每个实体输入至训练后的网络模型中,输出所述每个实体的特征向量。
在本申请一种可能的实现方式中,当所述任一组实体的实体关系网中的每条边具有方向性时,所述基于所述多个实体的静态属性信息、至少一个行为序列以及所述至少一个实体关系网,确定所述多个实体中每个实体的基础特征,包括:
从所述多个实体的静态属性信息中,提取每个实体的静态属性信息中的至少一个;
基于所述多个实体中每个实体的至少一个行为序列,统计每个实体的频次、比率和支持度中的至少一个,所述频次是指实体的参考行为在实体的至少一个行为序列中出现的总次数,所述比率是指实体的参考行为的频次与实体的至少一个行为序列包括的行为总数量之间的比值,所述支持度是指实体的至少一个行为序列中的参考行为序列在所述多个实体的至少一个行为序列中出现的比率;
基于所述至少一个实体关系网,提取每个实体关系网中每个实体的邻节点个数、出度和入度中的至少一个;
基于每个实体的静态属性信息中的至少一个,频次、比率和支持度中的至少一个,以及邻节点个数、出度和入度中的至少一个,确定每个实体的基础特征。
在本申请一种可能的实现方式中,所述根据所述多个实体中每个实体的联合特征,检测所述待处理数据中的异常数据,包括:
对于联合特征中的每种特征,获取所述每种特征在所述多个实体中的特征值;根据获取的特征值,确定所述每种特征的峰度值;
根据每种特征的峰度值,确定下四分位数;
对于所述联合特征中的任一特征,当所述任一特征的峰度值小于所述下四分位数时,从所述联合特征中删除所述任一特征;
基于删除后的联合特征,检测所述待处理数据中的异常数据。
另一方面,提供了一种异常数据的检测装置,所述装置包括:
获取模块,用于获取待处理数据,所述待处理数据包括多个实体的行为信息和静态属性信息,每个实体的行为信息包括多种行为的行为标识和行为执行时间;
第一确定模块,用于基于所述多个实体的行为信息,确定所述多个实体中每个实体的至少一个行为序列,以及构建至少一个实体关系网,每个行为序列包括所述多种行为中的至少两种行为的行为标识;
第二确定模块,用于基于所述多个实体的静态属性信息和至少一个行为序列、以及所述至少一个实体关系网,确定所述多个实体中每个实体的联合特征;
检测模块,用于根据所述多个实体中每个实体的联合特征,检测所述待处理数据中的异常数据。
在本申请一种可能的实现方式中,所述第一确定模块用于:
对于所述多个实体中的任一实体,根据所述任一实体的多种行为的行为执行时间,按照行为先后执行顺序,对所述任一实体的多种行为的行为标识进行排序;
按照从前向后的顺序,将排序后的行为标识中每相邻的M个行为标识作为一个行为序列,得到所述任一实体的至少一个行为序列,所述至少一个行为序列中相邻的两个行为序列存在一个交叉行为标识。
在本申请一种可能的实现方式中,每个实体的行为信息还包括所述多种行为的行为特征,所述行为特征用于描述行为的行为属性和具体行为;
所述第一确定模块用于:
根据所述多个实体的行为特征,对所述多个实体进行分组,得到至少一组实体,每组实体包括N个实体,且属于同一组的N个实体的行为属性相同,所述N为大于1的整数;
对于所述至少一组实体中的任一组实体,根据所述任一组实体的行为特征,将所述任一组实体中具有相同行为的实体建立关联关系;
以所述任一组实体中的N个实体为节点、所建立的关联关系为边,构建所述任一组实体的实体关系网,得到所述至少一个实体关系网。
在本申请一种可能的实现方式中,当所述任一组实体的实体关系网中的每条边具有方向性时,所述第一确定模块用于:
对于所述任一组实体的N个实体中的任意具有关联关系的第一实体和第二实体,当所述第一实体的行为执行时间小于所述第二实体的行为执行时间时,确定所述第一实体与所述第二实体之间边的方向是由所述第一实体指向所述第二实体;
当所述第一实体的行为执行时间大于所述第二实体的行为执行时间时,确定所述第一实体与所述第二实体之间边的方向是由所述第二实体指向所述第一实体;
以所述任一组实体中的N个实体为节点,根据所确定的所述N个实体中具有关联关系的所有实体之间的有向边,确定所述任一组实体的实体关系网。
在本申请一种可能的实现方式中,所述第二确定模块用于:
基于所述至少一个实体关系网,确定所述多个实体中每个实体的特征向量,每个实体的特征向量包括每个实体在所述至少一个实体关系网上与其他实体相邻的概率;
基于所述多个实体的静态属性信息、至少一个行为序列以及所述至少一个实体关系网,确定所述多个实体中每个实体的基础特征;
将所述多个实体中每个实体的特征向量与基础特征进行拼接,得到所述多个实体中每个实体的联合特征。
在本申请一种可能的实现方式中,所述第二确定模块用于:
对于所述至少一个实体关系网中的任一实体关系网,在所述任一实体关系网上随机确定多个不同的遍历路径,在确定过程中所述任一实体关系网的每个实体都被遍历到;
遍历每个遍历路径中的实体,并按照先后遍历顺序将每个遍历路径中的实体组成有序序列,得到所述任一实体关系网对应的多个随机序列;
基于所述至少一个实体关系网对应的所有随机序列,确定所述多个实体中每个实体的特征向量。
在本申请一种可能的实现方式中,所述第二确定模块用于:
对于所述所有随机序列中的任一随机序列,遍历所述任一随机序列中的每个实体,将每个实体分别与前、后相邻且位于参考尺寸大小的窗口内的其他实体组成实体对,得到所述任一随机序列对应的多个实体对;
将所述所有随机序列对应的实体对输入至网络模型中进行训练;
当到达参考训练条件时,停止训练,并将所述每个实体输入至训练后的网络模型中,输出所述每个实体的特征向量。
在本申请一种可能的实现方式中,当所述任一组实体的实体关系网中的每条边具有方向性时,所述第二确定模块用于:
从所述多个实体的静态属性信息中,提取每个实体的静态属性信息中的至少一个;
基于所述多个实体中每个实体的至少一个行为序列,统计每个实体的频次、比率和支持度中的至少一个,所述频次是指实体的参考行为在实体的至少一个行为序列中出现的总次数,所述比率是指实体的参考行为的频次与实体的至少一个行为序列包括的行为总数量之间的比值,所述支持度是指实体的至少一个行为序列中的参考行为序列在所述多个实体的至少一个行为序列中出现的比率;
基于所述至少一个实体关系网,提取每个实体关系网中每个实体的邻节点个数、出度和入度中的至少一个;
基于每个实体的静态属性信息中的至少一个,频次、比率和支持度中的至少一个,以及邻节点个数、出度和入度中的至少一个,确定每个实体的基础特征。
在本申请一种可能的实现方式中,所述检测模块用于:
对于联合特征中的每种特征,获取所述每种特征在所述多个实体中的特征值;根据获取的特征值,确定所述每种特征的峰度值;
根据每种特征的峰度值,确定下四分位数;
对于所述联合特征中的任一特征,当所述任一特征的峰度值小于所述下四分位数时,从所述联合特征中删除所述任一特征;
基于删除后的联合特征,检测所述待处理数据中的异常数据。
另一方面,提供了一种设备,所述设备包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为实现上述一方面所述的任一项方法的步骤。
另一方面,提供一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,所述指令被处理器执行时实现上述一方面所述的任一项方法的步骤。
另一方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述一方面所述的任一项方法的步骤。
本申请实施例提供的技术方案带来的有益效果是:
获取待处理数据,该待处理数据包括多个实体的行为信息和静态属性信息,如此,可以基于该多个实体的行为信息,确定该多个实体中每个实体的至少一个行为序列,以及构建至少一个实体关系网。每个实体的至少一个行为序列包括该每个实体的多种行为的行为标识和行为执行时间,即该每个实体的至少一个行为序列可以表示该每个实体的不同行为之间的关联关系,另外,该实体关系网可以表示各个实体之间的关联关系。之后,基于该多个实体的静态属性信息和至少一个行为序列、以及至少一个实体关系网,确定该多个实体中每个实体的联合特征,每个实体的联合特征可以表示数据之间的关联关系。如此,根据该多个实体中每个实体的联合特征,检测待处理数据中的异常数据,进一步挖掘了数据之间的相互关系,解决了现有技术中仅考虑数据的基本特征可能损失一部分信息,导致检测结果不准确的问题,进而提高了检测结果的准确率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据一示例性实施例示出的一种异常数据的检测方法流程图;
图2是根据另一示例性实施例示出的一种异常数据的检测方法流程图;
图3是根据一示例性实施例示出的一种有向的实体关系网;
图4是根据一示例性实施例示出的一种无向的实体关系网;
图5是根据另一示例性实施例示出的一种有向的实体关系网;
图6是根据另一示例性实施例示出的一种无向的实体关系网;
图7是根据一示例性实施例示出的一种孤立树;
图8是根据一示例性实施例示出的一种异常数据的检测装置的结构示意图;
图9是根据一示例性实施例示出的一种设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
首先,对本申请实施例涉及的实施环境予以说明。
本申请实施例提供的异常数据的检测方法可以由设备来执行。该设备可以获取待处理数据,并且基于待处理数据包括的多个实体的行为信息和静态属性信息,确定多个实体中每个实体的至少一个行为序列,以及构建至少一个实体关系网,基于多个实体的静态属性信息和至少一个行为序列、以及至少一个实体关系网,确定多个实体中每个实体的联合特征,进而根据该联合特征检测待处理数据中的异常数据。作为一种示例,该设备可以为终端,也可以为服务器,本申请实施例对此不做限定。
图1是根据一示例性实施例示出的一种异常数据的检测方法流程图,以该方法应用于上述实施环境中为例进行说明,该方法可以包括如下几个实现步骤:
步骤101:获取待处理数据,该待处理数据包括多个实体的行为信息和静态属性信息,每个实体的行为信息包括多种行为的行为标识和行为执行时间。
其中,静态属性信息可以包括一些相对不易发生变化的信息,例如,静态属性信息可以包括但不限于籍贯、身高、体重,本申请实施例对此不做限定。
其中,行为标识可以用于唯一指示一种行为,行为执行时间可以用于指示一种行为发生的时间。
在一些实施例中,由于一些原因,数据库中可能存在一些异常数据,为了检测异常数据,通常需要获取数据库中的一些数据,作为待处理数据,该待处理数据可以包括多个实体的相关数据。该多个实体的相关数据在数据库中进行存储时,可以根据每个实体的实体标识,将每个实体的实体标识与每个实体的相关数据对应存储。
作为一种示例,获取待处理数据时,可以获取多个实体中每个实体的实体标识,根据该多个实体中每个实体的实体标识,从数据库中获取该多个实体中每个实体对应的相关数据,将这些数据作为待处理数据。其中,实体标识用于唯一指示一个实体。
也就是说,在获取待处理数据时,可以根据该多个实体中每个实体的实体标识,从数据库中获取该多个实体中每个实体的实体标识对应的相关数据,将这些数据作为待处理数据。
进一步地,如图2所示,获取到待处理数据后,还可以对待处理数据进行预处理。也就是说,在获取到待处理数据后,可以对待处理数据进行数据清洗,去除待处理数据中的异常值,填充待处理数据中的缺失值等。
示例性地,假设实体1的数据中包括乘飞机这一行为的行为信息,但实际情况中,实体1并没有乘飞机,可以将乘飞机这一行为的行为信息去除。假设实体1的数据中缺少身高这一项数据,可以根据实体1的性别和年龄,确定与实体1性别相同、年龄相仿的其他实体的身高,将其他实体的身高的均值补充为实体1的身高数据。
进一步地,获取到待处理数据后,还可以对多个实体的静态属性信息进行分箱处理。示例性地,可以将多个实体按照年龄进行分组,可以将年龄为20~40岁的实体分为一组,年龄为41~60岁的实体分为一组,年龄为61~80岁的实体分为一组,在后续的孤立森林模型中,若选择年龄这一特征,可以按照该组别进行分组。
步骤102:基于多个实体的行为信息,确定该多个实体中每个实体的至少一个行为序列,每个行为序列包括多种行为中的至少两种行为的行为标识。
也就是说,对于多个实体中的任一实体,基于该任一实体的行为信息,可以确定该任一实体的至少一个行为序列,每个行为序列包括该任一实体的多种行为中的至少两种行为标识。
作为一种示例,对于多个实体中的任一实体,可以根据任一实体的多种行为的行为执行时间,按照行为先后执行顺序,对任一实体的多种行为的行为标识进行排序,按照从前向后的顺序,可以将排序后的行为标识中每相邻的M个行为标识作为一个行为序列,得到任一实体的至少一个行为序列,该至少一个行为序列中相邻的两个行为序列存在一个交叉行为标识。其中,M为大于1的整数,可以根据业务需要自行设置。
也就是说,由于每个实体的行为信息中包括多种行为的行为标识和行为执行时间,因此,对于多个实体中的任一实体,可以根据该任一实体的多种行为的行为执行时间,按照该多种行为的行为执行时间的先后顺序,将该任一实体的多种行为的行为标识进行排序,按照行为标识从前向后的顺序,将排序后的行为标识中每相邻的M个行为标识确定为一个行为序列,可以得到任一实体的至少一个行为序列,该至少一个行为序列中相邻的两个行为序列里,后一个行为序列的第一个行为标识可以为前一个行为序列的最后一个行为标识。
示例性地,假设多个实体中的任一实体包括5种行为,这5种行为的行为标识分别为A、B、C、D、E,行为A的行为执行时间为8:00、行为B的行为执行时间为9:20、行为C的行为执行时间为12:00、行为D的行为执行时间为16:00、行为E的行为执行时间为21:00,按照行为执行时间的先后顺序,可以得到该任一实体的多种行为的行为标识的排序ABCDE,假设M为2,可以得到该任一实体的行为序列为A-B、B-C、C-D和D-E,假设M为3,可以得到该任一实体的行为序列为A-B-C和C-D-E。
步骤103:基于多个实体的行为信息,构建至少一个实体关系网。
其中,每个实体的行为信息还包括多种行为的行为特征,该行为特征用于描述行为的行为属性和具体行为。示例性地,假设行为属性为乘坐飞机,具体行为可以为乘坐型号为A的飞机,再如,行为属性为打电话,具体行为可以为给用户C打电话。
为了更好地挖掘数据之间的相互关系,可以对多个实体之间的关联关系进行挖掘,即建立多个实体之间的关系网。在一些实施例中,基于多个实体的行为信息,构建至少一个实体关系网可以包括如下几个步骤:
(1)根据多个实体的行为特征,对多个实体进行分组,得到至少一组实体,每组实体包括N个实体,且属于同一组的N个实体的行为属性相同,N为大于1的整数。
也就是说,根据多个实体的行为属性,对多个实体进行分组,将行为属性相同的N个实体分为一组。
示例性地,实体1和实体2在上午乘坐了飞机,实体3和实体4在下午乘坐了飞机,实体5晚上给实体1打电话,由此可见实体1、实体2、实体3和实体4的行为属性均为乘坐飞机,而实体5的行为属性为打电话,因此,可以将实体1、实体2、实体3和实体4分为一组。
(2)对于至少一组实体中的任一组实体,根据任一组实体的行为特征,将任一组实体中具有相同行为的实体建立关联关系。
也就是说,对于至少一组实体中的任一组实体,确定该组实体中每个实体的具体行为,由于该组实体中可能有一些实体执行了相同的具体行为,所以可以认为执行了相同的具体行为的实体之间有关联关系,可以将该组实体中具体行为相同的实体建立关联关系。
示例性地,假设实体1、实体2、实体3和实体4为一组,针对具体行为来说,假设实体1和实体2上午乘坐同一班型号为A的飞机,实体2和实体3下午乘坐同一班型号为B的飞机,实体1和实体4下午乘坐同一班型号为C的飞机,可以将实体1和实体2建立关联关系,将实体2和实体3建立关联关系,将实体1和实体4建立关联关系。
(3)以任一组实体中的N个实体为节点、所建立的关联关系为边,构建任一组实体的实体关系网,得到至少一个实体关系网。
在一些实施例中,构建实体关系网时,可以建立无向的实体关系网,也可以建立有向的实体关系网。对于有向的实体关系网,可以根据实体的行为执行时间确定实体关系网中边的方向,进而得到有向的实体关系网。
作为一种示例,当任一组实体的实体关系网中的每条边具有方向性时,可以对于任一组实体的N个实体中的任意具有关联关系的第一实体和第二实体,当第一实体的行为执行时间小于第二实体的行为执行时间时,确定第一实体与第二实体之间边的方向是由第一实体指向第二实体;当第一实体的行为执行时间大于第二实体的行为执行时间时,确定第一实体与第二实体之间边的方向是由第二实体指向第一实体;以任一组实体中的N个实体为节点,根据所确定的N个实体中具有关联关系的所有实体之间的有向边,确定任一组实体的实体关系网。
也就是说,当需要建立有向的实体关系网时,可以根据任一组实体中建立了关联关系的任意第一实体和第二实体,比较第一实体的行为执行时间和第二实体的行为执行时间,按照行为执行时间的先后顺序,确定第一实体和第二实体之间的边的方向,即第一实体和第二实体之间的边的方向总是由行为执行时间在前的实体指向行为执行时间在后的实体,或者说,由行为执行时间较小的实体指向行为执行时间较大的实体。确定边的方向之后,可以以任一组实体中的N个实体为节点,将建立关联关系的实体用有向边连接起来,可以得到任一组实体的有向的实体关系网。
示例性地,参见图3,实体1、实体2、实体3和实体4为一组,实体1和实体2上午乘坐同一班型号为A的飞机,假设实体1上午8:12登机,实体2上午8:20登机,实体2和实体3下午乘坐同一班型号为B的飞机,假设实体2下午18:51登机,实体3下午18:45登机,实体1和实体4下午乘坐同一班型号为C的飞机,假设实体1下午17:25登机,实体4下午17:28登机;实体1和实体2建立了关联关系,且实体1的行为执行时间小于实体2的行为执行时间,可以确定实体1和实体2之间的边由实体1指向实体2,实体2和实体3建立了关联关系,且实体2的行为执行时间大于实体3的行为执行时间,可以确定实体2和实体3之间的边由实体3指向实体2,实体1和实体4建立了关联关系,且实体1的行为执行时间小于实体4的行为执行时间,可以确定实体1和实体4之间的边由实体1指向实体4;确定了每条边的方向后,以实体1、实体2、实体3和实体4为节点,用每条有向边将建立关联关系的实体连接起来,可以得到一个有向的实体关系网。
需要说明的是,上述是以建立有向的实体关系网为例进行说明,在实施中,也可以建立无向的实体关系网,接下来对建立无向的实体关系网的过程进行说明。
作为一种示例,当任一组实体的实体关系网中的每条边没有方向性时,可以以任一组实体中的N个实体为节点、以各个实体之间所建立的关联关系为边,构建任一组实体的实体关系网,可以得到至少一个无向的实体关系网。
示例性地,参见图4,实体1、实体2、实体3和实体4为一组,实体1和实体2建立了关联关系,实体2和实体3建立了关联关系,实体1和实体4建立了关联关系,可以以实体1、实体2、实体3和实体4为节点,以各个实体之间所建立的关联关系为边,即实体1和实体2之间有边相连,实体2和实体3之间有边相连,实体1和实体4之间有边相连,可以建立一个无向的实体关系网。
需要说明的是,上述步骤102至步骤103用于实现基于多个实体的行为信息,确定多个实体中每个实体的至少一个行为序列,以及构建至少一个实体关系网的操作。
步骤104:基于至少一个实体关系网,确定该多个实体中每个实体的特征向量,每个实体的特征向量包括每个实体在至少一个实体关系网上与其他实体相邻的概率。
作为一种示例,对于至少一个实体关系网中的任一实体关系网,可以利用网络嵌入学习方法确定任一实体关系网上多个实体中每个实体的特征向量。
在一些实施例中,基于至少一个实体关系网,确定该多个实体中每个实体的特征向量可以包括如下几个步骤:
(1)对于至少一个实体关系网中的任一实体关系网,在任一实体关系网上随机确定多个不同的遍历路径,在确定过程中任一实体关系网的每个实体都被遍历到。
作为一种示例,对于至少一个实体关系网中的任一实体关系网,可以从该实体关系网中随机确定一个实体作为遍历路径的起始实体,从该实体开始在实体关系网中随机游走,由于每次选择的起始实体可能不同,随机游走的方式也可能不同,所以可以得到多个随机游走的遍历路径,即随机确定多个不同的遍历路径。
示例性地,假设任一实体关系网中包括实体1、实体2、实体3、实体4、实体5和实体6,假设从实体1开始随机游走,确定的遍历路径中包括实体1、实体2、实体3、实体4和实体5;假设从实体3开始随机游走,确定的遍历路径中包括实体1、实体3、实体4、实体5和实体6;假设从实体6开始随机游走,确定的遍历路径中包括实体6、实体5、实体4、实体2和实体1。
(2)遍历每个遍历路径中的实体,并按照先后遍历顺序将每个遍历路径中的实体组成有序序列,得到任一实体关系网对应的多个随机序列。
也就是说,在随机确定多个不同的遍历路径时,多个不同的遍历路径中的任一遍历路径可能包括多个实体,可以根据任一遍历路径的随机游走的顺序遍历该遍历路径中的实体,将该遍历路径中的实体按照遍历的先后顺序进行排序,组成一个有序序列。
示例性地,假设任一遍历路径中包括实体1、实体3、实体4、实体5和实体6,该遍历路径的随机游走顺序为实体1、实体3、实体5、实体6和实体4,按照该随机游走顺序遍历该多个实体,将该多个实体进行排序,可以得到一个有序序列实体1-实体3-实体5-实体6-实体4。
(3)基于至少一个实体关系网对应的所有随机序列,确定多个实体中每个实体的特征向量。
也就是说,基于至少一个实体关系网对应的所有随机序列,该所有随机序列中的每个随机序列包括多个实体,即每个随机序列可以表示多个实体之间的关联关系,可以将多个实体中每个实体与其他实体之间的关联关系,确定为多个实体中每个实体的特征向量。
在一些实施例中,基于至少一个实体关系网对应的所有随机序列,确定多个实体中每个实体的特征向量包括:对于所有随机序列中的任一随机序列,遍历任一随机序列中的每个实体,将每个实体分别与前、后相邻且位于参考尺寸大小的窗口内的其他实体组成实体对,可以得到任一随机序列对应的多个实体对;将所有随机序列对应的实体对输入至网络模型中进行训练;当到达参考训练条件时,停止训练,并将每个实体输入至训练后的网络模型中,可以输出每个实体的特征向量。
其中,参考尺寸可以根据业务需要自行设置,例如,参考尺寸可以设置为2、3等。当该参考尺寸设置为2时,表示位于该实体前面的两个实体和后面的两个实体可以被包括在参考尺寸大小的窗口内。
其中,参考训练条件可以根据实际需求进行设置,譬如,可以为网络模型的预测值与实际值之间的差异小于差异阈值或者网络模型的训练次数达到训练次数阈值。其中,该差异阈值和该训练次数阈值可以根据实际需求进行设置。
也就是说,对于所有随机序列中的任一随机序列,遍历任一随机序列中的每个实体,确定窗口的参考尺寸,进而可以确定每个实体对应的窗口内的其他实体,将该每个实体对应的窗口内的其他实体分别与该每个实体组成实体对,可以得到任一随机序列的多个实体对,同理得到所有随机序列的多个实体对,将所有随机序列的多个实体对输入至网络模型中进行训练,当达到参考训练条件时,停止训练,将每个实体输入至训练后的网络模型中,可以输出每个实体与其他实体相邻的概率,即可以得到每个实体的特征向量。
示例性地,假设任一随机序列为实体1-实体3-实体5-实体6-实体4,窗口的参考尺寸为2,遍历该任一随机序列中的每个实体。比如,当遍历到实体5时,位于实体5之前的窗口内包括实体1和实体3,位于实体5之后的窗口内包括实体6和实体4,可以得到实体对Ⅰ为实体5和实体1,实体对Ⅱ为实体5和实体3,实体对Ⅲ为实体5和实体6,实体对Ⅳ为实体5和实体4;对于实体3来说,位于实体3之前的窗口内包括实体1,位于实体3之后的窗口内包括实体5和实体6,可以得到实体对Ⅰ为实体3和实体1,实体对Ⅱ为实体3和实体5,实体对Ⅲ为实体3和实体6;对于实体1来说,位于实体1之前的窗口内为空,位于实体1之后的窗口内包括实体3和实体5,可以得到实体对Ⅰ为实体1和实体3,实体对Ⅱ为实体1和实体5。对所有随机序列都进行上述操作,可以得到所有随机序列的多个实体对,将多个实体对输入网络模型中进行训练。
作为一种示例,在开始训练之前,可以随机初始化网络模型的参数,将所有随机序列对应的实体对输入至网络模型中进行训练的过程中,网络模型可以对每个实体与其他实体相邻的概率不断进行预测,可以根据预测值与实际值之间的差异,调整网络模型的参数,直到达到参考训练条件,可以停止训练,将每个实体输入训练后的网络模型中,可以得到每个实体的特征向量。
作为一种示例,网络模型的预测值与实际值之间的差异可以通过如下公式(1)计算得到。
其中,V表示网络中节点的集合,f表示将节点映射到特征空间,S表示随机确定路径的策略。
作为一种示例,可以根据公式(1)的计算结果,调整网络模型的参数,使网络模型的预测朝着更接近实际情况的方向发展。
示例性地,经过对网络模型的训练之后,输入实体1,可以得到实体1与实体2相邻的概率为0.3,与实体3相邻的概率为0.15,与实体4相邻的概率为0.5,与实体5相邻的概率为0.05,即实体1的特征向量为(0.3,0.15,0.5,0.05)。
步骤105:基于该多个实体的静态属性信息、至少一个行为序列以及至少一个实体关系网,确定该多个实体中每个实体的基础特征。
作为一种示例,基于该多个实体的静态属性信息、至少一个行为序列以及至少一个实体关系网,确定该多个实体中每个实体的基础特征可以包括如下几个步骤:
(1)从多个实体的静态属性信息中,提取每个实体的静态属性信息中的至少一个。
示例性地,假设任一实体的静态属性信息包括籍贯、身高、体重和年龄,可以提取身高这一静态属性信息,也可以提取籍贯和身高这两个静态属性信息。
(2)基于多个实体中每个实体的至少一个行为序列,统计每个实体的频次、比率和支持度中的至少一个,频次是指实体的参考行为在实体的至少一个行为序列中出现的总次数,比率是指实体的参考行为的频次与实体的至少一个行为序列包括的行为总数量之间的比值,支持度是指实体的至少一个行为序列中的参考行为序列在多个实体的至少一个行为序列中出现的比率。
其中,参考行为和参考行为序列可以根据业务需要自行设置。
也就是说,基于多个实体中每个实体的至少一个行为序列,对于多个实体中的任一实体,确定参考行为,可以统计该参考行为在任一实体的至少一个行为序列中出现的总次数,以及该参考行为的频次在任一实体的至少一个行为序列包括的行为总数量之间的比值,确定参考行为序列,可以统计该参考行为序列在多个实体的至少一个行为序列中出现的比率。
示例性地,假设实体1的行为序列为A-B-C-A-D,若确定参考行为的行为标识为A,可以得到实体1的频次为2,实体1的比率为0.4,若确定参考行为的行为标识为C,可以得到实体1的频次为1,实体1的比率为0.2;假设实体1的行为序列为A-B和B-C,实体2的行为序列为B-C和C-D,实体3的行为序列为C-D,若确定参考行为序列为A-B,可以得到实体1的支持度为0.2,实体2和实体3的支持度为0,若确定参考行为序列为C-D,可以得到实体1的支持度为0,实体2的支持度为0.4,实体3的支持度为0.4。
(3)基于至少一个实体关系网,提取每个实体关系网中每个实体的邻节点个数、出度和入度中的至少一个。
其中,出度可以表示方向从该实体指向其他实体的边的个数,入度可以表示方向从其他实体指向该实体的边的个数。
作为一种示例,基于至少一个实体关系网中的任一实体关系网,当该任一实体关系网中的每条边具有方向性时,可以提取每个实体关系网中每个实体的邻节点个数、出度和入度中的至少一个。
示例性地,当该实体关系网中的每条边具有方向性时,参见图5,由图5可知,该实体关系网中包括实体1、实体2、实体3和实体4,且实体1和实体2之间有边,实体2和实体3之间有边,实体2和实体4之间有边,实体1和实体3之间有边,实体4和实体3之间有边,且实体1和实体2之间的边的方向是由实体1指向实体2,实体2和实体3之间的边的方向是由实体2指向实体3,实体2和实体4之间的边的方向是由实体2指向实体4,实体1和实体3之间的边的方向是由实体3指向实体1,实体4和实体3之间的边的方向是由实体3指向实体4,可以确定实体1的出度为1、入度为1,实体2的出度为2、入度为1,实体3的出度为2、入度为1,实体4的出度为0、入度为2。
作为一种示例,基于至少一个实体关系网中的任一实体关系网,当该任一实体关系网中的每条边没有方向性时,可以提取每个实体关系网中每个实体的邻节点个数。
示例性地,当该实体关系网中的每条边没有方向性时,参见图6,由图6可知,该实体关系网中包括实体1、实体2、实体3和实体4,且实体1和实体2之间有边,实体2和实体3之间有边,实体2和实体4之间有边,实体1和实体3之间有边,实体4和实体3之间有边,可以确定实体1的邻居节点个数为2,实体2的邻居节点个数为3,实体3的邻居节点个数为3,实体4的邻居节点个数为2。
(4)基于每个实体的静态属性信息中的至少一个,频次、比率和支持度中的至少一个,以及邻节点个数、出度和入度中的至少一个,确定每个实体的基础特征。
示例性地,假设提取了任一实体的静态属性信息中的身高,该实体的频次和该实体的邻节点的个数,可以将身高、频次和邻节点的个数确定为该任一实体的基础特征。
步骤106:将多个实体中每个实体的特征向量与基础特征进行拼接,得到该多个实体中每个实体的联合特征。
也就是说,将属于同一个实体的特征向量和基础特征拼接在一起,得到该实体的联合特征。
示例性地,假设实体1的特征向量为(0.2,0.1,0.4,0.3),即实体1与实体2相邻的概率为0.2,实体1与实体3相邻的概率为0.1,实体1与实体4相邻的概率为0.4,实体1与实体5相邻的概率为0.3,实体1的基础特征包括实体1的频次为2,实体1的身高为187,实体1的出度为2;可以将该七种特征拼接在一起,得到该实体1的联合特征,该联合特征包括与实体2相邻、与实体3相邻、与实体4相邻、与实体5相邻、频次、身高和出度。
作为一种示例,可以将特征向量与基础特征进行排序,将排序后的特征确定为该实体的联合特征。示例性地,按照上述举例,可以将身高作为特征1,将频次作为特征2,将出度作为特征3,将与实体2相邻作为特征4,将与实体3相邻作为特征5,将与实体4相邻作为特征6,将与实体5相邻作为特征7。
需要说明的是,上述步骤104至步骤106用于实现基于多个实体的静态属性信息和至少一个行为序列、以及至少一个实体关系网,确定多个实体中每个实体的联合特征的操作。
步骤107:根据多个实体中每个实体的联合特征,检测待处理数据中的异常数据。
也就是说,基于多个实体中每个实体的联合特征,根据每个实体的联合特征对应的数据,检测待处理数据中的异常数据。
作为一种示例,在检测待处理数据中的异常数据之前,可以通过峰度检验的方法对联合特征进行选择,去除冗余特征,以提高检测算法的精度,进而提高检测结果的准确率。
在一些实施例中,通过峰度检验的方法对联合特征进行选择可以包括如下几个步骤:
(1)对于联合特征中的每种特征,获取每种特征在多个实体中的特征值;根据获取的特征值,确定每种特征的峰度值。
作为一种示例,可以通过如下公式(2)计算每种特征的峰度值。
其中,Kurt(Xi)表示任一特征的峰度值,μ表示任一特征的均值,σ表示任一特征的标准差,Xi表示第i个实体的任一特征的特征值,E表示对i个数值求数学期望。
示例性地,基于每个实体中特征1的特征值可以计算出特征1的均值,进而计算出特征1的标准差,将特征1的均值、标准差和每个实体中特征1的特征值代入上述公式中,可以得到特征1的峰度值。
(2)根据每种特征的峰度值,确定下四分位数。
其中,计算下四分位数时,可以将所有数值按照从小到大的顺序进行排列,确定排在25%的位置为下四分位数的位置,若该位置处存在数值,确定该数值为下四分位数;若该位置处不存在数值,根据该位置的前一个数值和后一个数值确定下四分位数,下四分位数可以用ε表示。
作为一种示例,下四分位数的位置可以通过如下公式(3)计算。
Q1=(n+1)×0.25 (3)
其中,Q1表示下四分位数的位置,n表示峰度值的个数。
示例性地,假设峰度值的个数为11,每种特征的峰度值按照顺序分别为:6,7,15,36,39,40,41,42,43,47,49,可以计算下四分位数的位置为3,该位置处存在数值,可以得到下四分位数ε为15;假设峰度值的个数为6,每种特征的峰度值按照顺序分别为:7、15、36、39、40、41,可以计算下四分位数的位置为1.75,该位置处不存在数值,说明下四分位数位于第一个峰度值和第二个峰度值之间,可以得到下四分位数ε为15×0.75+7×0.25=13。
(3)对于联合特征中的任一特征,当任一特征的峰度值小于下四分位数时,从联合特征中删除任一特征。
也就是说,遍历联合特征中的所有特征,如图2所示,当任一特征的峰度值小于下四分位数时,说明该特征对异常数据检测结果意义不大,可以不考虑,所以可以将该特征删除。
示例性地,假设联合特征中有6种特征,特征1的峰度值为15、特征2的峰度值为40、特征3的峰度值为7、特征4的峰度值为39、特征5的峰度值为41、特征6的峰度值为36,下四分位数为13,可以确定特征3的峰度值小于下四分位数,将特征3从联合特征中删除。
(4)基于删除后的联合特征,检测待处理数据中的异常数据。
也就是说,遍历完联合特征中的所有特征后,基于剩下的联合特征,检测待处理数据中的异常数据。
作为一种示例,可以通过建立孤立森林模型的方法对待处理数据中的异常数据进行检测。该方法包括:基于删除后的联合特征,建立多个孤立树,基于多个孤立树中的任一孤立树,计算该任一孤立树中每个实体到根节点的路径的值,进而计算每个实体到根节点的路径的平均值,将该平均值作为异常分值,将每个实体按照异常分值从小到大进行排序,可以确定排名前K个实体的数据为异常数据。其中,K为大于或等于1的整数,可以根据业务需要自行设置。
作为一种示例,建立孤立树时,可以在多个实体中随机选择Q个实体作为孤立树的根节点,在联合特征中随机选择一个特征,获取该Q个实体对应的该特征的特征值,在该Q个特征值中随机选择一个特征值,作为特征值阈值,可以将特征值大于或等于该特征值阈值的实体分为一组,将特征值小于该特征值阈值的实体分为一组,继续按照上述过程对子节点进行划分,直到达到孤立树的高度阈值,开始建立下一个孤立树,按照同样的方法对实体进行划分。其中,Q为大于1的整数,高度阈值可以自行设置,孤立树的个数也可以自行设置。
示例性地,参见图7,该图7为一个孤立树。由图可知,随机选择实体1、实体2、实体3和实体4作为孤立树的根节点,假设选择每个实体的频次,实体1的频次为2,实体2的频次为3,实体3的频次为1,实体4的频次为2,随机选择2为特征值阈值,可以确定,实体1、实体2和实体4为一组,实体3为一组;对实体1、实体2和实体4这一组继续划分,假设选择每个实体的出度,实体1的出度为5,实体2的出度为0,实体4的出度为3,随机选择3为特征值阈值,可以确定,实体1和实体4为一组,实体2为一组;对实体1和实体4继续划分,假设选择每个实体的比率,实体1的比率为0.2,实体4的比率为0.4,随机选择0.4为特征值阈值,可以确定,实体1为一组,实体4为一组。
作为一种示例,建立多个孤立树后,计算任一孤立树中每个实体到根节点的路径的值,基于每个实体中任一实体到根节点的多个路径的值,可以得到每个实体到根节点的路径的平均值,将该平均值作为异常分值,将每个实体按照异常分值从小到大进行排序,可以确定排名前K个实体的数据为异常数据。
示例性地,参见图7,在图7的孤立树中,实体1的路径的值为3,实体2的路径的值为2,实体3的路径的值为1,实体4的路径的值为3,按照这种方式,可以确定在其他孤立树中,每个实体的路径的值。
示例性地,假设有4个孤立树,实体1在孤立树1中路径的值为3,在孤立树2中路径的值为4,在孤立树3中路径的值为1,在孤立树4中路径的值为4,可以确定实体1到根节点的路径的平均值为(3+4+1+4)÷4=3;实体2在孤立树1中路径的值为6,在孤立树2中路径的值为4,在孤立树3中路径的值为3,在孤立树4中路径的值为3,可以确定实体2到根节点的路径的平均值为(6+4+3+3)÷4=4;实体3在孤立树1中路径的值为1,在孤立树2中路径的值为2,在孤立树3中路径的值为3,在孤立树4中路径的值为2,可以确定实体3到根节点的路径的平均值为(1+2+3+2)÷4=2;实体4在孤立树1中路径的值为5,在孤立树2中路径的值为6,在孤立树3中路径的值为7,在孤立树4中路径的值为6,可以确定实体4到根节点的路径的平均值为(5+6+7+6)÷4=6。将实体1、实体2、实体3和实体4按照异常值从小到大进行排序,顺序为实体3、实体1、实体2和实体4,如此,假设K为1,可以确定实体3的数据为异常数据。
在本申请实施例中,获取待处理数据,该待处理数据包括多个实体的行为信息和静态属性信息,如此,可以基于该多个实体的行为信息,确定该多个实体中每个实体的至少一个行为序列,以及构建至少一个实体关系网。每个实体的至少一个行为序列包括该每个实体的多种行为的行为标识和行为执行时间,即该每个实体的至少一个行为序列可以表示该每个实体的不同行为之间的关联关系,另外,该实体关系网可以表示各个实体之间的关联关系。之后,基于该多个实体的静态属性信息和至少一个行为序列、以及至少一个实体关系网,确定该多个实体中每个实体的联合特征,每个实体的联合特征可以表示数据之间的关联关系。如此,根据该多个实体中每个实体的联合特征,检测待处理数据中的异常数据,进一步挖掘了数据之间的相互关系,解决了现有技术中仅考虑数据的基本特征可能损失一部分信息,导致检测结果不准确的问题,进而提高了检测结果的准确率。
图8是根据一示例性实施例示出的一种异常数据的检测装置的结构示意图,该装置可以由软件、硬件或者两者的结合实现。参见图8,该装置可以包括:获取模块801、第一确定模块802、第二确定模块803和检测模块804。
获取模块801,用于获取待处理数据,待处理数据包括多个实体的行为信息和静态属性信息,每个实体的行为信息包括多种行为的行为标识和行为执行时间;
第一确定模块802,用于基于多个实体的行为信息,确定多个实体中每个实体的至少一个行为序列,以及构建至少一个实体关系网,每个行为序列包括多种行为中的至少两种行为的行为标识;
第二确定模块803,用于基于多个实体的静态属性信息和至少一个行为序列、以及至少一个实体关系网,确定多个实体中每个实体的联合特征;
检测模块804,用于根据多个实体中每个实体的联合特征,检测待处理数据中的异常数据。
在本申请一种可能的实现方式中,第一确定模块802用于:
对于多个实体中的任一实体,根据任一实体的多种行为的行为执行时间,按照行为先后执行顺序,对任一实体的多种行为的行为标识进行排序;
按照从前向后的顺序,将排序后的行为标识中每相邻的M个行为标识作为一个行为序列,得到任一实体的至少一个行为序列,至少一个行为序列中相邻的两个行为序列存在一个交叉行为标识。
在本申请一种可能的实现方式中,每个实体的行为信息还包括多种行为的行为特征,行为特征用于描述行为的行为属性和具体行为;
第一确定模块802用于:
根据多个实体的行为特征,对多个实体进行分组,得到至少一组实体,每组实体包括N个实体,且属于同一组的N个实体的行为属性相同,N为大于1的整数;
对于至少一组实体中的任一组实体,根据任一组实体的行为特征,将任一组实体中具有相同行为的实体建立关联关系;
以任一组实体中的N个实体为节点、所建立的关联关系为边,构建任一组实体的实体关系网,得到至少一个实体关系网。
在本申请一种可能的实现方式中,当任一组实体的实体关系网中的每条边具有方向性时,第一确定模块802用于:
对于任一组实体的N个实体中的任意具有关联关系的第一实体和第二实体,当第一实体的行为执行时间小于第二实体的行为执行时间时,确定第一实体与第二实体之间边的方向是由第一实体指向第二实体;
当第一实体的行为执行时间大于第二实体的行为执行时间时,确定第一实体与第二实体之间边的方向是由第二实体指向第一实体;
以任一组实体中的N个实体为节点,根据所确定的N个实体中具有关联关系的所有实体之间的有向边,确定任一组实体的实体关系网。
在本申请一种可能的实现方式中,第二确定模块803用于:
基于至少一个实体关系网,确定多个实体中每个实体的特征向量,每个实体的特征向量包括每个实体在至少一个实体关系网上与其他实体相邻的概率;
基于多个实体的静态属性信息、至少一个行为序列以及至少一个实体关系网,确定多个实体中每个实体的基础特征;
将多个实体中每个实体的特征向量与基础特征进行拼接,得到多个实体中每个实体的联合特征。
在本申请一种可能的实现方式中,第二确定模块803用于:
对于至少一个实体关系网中的任一实体关系网,在任一实体关系网上随机确定多个不同的遍历路径,在确定过程中任一实体关系网的每个实体都被遍历到;
遍历每个遍历路径中的实体,并按照先后遍历顺序将每个遍历路径中的实体组成有序序列,得到任一实体关系网对应的多个随机序列;
基于至少一个实体关系网对应的所有随机序列,确定多个实体中每个实体的特征向量。
在本申请一种可能的实现方式中,第二确定模块803用于:
对于所有随机序列中的任一随机序列,遍历任一随机序列中的每个实体,将每个实体分别与前、后相邻且位于参考尺寸大小的窗口内的其他实体组成实体对,得到任一随机序列对应的多个实体对;
将所有随机序列对应的实体对输入至网络模型中进行训练;
当到达参考训练条件时,停止训练,并将每个实体输入至训练后的网络模型中,输出每个实体的特征向量。
在本申请一种可能的实现方式中,当任一组实体的实体关系网中的每条边具有方向性时,第二确定模块803用于:
从多个实体的静态属性信息中,提取每个实体的静态属性信息中的至少一个;
基于多个实体中每个实体的至少一个行为序列,统计每个实体的频次、比率和支持度中的至少一个,频次是指实体的参考行为在实体的至少一个行为序列中出现的总次数,比率是指实体的参考行为的频次与实体的至少一个行为序列包括的行为总数量之间的比值,支持度是指实体的至少一个行为序列中的参考行为序列在多个实体的至少一个行为序列中出现的比率;
基于至少一个实体关系网,提取每个实体关系网中每个实体的邻节点个数、出度和入度中的至少一个;
基于每个实体的静态属性信息中的至少一个,频次、比率和支持度中的至少一个,以及邻节点个数、出度和入度中的至少一个,确定每个实体的基础特征。
在本申请一种可能的实现方式中,检测模块804用于:
对于联合特征中的每种特征,获取每种特征在多个实体中的特征值;根据获取的特征值,确定每种特征的峰度值;
根据每种特征的峰度值,确定下四分位数;
对于联合特征中的任一特征,当任一特征的峰度值小于下四分位数时,从联合特征中删除任一特征;
基于删除后的联合特征,检测待处理数据中的异常数据。
在本申请实施例中,获取待处理数据,该待处理数据包括多个实体的行为信息和静态属性信息,如此,可以基于该多个实体的行为信息,确定该多个实体中每个实体的至少一个行为序列,以及构建至少一个实体关系网。每个实体的至少一个行为序列包括该每个实体的多种行为的行为标识和行为执行时间,即该每个实体的至少一个行为序列可以表示该每个实体的不同行为之间的关联关系,另外,该实体关系网可以表示各个实体之间的关联关系。之后,基于该多个实体的静态属性信息和至少一个行为序列、以及至少一个实体关系网,确定该多个实体中每个实体的联合特征,每个实体的联合特征可以表示数据之间的关联关系。如此,根据该多个实体中每个实体的联合特征,检测待处理数据中的异常数据,进一步挖掘了数据之间的相互关系,解决了现有技术中仅考虑数据的基本特征可能损失一部分信息,导致检测结果不准确的问题,进而提高了检测结果的准确率。
需要说明的是:上述实施例提供的异常数据的检测装置在检测异常数据时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的异常数据的检测装置与异常数据的检测方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图9是根据一示例性实施例示出的一种设备900的结构示意图,该设备900可以为终端,也可以为服务器。该设备900可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,CPU)901和一个或一个以上的存储器902,其中,所述存储器902中存储有至少一条指令,所述至少一条指令由所述处理器901加载并执行以实现上述各个方法实施例提供的异常数据的检测方法。
当然,该设备900还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该设备900还可以包括其他用于实现设备功能的部件,在此不做赘述。
本申请实施例还提供了一种非临时性计算机可读存储介质,当所述存储介质中的指令由移动终端的处理器执行时,使得移动终端能够执行上述图1所示实施例提供的异常数据的检测方法。
本申请实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各个实施例提供的异常数据的检测方法。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (12)
1.一种异常数据的检测方法,其特征在于,所述方法包括:
获取待处理数据,所述待处理数据包括多个实体的行为信息和静态属性信息,每个实体的行为信息包括多种行为的行为标识和行为执行时间;
基于所述多个实体的行为信息,确定所述多个实体中每个实体的至少一个行为序列,以及构建至少一个实体关系网,每个行为序列包括所述多种行为中的至少两种行为的行为标识;
基于所述多个实体的静态属性信息和至少一个行为序列、以及所述至少一个实体关系网,确定所述多个实体中每个实体的联合特征;
根据所述多个实体中每个实体的联合特征,检测所述待处理数据中的异常数据。
2.如权利要求1所述的方法,其特征在于,所述基于所述多个实体的行为信息,确定所述多个实体中每个实体的至少一个行为序列,包括:
对于所述多个实体中的任一实体,根据所述任一实体的多种行为的行为执行时间,按照行为先后执行顺序,对所述任一实体的多种行为的行为标识进行排序;
按照从前向后的顺序,将排序后的行为标识中每相邻的M个行为标识作为一个行为序列,得到所述任一实体的至少一个行为序列,所述至少一个行为序列中相邻的两个行为序列存在一个交叉行为标识。
3.如权利要求1所述的方法,其特征在于,
每个实体的行为信息还包括所述多种行为的行为特征,所述行为特征用于描述行为的行为属性和具体行为;
基于所述多个实体的行为信息,构建至少一个实体关系网,包括:
根据所述多个实体的行为特征,对所述多个实体进行分组,得到至少一组实体,每组实体包括N个实体,且属于同一组的N个实体的行为属性相同,所述N为大于1的整数;
对于所述至少一组实体中的任一组实体,根据所述任一组实体的行为特征,将所述任一组实体中具有相同行为的实体建立关联关系;
以所述任一组实体中的N个实体为节点、所建立的关联关系为边,构建所述任一组实体的实体关系网,得到所述至少一个实体关系网。
4.如权利要求3所述的方法,其特征在于,当所述任一组实体的实体关系网中的每条边具有方向性时,所述以所述任一组实体中的N个实体为节点、所建立的关联关系为边,构建所述任一组实体的实体关系网,包括:
对于所述任一组实体的N个实体中的任意具有关联关系的第一实体和第二实体,当所述第一实体的行为执行时间小于所述第二实体的行为执行时间时,确定所述第一实体与所述第二实体之间边的方向是由所述第一实体指向所述第二实体;
当所述第一实体的行为执行时间大于所述第二实体的行为执行时间时,确定所述第一实体与所述第二实体之间边的方向是由所述第二实体指向所述第一实体;
以所述任一组实体中的N个实体为节点,根据所确定的所述N个实体中具有关联关系的所有实体之间的有向边,确定所述任一组实体的实体关系网。
5.如权利要求1-4任一项所述的方法,其特征在于,所述基于所述多个实体的静态属性信息和至少一个行为序列、以及所述至少一个实体关系网,确定所述多个实体中每个实体的联合特征,包括:
基于所述至少一个实体关系网,确定所述多个实体中每个实体的特征向量,每个实体的特征向量包括每个实体在所述至少一个实体关系网上与其他实体相邻的概率;
基于所述多个实体的静态属性信息、至少一个行为序列以及所述至少一个实体关系网,确定所述多个实体中每个实体的基础特征;
将所述多个实体中每个实体的特征向量与基础特征进行拼接,得到所述多个实体中每个实体的联合特征。
6.如权利要求5所述的方法,其特征在于,所述基于所述至少一个实体关系网,确定所述多个实体中每个实体的特征向量,包括:
对于所述至少一个实体关系网中的任一实体关系网,在所述任一实体关系网上随机确定多个不同的遍历路径,在确定过程中所述任一实体关系网的每个实体都被遍历到;
遍历每个遍历路径中的实体,并按照先后遍历顺序将每个遍历路径中的实体组成有序序列,得到所述任一实体关系网对应的多个随机序列;
基于所述至少一个实体关系网对应的所有随机序列,确定所述多个实体中每个实体的特征向量。
7.如权利要求6所述的方法,其特征在于,所述基于所述至少一个实体关系网对应的所有随机序列,确定所述多个实体中每个实体的特征向量,包括:
对于所述所有随机序列中的任一随机序列,遍历所述任一随机序列中的每个实体,将每个实体分别与前、后相邻且位于参考尺寸大小的窗口内的其他实体组成实体对,得到所述任一随机序列对应的多个实体对;
将所述所有随机序列对应的实体对输入至网络模型中进行训练;
当到达参考训练条件时,停止训练,并将所述每个实体输入至训练后的网络模型中,输出所述每个实体的特征向量。
8.如权利要求5所述的方法,其特征在于,当所述任一组实体的实体关系网中的每条边具有方向性时,所述基于所述多个实体的静态属性信息、至少一个行为序列以及所述至少一个实体关系网,确定所述多个实体中每个实体的基础特征,包括:
从所述多个实体的静态属性信息中,提取每个实体的静态属性信息中的至少一个;
基于所述多个实体中每个实体的至少一个行为序列,统计每个实体的频次、比率和支持度中的至少一个,所述频次是指实体的参考行为在实体的至少一个行为序列中出现的总次数,所述比率是指实体的参考行为的频次与实体的至少一个行为序列包括的行为总数量之间的比值,所述支持度是指实体的至少一个行为序列中的参考行为序列在所述多个实体的至少一个行为序列中出现的比率;
基于所述至少一个实体关系网,提取每个实体关系网中每个实体的邻节点个数、出度和入度中的至少一个;
基于每个实体的静态属性信息中的至少一个,频次、比率和支持度中的至少一个,以及邻节点个数、出度和入度中的至少一个,确定每个实体的基础特征。
9.如权利要求1所述的方法,其特征在于,所述根据所述多个实体中每个实体的联合特征,检测所述待处理数据中的异常数据,包括:
对于联合特征中的每种特征,获取所述每种特征在所述多个实体中的特征值;根据获取的特征值,确定所述每种特征的峰度值;
根据每种特征的峰度值,确定下四分位数;
对于所述联合特征中的任一特征,当所述任一特征的峰度值小于所述下四分位数时,从所述联合特征中删除所述任一特征;
基于删除后的联合特征,检测所述待处理数据中的异常数据。
10.一种异常数据的检测装置,其特征在于,所述装置包括:
获取模块,用于获取待处理数据,所述待处理数据包括多个实体的行为信息和静态属性信息,每个实体的行为信息包括多种行为的行为标识和行为执行时间;
第一确定模块,用于基于所述多个实体的行为信息,确定所述多个实体中每个实体的至少一个行为序列,以及构建至少一个实体关系网,每个行为序列包括所述多种行为中的至少两种行为的行为标识;
第二确定模块,用于基于所述多个实体的静态属性信息和至少一个行为序列、以及所述至少一个实体关系网,确定所述多个实体中每个实体的联合特征;
检测模块,用于根据所述多个实体中每个实体的联合特征,检测所述待处理数据中的异常数据。
11.一种设备,其特征在于,所述设备包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为实现权利要求1-9所述的任一项方法的步骤。
12.一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,其特征在于,所述指令被处理器执行时实现权利要求1-9所述的任一项方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910554476.2A CN112131320A (zh) | 2019-06-25 | 2019-06-25 | 异常数据的检测方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910554476.2A CN112131320A (zh) | 2019-06-25 | 2019-06-25 | 异常数据的检测方法、装置及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112131320A true CN112131320A (zh) | 2020-12-25 |
Family
ID=73849713
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910554476.2A Pending CN112131320A (zh) | 2019-06-25 | 2019-06-25 | 异常数据的检测方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112131320A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107196953A (zh) * | 2017-06-14 | 2017-09-22 | 上海丁牛信息科技有限公司 | 一种基于用户行为分析的异常行为检测方法 |
US20170364551A1 (en) * | 2016-06-15 | 2017-12-21 | Panorama Software Inc. | Systems and methods for analysis of data stored in a large dataset |
CN108304526A (zh) * | 2018-01-25 | 2018-07-20 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置及服务器 |
CN108322473A (zh) * | 2018-02-12 | 2018-07-24 | 北京京东金融科技控股有限公司 | 用户行为分析方法与装置 |
CN108804633A (zh) * | 2018-06-01 | 2018-11-13 | 腾讯科技(深圳)有限公司 | 基于行为语义知识网络的内容推荐方法 |
US10237294B1 (en) * | 2017-01-30 | 2019-03-19 | Splunk Inc. | Fingerprinting entities based on activity in an information technology environment |
CN109861953A (zh) * | 2018-05-14 | 2019-06-07 | 新华三信息安全技术有限公司 | 一种异常用户识别方法及装置 |
-
2019
- 2019-06-25 CN CN201910554476.2A patent/CN112131320A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170364551A1 (en) * | 2016-06-15 | 2017-12-21 | Panorama Software Inc. | Systems and methods for analysis of data stored in a large dataset |
US10237294B1 (en) * | 2017-01-30 | 2019-03-19 | Splunk Inc. | Fingerprinting entities based on activity in an information technology environment |
CN107196953A (zh) * | 2017-06-14 | 2017-09-22 | 上海丁牛信息科技有限公司 | 一种基于用户行为分析的异常行为检测方法 |
CN108304526A (zh) * | 2018-01-25 | 2018-07-20 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置及服务器 |
CN108322473A (zh) * | 2018-02-12 | 2018-07-24 | 北京京东金融科技控股有限公司 | 用户行为分析方法与装置 |
CN109861953A (zh) * | 2018-05-14 | 2019-06-07 | 新华三信息安全技术有限公司 | 一种异常用户识别方法及装置 |
CN108804633A (zh) * | 2018-06-01 | 2018-11-13 | 腾讯科技(深圳)有限公司 | 基于行为语义知识网络的内容推荐方法 |
Non-Patent Citations (3)
Title |
---|
FANG LV ET AL.: "Detecting Pyramid Scheme Accounts with Time Series Financial Transactions", 《2018 IEEE THIRD INTERNATIONAL CONFERENCE ON DATA SCIENCE IN CYBERSPACE (DSC)》 * |
LEMAN AKOGLU ET AL.: "Graph-based Anomaly Detection and Description: A Survey", 《ARXIV:1404.4679V2》 * |
王凯: "基于图计算的用户行为建模关键技术研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》, no. 2019 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US12020134B2 (en) | Debugging correctness issues in training machine learning models | |
CN110609759A (zh) | 一种故障根因分析的方法及装置 | |
CN106919957B (zh) | 处理数据的方法及装置 | |
CN104679818A (zh) | 一种视频关键帧提取方法及系统 | |
US11055210B2 (en) | Software test equipment and software testing method | |
CN105183796A (zh) | 一种基于聚类的分布式链路预测方法 | |
Sanei-Mehri et al. | Enumerating top-k quasi-cliques | |
CN112434188A (zh) | 一种异构数据库的数据集成方法、装置及存储介质 | |
US9300712B2 (en) | Stream processing with context data affinity | |
CN107579944B (zh) | 基于人工智能和MapReduce安全攻击预测方法 | |
CN112306452A (zh) | 归并排序算法处理业务数据的方法、装置及系统 | |
CN116382658A (zh) | Ai模型的编译方法、装置、计算机设备及存储介质 | |
CN112131320A (zh) | 异常数据的检测方法、装置及存储介质 | |
US11288269B2 (en) | Optimizing breakeven points for enhancing system performance | |
CN113722292B (zh) | 分布式数据系统的应灾处理方法、装置、设备及存储介质 | |
CN112861034B (zh) | 检测信息的方法、装置、设备和存储介质 | |
CN115661847B (zh) | 表格结构识别及模型训练方法、装置、设备和存储介质 | |
CN115796228B (zh) | 算子融合方法、装置、设备以及存储介质 | |
CN117114087B (zh) | 故障预测方法、计算机设备和可读存储介质 | |
US20240012833A1 (en) | Systems and methods for seamlessly updating and optimizing a digital system | |
CN111815442B (zh) | 一种链接预测的方法、装置和电子设备 | |
US11797388B1 (en) | Systems and methods for lossless network restoration and syncing | |
CN114399000A (zh) | 树模型的对象可解释性特征提取方法、装置、设备及介质 | |
CN116340090A (zh) | 基于交互序列的软件识别方法、装置、设备及存储介质 | |
KR20230135335A (ko) | 네트워크 정렬 방법 및 장치 |
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 |