CN110798467B - 目标对象识别方法、装置、计算机设备及存储介质 - Google Patents
目标对象识别方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN110798467B CN110798467B CN201911047043.4A CN201911047043A CN110798467B CN 110798467 B CN110798467 B CN 110798467B CN 201911047043 A CN201911047043 A CN 201911047043A CN 110798467 B CN110798467 B CN 110798467B
- Authority
- CN
- China
- Prior art keywords
- node
- seed
- nodes
- network
- similarity value
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 74
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 53
- 238000005295 random walk Methods 0.000 claims abstract description 43
- 238000004364 calculation method Methods 0.000 claims abstract description 35
- 230000008569 process Effects 0.000 claims description 22
- 230000009191 jumping Effects 0.000 claims description 13
- 238000013508 migration Methods 0.000 claims description 6
- 230000005012 migration Effects 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 20
- 238000012545 processing Methods 0.000 description 10
- 230000006399 behavior Effects 0.000 description 9
- 238000004891 communication Methods 0.000 description 8
- 238000012546 transfer Methods 0.000 description 8
- 230000002159 abnormal effect Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 238000010801 machine learning Methods 0.000 description 6
- 208000001613 Gambling Diseases 0.000 description 5
- 230000008859 change Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000002547 anomalous effect Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- SLXKOJJOQWFEFD-UHFFFAOYSA-N 6-aminohexanoic acid Chemical compound NCCCCCC(O)=O SLXKOJJOQWFEFD-UHFFFAOYSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000035515 penetration Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 239000000725 suspension Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请是关于一种目标对象识别方法、装置、计算机设备及存储介质,涉及网络安全技术领域。该方法包括:对网络关系图中的各个节点的PageRank值进行初始化;按照随机游走算法迭代计算,获得网络关系图中的各个节点与种子节点集合之间的相似值;根据各个节点与种子节点集合之间的相似值,从各个节点中识别出与至少一个种子节点具有相同节点类型的目标节点;将目标节点对应的网络对象确定为目标对象。本方案只需要在网络关系图中预先指定少量特定类型的种子节点,即可以通过迭代计算筛选出与种子节点相同类型的目标节点,并将目标节点对应的网络对象识别为目标对象,提高网络对象识别的准确性。
Description
技术领域
本申请涉及网络安全技术领域,特别涉及一种目标对象识别方法、装置、计算机设备及存储介质。
背景技术
在网络技术的不断发展,网络安全技术也越来越得到重视。其中,如何识别网络中可能的恶意用户(或者恶意用户使用的设备)是网络安全技术中的重要研究方向。
在相关技术中,通常训练机器学习模型来识别网络中的恶意用户或设备。例如,开发人员预先搜集已标注的恶意用户的特征信息,比如,恶意用户的用户属性、网络社区属性等等,然后根据恶意用户的特征信息训练机器学习模型;在识别阶段,将待识别用户的特征信息输入训练好的机器学习模型,由机器学习模型输出该待识别用户是否为恶意用户的识别结果。
然而,相关技术中机器学习模型的识别准确性取决于训练数据的规模,而网络中恶意用户或设备的数量稀少,很难采集到足够数量的训练数据,导致训练出的机器学习模型准确性较低,对于恶意用户或设备的识别效果较差。
发明内容
本申请实施例提供了一种目标对象识别方法、装置、计算机设备及存储介质,可以提高从网络中识别出恶意用户或恶意设备等目标对象的准确性,该技术方案如下:
一方面,提供了一种目标对象识别方法,所述方法包括:
获取网络关系图,所述网络关系图由节点和节点之间的边构成;所述网络关系图中的每个节点对应一个网络对象;
对所述网络关系图中的各个节点的佩奇排名PageRank值进行初始化;所述网络关系图中包含至少一个种子节点;
按照随机游走算法迭代计算,获得所述网络关系图中的各个节点与种子节点集合之间的相似值;所述种子节点集合中包含所述至少一个种子节点;
当所述各个节点与种子节点集合之间的相似值收敛时,根据所述各个节点与所述种子节点集合之间的相似值,从所述各个节点中识别出与所述至少一个种子节点具有相同节点类型的目标节点;
将所述目标节点对应的网络对象确定为目标对象。
一方面,提供了一种目标对象识别装置,该装置包括:
图获取模块,用于获取网络关系图,所述网络关系图由节点和节点之间的边构成;所述网络关系图中的每个节点对应一个网络对象;
初始化模块,用于对所述网络关系图中的各个节点的佩奇排名PageRank值进行初始化;所述网络关系图中包含至少一个种子节点;
迭代计算模块,用于按照随机游走算法迭代计算,获得所述网络关系图中的各个节点与种子节点集合之间的相似值;所述种子节点集合中包含所述至少一个种子节点;
节点识别模块,用于当所述各个节点与种子节点集合之间的相似值收敛时,根据所述各个节点与所述种子节点集合之间的相似值,从所述各个节点中识别出与所述至少一个种子节点具有相同节点类型的目标节点;
对象确定模块,用于将所述目标节点对应的网络对象确定为目标对象。
在一种可能的实现方式中,所述随机游走算法包括:
从所述至少一个种子节点中的每个节点开始,以d的概率向当前节点指向的下一个节点游走,并以1-d的概率跳转回所述种子节点集合中的任意一个节点;
其中,0<d<1。
在一种可能的实现方式中,所述随机游走算法还包括:
若当前节点是所述网络关系图中的终止节点,则以d的概率跳转回所述种子节点集合中的任意一个节点。
在一种可能的实现方式中,所述迭代计算模块,用于,
在每一次迭代计算过程中,对于所述网络关系图中的第一节点,以下述公式计算所述第一节点与所述种子节点集合之间的相似值:
其中,所述第一节点是非种子节点中的任意一个节点,所述非种子节点是所述各个节点中,除所述种子节点集合之外的节点;PPR(t)是所述节点t在本次迭代计算之前与所述种子节点集合之间的相似值;PPRs(t)为本次迭代计算获得的,节点t与所述种子节点集合之间的相似值;d为游走概率,N为指向所述节点t的节点个数,Nout(i)表示节点i的所有出边的条数,Nin(t)表示所有指向节点t的节点。
在一种可能的实现方式中,所述迭代计算模块,用于,
在每一次迭代计算过程中,对于所述网络关系图中的第二节点,以下述公式计算所述第二节点与所述种子节点集合之间的相似值:
其中,所述第二节点是所述种子节点集合中的任意一个节点,PPR(t)是所述各个节点在本次迭代计算之前与所述种子节点集合之间的相似值;PPRs(t)为本次迭代计算获得的,节点t与所述种子节点集合之间的相似值;d为游走概率,N为指向所述节点t的节点个数,Nout(i)表示节点i的所有出边的条数,Nin(t)表示所有指向节点t的节点;Ns表示所述种子节点集合包含的节点个数,D表示由终止节点组成的集合;PPRe表示所述终止节点e在本次迭代计算之前与所述种子节点集合之间的相似值。
在一种可能的实现方式中,所述迭代计算模块,用于,
在每一次迭代计算过程中,通过spark引擎从参数服务器拉取所述各个节点在本次迭代之前与所述种子节点集合之间的相似值;
通过所述spark引擎,根据所述各个节点在本次迭代之前与所述种子节点集合之间的相似值进行计算,得到本次迭代计算获得的,所述各个节点与所述种子节点集合之间的相似值。
在一种可能的实现方式中,所述装置还包括:
参数更新模块,用于在每一次迭代计算后,将本次迭代计算获得的,所述各个节点与所述种子节点集合之间的相似值更新至所述参数服务器。
在一种可能的实现方式中,所述节点识别模块,用于,
将所述各个节点中的非种子节点中,与所述种子节点集合之间的相似值大于相似度阈值的节点确定为所述目标节点。
在一种可能的实现方式中,所述装置还包括:
阈值确定模块,用于在所述节点识别模块将所述各个节点中的非种子节点中,与所述种子节点集合之间的相似值大于相似度阈值的节点确定为所述目标节点之前,根据所述各个节点与种子节点集合之间的相似值,确定所述相似度阈值。
在一种可能的实现方式中,
所述网络关系图中的各个节点为用户节点,所述网络关系图中的边表示两个节点对应的用户之间存在资金往来;
或者,
所述网络关系图中的各个节点包括用户节点和终端节点,所述网络关系图中的边表示用户节点对应的用户与终端节点对应的终端之间存在登录关系。
一方面,提供了一种计算机设备,该计算机设备包含处理器和存储器,存储器中存储由至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现上述目标对象识别方法。
一方面,提供了一种计算机可读存储介质,该存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现上述目标对象识别方法。
本申请提供的技术方案可以包括以下有益效果:
通过构建包含至少一个种子节点的网络关系图,并按照随机游走的方式计算网络中各个节点分别与种子节点之间的相似性,只需要在网络关系图中预先指定少量特定类型的种子节点,即可以通过迭代计算筛选出与种子节点相同类型的目标节点,并将目标节点对应的网络对象识别为目标对象,从而实现从网络中准确识别出特定类型的网络对象,提高网络对象识别的准确性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1是本申请各个实施例涉及的一种网络系统的系统构成图;
图2是本申请一个示例性的实施例提供的目标对象识别方法的流程示意图;
图3是图2所示实施例涉及的基于个性化的PageRank算法识别异常对象的示意图;
图4是本申请一个示例性的实施例提供的目标对象识别方法的流程示意图;
图5是本申请一个示例性的实施例提供的恶意用户识别流程示意图;
图6是根据一示例性实施例示出的目标对象识别装置的结构方框图;
图7是根据一示例性实施例示出的计算机设备的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
应当理解的是,在本文中提及的“若干个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
本申请提供一种目标对象识别方法,可以用于准确的识别出网络中某一特定类型的目标对象,比如网络中的恶意用户或者恶意设备等。为了便于理解,下面对本申请涉及的几个名词进行解释。
1)PageRank算法
PageRank又称网页排名、网页级别、Google左侧排名或佩奇排名,是一种由根据网页之间相互的超链接计算的技术。
在网页排序中,PageRank算法可以计算每一个网页的PageRank值,然后根据这个值的大小对网页的重要性进行排序。其思想是模拟一个悠闲的上网者,该上网者首先随机选择一个网页打开,然后在这个网页上呆了几分钟后,跳转到该网页所指向的链接,这样无所事事、漫无目的地在网页上跳来跳去,而PageRank算法就是估计这个悠闲的上网者分布在各个网页上的概率。
其中,经典的PageRank算法通过随机游走方法计算网络中节点(例如网页)的影响力。用户每次随机游走,有d的概率访问下一个节点,或者1-d的概率跳转到任意一个节点开始新一轮的随机游走。
2)随机游走
本申请中,随机游走是指在网络中,当前节点以均匀分布的方式随机的访问该节点指向的下一个节点的过程。
3)入度
本申请中,一个节点的入度,是指在该节点所在的有向图中,指向该节点的边数的和。
4)出度
本申请中,一个节点的出度,是在该节点所在的有向图中,从该节点出发,指向其他节点的边数的和。
5)终止节点
本申请中终止节点是指在一个有向图中,只有入度但没有出度的节点。在某些场景中,终止节点也可被称为悬挂节点。
6)个性化的PageRank算法(Personalized PageRank)
本申请中个性化的PageRank算法继承了经典PageRank算法,其与经典PageRank算法的最大区别来自于随机游走中的跳转行为,其中,个性化的PageRank要求用户每次随机游走过程中,发生随机跳转时不可任意选择节点,而是只能跳转到一些特定的节点。
个性化的PageRank算法经常用在推荐场景中,对网络中的各个用户进行聚类计算。假设给定网络中两个节点s和t,PPRs(t)表示从节点s开始随机游走并停止在节点t的概率。随机游走方法为:从节点s开始随机游走,每到一个节点会有d的概率继续游走,从当前节点的邻居节点以均匀分布方式随机选择一个节点游走,或者以1-d的概率停止游走并且回到初始节点s。通过上述随机游走算法得到的PPRs(t)的公式可以表示如下:
其中,d表示跳转概率,N表示节点个数,Nout(i)表示节点i的所有出边,Nin(t)表示所有指向节点t的其它节点。
按照上述随机游走算法经过多次随机游走后,每个节点被访问到的概率趋于收敛,这个时候的概率值PPRs(t)就可以用来表示节点s和节点t的相似性。在推荐场景中,通过个性化的PageRank算法计算网络中每两个节点之间的相似性,相似性高的节点(比如用户)可以聚类为同一类用户,从而为后续的推荐业务提供依据。
请参考图1,其示出了本申请各个实施例涉及的一种网络系统构成图。如图1所示,该系统包括若干个终端120和服务器140。可选的,该系统还包括数据库160。
终端120可以是具有网络连接功能的终端设备,比如,终端120可以是手机、平板电脑、电子书阅读器、智能眼镜、智能手表、MP3播放器(Moving Picture Experts GroupAudio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture ExpertsGroup Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机和台式计算机等等。
在本申请实施例中,用户可以通过终端120接入网络,并在网络中执行一系列的用户行为,比如,网络社交行为、网络金融行为等等。
服务器140是一台服务器,或者由若干台服务器,或者是一个虚拟化平台,或者是一个云计算服务中心。
服务器140可以包括为使用终端120的用户提供各类网络服务(比如网络社交服务、网络金融服务等)的服务器。
服务器140还包括用于从使用终端120的用户,或者,从各个终端120中识别出某一特定类型的目标对象(比如恶意用户、恶意设备以及优质用户等对象)的目标对象识别服务器。
上述数据库160可以是Redis数据库,或者,也可以是其它类型数据库。其中,数据库160用于存储各类数据,比如,存储用户信息、用户行为数据以及上述服务器140提供的功能业务所产生的业务数据等等。
终端120与服务器140之间通过通信网络相连。可选的,该通信网络是有线网络或无线网络。
可选的,该系统还可以包括管理设备(图1未示出),该管理设备与服务器120之间通过通信网络相连。可选的,通信网络是有线网络或无线网络。
可选的,上述的无线网络或有线网络使用标准通信技术和/或协议。网络通常为因特网、但也可以是任何网络,包括但不限于局域网(Local Area Network,LAN)、城域网(Metropolitan Area Network,MAN)、广域网(Wide Area Network,WAN)、移动、有线或者无线网络、专用网络或者虚拟专用网络的任何组合)。在一些实施例中,使用包括超文本标记语言(Hyper Text Mark-up Language,HTML)、可扩展标记语言(Extensible MarkupLanguage,XML)等的技术和/或格式来代表通过网络交换的数据。此外还可以使用诸如安全套接字层(Secure Socket Layer,SSL)、传输层安全(Transport Layer Security,TLS)、虚拟专用网络(Virtual Private Network,VPN)、网际协议安全(Internet ProtocolSecurity,IPsec)等常规加密技术来加密所有或者一些链路。在另一些实施例中,还可以使用定制和/或专用数据通信技术取代或者补充上述数据通信技术。
请参考图2,其示出了本申请一个示例性的实施例提供的目标对象识别方法的流程示意图。该目标对象识别方法可以由计算机设备执行。比如,该计算机设备可以是图1所示系统中的服务器140。如图2所示,该目标对象识别方法可以包括以下步骤:
步骤210,获取网络关系图,该网络关系图由节点和节点之间的边构成;该网络关系图中的每个节点对应一个网络对象。
在网络中,每个网络对象可以视为一个节点,两个节点之间的边表示这两个节点之间的网络关系。由网络中的各个节点,以及各个节点之间的边构成的图就是上述网络关系图。
例如,以网络中的网页为例,每个网页可以视为一个节点,当某一个网页A中包含另一个网页B的链接时,在网络关系图中,该网页A和网页B各自对应的节点之间就存在一条边。
再例如,以网络中的用户为例,每个用户可以视为一个节点,当用户a和用户b是网络中的好友时,在网络关系图中,该用户a和用户b各自对应的节点之间就存在一条边。
节点之间的边可以是有向边,也可以是无向边。比如,当某一个网页A中包含网页B的链接,但网页B不包含网页A的链接时,在网络关系图中,该网页A和网页B各自对应的节点之间的边的方向可以由网页A对应的节点指向网页B对应的节点。再比如,当用户a和用户b是网络中的好友时,该用户a和用户b各自对应的节点之间的边可以是无向边。
其中,节点之间的边是有向边的网络关系图可以称为有向图,节点之间的边是无向边的网络关系图可以称为无向图。
节点之间的边可以不区分权重(或者说权重相同),也可以有各自不同的权重;节点之间的边的权重通常表示两个节点的网络关系的紧密程度。相应的,节点之间的边不区分权重的网络关系图可以称为无权图,而节点之间的边区分权重的网络关系图可以称为加权图。
其中,节点之间的边的方向和权重可以同时存在,比如,对于节点之间的边存在方向,且区分权重的网络关系图,可以称为有向加权图。
步骤220,对该网络关系图中的各个节点的佩奇排名PageRank值进行初始化;该网络关系图中包含至少一个种子节点。
在本申请实施例中,种子节点可以是已经确定为指定类型的网络对象所对应的节点。
比如,当需要从网络中识别出恶意用户时,开发人员可以预先通过人工确认等方式确定网络中的少量恶意用户,并将这些恶意用户对应在网络关系图中的节点确定为种子节点,目的是通过这些种子节点,从网络中识别出同为恶意用户的目标用户。
步骤230,按照随机游走算法迭代计算,获得该网络关系图中的各个节点与种子节点集合之间的相似值;该种子节点集合中包含该至少一个种子节点。
可选的,上述随机游走算法可以包括:从该至少一个种子节点中的每个节点开始,以d的概率向当前节点指向的下一个节点游走,并以1-d的概率跳转回该种子节点集合中的任意一个节点;其中,0<d<1。
步骤240,当该各个节点与种子节点集合之间的相似值收敛时,根据该各个节点与该种子节点集合之间的相似值,从该各个节点中识别出与该至少一个种子节点具有相同节点类型的目标节点。
在本申请实施例中,上述步骤230可以多次迭代执行,每次迭代更新各个节点与种子节点集合之间的相似值,直至各个节点与种子节点集合之间的相似值不再变化或者变化幅度小于变化阈值时,可以认为各个节点与种子节点集合之间的相似值收敛。
本申请实施例所示的方案,可以借助于个性化的PageRank算法的思想,对网络中的每个节点,计算该节点与少量种子节点之间的相似性,进而根据计算出的相似性,从网络中识别出与该少量种子节点类似的目标节点。
步骤250,将该目标节点对应的网络对象确定为目标对象。
在本申请实施例中,目标对象是上述至少一个种子节点对应的网络对象的同类对象,比如,目标对象和上述种子节点对应的网络对象可以都是某一类型的用户、设备或者网络内容(比如网页)等。
请参考图3,其示出了本申请实施例涉及的,基于个性化的PageRank算法识别异常对象的示意图。如图3所示,计算机设备首先根据网络中各个节点之间的关联关系构建网络关系图(S31),其中,构建的网络关系图中有部分节点是开发人员预先标注为异常对象对应的种子节点。计算机设备对网络关系图中的各个节点的PageRank值进行初始化(S32),其中,种子节点和其它节点初始化的PageRank值可以不同。在初始化PageRank值之后,计算机设备即可以按照类似于个性化的PageRank算法,计算网络关系图中各个节点分别相对于种子节点集合的PageRank值(S33),每次迭代计算后对各个节点的PageRank值进行更新(S34),并判断各个节点的PageRank值是否收敛(S35),若未收敛,则返回S33继续下一轮迭代计算,否则,以各个节点的PageRank值作为各个节点是异常节点的概率,确定各个节点中的异常节点(S36)。
综上所述,在本申请实施例所示的方案中,通过构建包含至少一个种子节点的网络关系图,并按照随机游走的方式计算网络中各个节点分别与种子节点之间的相似性,只需要在网络关系图中预先指定少量特定类型的种子节点,即可以通过迭代计算筛选出与种子节点相同类型的目标节点,并将目标节点对应的网络对象识别为目标对象,从而实现从网络中准确识别出特定类型的网络对象,提高网络对象识别的准确性。
上述图2所示实施例提供的方案可以应用于从网络中识别出某些特定类型的对象。比如,可以通过计算资金和设备网路的异常用户个性化的PageRank值,来识别网络中的异常用户。在面向金融风控、企业IT等重要业务场景中,可以通过个性化的PageRank值挖掘潜在赌博用户、欺诈用户等异常用户,对互联网金融等业务都有着重要意义。
请参考图4,其示出了本申请一个示例性的实施例提供的目标对象识别方法的流程示意图。该目标对象识别方法可以由计算机设备执行。比如,该计算机设备可以是图1所示系统中的服务器140。如图4所示,该目标对象识别方法可以包括以下步骤:
步骤401,构建网络关系图,该网络关系图由节点和节点之间的边构成;该网络关系图中的每个节点对应一个网络对象。
在本申请实施例中,计算机设备可以预先采集网络中的各个网络对象之间的关联数据,其中,该关联数据是表示两个网络对象之间的存在指定关联关系的数据。
其中,上述指定关联关系可以是由开发人员预先根据业务需求或者业务目标指定的关联关系。
比如,当业务目标是通过用户之间的资金/资源转移实现从网络中的各个用户中识别出具有金融诈骗或者赌博等行为的恶意用户时,上述指定关联关系可以是用户之间进行资金转移的关系。例如,一个用户a向另一个用户b转账,则可以认为该用户a和用户b之间存在指定关联关系(即资金转移的关系),用户a向用户b进行转账的行为数据(比如转账金额、转账时间、转账次数等)可以作为用户a和用户b之间的关联数据。
再比如,当业务目标是通过用户登录终端(比如图1所示系统中的终端)的行为从网络中的各个用户中识别出具有金融诈骗或者赌博等行为的恶意用户时,上述指定关联关系可以是用户与终端之间的登录关系。例如,一个用户a登录过一个终端c,则可以认为该用户a和终端c之间存在指定关联关系(即登录关系),用户a登录终端c的行为数据(比如登录次数、单次登录时长以及登录时间等)可以作为用户a和终端c之间的关联数据。
其中,上述各个网络对象可以是同一种类型的网络对象,比如,可以都是用户。
在一种可能的实现方式中,该网络关系图中的各个节点为用户节点,该网络关系图中的边表示两个节点对应的用户之间存在资金往来。
例如,当业务目标是通过用户之间的资金/资源转移实现从网络中的各个用户中识别出具有金融诈骗或者赌博等行为的恶意用户时,计算机设备可以根据各个用户之间的资金往来对应的关联关系数据,以用户为节点,对两个存在资金往来的用户之间设置边,从而构建上述网络关系图。
其中,上述各个网络对象也可以不是同一种类型的网络对象,比如,上述各个网络对象可以同时包括用户和终端。
在另一种可能的实现方式中,上述该网络关系图中的各个节点包括用户节点和终端节点,该网络关系图中的边表示用户节点对应的用户与终端节点对应的终端之间存在登录关系。
例如,当业务目标是通过用户登录终端的行为从网络中的各个用户中识别出具有金融诈骗或者赌博等行为的恶意用户时,计算机设备可以根据各个用户与终端之间的登录数据作为关联关系数据,分别以用户和终端为节点,对存在登录关系的用户和终端之间设置边,从而构建上述网络关系图。
步骤402,对网络关系图进行分布式存储。
在本申请实施例中,当网络关系图数据量较大时,可以对网络关系图进行分布式存储。
其中,在对网络关系图进行分布式存储时,可以先对网络关系图进行切分,并对切分后的网络关系图进行分布式存储。
其中,对网络关系图进行切分后进行分布式存储时,可以按照节点进行切分和存储,也可以按照边进行切分和存储。
其中,在按照节点对网络关系图进行切分存储时,可以将网络关系图中的各个节点作为唯一一份数据进行存储,并将各条边复制为多份,分别存储在不同的存储位置。
在按照边对网络关系图进行切分存储时,可以将网络关系图中的各条边作为唯一一份数据进行存储,并将各个节点复制为多份,并分别存储在不同的存储位置。
步骤403,对网络关系图中的种子节点和其它节点的PageRank值进行初始化。
其中,网络关系图中包含至少一个种子节点,该至少一个种子节点组成的集合称为种子节点集合。
在本申请实施例中,计算机设备对网络关系图中的各个节点进行PageRank值进行初始化时,可以根据种子节点的个数进行初始化赋值。
比如,假设网络关系图中的种子节点的个数为N,N为大于或者等于2的整数,则计算机设备在对网络关系图中的各个节点进行PageRank值的初始化时,可以将各个种子节点的PageRank值赋值为1/N,并将其它各个节点的PageRank值赋值为0。
在本申请实施例中,上述网络关系图中的种子节点可以是在网络关系图构建时指定的,比如,开发人员预先指定网络中某些网络对象为指定类型的网络对象,计算机设备在构建网络关系图时,将开发人员指定的网络对象对应的节点标记为种子节点。
或者,上述网路关系图中的种子节点也可以是在进行PageRank值的初始化时设置的。比如,开发人员预先不指定网络对象,计算机设备在构建网络关系图时,也不标注出哪些节点为种子节点。在对网络关系图中的各个节点进行PageRank值的初始化之前,开发人员根据业务需求或者业务目标,将网络关系图中的部分节点标记为种子节点,计算机设备可以根据开发人员标记的种子节点进行PageRank值的初始化赋值。
步骤404,按照随机游走算法计算获得该网络关系图中的各个节点与种子节点集合之间的相似值。
其中,上述随机游走算法可以基于个性化的PageRank算法,即在随机游走时,从至少一个种子节点中的每个节点开始,以d的概率向当前节点指向的下一个节点游走,并以1-d的概率跳转回该种子节点集合中的任意一个节点;其中,0<d<1。
在本申请实施例中,计算机设备在计算节点之间的相似性时,基于个性化的PageRank算法进行计算,以个性化的PageRank值(也称为PPR值)作为相似性的度量。并且,在该计算过程中,计算机设备只需要计算每个节点分别与种子结点集合之间的相似性,不需要对每个节点分别计算与其它所有节点之间的相似性,因此只需要少量的计算即可以得到所需要的相似值,计算量较少,计算速度较快。
在上述网络关系图中,存在一些终止节点(也称为悬挂节点),这些节点只有入度,没有出度,因此,如果对于这些节点也按照以d的概率向当前节点指向的下一个节点游走,并以1-d的概率跳转回该种子节点集合中的任意一个节点的方式进行游走的话,可能会导致这些终止节点的PPR值过高,而这些终止节点并不一定是目标节点,这样后续进行识别时,很可能将这些终止节点误识别为目标节点,从而影响识别的准确性。
针对上述的问题,在本申请所示的方案中,上述随机游走算法还包括:若当前节点是该网络关系图中的终止节点,则以d的概率跳转回该种子节点集合中的任意一个节点。
也就是说,在本申请所示的方案中,对于网络关系图中的终止节点,当游走到该终止节点时,跳转回该种子节点集合中的任意一个节点的几率,与在其它非终止节点随机向下一节点游走几率相同,从而降低了在终止节点处停止游走的概率,避免终止节点的PPR值过高的问题,从而提高后续识别的准确性。
在本申请实施例中,对于种子节点和非种子节点,其每次迭代过程中PPR值的计算方式也有所不同。
可选的,在每一次迭代计算过程中,对于该网络关系图中的第一节点,以下述公式计算该第一节点与该种子节点集合之间的相似值:
其中,该第一节点是非种子节点中的任意一个节点,该非种子节点是该各个节点中,除该种子节点集合之外的节点;PPR(t)是该节点t在本次迭代计算之前与该种子节点集合之间的相似值;PPRs(t)为本次迭代计算获得的,节点t与该种子节点集合之间的相似值;d为游走概率,N为指向该节点t的节点个数,Nout(i)表示节点i的所有出边的条数,Nin(t)表示所有指向节点t的节点。
可选的,在每一次迭代计算过程中,对于该网络关系图中的第二节点,以下述公式计算该第二节点与该种子节点集合之间的相似值:
其中,该第二节点是该种子节点集合中的任意一个节点,PPR(t)是该各个节点在本次迭代计算之前与该种子节点集合之间的相似值;PPRs(t)为本次迭代计算获得的,节点t与该种子节点集合之间的相似值;d为游走概率,N为指向该节点t的节点个数,Nout(i)表示节点i的所有出边的条数,Nin(t)表示所有指向节点t的节点;Ns表示该种子节点集合包含的节点个数,D表示由终止节点组成的集合;PPRe表示该终止节点e在本次迭代计算之前与该种子节点集合之间的相似值。
在本申请实施例中,对于t∈S的节点,PPRs(t)由三个部分构成,即邻居节点的随机游走概率、从其他任意节点跳转回S的概率、以及从终止节点跳转回S的概率,因此,在每次迭代计算中,对于非种子结点集合中的节点,可以按照上述公式2进行计算。
在本申请实施例中,在进行上述PPR值计算的过程中,计算机设备可以通过spark引擎来进行节点PPR值的计算。
其中,Spark是专为大规模数据处理而设计的快速通用的计算引擎,其是一个围绕速度、易用性和复杂分析构建的大数据处理框架,Spark提供了一个全面、统一的框架用于管理各种有着不同性质(文本数据、图表数据等)的数据集和数据源(批量数据或实时的流数据)的大数据处理的需求,能够极大的提高大数据的处理速度。
可选的,在按照随机游走算法迭代计算,获得该网络关系图中的各个节点与种子节点集合之间的相似值时,计算机设备在每一次迭代计算过程中,通过spark引擎从参数服务器拉取该各个节点在本次迭代之前与该种子节点集合之间的相似值;通过该spark引擎,根据该各个节点在本次迭代之前与该种子节点集合之间的相似值进行计算,得到本次迭代计算获得的,该各个节点与该种子节点集合之间的相似值。
由于spark不可变的特性,通过传统的spark编写分布式的PageRank算法,其节点属性不能直接更新,需要复制新的弹性分布式数据集(Resilient Distributed Datasets,RDD),导致计算流程很长,占用内存过多。
而通过本申请实施例上述方案,在通过spark引擎来进行节点PPR值的计算时,引入了一个参数服务器,将各个节点的PPR值(相当于节点属性)直接保存到参数服务器,而不需要在算法中更改节点属性,在每次迭代计算是,通过spark从参数服务器拉取参数(即每个节点的PPR值),这样可以极大的节省存储空间和计算流程的长度,提高计算效率。
通过本申请上述实施例所示的方案,基于Spark和参数服务器的实现个性化的PageRank算法,可以对十亿级节点数百亿边的网络进行计算,相对传统的基于Spark实现的算法性能可以提升5-10倍。
可选的,在每一次迭代计算后,计算机设备将本次迭代计算获得的,该各个节点与该种子节点集合之间的相似值更新至该参数服务器,以便后续继续调用进行迭代计算或者目标节点识别。
在本申请实施例中,计算机设备通过spark引擎进行一次迭代计算完成后,再将计算结果push回参数服务器,这样可以进一步节省存储空间。
步骤405,判断各个节点与种子节点集合之间的相似值是否收敛;若是,进入步骤406,否则,返回步骤404。
在本申请实施例中,在每一轮迭代计算之后,计算机设备可以计算迭代前后,各个节点与种子节点集合之间的相似值的变化幅度,如果不变化或者变化幅度较小,则可以认为各个节点与种子节点集合之间的相似值收敛。
例如,在一种可能的实现方式中,在每一轮迭代计算之后,计算机设备可以计算迭代前后,各个节点与种子节点集合之间的相似值的公差,当该公差小于公差阈值时,确定各个节点与种子节点集合之间的相似值收敛,此时,可以进入不再走406;反之,如果该公差不小于公差阈值,则确定各个节点与种子节点集合之间的相似值未收敛,返回步骤404继续进行下一次迭代计算。
步骤406,获取相似度阈值。
在本申请实施例中,计算机设备可以获取开发人员预先设置的相似度阈值。
其中,上述相似度阈值可以由开发人员根据业务需求或者业务目标进行人工设置并输入计算机设备。
可选的,计算机设备可以根据该各个节点与种子节点集合之间的相似值,确定该相似度阈值。
在另一种可能的实现方式中,上述相似度阈值也可以由计算机设备根据迭代计算收敛后的结果自动确定。例如,计算机设备可以按照预设的模型对上述各个节点与种子节点集合之间的相似值进行处理,获得模型输出的相似度阈值。
步骤407,根据该各个节点与该种子节点集合之间的相似值以及上述相似度阈值,从各个节点中识别出与至少一个种子节点具有相同节点类型的目标节点。
可选的,计算机设备可以将该各个节点中的非种子节点中,与该种子节点集合之间的相似值大于相似度阈值的节点确定为该目标节点。
步骤408,将该目标节点对应的网络对象确定为目标对象。
综上所述,在本申请实施例所示的方案中,通过构建包含至少一个种子节点的网络关系图,并按照随机游走的方式计算网络中各个节点分别与种子节点之间的相似性,只需要在网络关系图中预先指定少量特定类型的种子节点,即可以通过迭代计算筛选出与种子节点相同类型的目标节点,并将目标节点对应的网络对象识别为目标对象,从而实现从网络中准确识别出特定类型的网络对象,提高网络对象识别的准确性。
此外,本申请实施例对于网络关系图中的终止节点的跳转概率进行调整,避免了终止节点的PPR值过高的问题,提高了目标对象识别的准确性。
另外,本申请实施例基于Spark和参数服务器来实现个性化的PageRank算法,可以极大的提高迭代计算的速度和存储空间占用,提高对目标对象的识别效率。
以上述图2或图4所示的实施例提供的方案应用与从网络中识别出潜在的涉嫌金融诈骗的恶意用户为例,请参考图5,其示出了本申请一个示例性的实施例提供的恶意用户识别流程示意图。如图5所示,该恶意用户识别流程如下:
S51,计算机设备获取网络中各个用户之间的资金往来记录。
在本申请实施例中,计算机设备可以获取某一个或者多个网络金融服务系统中的交易数据,并将交易数据作为各个用户之间的资金往来记录。
其中,每个网络金融服务系统可以是一个提供网络金融服务的网络服务器对应的系统,比如,某第三方支付平台的服务商系统,或者,某个银行平台或者银联平台提供的网络交易系统等。
S52,计算机设备根据各个用户之间的资金往来记录,构建用户节点以及用户节点之间的边组成的网络关系图。
计算机设备以每个用户作为一个节点,并对两个发生了资金往来记录的用户节点之间设置一条边,以构建一个体现各个用户之间的资金往来关系的网络关系图。
可选的,计算机设备可以将上述网络关系图按照节点或者边切分后,存储至分布式存储系统。
S53,管理人员/开发人员根据预先确定的恶意用户,在网络关系图中指定种子节点。
其中,管理人员/开发人员预先根据用户举报或者其它技术手段确定网络中的少量存在金融诈骗行为的恶意用户,并在网络关系图中指定这些恶意用户对应的节点为种子节点。
S54,计算机设备根据种子节点,对网络关系图中各个节点进行PageRank值的初始化赋值。
计算机设备根据管理人员/开发人员指定的种子节点,对网络关系图中各个节点进行PageRank值的初始化赋值。比如,假设种子节点个数为20,则计算机设备设置每个种子节点的PageRank值为1/20,其它非种子节点的PageRank值都为0。
S55,计算机设备将初始化的各个节点的PageRank值存储至参数服务器。
计算机设备对网络关系图中各个节点进行PageRank值的初始化赋值后,直接将各个节点进行PageRank值的初始化赋值存储至参数服务器中,以便后续计算时调用。
S56,计算机设备通过Spark引擎,从参数服务器拉取各个节点的PageRank值,并基于个性化的PageRank算法,计算各个节点分别与种子节点集合之间的PPR值。
S57,计算机设备每次计算后,将各个节点分别与种子节点集合之间的PPR值更新至参数服务器。
在本申请实施例中,计算机设备在基于Spark引擎执行个性化的PageRank算法时,不需要对网络关系图中的各个节点的节点属性(即PPR值)进行修改,而是每次计算时直接从参数服务器拉取各个节点的PPR值并进行计算,一次迭代计算完成后将计算得到的PPR值更新至参数服务器中,从而在迭代计算过程中减少了存储空间和计算时长,提高了迭代计算效率。
S58,计算机设备判断各个节点与种子节点集合之间的PPR值收敛后,将PPR值大于预设阈值的节点确定为目标节点。
S59,计算机设备将目标节点对应的用户确定为恶意用户。
在本申请实施例中,在迭代计算至收敛后,计算机设备可以将PPR值高于阈值(也就是与种子节点相似)的节点对应的用户确定为潜在的嫌金融诈骗的恶意用户。
综上所述,在本申请实施例所示的方案中,通过构建用户之间的资金往来关系的网络关系图,并指定其中少量的恶意用户的节点作为种子节点,然后计算网络中各个节点与种子节点之间的PPR值,该PPR值越大,说明该节点与种子节点越相似,也就越有可能是恶意用户,最后通过收敛的PPR值识别网络中的恶意用户,提高网络对象识别的准确性。
另外,本申请实施例基于Spark和参数服务器来实现个性化的PageRank算法,可以极大的提高迭代计算的速度和存储空间占用,提高对恶意用户的识别效率。
其中,上述图5所示的方案仅以涉嫌金融诈骗的恶意用户识别为例进行举例说明,可选的,上述方案也可以扩展应用到其它网络对象的识别,比如扩展到其它类型的恶意用户,或者其它类型的终端设备或者网页等网络对象的识别,本申请实施例对于待识别的目标对象的类型不做限定。
图6是根据一示例性实施例示出的一种目标对象识别装置的结构方框图。该目标对象识别装置可以通过硬件或者软硬结合的方式实现为计算机设备的全部或者部分,以执行图2或图4对应实施例所示的方法的全部或部分步骤。该目标对象识别装置可以包括:
图获取模块601,用于获取网络关系图,所述网络关系图由节点和节点之间的边构成;所述网络关系图中的每个节点对应一个网络对象;
初始化模块602,用于对所述网络关系图中的各个节点的佩奇排名PageRank值进行初始化;所述网络关系图中包含至少一个种子节点;
迭代计算模块603,用于按照随机游走算法迭代计算,获得所述网络关系图中的各个节点与种子节点集合之间的相似值;所述种子节点集合中包含所述至少一个种子节点;
节点识别模块604,用于当所述各个节点与种子节点集合之间的相似值收敛时,根据所述各个节点与所述种子节点集合之间的相似值,从所述各个节点中识别出与所述至少一个种子节点具有相同节点类型的目标节点;
对象确定模块605,用于将所述目标节点对应的网络对象确定为目标对象。
在一种可能的实现方式中,所述随机游走算法包括:
从所述至少一个种子节点中的每个节点开始,以d的概率向当前节点指向的下一个节点游走,并以1-d的概率跳转回所述种子节点集合中的任意一个节点;
其中,0<d<1。
在一种可能的实现方式中,所述随机游走算法还包括:
若当前节点是所述网络关系图中的终止节点,则以d的概率跳转回所述种子节点集合中的任意一个节点。
在一种可能的实现方式中,所述迭代计算模块603,用于,
在每一次迭代计算过程中,对于所述网络关系图中的第一节点,以下述公式计算所述第一节点与所述种子节点集合之间的相似值:
其中,所述第一节点是非种子节点中的任意一个节点,所述非种子节点是所述各个节点中,除所述种子节点集合之外的节点;PPR(t)是所述节点t在本次迭代计算之前与所述种子节点集合之间的相似值;PPRs(t)为本次迭代计算获得的,节点t与所述种子节点集合之间的相似值;d为游走概率,N为指向所述节点t的节点个数,Nout(i)表示节点i的所有出边的条数,Nin(t)表示所有指向节点t的节点。
在一种可能的实现方式中,所述迭代计算模块603,用于,
在每一次迭代计算过程中,对于所述网络关系图中的第二节点,以下述公式计算所述第二节点与所述种子节点集合之间的相似值:
其中,所述第二节点是所述种子节点集合中的任意一个节点,PPR(t)是所述各个节点在本次迭代计算之前与所述种子节点集合之间的相似值;PPRs(t)为本次迭代计算获得的,节点t与所述种子节点集合之间的相似值;d为游走概率,N为指向所述节点t的节点个数,Nout(i)表示节点i的所有出边的条数,Nin(t)表示所有指向节点t的节点;Ns表示所述种子节点集合包含的节点个数,D表示由终止节点组成的集合;PPRe表示所述终止节点e在本次迭代计算之前与所述种子节点集合之间的相似值。
在一种可能的实现方式中,所述迭代计算模块603,用于,
在每一次迭代计算过程中,通过spark引擎从参数服务器拉取所述各个节点在本次迭代之前与所述种子节点集合之间的相似值;
通过所述spark引擎,根据所述各个节点在本次迭代之前与所述种子节点集合之间的相似值进行计算,得到本次迭代计算获得的,所述各个节点与所述种子节点集合之间的相似值。
在一种可能的实现方式中,所述装置还包括:
参数更新模块,用于在每一次迭代计算后,将本次迭代计算获得的,所述各个节点与所述种子节点集合之间的相似值更新至所述参数服务器。
在一种可能的实现方式中,所述节点识别模块604,用于,
将所述各个节点中的非种子节点中,与所述种子节点集合之间的相似值大于相似度阈值的节点确定为所述目标节点。
在一种可能的实现方式中,所述装置还包括:
阈值确定模块,用于在所述节点识别模块604将所述各个节点中的非种子节点中,与所述种子节点集合之间的相似值大于相似度阈值的节点确定为所述目标节点之前,根据所述各个节点与种子节点集合之间的相似值,确定所述相似度阈值。
在一种可能的实现方式中,
所述网络关系图中的各个节点为用户节点,所述网络关系图中的边表示两个节点对应的用户之间存在资金往来;
或者,
所述网络关系图中的各个节点包括用户节点和终端节点,所述网络关系图中的边表示用户节点对应的用户与终端节点对应的终端之间存在登录关系。
综上所述,在本申请实施例所示的方案中,通过构建包含至少一个种子节点的网络关系图,并按照随机游走的方式计算网络中各个节点分别与种子节点之间的相似性,只需要在网络关系图中预先指定少量特定类型的种子节点,即可以通过迭代计算筛选出与种子节点相同类型的目标节点,并将目标节点对应的网络对象识别为目标对象,从而实现从网络中准确识别出特定类型的网络对象,提高网络对象识别的准确性。
此外,本申请实施例对于网络关系图中的终止节点的跳转概率进行调整,避免了终止节点的PPR值过高的问题,提高了目标对象识别的准确性。
另外,本申请实施例基于Spark和参数服务器来实现个性化的PageRank算法,可以极大的提高迭代计算的速度和存储空间占用,提高对目标对象的识别效率。
图7是根据一示例性实施例示出的一种计算机设备的结构示意图。所述计算机设备可以实现为服务器,比如,该服务器可以是图1所示系统中的服务器140。
所述计算机设备700包括中央处理单元(CPU)701、包括随机存取存储器(RAM)702和只读存储器(ROM)703的系统存储器704,以及连接系统存储器704和中央处理单元701的系统总线705。所述计算机设备700还包括帮助计算机内的各个器件之间传输信息的基本输入/输出系统(I/O系统)706,和用于存储操作系统713、应用程序714和其他程序模块715的大容量存储设备707。
所述基本输入/输出系统706包括有用于显示信息的显示器708和用于用户输入信息的诸如鼠标、键盘之类的输入设备709。其中所述显示器708和输入设备709都通过连接到系统总线705的输入输出控制器710连接到中央处理单元701。所述基本输入/输出系统706还可以包括输入输出控制器710以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器710还提供输出到显示屏、打印机或其他类型的输出设备。
所述大容量存储设备707通过连接到系统总线705的大容量存储控制器(未示出)连接到中央处理单元701。所述大容量存储设备707及其相关联的计算机可读介质为计算机设备700提供非易失性存储。也就是说,所述大容量存储设备707可以包括诸如硬盘或者CD-ROM驱动器之类的计算机可读介质(未示出)。
不失一般性,所述计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、EPROM、EEPROM、闪存或其他固态存储其技术,CD-ROM、DVD或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的系统存储器704和大容量存储设备707可以统称为存储器。
计算机设备700可以通过连接在所述系统总线705上的网络接口单元711连接到互联网或者其它网络设备。
所述存储器还包括一个或者一个以上的程序,所述一个或者一个以上程序存储于存储器中,中央处理器701通过执行该一个或一个以上程序来实现图2或图4所示的方法中的全部或者部分步骤。
本申请实施例还提供一种计算机设备,该计算机设备包括存储器和处理器,存储器中存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并实现上述如图2或图4所述的方法中的全部或者部分步骤。
本申请实施例还提供一种计算机可读存储介质,该可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如图2或图4所述的方法中的全部或者部分步骤。
本申请还提供了一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行上述图2或图4所述的方法中的全部或者部分步骤。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,该计算机可读存储介质可以是上述实施例中的存储器中所包含的计算机可读存储介质;也可以是单独存在,未装配入终端中的计算机可读存储介质。该计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如图2、图3或图5所述的方法中的全部或者部分步骤。
可选地,该计算机可读存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、固态硬盘(SSD,Solid State Drives)或光盘等。其中,随机存取记忆体可以包括电阻式随机存取记忆体(ReRAM,Resistance RandomAccess Memory)和动态随机存取存储器(DRAM,Dynamic Random Access Memory)。上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (13)
1.一种目标对象识别方法,其特征在于,所述方法包括:
获取网络关系图,所述网络关系图由节点和节点之间的边构成;所述网络关系图中的每个节点对应一个网络对象;
对所述网络关系图中的各个节点的佩奇排名PageRank值进行初始化;所述网络关系图中包含至少一个种子节点;
按照随机游走算法迭代计算,获得所述网络关系图中的各个节点与种子节点集合之间的相似值;所述种子节点集合中包含所述至少一个种子节点;所述随机游走算法包括:从所述至少一个种子节点中的每个节点开始,若当前节点是所述网络关系图中的非终止节点,以d的概率向当前节点指向的下一个节点游走,并以1-d的概率跳转回所述种子节点集合中的任意一个节点;其中,0<d<1;
当所述各个节点与种子节点集合之间的相似值收敛时,根据所述各个节点与所述种子节点集合之间的相似值,从所述各个节点中识别出与所述至少一个种子节点具有相同节点类型的目标节点;
将所述目标节点对应的网络对象确定为目标对象。
2.根据权利要求1所述的方法,其特征在于,所述随机游走算法还包括:
若当前节点是所述网络关系图中的终止节点,则以d的概率跳转回所述种子节点集合中的任意一个节点。
3.根据权利要求2所述的方法,其特征在于,所述按照随机游走算法,获得计算所述网络关系图中的各个节点与种子节点集合之间的相似值,包括:
在每一次迭代计算过程中,对于所述网络关系图中的第一节点,以下述公式计算所述第一节点与所述种子节点集合之间的相似值:
其中,所述第一节点是非种子节点中的任意一个节点,所述非种子节点是所述各个节点中,除所述种子节点集合之外的节点;PPR(t是所述节点t在本次迭代计算之前与所述种子节点集合之间的相似值;PPRs(t为本次迭代计算获得的,节点t与所述种子节点集合之间的相似值;d为游走概率,N为指向所述节点t的节点个数,Nout(i)表示节点i的所有出边的条数,Nin(t)表示所有指向节点t的节点。
4.根据权利要求2所述的方法,其特征在于,所述按照随机游走算法计算,获得所述网络关系图中的各个节点与种子节点集合之间的相似值,包括:
在每一次迭代计算过程中,对于所述网络关系图中的第二节点,以下述公式计算所述第二节点与所述种子节点集合之间的相似值:
其中,所述第二节点是所述种子节点集合中的任意一个节点,PPR(t)是所述各个节点在本次迭代计算之前与所述种子节点集合之间的相似值;PPRs(t)为本次迭代计算获得的,节点t与所述种子节点集合之间的相似值;d为游走概率,N为指向所述节点t的节点个数,Nout(i)表示节点i的所有出边的条数,Nin(t)表示所有指向节点t的节点;Ns表示所述种子节点集合包含的节点个数,D表示由终止节点组成的集合;PPRe表示所述终止节点e在本次迭代计算之前与所述种子节点集合之间的相似值。
5.根据权利要求1所述的方法,其特征在于,所述按照随机游走算法迭代计算,获得所述网络关系图中的各个节点与种子节点集合之间的相似值,包括:
在每一次迭代计算过程中,通过spark引擎从参数服务器拉取所述各个节点在本次迭代之前与所述种子节点集合之间的相似值;
通过所述spark引擎,根据所述各个节点在本次迭代之前与所述种子节点集合之间的相似值进行计算,得到本次迭代计算获得的,所述各个节点与所述种子节点集合之间的相似值。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
在每一次迭代计算后,将本次迭代计算获得的,所述各个节点与所述种子节点集合之间的相似值更新至所述参数服务器。
7.根据权利要求1所述的方法,其特征在于,所述当所述各个节点与种子节点集合之间的相似值收敛时,根据所述各个节点与所述种子节点集合之间的相似值,从所述各个节点中识别出与所述至少一个种子节点具有相同节点类型的目标节点,包括:
将所述各个节点中的非种子节点中,与所述种子节点集合之间的相似值大于相似度阈值的节点确定为所述目标节点。
8.根据权利要求7所述的方法,其特征在于,所述将所述各个节点中的非种子节点中,与所述种子节点集合之间的相似值大于相似度阈值的节点确定为所述目标节点之前,还包括:
根据所述各个节点与种子节点集合之间的相似值,确定所述相似度阈值。
9.根据权利要求1所述的方法,其特征在于,
所述网络关系图中的各个节点为用户节点,所述网络关系图中的边表示两个节点对应的用户之间存在资金往来;
或者,
所述网络关系图中的各个节点包括用户节点和终端节点,所述网络关系图中的边表示用户节点对应的用户与终端节点对应的终端之间存在登录关系。
10.一种目标对象识别装置,其特征在于,所述装置包括:
图获取模块,用于获取网络关系图,所述网络关系图由节点和节点之间的边构成;所述网络关系图中的每个节点对应一个网络对象;
初始化模块,用于对所述网络关系图中的各个节点的佩奇排名PageRank值进行初始化;所述网络关系图中包含至少一个种子节点;
迭代计算模块,用于按照随机游走算法迭代计算,获得所述网络关系图中的各个节点与种子节点集合之间的相似值;所述种子节点集合中包含所述至少一个种子节点;所述随机游走算法包括:从所述至少一个种子节点中的每个节点开始,若当前节点是所述网络关系图中的非终止节点,以d的概率向当前节点指向的下一个节点游走,并以1-d的概率跳转回所述种子节点集合中的任意一个节点;其中,0<d<1;
节点识别模块,用于当所述各个节点与种子节点集合之间的相似值收敛时,根据所述各个节点与所述种子节点集合之间的相似值,从所述各个节点中识别出与所述至少一个种子节点具有相同节点类型的目标节点;
对象确定模块,用于将所述目标节点对应的网络对象确定为目标对象。
11.根据权利要求10所述的装置,其特征在于,所述随机游走算法还包括:
若当前节点是所述网络关系图中的终止节点,则以d的概率跳转回所述种子节点集合中的任意一个节点。
12.一种计算机设备,其特征在于,计算机设备包含处理器和存储器,所述存储器中存储由至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1至9任一所述的目标对象识别方法。
13.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1至9任一所述的目标对象识别方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911047043.4A CN110798467B (zh) | 2019-10-30 | 2019-10-30 | 目标对象识别方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911047043.4A CN110798467B (zh) | 2019-10-30 | 2019-10-30 | 目标对象识别方法、装置、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110798467A CN110798467A (zh) | 2020-02-14 |
CN110798467B true CN110798467B (zh) | 2021-10-08 |
Family
ID=69442280
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911047043.4A Active CN110798467B (zh) | 2019-10-30 | 2019-10-30 | 目标对象识别方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110798467B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111552717B (zh) * | 2020-04-23 | 2023-04-18 | 广州市百果园信息技术有限公司 | 一种伪装对象的识别方法、装置、服务器和存储介质 |
CN111988745B (zh) * | 2020-09-02 | 2024-02-20 | 腾讯科技(深圳)有限公司 | 基于WiFi连接数据的目标用户确定方法、装置、设备及介质 |
CN112232834B (zh) * | 2020-09-29 | 2024-04-26 | 中国银联股份有限公司 | 资源账户确定方法、装置、设备和介质 |
CN113365113B (zh) * | 2021-05-31 | 2022-09-09 | 武汉斗鱼鱼乐网络科技有限公司 | 目标节点识别方法及装置 |
CN113742538B (zh) * | 2021-07-16 | 2024-09-27 | 深圳云天励飞技术股份有限公司 | 基于图层级的业务分析方法、装置、电子设备及存储介质 |
CN113900845A (zh) * | 2021-09-28 | 2022-01-07 | 大唐互联科技(武汉)有限公司 | 一种基于神经网络的微服务故障诊断的方法和存储介质 |
CN114511024B (zh) * | 2022-01-28 | 2024-09-10 | 腾讯科技(深圳)有限公司 | 节点分类方法、装置、设备、介质和计算机程序产品 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101661482A (zh) * | 2008-08-27 | 2010-03-03 | 国际商业机器公司 | 在网络中识别相似子图的方法和设备 |
CN102663010A (zh) * | 2012-03-20 | 2012-09-12 | 复旦大学 | 基于标注语义的个性化图像浏览与推荐方法及系统 |
CN103646117B (zh) * | 2013-12-27 | 2016-09-28 | 苏州大学 | 一种基于链接的双语平行网页识别方法及系统 |
CN105335409B (zh) * | 2014-07-31 | 2019-02-01 | 华为技术有限公司 | 一种目标用户的确定方法、设备和网络服务器 |
CN107977386A (zh) * | 2016-10-25 | 2018-05-01 | 航天信息股份有限公司 | 一种识别审计事件中的敏感用户的方法及装置 |
CN107730262B (zh) * | 2017-10-23 | 2021-09-24 | 创新先进技术有限公司 | 一种欺诈识别方法和装置 |
CN110020087B (zh) * | 2017-12-29 | 2021-11-09 | 中国科学院声学研究所 | 一种基于相似度估计的分布式PageRank加速方法 |
CN108287881A (zh) * | 2017-12-29 | 2018-07-17 | 北京理工大学 | 一种基于随机游走关系发现的优化方法 |
CN108345661B (zh) * | 2018-01-31 | 2020-04-28 | 华南理工大学 | 一种基于大规模Embedding技术的Wi-Fi聚类方法及系统 |
CN109947870A (zh) * | 2019-03-26 | 2019-06-28 | 第四范式(北京)技术有限公司 | 特定类型人员的预测装置及方法、计算设备与存储介质 |
-
2019
- 2019-10-30 CN CN201911047043.4A patent/CN110798467B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110798467A (zh) | 2020-02-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110798467B (zh) | 目标对象识别方法、装置、计算机设备及存储介质 | |
US10958748B2 (en) | Resource push method and apparatus | |
US11995559B2 (en) | Enhancing evolutionary optimization in uncertain environments by allocating evaluations via multi-armed bandit algorithms | |
US11694109B2 (en) | Data processing apparatus for accessing shared memory in processing structured data for modifying a parameter vector data structure | |
WO2021174944A1 (zh) | 基于目标对象活跃度的消息推送方法及相关设备 | |
US11403532B2 (en) | Method and system for finding a solution to a provided problem by selecting a winner in evolutionary optimization of a genetic algorithm | |
US11436430B2 (en) | Feature information extraction method, apparatus, server cluster, and storage medium | |
AU2019275615A1 (en) | Classifying user behavior as anomalous | |
WO2022252363A1 (zh) | 数据处理方法、计算机设备以及可读存储介质 | |
US9811527B1 (en) | Methods and apparatus for database migration | |
US10268749B1 (en) | Clustering sparse high dimensional data using sketches | |
CN109471978B (zh) | 一种电子资源推荐方法及装置 | |
KR102144126B1 (ko) | 기업을 위한 정보 제공 장치 및 방법 | |
CN110991789B (zh) | 置信区间的确定方法和装置、存储介质及电子装置 | |
US11645049B2 (en) | Automated software application generation | |
CN107480205A (zh) | 一种进行数据分区的方法和装置 | |
CN112214775A (zh) | 对图数据的注入式攻击方法、装置、介质及电子设备 | |
CN112070310A (zh) | 基于人工智能的流失用户预测方法、装置及电子设备 | |
CN109117442A (zh) | 一种应用推荐方法及装置 | |
CN113569162A (zh) | 数据处理方法、装置、设备及存储介质 | |
US20230334344A1 (en) | Distributed ledger based machine-learning model management | |
CN112395401A (zh) | 自适应负样本对采样方法、装置、电子设备及存储介质 | |
CN111813816B (zh) | 数据处理方法、装置、计算机可读存储介质和计算机设备 | |
CN116629612A (zh) | 一种风险预测的方法、装置、存储介质及电子设备 | |
CN114374595B (zh) | 事件节点归因分析方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40021063 Country of ref document: HK |
|
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |