CN115905309A - 相似实体搜索方法、装置、计算机设备及可读存储介质 - Google Patents
相似实体搜索方法、装置、计算机设备及可读存储介质 Download PDFInfo
- Publication number
- CN115905309A CN115905309A CN202211736332.7A CN202211736332A CN115905309A CN 115905309 A CN115905309 A CN 115905309A CN 202211736332 A CN202211736332 A CN 202211736332A CN 115905309 A CN115905309 A CN 115905309A
- Authority
- CN
- China
- Prior art keywords
- behavior
- path
- entity
- attribute
- target
- 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
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本发明提供的相似实体搜索方法、装置、计算机设备及可读存储介质,方法包括:从获取图数据的中提取行为路径集合;从行为路径集合中提取待搜索实体关联的目标行为路径;待搜索实体是行为关联对象、行为或者由至少一个行为关联对象和至少一个行为构成;根据目标行为路径,生成待搜索实体的行为特征向量;基于行为特征向量,确定实体数据库中与待搜索实体之间的相似度满足预设条件的目标实体。本发明方案中的待搜索实体可以是行为关联对象、行为或者是由至少一个行为关联对象和至少一个行为构成,也就是子图或者整张图,扩大了搜索范围,本发明实将图结构信息映射到转换为特征向量,利用向量相似度确定相似实体,降低了计算复杂度,提高了搜索效率。
Description
技术领域
本申请涉及计算机技术领域,具体涉及一种相似实体搜索方法、装置、计算机设备及可读存储介质。
背景技术
图表示技术目前已经广泛应用在相似流程搜索、恶意代码或者异常用户检测等领域,主要搜索方式是先基于流程、代码或者用户的行为模式构建图,然后通过比较图结构之间的相似性确定相似实体,计算复杂度较大,降低了搜索效率。
发明内容
本申请实施例的目的在于提供的相似实体搜索方法、装置、计算机设备及可读存储介质,用于解决现有搜索技术中计算复杂度大、搜索效率低的技术问题,本发明技术方案可以这样实现:
第一方面,本发明提供一种相似实体搜索方法,所述方法包括:
获取图数据,并从所述图数据中提取行为路径集合;
其中,所述图数据是依据行为关联对象之间的行为关系生成的;所述图数据包括行为节点和行为方向线的属性数据,所述行为节点表征所述行为关联对象;所述行为方向线表征行为;行为路径是根据所述行为关联对象之间产生的具有先后顺序的所述行为形成;
从所述行为路径集合中提取待搜索实体关联的目标行为路径;
其中,所述待搜索实体是所述行为关联对象、所述行为或者由至少一个所述行为关联对象和至少一个所述行为构成;
根据所述目标行为路径生成所述待搜索实体的行为特征向量;
基于所述行为特征向量,确定实体数据库中与所述待搜索实体之间的相似度满足预设条件的目标实体。
第二方面,本发明提供一种相似实体搜索装置,包括:提取模块,转换模块和搜索模块;
所述提取模块,用于:获取图数据,并从所述图数据中提取行为路径集合;
其中,所述图数据是依据行为关联对象之间的行为关系生成的;所述图数据包括行为节点和行为方向线的属性数据,所述行为节点表征所述行为关联对象;所述行为方向线表征行为;行为路径是根据所述行为关联对象之间产生的具有先后顺序的所述行为形成;
所述提取模块,还用于:从所述行为路径集合中提取待搜索实体关联的目标行为路径;其中,所述待搜索实体是所述行为关联对象、所述行为或者由至少一个所述行为关联对象和至少一个所述行为构成;
所述转换模块,用于根据所述目标行为路径生成所述待搜索实体的行为特征向量;
所述搜索模块,用于:基于所述行为特征向量,确定实体数据库中与所述待搜索实体之间的相似度满足预设条件的目标实体。
第三方面,本发明提供一种计算机设备,包括:处理器;用于存储处理器可执行计算机程序的存储器;其中,所述处理器被配置为执行如第一方面所述的相似实体搜索方法。
第四方面,本发明提供一种可读存储介质,所述可读存储介质存储有计算机程序,所述计算机程序可由处理器执行以完成如第一方面所述的相似实体搜索方法。
本发明提供的相似实体搜索方法、装置、计算机设备及可读存储介质,方法包括:获取图数据中的行为路径集合,然后从行为路径中确定待搜索实体对应的目标行为路径,然后根据目标行为路径生成待搜索实体对应的特征向量,并基于特征向量在实体数据库中去搜索相似的实体,可以看出,本发明方案中的待搜索实体可以是行为关联对象、行为或者是由至少一个行为关联对象和至少一个行为构成,也就是子图或者整张图,表明本发明方案扩大了搜索范围,能适应更多搜索场景;而且,本发明实施例不直接比较待搜索实体的图结构信息,而是将图结构信息映射到转换为特征向量,进而利用向量相似度确定相似实体,降低了计算复杂度,提高了搜索效率。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明提供的相似实体搜索方法的应用场景图;
图2为本发明实施例提供的相似实体搜索方法的示意性流程图;
图3为本发明实施例提供的一种通信行为图;
图4为本发明实施例提供的相似实体搜索方法的另一种示意性流程图;
图5为本发明实施例提供的通信行为图的一张子图;
图6为本发明实施例提供的步骤S230的示意性流程图;
图7为本发明实施例提供的待搜索实体为一张图的示例图;
图8为本发明实施例提供的待搜索实体为另一张图的示例图;
图9为本发明实施例提供的相似实体搜索装置的功能模块图;
图10为本发明实施例提供的计算机设备的结构框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性或先后顺序。
随着基于图谱的智能分析的场景越来越多,利用图来解决算法和工程问题也越发受到青睐,基于图表示的分析技术已经广泛应用在相似流程检索、恶意代码检测、诈骗用户或公司识别、异常行为检测等领域。
例如,一种应用场景,恶意代码检测领域,可以根据恶意代码运行时候的调用关系生成调用图,并存入图数据库中,不同的调用图代表了程序内部执行逻辑的不同,用户获得某个待检测代码的调用图后,在图数据库中查询与其结构相似的调用图,若存在则说明待检测代码是个恶意代码。
另一种应用场景,诈骗用户识别领域,可以根据掌握到的诈骗用户生成行为图并存入图数据库中,不同的行为图代表了用户行为模式的不同,当要识别某个用户是否是诈骗用户,可以得到该用户的行为关系图,若在图数据库中存在与该行为关系图结构相似的图,则该用户疑似诈骗用户。
不管是何种场景,都需要先将被研究对象(例如代码、用户或者行为)的行为模式进行图表示。目前,图表示方法主要有如下两类:
第一类:基于矩阵分解的图表示方法
基于矩阵分解的方法主要用于处理输入为两个节点之间的相关度(例如两个节点的属性的相似度,或两个节点的共同出现次数),而不是连接这两个节点之间的边数据的图,主要有两种方法:
一、基于拉普拉斯矩阵分解的方法。该方法的基本思想是保留图中的任意点之间的相似性,让相似性较大的节点之间的距离较小。基于此,该方法首先将图中点之间的边的权重使用核函数转为点之间的相似度,以此构造该图的相似矩阵,然后计算该相似矩阵的标准化后的拉普拉斯矩阵的特征向量,这些特征向量会构成该图的特征矩阵,对这个特征矩阵使用通用的聚类方法(如k-means)进行聚类,得到若干簇的划分方式,该划分方式即为原图的聚类结果。
二、基于节点接近度矩阵分解的方法。该方法不将图的边邻接权重矩阵转为相似矩阵,而是直接对其使用奇异值分解的方法,找到一个最优的近似,并通过减少逼近误差来保留节点的接近度。
第二类:基于深度学习的图表示方法
基于深度学习的图表示方法可分为基于随机游走的方法和非随机游走的方法:
一、基于随机游走的方法。基于随机游走的方法的基本思想是:通过最大化相邻节点的观察概率来保留图中节点的2阶接近度。据此将图表示为一组采样的随机游走路径,然后用深度学习方法计算采样路径的嵌入向量,该向量可以保留路径中包含的图属性。
二、基于非随机游走的方法。基于非随机游走的方法利用多层学习架构的强大而有效的计算能力,直接将图编码为低维空间。例如采用自编码器将输入数据映射到表示空间;或者采用图卷积网络的方式将图映射为向量。
经过研究发现,上述两种基于矩阵分解的图表示方法都需要对矩阵进行分解计算,导致计算复杂度大,不能处理较大规模的图;而上述两种基于深度学习的图表示方法都存在计算复杂度较大,需要使用训练集来训练图神经网络等问题。更需要注意的是,不管是基于矩阵分解还是基于深度学习的图表示方法,在进行相似实体搜索时,都只能将整张图作为一个待搜索实体去比较图结构之间的相似性,计算复杂度较大,降低了搜索效率。
因此,为了解决上述技术缺陷,本发明实施例提供了一种基于路径的特征提取和高维空间映射的图表示方法,可以把整个图、图中的子图、图中的某个点、图中的某个边等实体以一个向量来表示,把实体结构的相似度计算转换为向量之间的距离的度量,减少了存储和计算的复杂度,提高了样本库的更新和查询性能。而且本发明实施例可以实现搜索相似的图、子图、点或边,扩大了搜索范围。
请参见图1,图1为本发明提供的相似实体搜索方法的应用场景图,如图1所示,该应用场景包括终端100、服务器110和实体数据库120。终端100与服务器110之间通过网络通信连接,服务器110和实体数据库120之间可以通过实体数据库接口进行数据交互。实体数据库120用于维护实体样本对应的行为特征向量。
终端100可以接收用户提交一张图,然后由用户确定待搜索实体为整张图,还是这张图中的某个子图,或者是这张图中某个行为节点或者某条行为方向线,终端100将这张图以及待搜索实体发送给服务器110,服务器110可以根据这张图的结构信息提取出全部行为路径,然后结合待搜索实体,从全部行为路径中提取与待搜索实体关联的目标行为路径,进而根据本发明实施例提供的向量的转换方式得到待搜索实体的行为特征向量,然后从与待搜索实体类型匹配的实体数据库中进行相似实体搜索。然后将搜索结果发送给终端100。或者,服务器110也可以基于搜索结果进行其他实体处理,本申请在此不作限定。
在实际应用中,该终端100可以是笔记本电脑、台式电脑、智能终端、智能穿戴设备、平板电脑等。
服务器110可以用独立的服务器或者是多个服务器组成的服务器集群或者分布式系统来实现,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。
终端100以及服务器110可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。终端100和服务器110可通过通信网络进行通信连接,通信网络可以是无线保真(wireless fidelity,wifi)热点网络、蓝牙(bluetooth,BT)网络或近距离无线通信技术(near field communication,NFC)网络等近距离通信网络、还可以是第三代移动通信技术(3rd-generation wireless telephone technology,3G)网络、第四代移动通信技术(the 4th generationmobile communication technology,4G)网络、第五代移动通信技术(5th-generation mobile communication technology,5G)网络、未来演进的公共陆地移动网络(public land mobile network,PLMN)或因特网等。
下面以图1中的服务器110为执行主体,介绍本发明实施例提供的相似实体搜索方法,请参见图2,图2为本发明实施例提供的相似实体搜索方法的示意性流程图,可以包括如下步骤:
S210:获取图数据,并从图数据中提取行为路径集合。
其中,图数据是依据行为关联对象之间的行为关系生成的;图数据包括行为节点和行为方向线的属性数据,行为节点表征行为关联对象;行为方向线表征行为;行为路径是根据行为关联对象之间产生的具有先后顺序的行为形成。
S220:从行为路径集合中提取待搜索实体关联的目标行为路径。
其中,待搜索实体是行为关联对象、行为或者由至少一个行为关联对象和至少一个行为构成。
S230:根据目标行为路径生成待搜索实体的行为特征向量。
S240:基于行为特征向量,确定实体数据库中与待搜索实体之间的相似度满足预设条件的目标实体。
在上述相似实体搜索方法中,首先获取图数据中的行为路径集合,然后从行为路径中确定待搜索实体对应的目标行为路径,然后根据目标行为路径生成待搜索实体对应的特征向量,并基于特征向量在实体数据库中去搜索相似的实体,可以看出,本发明方案中的待搜索实体可以是行为关联对象、行为或者是由至少一个行为关联对象和至少一个行为构成,也就是子图或者整张图,表明本发明方案扩大了搜索范围,能适应更多搜索场景;而且,与上述第一类方法相比较,本发明实施例不直接比较待搜索实体的图结构信息,而是将图结构信息映射到转换为特征向量,进而利用向量相似度确定相似实体,降低了计算复杂度,提高了搜索效率。与上述第二类方法相比较,本发明不需要人工标注训练集,不需要对数据集进行训练,节省了人工投入,降低了计算复杂度,减少了计算时间。
下面本发明实施例将结合相关附图对上述步骤S210至步骤S240进行介绍。
在步骤S210中、获取图数据,并从图数据中提取行为路径集合。
本发明实施例中,图数据是依据行为关联对象之间的行为关系生成的,图数据可以表征行为主体和行为对象之间的行为模式,比如,在实际应用中,图数据可以但不限于是:程序的调用图、用户的社交行为图、设备之间的通信行为图等等。
其中,图数据包括行为节点和行为方向线的属性数据,行为节点表征行为关联对象,行为关联对象包括行为主体和行为对象。
比如,在程序的调用图中,行为节点可以是程序中的各个函数;在用户的社交行为图中,行为节点可以是人和物;在设备的通信行为图中,行为节点可以是各种设备。
可以理解的是,每个行为节点在图中的角色并不唯一,其在一种行为关系中是行为主体,在另一个行为关系中又可能是行为对象。
比如,在用户的社交行为图中,用户A向用户B发送一封邮件T,此时,用户B是行为对象,用户B将邮件T转发给用户C,此时,用户B是行为主体。
行为方向线表征行为,比如:调用、点击、发送、转发等,一条行为方向线连接两个行为节点且并由行为主体对应的行为节点指向行为对象对应的行为节点。
比如,继续以上述例子来说,用户A、用户B和用户C分别对应三个行为节点,其中,用户A和用户B之间的行为方向线由用户A指向用户B,行为方向线表征发送邮件T;用户B和用户C之间的行为方向线由用户B指向用户C,行为方向线表征转发邮件T。
行为路径是根据行为关联对象之间产生的具有先后顺序的行为形成,即任意两个行为节点之间的行为和行为节点所组成路径,比如,在上述例子中存在三条行为路径,分别为:“用户A->发送邮件T->用户B”、“用户B->转发邮件T->用户C”和“用户A->发送邮件T->用户B->转发邮件T->用户C”。
本发明实施例中后续为了方便描述,将每个行为节点和行为方向线均以编号进行标识。
作为可选地实施方式,上述步骤S210的实施方式可以包括如下步骤:
步骤a1:针对任意两个行为节点,沿行为方向线的方向,提取任意两个行为节点之间的全部行为节点和全部行为方向线,组成一条行为路径。
步骤a2:提取路径长度在预设长度范围内的全部行为路径并去重,得到行为路径集合。
本发明实施例中,提取图中任意两个不同行为节点之间的所有的路径长度在预设长度范围内的简单路径,作为行为路径,其中,简单路径是路径中所有行为节点均不重复的路径。行为路径包括起点和终点以及起点和终点之间的全部行为节点和行为方向线得到序列,比如上述用户A向用户B发送邮件T,对应的行为路径为[用户A,发送邮件T,用户B]。
其中,路径长度可以定义为一条行为路径中包含的行为方向线的数量。预设长度范围可以表示为[lmin,lmax],lmin表征最小长度阈值,lmax表征最大长度阈值,其中lmin大于0,lmin小于等于lmax。对于lmin和lmax的具体大小,可以结合行为路径的实际长度来确定,比如设置lmin为1,lmax为2,此处不作限定。
为了方便理解上述实施方式,本发明实施例以设备之间的通信行为图为例,对上述步骤S210进行详细说明。
请参见图3,图3为本发明实施例提供的一种通信行为图,其中,每个其中实线框表示行为节点的属性数据集合,虚线框表示行为方向线的属性数据集合,属性数据集合中包括每个属性对应的属性名和属性值。
如图3所示,通过上述步骤a1至步骤a2提取的行为路径集合如表1所示,其中行为节点和行为方向线均以id标识。
表1
获得图数据以及其对应的行为路径集合之后,还可以先对行为节点和行为方向线各自的属性数据进行处理,目的是提前确定出各种行为属性的每种属性值对应的权重,这可以提高后续行为特征向量转换的效率。
因此,请参见图4,图4为本发明实施例提供的相似实体搜索方法的另一种示意性流程图,在获取属性数据之后,本发明实施例可以先执行如下步骤:
S211:从图数据库中各张图样本包含的行为节点和行为方向线的属性数据中,确定每张图样本对应的全部行为属性以及每个行为属性对应的属性值;
本发明实施例中,对一个行为节点或者行为方向线而言,不是所有的属性数据均会参与实体相似性评估。比如,在图3中,组成图的行为节点和行为方向线的属性数据分别如表2和表3所示。
表2
表3
行为方向线的基本属性 | 属性值 |
id | 2022 |
起点id | 1002 |
终点id | 2001 |
通信目标端口 | 9669 |
通信协议 | udp |
行为时间 | 2022-2-110:30:23 |
其中,行为节点的属性中id不参与相似性比较,ip、地理位置、请求次数、以及响应时间参与相似度计算,因此选择ip、地理位置、请求次数、以及响应时间等作为行为属性。行为方向线的属性中id、起点id、终点id、行为时间不参与相似性比较,通信目标端口、通信协议参与相似度计算,因此选择通信目标端口、通信协议等属性。
需要说明是,哪些属性作为行为属性均参与相似性比较,可以由用户可根据实际需求选择,或者,用户也可以根据实际需求提前在计算机设备内设置筛选规则,然后由计算机设备筛选规则自动确定行为属性,此处不作限定。
S212:针对每张图样本,填充各个行为节点和各个行为方向线的行为属性中的属性缺失值。
例如:“地理位置”缺失属性值,可将其填充为空字符串,“请求次数”的属性值缺失,可将其填充为0,“响应时间”的属性值缺失,可将其填充为0.0。
S213:将连续型行为属性对应的属性值离散化,然后将全部属性值转换为文本类型。
例如:“响应时间”是连续型属性,将其属性值1.3、2.6、3.9离散化为1、2、3,然后将其转为文本类型“1”、“2”、“3”,将离散性属性通信目标端口的属性值转为文本类型“9669”。
S214:根据行为节点总数和全部行为节点具有的行为属性中每个属性值的出现次数,确定行为节点对应的行为属性具有的各个属性值的权重,根据行为方向线总数和全部行为方向线具有的行为属性中每个属性值的出现次数,确定行为方向线对应的行为属性具有的各个属性值的权重。
本发明实施例中,可以通过公式(1)计算权重:
wij=ln(n/cij)…(1)
其中wij为行为属性i的属性值j的权重,n是全部图样本中行为节点总数或行为方向线总数,cij是行为节点或者行为方向线对应的行为属性i所具有的属性值j的出现次数。
例如:假设图数据库中有100张图样本,这些图样本共有1000个行为节点,这些行为节点具有的行为属性“地理位置”,其中“地理位置”出现了属性值“北京”共200次,那么行为属性“地理位置”中属性值“北京”的权重为:wij=ln(n/cij)=ln(1000/200)=1.60。
可以理解的是,图数据库中的全部图样本可以作为训练集,从中统计每种行为属性的各个属性值对应的权重,比如,在100张图中出现北京的次数越多,北京这个特征的权重就越低,此时若待搜索实体是一张图,需要从图数据库中的这100张图中找出是否有相似的图,如果给定的图中出现了北京这个属性值,它的权重可以根据图数据库里的100张图样本预先计算出来。
通过上述实施方式确定每种行为属性的每种属性值的权重之后,本发明实施例可以建立一个属性-权重表,这样后续可以直接通过查表的方式确定种行为属性的每个属性值的权重,提高了处理效率。
在实际实施过程中,如果待搜索实体出现的某个属性在属性-权重表中未出现过,可根据具体情况将其权重设为本表中所有权重的最大值或平均值。
在执行完上述实施方式之后,即可针对待搜索实体进行相应的特征提取,请参见步骤S220。
在步骤S220中、从行为路径集合中,提取待搜索实体关联的目标行为路径。
本发明实施例中,待搜索实体可以是行为关联对象、行为或者由至少一个行为关联对象和至少一个行为构成,下面就这些情况分别介绍。
场景一:待搜索实体是行为关联对象。
本发明实施例中,待搜索实体是行为关联对象,即图数据中行为节点,那么,提取以这个行为节点自身为起点,以所有其他行为节点为终点,长度不超过最大长度阈值lmax的行为路径,其中,lmax可以根据实际需求进行设置,此处不作限定,所以上述步骤S220的实施方式可以是:
从行为路径集合中,提取以待搜索实体为起点且路径长度小于或等于最大长度阈值的行为路径,作为目标行为路径。
例如,对于图3中的id为0001的行为节点,提取以其自身为起点,以所有其他行为节点为终点,长度不超过预设的长度区间最大值lmax(假设为2)的目标行为路径如表4所示。
表4
起点id | 终点id | 目标行为路径 |
0001 | 0002 | [0001,2001,0002] |
0001 | 0003 | [0001,2002,0003] |
0001 | 0004 | [0001,2001,0002,2003,0004] |
场景二:待搜索实体是行为。
本发明实施例中,待搜索实体是行为,即图数据中的行为方向线,那么,分别提取以其起点和终点为起点,以所有其他点为终点,长度不超过最大长度阈值与预设值之差(即lmax-t)的目标行为路径,其中,预设值也可以根据实际需求进行设置,例如t为1,所以上述步骤S220的实施方式可以是:
确定待搜索实体关联的两个目标行为节点,并从行为路径集合中,提取以每个目标行为节点为起点且路径长度小于或等于最大长度阈值与预设值之差的行为路径,作为目标行为路径。
例如,对于图3中id为2001的行为方向线,其关联的两个行为节点的id分别为0001和0002,提取分别以0001和0002为起点,以所有其他行为节点为终点,长度不超过最大长度阈值lmax(假设为2)和预设值(假设为1)之差(即2-1=1)的所有行为路径,去掉空序列并去重,得到的目标行为路径如表5所示。
表5
起点id | 终点id | 目标行为路径 |
0001 | 0002 | [0001,2001,0002] |
0001 | 0003 | [0001,2002,0003] |
0002 | 0004 | [0002,2003,0004] |
场景三:待搜索实体至少有一个行为关联对象和至少一个行为构成。
在场景三中,待搜索实体可以是整张图,还可以是图中的某个子图,那么可以分为如下两种情况:
情况一:当待搜索实体是整张图,那么步骤S210得到的行为路径集合中行为路径即为目标行为路径。
情况二:当搜索实体图中的某个子图,可以将子图看作是一个单独的图,然后根据上述步骤a1和步骤a2,提取子图中任意两个不同行为节点之间的目标行为路径。
在实施过程中,可以按照如下方式确定子图对应的目标行为路径:
从图数据中确定出至少一个目标行为节点和至少一个目标行为方向线;
根据目标行为节点之间关联的目标行为方向线,构建子图;
在子图中,针对任意两个目标行为节点,沿目标行为方向线的方向,提取任意两个目标行为节点之间的全部目标行为节点和全部目标行为方向线,组成一条目标行为路径;
剔除路径长度不在预设长度范围内的目标行为路径并去重,得到子图对应的目标行为路径。
作为另外一种实施方式,在确定了构建子图的目标行为节点和目标行为方向线之后,可以从行为路径集合中直接提取包含所述目标行为节点和目标行为方向线的行为路径作为目标行为路径。
例如,继续参见图3,待搜索实体可以是图3所示的整张通信行为图,还可以是通信行为图中的子图,比如,由行为节点id为0001、0002、0003,行为方向线id为2001、2002组成的子图如图5所示,图5为本发明实施例提供的通信行为图的一张子图,针对图5,提取到的目标行为路径如表6所示。
表6
起点id | 终点id | 目标行为路径 |
0001 | 0002 | [0001,2001,0002] |
0001 | 0003 | [0001,2002,0003] |
通过上述实施方式可以看出,本发明实施例实体搜索范围可以满足图、子图、图中某个点、图中某个边等这些实体的搜索需求,适用场景更广。
比如,在实际应用中,当需要识别疑似诈骗人员的用户时,可以从用户的行为关系图中提取用户的行为路径;当需要识别疑似诈骗行为的某种行为时,也可以从行为关系图中提取该行为的行为路径。获得的目标行为路径可以转换成用户或者行为的特征向量,作为后续相似性计算的数据基础,下面本发明实施例将介绍如何进行特征向量转换的实施方式,请参见步骤S230。
在步骤S230中、根据目标行为路径,生成待搜索实体的行为特征向量。
本发明实施例中,行为特征向量是待搜索实体的行为特征的向量表示,后续可以把待搜索实体的结构相似度计算转换为行为特征向量之间的距离的度量,减少了存储和计算的复杂度,提高了样本库的更新和查询性能。
针对上述步骤S230,本发明实施例提供了如图6所示的实施方式,图6为本发明实施例提供的步骤S230的示意性流程图,可以包括如下步骤:
S230-1:根据预设长度范围提取每条目标行为路径包含的全部子路径。
为了方便理解,假设预设长度范围中lmin为1,lmax为2,一条目标行为路径为[0001,2001,0002,2003,0004,2004,0003],提取的子路径有五条:[0001,2001,0002]、[0002,2003,0004]、[0004,2004,0003]、[0001,2001,0002,2003,0004]、[0002,2003,0004,2004,0003]。
在实施过程中,还需要对提取到的全部子路径进行预处理,去掉空路径,去掉重复的子路径。
本发明实施例提取了长度位于一定范围内而非特定长度的子路径进行特征向量转换,既可以保证提取的特征可以反映整个结构信息又减少了计算复杂度。
S230-2:将每条子路径中的每个路径节点转换成行为属性字符串序列。
其中,行为属性字符串序列集合内包含行为节点和行为方向线各自对应的行为属性字符串序列,一个行为属性字符串序列中又包含多个行为属性字符串;行为属性字符串是对行为关联对象执行行为时产生的行为属性数据进行拼接得到的,属性名和属性值之间可加入分割符。
其中,每个行为属性字符串由名称、属性值和位置序号拼接而成,可以表示为:属性名_属性值_位置序号。其中,位置序号表征该行为属性字符串对应的行为节点或者行为方向线在子路径中的顺序。
将一条子路径的中包含的行为节点和行为方向线依次替换成它们各自对应的行为属性字符串,就可以得到一个行为属性字符串序列。
比如,假设一条子路径为[0001,2001,0002],id为0001的行为节点包含的行为属性有ip、地理位置、请求次数和响应时间,将行为属性和每个行为属性对应的属性值以及该行为节点对应的位置序号进行拼接,得到行为节点001的行为属性字符串,表示为:["ip_220.181.41.13_0","地理位置_北京_0","请求次数_100_0","响应时间_1_0"],那么子路径[0001,2001,0002]转换成的行为属性字符串序列后可以表示为:
[["ip_220.181.41.13_0","地理位置_北京_0","请求次数_100_0","响应时间_1_0"],["通信目标端口_9669_1","通信协议_udp_1],["ip_220.181.41.14_2","地理位置_上海_2","请求次数_200_2","响应时间_2_2"]]。
因此,在对子路径转换时,本发明实施例给出了如下实施方式:
步骤b1:获取每个路径节点对应的多个行为属性数据。
步骤b2:按照路径节点在子路径中的路径顺序,为每个行为属性数据配置位置序号。
本发明实施例中,位置序号就是子路径中行为节点和行为方向线在路径中的顺序,可以按照从起点到终点的方向从数值0开始依次编号,当然也可以用其他数值进行编号,此处不作限定。
步骤b3:将配置后的每个行为属性数据拼接成行为字符串,并将全部行为字符串按照路径顺序排列,得到行为属性字符串序列。
按照路径顺序将全部行为属性数据进行组合,得到行为属性字符串序列。
最终,一条目标行为路径对应的全部子路径和每条子路径对应的行为属性字符串序列可以如表7所示,表7目标路径[0001,2001,0002,2003,0004,2004,0003]在lmin为1且lmax为2的情况下得到的结果。
表7
S230-3:将每条子路径对应的行为属性字符串序列进行向量转换,得到每条子路径对应的预设维度的向量。
本发实施例中,从上述表7可以看出,每条子路径可以用一个行为属性字符串序列集合来表示,每个行为属性字符串序列又包括多个行为属性字符串,本发明实施例先将每个行为属性字符串序列进行向量转换,得到每条子路径对应的向量表示,然后将全部子路径的向量表示进行逐位相加得到每条目标路径对应的行为特征向量,所以本发明实施例将给出将每个行为属性字符串序列进行向量转换的实施方式,即步骤S230-3可以包括如下步骤:
步骤c1:计算每个行为属性字符串的哈希值,并将哈希值转换为预设维度的二进制向量。
本发明实施例中,每个行为属性字符串是由属性名-属性值-位置序号拼接而成,将每个行为属性字符串进行向量表示的可以是:
首先:计算每个行为属性字符串的哈希值,并将每个哈希值转换为预设维度的二进制向量。
比如:“地理位置_北京_0”,可得到其hash值:2708033235164955397。将hash值的二进制表示的每位映射到d维上对应位置,可以将最高位映射到第0维,最低维映射到d-1维,也可以将最高维映射到d-1维,最低维映射到0维,得到一个d维的向量,d可以根据计算机设备的处理能力自行设置,比如d是64位,那么最终转换为64维的向量表示。
例如:2708033235164955397用2进制来表示为:0010010110010100110111011110000100101101111101011000001100000101,那么,将最高位映射到第0维,…,最低维映射到d-1维,得到的d维向量为:[0,0,1,0,0,...,1,0,1]。
步骤c2:把每个二进制向量中的数值零替换成数值负一,并将替换后的二进制向量与行为属性字符串对应的权重相乘,得到每个行为属性字符串对应的向量表示;
从上述示例可以看出,每个行为属性字符串对应的二进制向量是由数值零和数值一组成,但是为了让向量能够尽可能映射到整个向量空间中,本发明实施例采用将数值将每个二进制向量中的数值零替换成数值负一,那么上述示例就变成[-1,-1,1,-1,-1,...,1,-1,1]。
继续参见上述例子,假设“地理位置_北京_0”对应的权重是1.6,那么最终“地理位置_北京_0”这个行为属性字符串对应的向量表示为:[-1.6,-1.6,1.6,-1.6,-1.6,...,1.6,-1.6,1.6]。
通过上述实施方式可以得到每个行为属性字符串对应的向量表示,然后执行步骤c3可以得到每条子路径对应的向量。
步骤c3:把全部向量表示逐位相加,得到每条子路径对应的向量。
比如:一条子路径对应的行为属性字符串序列的集合为:
[["ip_220.181.41.13_0","地理位置_北京_0","请求次数_100_0","响应时间_1_0"],["通信目标端口_9669_1","通信协议_udp_1],["ip_220.181.41.14_2","地理位置_上海_2","请求次数_200_2","响应时间_2_2"]]。
通过上述步骤c1至c4得到该条子路径对应的各个行为属性字符串、每个行为属性字符串以及这条子路径最终的向量表示如表8所示。
表8
行为属性表示字符串 | 向量 |
ip_220.181.41.13_0 | [-1.3,1.3,1.3,-1.3,...] |
地理位置_北京_0 | [-1.6,-1.6,1.6,-1.6,...] |
... | ... |
通信目标端口_9669_1 | [-2.5,2.5,2.5,-2.5,...] |
... | ... |
ip_220.181.41.14_2 | [-0.7,-0.7,0.7,-0.7,...] |
... | ... |
该子路径的64维向量表示 | [23.6,-10.1,-2.35,16.3,...] |
本发明实施例中,为了避免各条子路径对应的向量表示的数据差异对结果的影响,还可以将每条子路径的向量正则化,即让向量的模等于1,将正则化后结果作为子路径的向量。
S230-4:将全部向量逐位相加得到目标行为路径的行为特征向量。
比如,参见表9,表9是各个子路径对应的行为属性字符串序列以及向量,将这些子路径的向量逐位相加后得到的行为特征向量如表9的最后一行所示。
表9
通过上述步骤S230的实施方式可以确定待搜索实体对应的行为特征向量,实施时,可以先按照上述实施方式将所有实体样本转为行为特征向量并存入通用的开源向量检索引擎中,当用户提交某个待搜索实体的结构信息来查询其相似结构的实体时,首先将用户提交的实体的结构按步骤S230转为特征向量,在向量检索引擎中检索与其距离小于某指定阈值的若干个最近邻向量,从这些向量对应的实体中筛选出与查询实体相同类型的实体,即为用户所需的结构相似的实体。因此,本发明实施例可以通过步骤S240进行相似实体搜索,参见步骤S240。
在步骤S240中、基于行为特征向量,确定实体数据库中与待搜索实体之间的相似度满足预设条件的目标实体。
本发明实施例中,实体数据库可以用来维护多个实体样本各自的行为特征向量,每种类型的实体样本对应一个实体数据库,实体样本可以是如下任意一种:图,图中的子图、行为关联对象(即图中的行为节点)、行为(即图中的行为方向线)。
可以理解的是,在本发明实施例中,当待搜索实体为图或者子图时就选取图数据库,当待搜索实体为行为关联对象时就选取行为关联对象数据库,以此类推。
本发明实施例中,待搜索实体和实体数据库中实体样本的相似度可以用特征向量之间的距离来度量,当距离小于预设阈值时就满足相似度条件。
比如,假设相似度阈值为0.7,图3所示的通信行为图是实体数据库中的一个实体样本,其对应的行为特征向量为:
[0.2783903109527157,0.2433175158720586,-0.30031080787812636,
0.021920496925410687,...]。
当用户提交了如图7所示的一个待搜索实体,首先按照步骤S210至步骤S240的实施方式将图7转换成一个行为特征向量为:[0.04319342127906801,0.04319342127906801,-0.04319342127906801,
0.04319342127906801,...],将该行为特征向量与实体数据库中各个实体样本的行为特征向量进行相似度计算,发现图3对应的行为特征向量与图7对应的行为特征向量的欧式距离为0.34488564779735215,小于距离阈值0.7,因此判断图3与图7相似。
当用户提交了如图8所示的一个待搜索实体,图8所示的图的行为特征向量为[0.05892556509887897,0.2946278254943948,-0.05892556509887897,0.05892556509887897,...],和图3对应的行为特征向量的距离是0.9272280478256059,大于距离阈值0.7,因此判断图3和图8不相似。
从上述示例可以看出,本发明实施例把实体结构的相似度计算转换为向量之间的距离的度量,减少了存储和计算的复杂度,提高了样本库的更新和查询性能。
基于相同的发明构思,本申请实施例还提供一种相似实体搜索装置,该相似实体搜索装置如图9所示,图9为本发明实施例提供的相似实体搜索装置的功能模块图,该相似实体搜索装置300可包括:提取模块310,转换模块320和搜索模块330。
提取模块310,用于:获取图数据,并从图数据中提取行为路径集合;
其中,图数据是依据行为关联对象之间的行为关系生成的;图数据包括行为节点和行为方向线的属性数据,行为节点表征行为关联对象;行为方向线表征行为;行为路径是根据行为关联对象之间产生的具有先后顺序的行为形成;
提取模块310,还用于:从行为路径集合中提取待搜索实体关联的目标行为路径;其中,待搜索实体是行为关联对象、行为或者由至少一个行为关联对象和至少一个行为构成;
转换模块320,用于根据目标行为路径生成待搜索实体的行为特征向量;
搜索模块330,用于:基于行为特征向量,确定实体数据库中与待搜索实体之间的相似度满足预设条件的目标实体。
可以理解的是,提取模块310,转换模块320和搜索模块330可以协同的执行图2中的各个步骤以实现相应的技术效果。
在可选的实施方式中,提取模块310具体用于:针对任意两个行为节点,沿行为方向线的方向,提取任意两个行为节点之间的全部行为节点和全部行为方向线,组成一条行为路径;提取路径长度在预设长度范围内的全部行为路径并去重,得到行为路径集合。
在可选的实施方式中,当待搜索实体为行为关联对象,提取模块310具体用于:从行为路径集合中,提取以待搜索实体为起点且路径长度小于或等于最大长度阈值的行为路径,作为目标行为路径。
在可选的实施方式中,当待搜索实体为行为,提取模块310具体用于:确定待搜索实体关联的两个目标行为节点,并从行为路径集合中,提取以每个目标行为节点为起点且路径长度小于或等于最大长度阈值与预设值之差的行为路径,作为目标行为路径。
在可选的实施方式中,转换模块320具体用于:根据预设长度范围提取每条目标行为路径包含的全部子路径;将每条子路径中的每个路径节点转换成行为属性字符串序列;其中,路径节点为行为关联对象和行为方向线;行为属性字符串序列中的每个行为属性字符串由路径节点对应的属性名称、属性值和位置序号组成;将每条子路径对应的行为属性字符串序列进行向量转换,得到每条子路径对应的预设维度的向量;将全部向量逐位相加得到目标行为路径的行为特征向量。
在可选的实施方式中,转换模块320具体用于:获取每个路径节点对应的多个行为属性数据;按照路径节点在子路径中的路径顺序,为每个行为属性数据配置位置序号;将配置后的每个行为属性数据拼接成行为字符串,并将全部行为字符串按照路径顺序排列,得到行为属性字符串序列。
在可选的实施方式中,转换模块320具体用于:计算每个行为属性字符串的哈希值,并将哈希值转换为预设维度的二进制向量;把每个二进制向量中的数值零替换成数值负一,并将替换后的二进制向量与行为属性字符串对应的权重相乘,得到每个行为属性字符串对应的向量表示。把全部向量表示逐位相加,得到每条子路径对应的向量。
在可选的实施方式中,相似实体搜索装置300还可包括:确定模块,用于:从图数据库中各张图样本包含的各个行为节点和各个行为方向线的属性数据中,确定每张图样本对应的全部行为属性以及每个行为属性对应的属性值;针对每张图样本,填充各个行为属性中的属性缺失值;将连续型行为属性对应的属性值离散化,然后将全部属性值转换为文本类型;根据行为节点总数和全部行为节点具有的行为属性中每个属性值的出现次数,确定行为节点对应的行为属性具有的各个属性值的权重,根据行为方向线总数和全部行为方向线具有的行为属性中每个属性值的出现次数,确定行为方向线对应的行为属性具有的各个属性值的权重。
需要说明的是,本申请以上实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
基于上述实施例,本申请实施例还提供一种计算机设备的示意图,该计算机设备400可以但不限于是图1中的服务器110,用于实现上述实施例中的相似实体搜索方法。参阅图10所示,图10为本发明实施例提供的计算机设备的结构框图,计算机设备400包括:存储器401、处理器402、通信接口403、和总线404,该存储器401、处理器402和通信接口403相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。
可选的,总线404可以是外设部件互连标准(peripheral componentinterconnect,PCI)总线或扩展工业标准结构(extended industry standardarchitecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图10中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
在本申请实施例中,处理器402可以是通用处理器、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储器401中,处理器402读取存储器401中的程序指令,结合其硬件完成上述方法的步骤。
在本申请实施例中,存储器401可以是非易失性存储器,比如硬盘(harddiskdrive,HDD)或固态硬盘(solid-state drive,SSD)等,还可以是易失性存储器(volatile memory),例如RAM。存储器还可以是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本申请实施例中的存储器还可以是电路或者其它任意能够实现存储功能的装置,用于存储指令和/或数据。
存储器401可用于存储软件程序及模块,如本发明实施例提供的相似实体搜索装置300的指令/模块,可以软件或固件(firmware)的形式存储于存储器401中或固化在计算机设备400的操作系统(operating system,OS)中,处理器402通过执行存储在存储器401内的软件程序及模块,从而执行各种功能应用以及数据处理。该通信接口403可用于与其他节点设备进行信令或数据的通信。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
可以理解,图10所示的结构仅为示意,计算机设备400还可以包括比图10中所示更多或者更少的组件,或者具有与图10所示不同的配置。图10所示的各组件可以采用硬件、软件或其组合实现。
基于以上实施例,本申请还提供了一种可读存储介质,存储介质中存储有计算机程序,计算机程序被计算机执行时,使得计算机执行以上实施例提供的相似实体搜索方法。
基于以上实施例,本申请实施例还提供了一种计算机程序,当计算机程序在计算机上运行时,使得计算机执行以上实施例提供的相似实体搜索方法。
基于以上实施例,本申请实施例还提供了一种芯片,芯片用于读取存储器中存储的计算机程序,用于执行以上实施例提供的相似实体搜索方法。
本申请实施例中还提供一种计算机程序产品,包括指令,当其在计算机上运行时,使得计算机执行以上实施例提供的相似实体搜索方法。
本申请实施例是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (12)
1.一种相似实体搜索方法,其特征在于,所述方法包括:
获取图数据,并从所述图数据中提取行为路径集合;
其中,所述图数据是依据行为关联对象之间的行为关系生成的;所述图数据包括行为节点和行为方向线的属性数据,所述行为节点表征所述行为关联对象;所述行为方向线表征行为;行为路径是根据所述行为关联对象之间产生的具有先后顺序的所述行为形成;
从所述行为路径集合中提取待搜索实体关联的目标行为路径;
其中,所述待搜索实体是所述行为关联对象、所述行为或者由至少一个所述行为关联对象和至少一个所述行为构成;
根据所述目标行为路径生成所述待搜索实体的行为特征向量;
基于所述行为特征向量,确定实体数据库中与所述待搜索实体之间的相似度满足预设条件的目标实体。
2.根据权利要求1所述的方法,其特征在于,获取图数据,并从所述图数据中提取行为路径集合,包括:
针对任意两个所述行为节点,沿所述行为方向线的方向,提取任意两个所述行为节点之间的全部行为节点和全部行为方向线,组成一条所述行为路径;
提取路径长度在预设长度范围内的全部所述行为路径并去重,得到所述行为路径集合。
3.根据权利要求1所述的方法,其特征在于,当所述待搜索实体为所述行为关联对象,从所述行为路径集合中提取待搜索实体关联的目标行为路径,包括:
从所述行为路径集合中,提取以所述待搜索实体为起点且路径长度小于或等于最大长度阈值的行为路径,作为所述目标行为路径。
4.根据权利要求1所述的方法,其特征在于,当所述待搜索实体为所述图数据的子图,从所述行为路径集合中提取待搜索实体关联的目标行为路径,包括:
从所述图数据中确定出至少一个目标行为节点和至少一个目标行为方向线;
根据所述目标行为节点之间关联的所述目标行为方向线,构建所述子图;
在所述子图中,针对任意两个所述目标行为节点,沿所述目标行为方向线的方向,提取任意两个所述目标行为节点之间的全部目标行为节点和全部目标行为方向线,组成一条所述目标行为路径;
剔除路径长度不在预设长度范围内的所述目标行为路径并去重,得到所述子图对应的目标行为路径。
5.根据权利要求1所述的方法,其特征在于,当所述待搜索实体为所述行为,从所述行为路径集合中提取待搜索实体关联的目标行为路径,包括:
确定所述待搜索实体关联的两个目标行为节点,并从所述行为路径集合中,提取以每个所述目标行为节点为起点且路径长度小于或等于最大长度阈值与预设值之差的行为路径,作为所述目标行为路径。
6.根据权利要求1所述的方法,其特征在于,根据所述目标行为路径生成所述待搜索实体的行为特征向量,包括:
根据预设长度范围提取每条所述目标行为路径包含的全部子路径;
将每条所述子路径中的每个路径节点转换成行为属性字符串序列;
其中,所述路径节点为所述行为关联对象和所述行为方向线;所述行为属性字符串序列中的每个所述行为属性字符串由所述路径节点对应的属性名称、属性值和位置序号组成;
将每条所述子路径对应的行为属性字符串序列进行向量转换,得到每条所述子路径对应的预设维度的向量;
将全部所述向量逐位相加得到所述目标行为路径的行为特征向量。
7.根据权利要求6所述的方法,其特征在于,将每条所述子路径中的每个路径节点转换成行为属性字符串序列,包括:
获取每个所述路径节点对应的多个行为属性数据;
按照所述路径节点在所述子路径中的路径顺序,为每个所述行为属性数据配置所述位置序号;
将配置后的每个所述行为属性数据拼接成行为字符串,并将全部所述行为字符串按照所述路径顺序排列,得到所述行为属性字符串序列。
8.根据权利要求6所述的方法,其特征在于,将每条所述子路径对应的行为属性字符串序列进行向量转换,得到每条所述子路径对应的预设维度的向量,包括:
计算每个所述行为属性字符串的哈希值,并将所述哈希值转换为所述预设维度的二进制向量;
把每个所述二进制向量中的数值零替换成数值负一,并将替换后的所述二进制向量与所述行为属性字符串对应的权重相乘,得到所述每个所述行为属性字符串对应的所述向量表示;
把全部所述向量表示逐位相加,得到每条所述子路径对应的所述向量。
9.根据权利要求1所述的方法,其特征在于,在从所述行为路径集合中,提取待搜索实体关联的目标行为路径之前,所述方法还包括:
从图数据库中各张图样本包含的各个所述行为节点和各个所述行为方向线的所述属性数据中,确定每张所述图样本对应的全部行为属性以及每个所述行为属性对应的属性值;
针对每张所述图样本,填充各个所述行为属性中的属性缺失值;
将连续型行为属性对应的属性值离散化,然后将全部所述属性值转换为文本类型;
根据行为节点总数和全部所述行为节点具有的所述行为属性中每个所述属性值的出现次数,确定所述行为节点对应的所述行为属性具有的各个所述属性值的权重,根据行为方向线总数和全部所述行为方向线具有的所述行为属性中每个所述属性值的出现次数,确定所述行为方向线对应的所述行为属性具有的各个所述属性值的权重。
10.一种相似实体搜索装置,其特征在于,包括:提取模块,转换模块和搜索模块;
所述提取模块,用于:获取图数据,并从所述图数据中提取行为路径集合;
其中,所述图数据是依据行为关联对象之间的行为关系生成的;所述图数据包括行为节点和行为方向线的属性数据,所述行为节点表征所述行为关联对象;所述行为方向线表征行为;行为路径是根据所述行为关联对象之间产生的具有先后顺序的所述行为形成;
所述提取模块,还用于:从所述行为路径集合中提取待搜索实体关联的目标行为路径;其中,所述待搜索实体是所述行为关联对象、所述行为或者由至少一个所述行为关联对象和至少一个所述行为构成;
所述转换模块,用于根据所述目标行为路径生成所述待搜索实体的行为特征向量;
所述搜索模块,用于:基于所述行为特征向量,确定实体数据库中与所述待搜索实体之间的相似度满足预设条件的目标实体。
11.一种计算机设备,其特征在于,包括:
处理器;
用于存储处理器可执行计算机程序的存储器;其中,所述处理器被配置为执行如权利要求1-9任意一项所述的方法。
12.一种可读存储介质,其特征在于,所述可读存储介质存储有计算机程序,所述计算机程序可由处理器执行以完成权利要求1-9任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211736332.7A CN115905309A (zh) | 2022-12-30 | 2022-12-30 | 相似实体搜索方法、装置、计算机设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211736332.7A CN115905309A (zh) | 2022-12-30 | 2022-12-30 | 相似实体搜索方法、装置、计算机设备及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115905309A true CN115905309A (zh) | 2023-04-04 |
Family
ID=86476414
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211736332.7A Pending CN115905309A (zh) | 2022-12-30 | 2022-12-30 | 相似实体搜索方法、装置、计算机设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115905309A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116541262A (zh) * | 2023-07-07 | 2023-08-04 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置、设备以及可读存储介质 |
CN117236721A (zh) * | 2023-11-09 | 2023-12-15 | 湖南财信数字科技有限公司 | 企业异常行为的监控方法、系统、计算机设备及存储介质 |
-
2022
- 2022-12-30 CN CN202211736332.7A patent/CN115905309A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116541262A (zh) * | 2023-07-07 | 2023-08-04 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置、设备以及可读存储介质 |
CN116541262B (zh) * | 2023-07-07 | 2024-03-01 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置、设备以及可读存储介质 |
CN117236721A (zh) * | 2023-11-09 | 2023-12-15 | 湖南财信数字科技有限公司 | 企业异常行为的监控方法、系统、计算机设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115905309A (zh) | 相似实体搜索方法、装置、计算机设备及可读存储介质 | |
CN110019876B (zh) | 数据查询方法、电子设备及存储介质 | |
WO2022116418A1 (zh) | 商标侵权的自动化判定方法、装置、电子设备和存储介质 | |
CN111090807B (zh) | 一种基于知识图谱的用户识别方法及装置 | |
US10089411B2 (en) | Method and apparatus and computer readable medium for computing string similarity metric | |
CN111368289B (zh) | 一种恶意软件检测方法和装置 | |
CN111701247B (zh) | 用于确定统一账号的方法和设备 | |
WO2019148712A1 (zh) | 钓鱼网站检测方法、装置、计算机设备和存储介质 | |
CN111209317A (zh) | 一种知识图谱异常社区检测方法及装置 | |
US20230056760A1 (en) | Method and apparatus for processing graph data, device, storage medium, and program product | |
Moia et al. | Similarity digest search: A survey and comparative analysis of strategies to perform known file filtering using approximate matching | |
CN113806582A (zh) | 图像检索方法、装置、电子设备和存储介质 | |
CN109614521B (zh) | 一种高效的隐私保护子图查询处理方法 | |
WO2015165230A1 (zh) | 一种社交消息的监测方法及装置 | |
CN110083731B (zh) | 图像检索方法、装置、计算机设备及存储介质 | |
CN111177719A (zh) | 地址类别判定方法、装置、计算机可读存储介质及设备 | |
CN116032741A (zh) | 一种设备识别方法、装置、电子设备和计算机存储介质 | |
CN114328942A (zh) | 关系抽取方法、装置、设备、存储介质和计算机程序产品 | |
CN111736774B (zh) | 冗余数据的处理方法、装置、服务器及存储介质 | |
CN117807245A (zh) | 网络资产图谱中节点特征提取方法及相似节点搜索方法 | |
CN117351334A (zh) | 图像审核方法和相关设备 | |
Mohammed et al. | Evidence identification in heterogeneous data using clustering | |
CN111222136A (zh) | 恶意应用归类方法、装置、设备及计算机可读存储介质 | |
CN113992625A (zh) | 域名源站探测方法、系统、计算机及可读存储介质 | |
CN113407576A (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 |