CN112016927A - 用于检测异常数据的方法、设备和计算机可读存储介质 - Google Patents
用于检测异常数据的方法、设备和计算机可读存储介质 Download PDFInfo
- Publication number
- CN112016927A CN112016927A CN201910467998.9A CN201910467998A CN112016927A CN 112016927 A CN112016927 A CN 112016927A CN 201910467998 A CN201910467998 A CN 201910467998A CN 112016927 A CN112016927 A CN 112016927A
- Authority
- CN
- China
- Prior art keywords
- vertices
- similarity
- vertex
- data
- determining
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 103
- 238000003860 storage Methods 0.000 title claims abstract description 13
- 230000002159 abnormal effect Effects 0.000 title description 7
- 230000002547 anomalous effect Effects 0.000 claims abstract description 20
- 240000004760 Pimpinella anisum Species 0.000 claims description 6
- 230000008569 process Effects 0.000 claims description 6
- 239000003086 colorant Substances 0.000 claims description 4
- 238000012935 Averaging Methods 0.000 claims description 2
- 238000004043 dyeing Methods 0.000 claims description 2
- 238000004422 calculation algorithm Methods 0.000 description 35
- 238000001514 detection method Methods 0.000 description 24
- 230000006399 behavior Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 10
- 238000013459 approach Methods 0.000 description 8
- 230000008901 benefit Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 8
- 230000008859 change Effects 0.000 description 7
- 230000000694 effects Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 230000001360 synchronised effect Effects 0.000 description 7
- 230000003993 interaction Effects 0.000 description 6
- 230000002829 reductive effect Effects 0.000 description 6
- 238000013461 design Methods 0.000 description 5
- 230000002123 temporal effect Effects 0.000 description 5
- 238000011524 similarity measure Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000010276 construction Methods 0.000 description 3
- 230000007423 decrease Effects 0.000 description 3
- 238000002474 experimental method Methods 0.000 description 3
- 230000002452 interceptive effect Effects 0.000 description 3
- 239000008267 milk Substances 0.000 description 3
- 210000004080 milk Anatomy 0.000 description 3
- 235000013336 milk Nutrition 0.000 description 3
- 239000000843 powder Substances 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 206010042635 Suspiciousness Diseases 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000004040 coloring Methods 0.000 description 2
- 238000007418 data mining Methods 0.000 description 2
- 238000005065 mining Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 230000036961 partial effect Effects 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 238000005295 random walk Methods 0.000 description 2
- 238000012552 review Methods 0.000 description 2
- 208000001992 Autosomal Dominant Optic Atrophy Diseases 0.000 description 1
- 241001522296 Erithacus rubecula Species 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 230000003542 behavioural effect Effects 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000005242 forging Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
- G06Q20/4016—Transaction verification involving fraud or risk level assessment in transaction processing
-
- 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
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/243—Classification techniques relating to the number of classes
- G06F18/2433—Single-class perspective, e.g. one-against-all classification; Novelty detection; Outlier detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/018—Certifying business or products
- G06Q30/0185—Product, service or business identity fraud
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0207—Discounts or incentives, e.g. coupons or rebates
- G06Q30/0225—Avoiding frauds
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Accounting & Taxation (AREA)
- Strategic Management (AREA)
- Finance (AREA)
- General Business, Economics & Management (AREA)
- Development Economics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Entrepreneurship & Innovation (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Computation (AREA)
- Economics (AREA)
- Marketing (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Game Theory and Decision Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开实施例提供了用于检测异常数据的方法、设备和计算机可读存储介质。该方法包括:确定与待检测数据集相对应的对象相似度图,其中,所述对象相似度图中的每个顶点对应于所述待检测数据集中的对象数据,以及所述对象相似度图中的每条边指示与由该边连接的两个顶点相对应的对象数据之间的相似度;将所述对象相似度图中的顶点分为一个或多个组;以及将与所述一个或多个组中至少一个组的顶点相对应的对象数据确定为异常数据。
Description
技术领域
本公开大体上涉及数据挖掘领域,且更具体地涉及用于检测异常数据的方法、设备和计算机可读存储介质。
背景技术
网络欺诈已经成为了当代互联网的严重威胁之一。欺诈的目的形形色色,从轻微的试图获取公众注意力到严重的金融诈骗(例如,信用卡盗用)都有。例如,在社交网站或媒体分享网站上,人们想要通过增加更多的粉丝(关注者或追随者)来增加自身的账户价值。又例如,在电子商务网站上,欺诈者注册很多账户以滥用网站提供的新用户优惠,或者向正常用户兜售虚假服务、商品等。因此,需要一种能够检测到这种网络欺诈行为的方案。
发明内容
为了至少部分解决或减轻上述问题,提供了根据本公开的用于检测异常数据的方法、设备和计算机可读存储介质。
根据本公开的第一方面,提供了一种用于检测异常数据的方法。该方法包括:确定与待检测数据集相对应的对象相似度图,其中,所述对象相似度图中的每个顶点对应于所述待检测数据集中的对象数据,以及所述对象相似度图中的每条边指示与由该边连接的两个顶点相对应的对象数据之间的相似度;将所述对象相似度图中的顶点分为一个或多个组;以及将与所述一个或多个组中至少一个组的顶点相对应的对象数据确定为异常数据。
在一些实施例中,所述待检测数据集具有二分图的形式,所述二分图的顶点包括与所述对象数据相对应的对象顶点和与用户数据相对应的用户顶点,所述二分图的边包括一个或多个用户顶点与一个或多个对象顶点之间的边。在一些实施例中,确定与待检测数据集相对应的对象相似度图的步骤包括:将所述二分图中的一个或多个对象顶点确定为所述对象相似度图中的相应顶点;以及基于所述二分图中两个对象顶点之间的相似度,来确定所述对象相似度图中相应顶点之间的边的权重。在一些实施例中,两个对象顶点之间的相似度是至少基于分别与所述两个对象顶点相连的用户顶点来确定的。
在一些实施例中,两个对象顶点mi和mj之间的相似度Cij是如下确定的:
Cij=Sij
其中,Ii是包括所述二分图中与mi相邻的用户顶点在内的元组的集合,Ij是包括所述二分图中与mj相邻的用户顶点在内的元组的集合,以及|·|表示集合的元素数量。
在一些实施例中,两个对象顶点mi和mj之间的相似度Cij是如下确定的:
其中,Ii是包括所述二分图中与mi相邻的用户顶点在内的元组的集合,Ij是包括所述二分图中与mj相邻的用户顶点在内的元组的集合,是包括所述二分图中带标记的数据中与mi相邻的用户顶点在内的元组的集合,是包括所述二分图中带标记的数据中与mj相邻的用户顶点在内的元组的集合,mean(·)表示求平均值,M是所述二分图中对象顶点的全集,以及|·|表示集合的元素数量。
在一些实施例中,各个元组还包括以下至少一项:时间戳;以及星级评分。在一些实施例中,将所述对象相似度图中的顶点分为一个或多个组的步骤包括:向所述对象相似度图中的每个顶点分配唯一标签;针对每个顶点,基于其邻居的标签来更新该顶点的标签一次或多次,直到满足停止条件为止;以及根据标签将顶点分为一组或多组,使得具有相同标签的顶点在同一组中,具有不同标签的顶点在不同组中。在一些实施例中,针对每个顶点,基于其邻居的标签来更新该顶点的标签一次或多次,直到满足停止条件为止的步骤包括:针对每个顶点mi,执行以下过程:针对顶点mi的所有邻居顶点的每种不同标签l,执行以下过程:确定所述所有邻居顶点中的具有标签l的第一邻居顶点;确定所述第一邻居顶点与顶点mi之间的所有边的权重中的前K个最大权重之和,其中,K是正整数;以及确定与不同标签l相对应的前K个最大权重之和中的最大值;以及将与所述最大值相对应的标签l确定为顶点mi的要在下一轮迭代中使用的标签。在一些实施例中,所述停止条件包括:对于或者由于更新mi的标签时存在多于一个标签选择而导致其中,M是所述二分图中对象顶点的全集,以及是第t次迭代中mi的标签。在一些实施例中,针对每个顶点,基于其邻居的标签来更新该顶点的标签一次或多次,直到满足停止条件为止的步骤是通过以下方式来并行执行的:对每个顶点进行染色,使得相邻顶点不具有相同的颜色;针对具有不同颜色的顶点,并行执行针对其的标签的更新过程。
在一些实施例中,将与所述一个或多个组中至少一个组的顶点相对应的对象数据确定为异常数据的步骤包括:针对所述一个或多个组中的每个组,执行以下过程:确定所述组的所有边上的相似度的平均值;确定所述组的所有对象对上来自相同用户的边的平均数量;以及基于所述相似度的平均值和所述边的平均数量来确定所述组的可疑度分数,将与所述一个或多个组中具有超过阈值的可疑度分数的组相对应的数据确定为异常数据。
在一些实施例中,确定所述组的所有边上的相似度的平均值的步骤包括:
在一些实施例中,确定所述组的所有对象对上来自相同用户的边的平均数量的步骤包括:
其中,是所述组的所有对象对上来自相同用户的边的平均数量,Ii是包括所述二分图中与mi相邻的用户顶点在内的元组的集合,Ij是包括所述二分图中与mj相邻的用户顶点在内的元组的集合,以及是所述组的顶点的数目。
在一些实施例中,基于所述相似度的平均值和所述边的平均数量来确定所述组的可疑度分数包括:
根据本公开的第二方面,提供了一种用于检测异常数据的设备。该设备包括:处理器;存储器,其上存储有指令,所述指令在由所述处理器执行时使得所述处理器执行根据本公开第一方面所述的方法。
根据本公开的第三方面,提供了一种存储指令的计算机可读存储介质,所述指令在由处理器执行时使得所述处理器执行根据本公开第一方面所述的方法。
通过使用本公开的方法、设备和/或计算机可读存储介质,可以准确地自动检测到海量行为数据中的异常用户行为数据,帮助数据提供商准确地确定需要注意的异常用户,从而避免了可能出现的损失、同时节约了大量的运维成本。
附图说明
通过下面结合附图说明本公开的优选实施例,将使本公开的上述及其它目的、特征和优点更加清楚,其中:
图1是示出了具有二分图形式的数据集的示意图。
图2是示出了根据本公开实施例的用于检测异常数据的示例方法的总体流程图。
图3是示出了根据本公开实施例的与具有伪装边和不具有伪装边的数据集相对应的示例相似度热图。
图4A和图4B是分别示出了根据本公开实施例在更新顶点标签时可能出现的不同示例状态的示意图。
图5是示出了在检测欺诈对象时根据本公开实施例的示例方法与其它方法的性能对比图。
图6是示出了在检测欺诈用户时根据本公开实施例的示例方法与其它方法的性能对比图。
图7是示出了在确定可疑数据集时根据本公开实施例的示例方法与其它方法的性能对比图。
图8是示出了根据本公开实施例的方法的示例时间复杂度的示意图。
图9是示出了根据本公开实施例的用于识别异常数据的设备的硬件布置图。
具体实施方式
下面参照附图对本公开的部分实施例进行详细说明,在描述过程中省略了对于本公开来说是不必要的细节和功能,以防止对本公开的理解造成混淆。在本说明书中,下述用于描述本公开原理的各种实施例只是说明,不应该以任何方式解释为限制公开的范围。参照附图的下述描述用于帮助全面理解由权利要求及其等同物限定的本公开的示例性实施例。下述描述包括多种具体细节来帮助理解,但这些细节应认为仅仅是示例性的。因此,本领域普通技术人员应认识到,在不脱离本公开的范围和精神的情况下,可以对本文中描述的实施例进行多种改变和修改。此外,为了清楚和简洁起见,省略了公知功能和结构的描述。此外,贯穿附图,相同的附图标记用于相同或相似的功能、器件和/或操作。此外,在附图中,各部分并不一定按比例来绘制。换言之,附图中的各部分的相对大小、长度等并不一定与实际比例相对应。此外,在本公开一些实施例中描述的全部或部分特征也可被应用于其他实施例中以形成依然落入本申请范围内的新的实施例。
此外,本公开并不局限于所涉及的设备的各个具体通信协议,包括(但不限于)2G、3G、4G、5G网络,WCDMA、CDMA2000、TD-SCDMA系统等,不同的设备可以采用相同的通信协议,也可以采用不同的通信协议。此外,本公开并不局限于设备的具体操作系统,可以包括(但不限于)iOS、Windows Phone、Symbian(塞班)、Android(安卓)、Linux、Unix、Windows、MacOS等,不同的设备可以采用相同的操作系统,也可以采用不同的操作系统。
尽管下文中将主要在防止网络欺诈的具体场景中说明根据本公开实施例的用于检测数据集中的异常数据的方案,然而本公开不限于此。事实上,本公开的实施例在经过恰当的调整和修改的情况下,也可以适用于其他各种需要检测具有特定模式的数据的情况,例如检测高价值客户等。换言之,只要是需要确定数据组之间的差异的场景,都可以使用根据本公开实施例的方案。
在详细描述根据本公开实施例的用于检测异常数据的方案之前,将首先介绍在本文中将经常使用到的一些术语和概念。
度/出度/入度(degree/out degree/in degree):在图论中,一个图中的顶点(在下文中有时也被称为“节点”)的度(或价)指的是与该顶点相连的边的数目,当存在自循环边时,该边被计数两次。一个图的最大度和最小度分别是其顶点的最大度和最小度。在有向图中,当一个顶点是一条边的头(即,该边指向该顶点)时,该边被统计在该顶点的入度中;类似地,当一个顶点是一条边的尾(即,该边从该顶点出发)时,该边被统计在该顶点的出度中。
二分图(或二部图、bipartite graph):在图论领域中,二分图(或二部图)是指满足以下条件的图:其顶点可被分为两个不相交且独立集合U和V,使得该图的每条边连接U中的一个顶点和V中的一个顶点的。
例如,图1示出了示例数据集10。在一些实施例中,其可具有二分图的形式。其所有顶点可被分为上方的对象顶点和下方的用户顶点这两组。然而,需要注意的是本公开不限于此。在另一些实施例中,可以根据需要将数据集10分为不同的两个组,用于不同的目的。
如图1所示,对象顶点可包括一个或多个顶点,例如正常对象110、欺诈对象120,而用户顶点也可包括一个或多个顶点,例如正常用户(图1中未示出)、欺诈用户150等。在图1所示的二分图中,仅在用户顶点和对象顶点之间存在边(例如,图1所示的欺诈边160、伪装边170等),而在对象顶点内部以及在用户顶点内部不存在边。
对象(object):在本文中,对象通常可以指代在二分图中一类顶点,其与另一类顶点“用户”之间可以存在交互关系,例如“用户关注对象”、“用户购买对象”、“用户评论对象”等等。
如前所述,网络欺诈已成为了当代互联网的严重威胁之一。因此,欺诈检测就成为了计算机安全领域和数据挖掘领域中的基础课题。在线欺诈检测的问题通常可被归纳为从用户和对象的二分图中挖掘出可疑的模式。
二分图中的边可以表示用户和对象之间的交互(例如,评论或关注)。以图1为例,在图1所示的数据集中,存在9个对象和8个用户,分别作为前述对象顶点和用户顶点,在用户和对象之间存在例如交互关系(例如,评论),作为二分图中的边。然而,尽管图1中将对象示出为牛奶并将用户示出为机器人,但本公开不限于此。事实上,二分图形式也可适用于其他领域。例如,在一些实施例中,可以按照粉丝和博主及其关注关系来设计数据集。
回到图1,在对象顶点中,可以存在正常对象110(例如,高品质牛奶)和欺诈对象120(例如,伪劣牛奶)。与欺诈对象120相对应的用户为了推销其欺诈对象120,可以雇佣欺诈用户150来进行欺诈活动,例如水军评论、僵尸粉等等。因此,在欺诈用户150和欺诈对象120之间存在的交互关系可被反映为图1中的欺诈边160。然而,单纯的这种欺诈边160容易被欺诈检测方案检测到并失效,因此狡猾的欺诈者使用复杂的策略来影响现有检测方法所使用的排名算法。
基于这些考虑因素,在本文中提出了一种从全新角度来处理该问题的欺诈检测方案。与相关方案不同的是,其针对根据原始二分图导出的对象相似度图(ObjectSimilarity Graph或OSG)进行操作。在一些实施例中,该方案可具有若干优点。首先,其可有效地捕捉在不同类型掩饰下的松散同步行为。其次,其可具有两种工作模式:无监督模式和半监督模式,当部分带标记数据可用于进一步增强性能时,该带标记数据可被自然并入整个方案中。第三,在本文中设计的所有算法可具有接近线性的复杂度,并适用于大规模真实世界数据集。如下文中描述的相应实验表明,根据本公开实施例的欺诈检测方案强于其它相关方法。
如前所述,欺诈对于社交网络和其它网络在线应用的商务模式具有极危险的影响。用户可以通过在例如推特上购买“僵尸粉”来变成伪名人。商家可以通过例如在亚马逊上的伪造评论来提升其声誉。这种现象也显著地出现在例如Facebook、Yelp和TripAdvisor上。在这些情况下,欺诈者可通过伪造它们所控制的伪账号(欺诈用户)与目标顾客(欺诈对象)之间的伪交互来尝试操纵平台的排名机制。
这些场景通常可以归纳为对象和用户的二分图,如图1所示。在本文的一些实施例中,可将对象定义为用户可以在平台上交互的目标。取决于具体应用,对象可以是粉丝、产品或页面。一条边可对应于从用户到对象的交互(例如,评论或关注)。已通过很多方法来探索如何在二分图中检测欺诈。由于欺诈者依赖于在数量上通常是有限的欺诈用户账户来创建二分图中的欺诈边,用于欺诈对象的收益,因此相关的方法主要基于以下两个发现:(1)欺诈组织倾向于形成二分图中的密集子图(即,高密度信号);和/或(2)由欺诈组织导致的子图具有不寻常的令人惊讶的连通性结构(即,结构信号)。相应地,这些相关方法在二分图中直接挖掘密集子图或稀有的结构模式。而它们的性能对于真实世界数据集来说是不稳定的。
然而,如前所述,狡猾的欺诈者可使用更复杂精密的策略来避免这样的模式。首先,通过对较大的欺诈用户池进行复用,欺诈者可以有效地降低由欺诈组织所引起的子图的密度。这被称为松散同步行为,并导致依赖于高密度信号的方法的性能受限。另一种常用的技术是创建指向正常对象的边,以将欺诈用户伪装为正常用户。该策略(通常被称为伪装)改变了二分图的连通性结构,并弱化了针对这种结构的很多方法的有效性,例如HITS(Hyper-Induced Topic Search)和信念传播(BP)。图1示出了这两种策略,即通过采用大量的欺诈用户150来降低子图密度,同时在欺诈用户150和正常对象110之间创建伪装边170来改变二分图10的连通性结构,从而可以有效避免相关检测方法的检测。
此外,当(部分)标记数据可用时,还可以使用监督式方法或半监督式方法来处理欺诈检测的问题。例如,一些相关方法通过使用带标记的欺诈子集来提供更好的性能。另一些方法构造了机器学习分类器来检测异常。然而这些方法收到众多的限制。首先,由于问题的规模和调查的成本,通常难以在欺诈检测中获得足够的带标记数据。其次,这些方法要求在特征加工(feature engineering)(即,通过对已有特征进行加工从而产生新的特征)方面大量的工作,该工作单调冗长且要求很高的专业技能。第三,它们通常不能检测新的欺诈模式。最后,即使某些带标记数据能够提供用于欺诈检测的潜在宝贵信息,然而将它们并入已有的无监督式或半监督式方案中也并不容易。
与此相对的,本文所提出的基于对象相似度图的欺诈检测算法可以通过对分析目标的全新改变来克服或至少减少或减轻这些限制。它不直接在二分图中进行挖掘,而是分析根据原始二分图导出的对象相似度图(OSG)。在一些实施例中,该设计至少有以下两个主要优点:(1)在OSG中,欺诈对象呈现出更相似的行为模式,因为欺诈对象难以从正常用户获得边,因此这赋予了本方案固有的抵抗伪装的能力;(2)由于对象的数量通常小于用户的数量,因此对OSG进行操作减少了计算成本,同时保证了有效性。此外,尽管本方法在没有任何标签的情况下也能良好工作,但是可以将其容易地切换到半监督模式并使用部分标签来增强其性能。
大体而言,将主要介绍以下几个方面:
[相似度度量C]。在本文的一些实施例中,可根据相似度度量C分数来构造对象相似度图(OSG),该C分数可通过将来自无标记和/或带标记(如果有的话)数据的信息加以合并,将二分图中由欺诈组织引起的稀疏子图变换为OSG中密集得多的子图。
[算法LPA-TK(Label Propagation Algorithm-Top K)]。在本文的一些实施例中,提出了基于相似度的聚类算法LPA-TK,其适用于OSG并在存在噪声边(伪装)的情况下超出了标准LPA算法。
[可疑度度量 ]。在本文的一些实施例中,给定由C+LPA-TK返回的候选组,提出了可解释的可疑度度量分数,其满足在Meng Jiang等人的论文“Spotting SuspiciousBehaviors in Multimodal Data:A General Metric and Algorithms”中提出的所有基本公理,在此将该论文以全文引用的形式并入本文中。
如前所述,在本文的一些实施例中,本方法可以在两种模式下工作:无监督模式和半监督模式。在捕捉伪装下的同步行为的情况下,无监督模式的性能超出了其它相关技术,而半监督模式自然地利用了部分标记数据的优点来进一步增强性能。
欺诈者们为了最大化其财务收益,必须对特定资源(例如,电话号码、设备等)进行共享或复用。为了实现“规模经济”,欺诈者经常使用很多个欺诈用户账户来进行同一欺诈。因此,欺诈用户不可避免地在某些特征上呈现出同步的行为,例如电话前缀、或IP子网等。通过识别这种同步来检测欺诈的基于组的方案在性能上超过了基于内容的方案,成为最有效的反欺诈方案。在相关技术中,大体存在三类方法。
无监督。存在两类无监督式检测方法。
第一类基于如前所述的由欺诈组形成的高密度子图。对二分图中的密集子图进行挖掘在检测通过大量边连接的用户和对象的欺诈组方面是有效的。Fraudar尝试使用贪婪算法来找到具有最大平均度(maximal average degree)的子图。CrossSpot专注于检测多维张量中的密集块,并给出了可疑度度量应当满足的若干条基本公理。还有的方法采用奇异值分解(SVD)来捕捉异常密集的用户块。然而,欺诈者可以通过减少其行为中的同步性来容易地躲避这种检测,例如如前所述采用海量用户(例如,僵尸粉)。
第二类基于欺诈组中的稀有子图结构。这种结构可以包括突然增加针对某一对象的大量边等。BP和HITS倾向于捕捉二分图中的这种信号。FraudEagle使用多圈信仰传播(loopy belief propagation)向由马尔科夫随机域(MRF)表示的网络中的节点分配标签。还有一些方法通过利用最小描述长度来基于边-属性行为模式对节点的异常度进行排名。此外,另一些方法使用贝叶斯方案来处理评分欺诈问题。SynchroTrap针对用户相似度图进行操作。在所有这些情况中,欺诈者相对容易地操纵来自欺诈用户的边,以隐藏这种结构模式。由于欺诈者的分布经常改变,因此对参数调整的统一要求在实践中也是有问题的。
(半)监督式。当部分带标记数据可用时,半监督式方法可以用于异常检测。其深层理念在于使用图结构以向未知节点传播已知信息。一些方法将图建模为MRF,并用BP来标记每个节点的潜在可疑度。另一些方法使用随机漫步(random walk)以检测Sybils(欺诈份子)。ADOA将观察到的异常聚类为k个聚类,并根据孤立度(isolation degree)和相似度将无标记的数据分类到这k个聚类中。当充足的带标记数据可用时,已经证明了诸如多核学习、支持向量机和k最近邻居之类的分类器的成功。然而,如前所述,在实践中具有充足的欺诈标签是很少见的。
在了解了为什么欺诈者可以容易地躲避相关技术中的检测方式的情况下,提出了根据本公开实施例的异常数据检测方法的以下理念。
下面总结一下狡猾的欺诈者如何躲避检测。首先,可以减少欺诈活动中的同步性。相关欺诈检测方法所依赖的关键信号之一是子图的高密度。一种简单的欺诈活动可以对某些资源(例如,账户或电话号码)进行重复使用,导致高密度子图。然而,经验表明欺诈者现在控制了大得多的资源池,并且因此可以采用更狡猾的策略,通过每次轮转欺诈用户来减少同步性。例如,根据一些最近的研究,在微博上欺诈活动可以使用3,000,000个欺诈账户(欺诈用户)来关注仅20个被关注者(欺诈对象),以提升被关注者的社交声誉或价值。每个被关注者获得了来自不同关注者子集的边(即,交互关系,或更具体地,“关注”)。由欺诈组所引起的子图的边密度(在给定顶点的情况下,边数量与最大可能边数目之比)仅是3.3x10-6,这非常接近正常用户关注正常对象的合理值。如在下文中所表明的,该策略有效地降低了同步性并欺骗了很多基于子图密度的方法。例如,FRAUDAR,其容易受到同步性减少的影响。
其次,欺诈者可以增加伪装。例如,欺诈者还可尝试通过创建指向正常对象的伪装边,使得欺诈用户表现得不那么异常来混淆检测算法(例如,参见图1所示的伪装边170)。大体上存在四种类型的伪装:
(1)随机伪装:随机增加指向正常对象的伪装边;
(2)偏置伪装:创建指向具有高入度的正常对象的伪装边;
(3)绑架伪装:绑架诚信账户以增加指向欺诈对象的欺诈边;以及
(4)反向伪装:欺骗正常用户来增加指向欺诈对象的边。
伪装极大地影响了基于图结构的方法,因为欺诈者可以在没有很多资源的情况下对其结构进行重新塑形。例如,如下文(例如,图5和图6的描述)所表明的:来自Catchsync的度和HITS分数即使在中等数量的伪装边的情况下也停止工作。
上述两种伪装策略在欺骗相关检测方法时能够成功的本质原因在于它们基于分析原始的二分图。欺诈者可以用大量的欺诈用户来容易地操纵该图(密度和结构这二者都可以被操纵)。不幸的是,当前的黑市使得更容易获得大量的欺诈账户。
因此,本文的一些实施例提出了从不同的角度来解决该问题。由于欺诈者必须使用它们的欺诈用户池来为很多对象进行服务以牟利,所以为欺诈活动进行支付的对象是相似的。从而,取代直接分析“用户-对象二分图”,可以对不同对象之间的相似度进行操作。例如,将二分图转换为对象相似度图(OSG),其顶点是所有对象,其边表示这些对象之间的相似度。如下文将描述的,在采用精心设计的相似度分数的情况下,与正常对象相比,欺诈对象更类似于其它欺诈对象,并且与原始二分图相比,欺诈者更难以操纵OSG。这是因为在OSG中,由松散同步行为所形成的子图与原始用户-对象二分图中的相应子图相比要密集得多,并且不能通过伪装来改变的密度。
图3示出了直观的示例。图3是示出了根据本公开实施例的与具有伪装边和不具有伪装边的数据集相对应的示例相似度热图。在图3所示示例中,对象相似度图可具有100个对象顶点,其中1~75是正常对象,而76~100是欺诈对象,每两个顶点之间的相似度以热图的形式体现在图3中。图3中左侧的热图是示出了在没有伪装边的情况下的相似度热图,而图3中右侧的热图是示出了在存在伪装边的情况下的相似度热图。通过对比左侧和右侧的热图,可以发现即便出现伪装边,其也并不影响在这两个热图右下角中出现的高度相似度区(深色方形区域)。换言之,伪装边只能造成图3中右侧热图中的右上方的矩形虚线框所指示的区域的变化,而无法影响原先存在的右下角的欺诈对象区。
此外,在一些实施例中,可以利用不同应用中可用的旁路信息(sideinformation),而不是让算法限制各种选择。具体的,可以允许包括可选的两类信息:用于提供算法的半监督模式的(部分)欺诈标签、和/或活动的旁路信息(例如,时间戳和/或星级评分)等。如下文将描述的,本文实施例所设计的相似度分数对于这些标签和额外数据维度都是兼容的,因此可以很容易将所有可用信息都并入统一的框架中。
接下来将结合图2来总体上描述根据本公开实施例的用于确定异常数据的方法。图2是示出了根据本公开实施例的用于检测异常数据的示例方法200的总体流程图。
首先,可以定义待检测数据集,在一些实施例中,其可以具有二分图的形式。然而本公开不限于此。事实上,也可以将不具有二分图形式的数据集转换为具有二分图形式的数据集。例如,对于在两个顶点之间存在多个边的情况,可以将其简化为一条边。又例如,对于存在例如三角形连接关系的顶点从而无法形成二分图的数据集,可以根据预定规则或随机删除其中一条边,以满足二分图的要求。例如,删除具有最低权重的边(例如,对应于评论字数最少、关注日期最早/最晚等等)。
考虑具有用户集合N和对象集合M的二分图G,且考虑由带标签的欺诈用户Nl子集(即,用户集合N的子集)和同一对象集合M所形成的另一个二分图Gl。可以使用从用户指向对象的边ε来表示它们之间的交互,例如关注、评论或购买。此外,为了方便起见,请参见以下表格来在本文中通常使用的一些符号标记。
如图2所示,方法200可分三个步骤工作:
步骤215“图转化”:将待检测数据集210转化为捕捉对象相似度的对象相似度图(OSG)220。为此,设计一种相似度度量C分数以基于用户交互来捕捉两个对象之间的相似度。如果Gl可用,即存在某些带标签数据,则C分数也可并入该数据。
步骤225“分组”:针对OSG进行聚类,以将OSG的顶点(对象)分为若干对象组230。为此,提出一种基于相似度的聚类算法,其基于每个对象在OSG上最相似的邻居将其聚类到一个组中。
接下来,将详细描述这三个步骤。
步骤215:“图转化”
如前所述,OSG可以捕捉对象对之间的相似度,且因此首先要定义相似度度量C分数。在一些实施例中,C分数可具有两个部分,即G中的相似度(无标记)和Gl中的相似度(带标记)。在一些实施例中,可以将对象mi和对象mj之间的相似度分数Cij定义为:
在G中,令Ii={εji:nj∈N,(nj,mi)∈E}是指向mi的边集合。根据Jaccard相似度的定义,将mi和mj之间的相似度Sij定义为:
然而,这里需要注意的是:为了能够对不同顶点mi和mj的边进行比较,需要忽略顶点mi和mj自身,否则Ii∩Ij或将始终为空,且因此在本文中可以将集合Ii和分别视为G和Gl中指向mi的边在不考虑mi的情况下的集合,或等价地,视为该边的另一顶点的集合。此外,如下面所将讨论的,可以对该集合进行扩展,以使其包括附加的有用信息(例如,旁路信息),从而形成元组(tuple),例如二元组、三元组等等。
在一些实施例中,如果描述用户-对象交互的附加属性的旁路信息可用,则可以将该信息包括到检测中。例如,一些研究报告时间特征对于欺诈检测是关键的。为了这样做,可以使用如下属性元组来增强G和Gl中的边εij:
εij=(ni,Attr1,Attr2...)
其中,Attri可以是时间戳、星级评分等。事实上,可以按照需要将任意多的属性增加到元组中,并将同步行为合并到单一分数C中。可以给出以下简单示例。
示例:例如在亚马逊上的评论集合中,评论动作(ni,mj,time1,IP1)指示了用户ni在IP1上在时间time1时对产品mj进行了评论。则在该示例中可以使用εij来表示该评论动作且如前所述不考虑对象顶点mj,εij=(ni,time1,IP1...),该εij可以用于上述公式(2)和公式(3)中的交集/并集运算。
此外,针对公式(2)和(3)中的交集运算和并集运算,可以使用可定制的(相等)运算符。例如,考虑两个边属性元组ε13=(n1,time1)和ε14=(n1,time2),且令Δ表示时间范围,则如果time1-time2<Δ,换言之,如何判断两个元组相同是可以根据需要来自行设置的。在一些实施例中,为了让计算更快,可以将时间戳加以量化(例如,以小时为单位),并使用=运算符。
在一些实施例中,仅需要计算具有正Cij的对象对(mi,mj)。可以使用键-值(key-value)方案来计算C分数中的S分数,如下面算法1中所描述的(此外,可以使用类似的方法来计算Sl分数)。
简单地,根据上述算法,找到所有键-值对要花费O(|E|)(算法1中的1~2行),且构造G要花费O(|E|)(算法1中的4~10行)。然而,可以期望G是稀疏的,这是因为对于一个正常的数据集,其中的一个对象通常仅与OSG中的非常小的对象子集具有正的C分数(相似度)。根据经验,可以评估若干数据集中的边密度,并发现在所有情况下该边密度都相当低。
此外,由于Zipf定律,在很多实际数据集中,在二分图中存在若干具有极高入度的对象。例如,推特上的名人(或者亚马逊上的网红店)拥有大量的粉丝(或顾客)。因此,在一些实施例中,可以在数据预处理步骤中,将这些顶点及其入边加以删除,这是因为最热门的对象通常不是欺诈对象。该预处理可以显著地减少了|E|和|E|,且因此显著减少了用于OSG构造的计算时间。
步骤235:“分组”
接下来,在一些实施例中,在步骤235中,提出一种基于针对加权图的最高K邻居的标签传播算法(Label Propagation Algorithm-TopK,或简写为LPA-TK),以在存在伪装的情况下将OSG的节点聚类为组。该算法受到了原始LPA算法的启发,LPA已被证明在检测具有紧密连通性结构的群组时有效。然而原始LPA仅适用于无加权图,且对噪声/伪装边没有抵抗力,或换言之其不能识别出伪装边。
在一些实施例中,LPA-TK以OSG G为输入,并基于相似度来输出具有由相似对象构成的多个组。以下算法2和3描述了LPA-TK的示例。
初始化(第1~3行)。在一些实施例中,首先可以向OSG中的每个节点分配一个唯一的标签(第1行)。在一些实施例中,其次,可以对所有节点进行上色,使得没有相邻节点共享相同颜色。上色过程是高效且可并行化的,其仅花费O(deg(G))的同步并行步骤。此外,由δ来表示的颜色数量的上界由deg(G)+1来限定,其中,deg(G)表示G中所有节点上的最大度。这一上色过程主要是为了后面可以对节点标签的更新过程进行并行化。
迭代(第4~8行)。在第t次迭代中,每个节点mi基于其邻居的标签来更新其标签(更新条件参见算法3)。由于对节点标签的更新仅基于其邻居,因此可以同时更新共享相同颜色的所有节点。从而对于每次迭代仅需要最多δ次更新。该迭代继续,直到其满足停止条件为止。在一些实施例中,该停止条件可以是例如:
其中,是第t次迭代中mi的标签,且平局表示以下条件:由于f返回多于一个标签选择,而使得变化(第8行)。换言之,当对于同一个顶点mi,其标签Li连续两次相同,或者仅由于出现多个备选标签而不同(或换言之,其可以选择该相同标签或有一定几率选择该相同标签),则可以将该节点标签的变化视为已经收敛。
返回组(第9~11行)。在迭代终止之后,可以将共享相同的最终标签的节点分在一组中。即,在一些实施例中,同一组中的顶点标签相同,且不同组中的顶点标签不同。
LPA-TK算法与原始LPA算法的关键差异在于更新条件f的设计。在一些实施例中,可以考虑f的三种选择。
[更新条件:求和(sum)]。基于原始LPA中仅适用于无加权图的更新条件,可以将f定义为如下形式:
根据公式(4),mi的标签是由其邻居中每个不同标签的边权重的求和来确定的。然而,不幸的是,聚类的结果随着伪装边的增加而劣化。图4A给出了直观的示例。图4A是示出了根据本公开实施例在更新顶点标签时可能出现的示例状态的示意图。如图4A所示,对象顶点之间的相似度通过边的粗度来显示。例如,顶点m与欺诈对象之间的边的粗度较粗,与正常对象之间的粗度较细,从而表示其与欺诈对象更相似,且应当被标记为欺诈对象的标签。然而,由于正常对象相对于欺诈对象数目要多得多,所以在使用求和更新条件时,该顶点m将很有可能被错误地标记为正常对象的标签。
[更新标准:最大值(max)]。为了最小化伪装的影响,在一些实施例中,提出了另一种形式的f:
其中,H(m)是mi的邻居的集合,且
基于公式(5),mi的标签是由其邻居中每个不同标签的最大边权重来确定的。尽管由于欺诈对象的最相似邻居也应当是欺诈性的,所以公式(5)可以消除伪装的影响,但是聚类结果并不良好,且经常将一组欺诈对象划分为多个部分。图4B给出了示例。图4B是示出了根据本公开实施例在更新顶点标签时可能出现的另一示例状态的示意图。如图4B所示,对象顶点之间的相似度通过边的粗度来显示。例如,顶点m与多个欺诈对象A之间具有相似度,与一个欺诈对象B之间的也有较强的相似度。但是,由于该顶点m仅与一个欺诈对象B相似,而与多得多的欺诈对象A相似,因此该顶点m更应该被标记为欺诈对象A的标签。然而在使用最大更新条件时,该顶点m将很有可能被标记为欺诈对象B的标签。
[更新标准:前k个]。基于上述这些考虑因素,在一些实施例中,提出了另一种更新条件f,其可以消除伪装的影响并保持理想的聚类结果,如以下算法3所示。
在算法3中,mi的标签是由其邻居中每个不同标签的前K个最大边权重的求和来确定的。注意到:计算前K个最大边权重的求和(第4~8行)可以被优化为O(|C|),其与前述更新公式(4)和(5)的时间复杂度是相同的。
根据经验,在一些实施例中,可以将K设置为小整数(例如,在实验中可以设置K=3)。LPA-TK不仅能够适用于伪装(因为伪装边并不改变欺诈对象的前K个最相似的邻居),而且还具有良好的聚类性能(消除了由一个特定邻居来确定其标签的概率)。在图4A中,算法2和3可以将m标记为“A”,而在图4B中可以将m标记为A。
此外,该算法2和3是确定性的:即,只要从相同初始节点标签开始,无论何时其都始终生成相同的图分组。此外,该算法2和3可证明地收敛。我们将用以下定理来证明其收敛性:
证明:令f(t)为G在第t次迭代步骤中的单色边的数量,且f(t)≤|E|。在第t次迭代中,如果未满足停止条件,则至少一个顶点i改变其标签。这表明在迭代t期间f(t)严格增加,即f(t)>f(t-1)。从而,迭代的次数的上界受到|E|的限制。换言之,最多在|E|次迭代之后,上述算法必然收敛。
步骤235:可疑度确定
以及
分数的优点在于该分数具有以下良好的属性,其包括Meng Jiang等人的论文“Spotting Suspicious Behaviors in Multimodal Data:A General Metric andAlgorithms”中提出的所有好的算法所应当具有的公理。
需要注意的事:简单的度量并不满足所有的公理。例如,边密度并不是一种很好的度量,因为其并不满足公理1~3和5。
(1)[抗伪装]。C+LPA-TK本质上是能够抵御伪装的(参见下述定理4.2)。然而,对于原始LPA来说,其检测结果容易受到伪装的破坏。
(3)[聚类全局相似度]。使用C+LPA-TK,可以基于相似度对节点进行聚类。然而,一些方法(例如,Fraudar)基于顶点的入度/出度或密度特征来对顶点分组。图7示出了其聚类质量的直观示例。
接下来,考虑本方法的时间复杂度。在步骤215,基于优化,其最多花费时间O(|E|+|E|)。在步骤225,时间成本可以是迭代次数和颜色数目的乘积,其中,前者的值已被实验表明其随着图的大小以对数级别增加,而后者的值被deg(G)+1所界定。在步骤235,计算分数并捕捉中的欺诈用户花费O(|ε|),其中|ε|<<|E|。从而,本方法具有接近线性的时间复杂度。
此外,可以使用实际例子来证明为什么本方法可以处理松散同步行为。在一些实施例中,考虑具有100个欺诈用户和50个欺诈对象的欺诈组,且每个欺诈用户可创建30条指向随机欺诈对象的边。令表示在原始用户-对象二分图中引起的子图,且令表示在OSG中由欺诈对象形成的子图。我们针对和来计算公式(6)中的边密度ρedge和得到:
以及
可见,OSG中的子图比原始二分图更密集。然后,通过对欺诈用户的数量加倍并保持相同数量的边来减少欺诈组的同步性,则得到:
以及
其次,在OSG中,由于公式(1)中的分母,在欺诈用户和正常对象之间的伪装边仅产生很小的C分数值。如前所述,图3B提供了典型示例情况。对于欺诈用户来说,这表明伪装边并不改变其前K个最相似的邻居。因此,由欺诈组所引起的子图可以被LPA-TK算法所有效检测到。
此外,本方法在半监督模式具有高有效性。给定具有带标记的欺诈用户子集,本方法可以切换到半监督模式。由于C分数的设计,部分带标记的数据确实增强了组内的欺诈对象之间的相似度,且增加了在OSG上所引起的子图的密度。从而,LPA-TK能够很自然地将欺诈对象更准确地聚类为组。后续实验也证明了这一事实。
接下来,将结合图5~7来说明根据本公开实施例的方法在实际运行中的情况。图5是示出了在检测欺诈对象时根据本公开实施例的示例方法与其它方法的性能对比图。如图5所示,在针对实际数据集(例如,亚马逊分类数据集、Yelp分类数据集等)的实际运行中,可以看到根据本公开实施例的无监督(图中标记为“本方法”)和半监督(图中标记为“本方法+”)模式下的方法都显著地强于其它相关方法(例如,前面提到过的Fraudar、CatchSync和CrossSpot)。
图5中的横轴为同步比(ρ),纵轴为F1分数(即,准确率和召回率的调和平均数)。如图5所示,本方法在ρ很低的时候即获得了很高的F1分数,与此相比,Fraudar和CrossSpot即使在没有伪装的情况下,也在ρ相对高(分别是超过0.4和0.5)的情况下才能达到较高的F1分数。此外,在存在伪装的情况下,不管ρ如何,三种其它方法都不能达到较高的F1分数,特别是CatchSync,其从很高的F1分数直接降低到了很低的F1分数。而本方法在各种伪装情况下,都在ρ很低的时候即获得了很高的F1分数。
图6是示出了在检测欺诈用户时根据本公开实施例的示例方法与其它方法的性能对比图。图6同样表明了根据本公开实施例的方法在各种伪装情况下都在ρ很低的时候即获得了很高的F1分数,这与其它三种方法形成了鲜明的对比。
图7是示出了在确定可疑数据集时根据本公开实施例的示例方法与其它方法的性能对比图。由于专利文件附图中仅能示出单色图,因此为了帮助读者理解,在附图中添加了附图标记。图7中的四个图分别示出了在采用CrossSpot、Fraudar、本方法和作为参考的实际数据(即,其具有完全正确的分组结果)情况下的分组结果。
如图7的(a)所示,CrossSpot完全未区分出正常对象组和欺诈对象组,而如图7的(b)所示,Fraudar尽管区分出大部分正常对象组和欺诈对象组,但是其将所有欺诈对象组视为同一个欺诈对象组((b)中的标记为1的组)。与此相对的,根据本公开实施例的方法正确地检测出了所有欺诈对象组,且正确地将这些欺诈对象组彼此区分开,使得其得到了与具有正确分组结果的参考实际数据相同的分组。
接下来,将结合图8来描述本方法的时间复杂度。
图8是示出了根据本公开实施例的方法的示例时间复杂度的示意图。如前所述,根据本公开实施例的方法具有接近线性的时间复杂度。因此,通过对例如实际数据集中的顶点之间的边数加以变化(例如,删去其中的一些边),可以看到该方法确实是以接近线性的时间复杂度来运行的。
图9是示出了根据本公开实施例的用于确定异常数据的设备900的示例硬件布置图。如图9所示,电子设备900可以包括:处理器910、存储器920、输入/输出模块930、通信模块940和其它模块950。需要注意的是:图9所示实施例仅为说明根据本公开之用,且因此不对本公开加以任何限制。事实上,该电子设备900可以包括更多、更少或不同的模块,且可以是单独的设备或分布在多处的分布式设备。例如,该电子设备900可以包括(但不限于):个人计算机(PC)、服务器、服务器集群、计算云、工作站、终端、平板电脑、膝上型计算机、智能电话、媒体播放器、可穿戴设备、和/或家用电器(例如、电视、机顶盒、DVD播放器)等。
处理器910可以是负责电子设备900的整体操作的组件,其可以与其他各个模块/组件通信连接,以从其它模块/组件接收待处理数据和/或指令并向其他模块/组件发送经处理数据和/或指令。处理器910可以是例如通用处理器,例如中央处理单元(CPU)、信号处理器(DSP)、应用处理器(AP)等。在该情况下,其可以在存储器920中存储的指令/程序/代码的指示下执行上面根据本公开实施例的用于检测异常数据的方法的各个步骤中的一个或多个步骤。此外,处理器910也可以是例如专用处理器,例如专用集成电路(ASIC)、现场可编程门阵列(FPGA)等。在该情况下,其可以根据其电路设计专门执行上面根据本公开实施例的用于检测异常数据的方法的各个步骤中的一个或多个步骤。此外,处理器910也可以是硬件、软件和/或固件的任意组合。此外,尽管图9中仅示出了一个处理器910,但实际上处理器910也可以包括分布在多个地点的多个处理单元。
存储器920可以被配置为临时或持久性地存储计算机可执行指令,该计算机可执行指令在由处理器910执行时可以使得处理器910执行本公开中描述的各个方法的各个步骤中的一个或多个步骤。此外,存储器920还可以被配置为临时或持久性地存储与这些步骤相关的数据,例如原始待检测数据集、对象相似度图数据、各种分数数据、以及其它各种中间数据和/或结果数据等。存储器920可以包括易失性存储器和/或非易失性存储器。易失性存储器可以包括例如(但不限于):动态随机存取存储器(DRAM)、静态RAM(SRAM)、同步DRAM(SDRAM)、高速缓存等。非易失性存储器可以包括例如(但不限于):一次性可编程只读存储器(OTPROM)、可编程ROM(PROM)、可擦除可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、掩膜型ROM、闪存ROM、闪存(例如,NAND闪存、NOR闪存等)、硬盘驱动器或固态驱动器(SSD)、高密度闪存(CF)、安全数字(SD)、微型SD、迷你型SD、极限数字(xD)、多媒体卡(MMC)、记忆棒等。此外,存储器920也可以是远程存储设备,例如网络连接存储设备(NAS)等。存储器920也可以包括分布在多个地点的分布式存储设备,例如云存储器。
输入/输出模块930可以被配置为从外部接收输入和/或向外部提供输出。尽管在图9所示实施例中将输入/输出模块930示出为单一模块,但实际上其可以是专门用于输入的模块、专门用于输出的模块或其组合。例如,输入/输出模块930可以包括(但不限于):键盘、鼠标、麦克风、摄像头、显示器、触摸屏显示器、打印机、扬声器、耳机或任何其他可以用于输入/输出的设备等。此外,输入/输出模块930也可以是被配置为与上述设备连接的接口,例如耳机接口、麦克风接口、键盘接口、鼠标接口等。在该情况下,电子设备900可以通过该接口与外部输入/输出设备连接并实现输入/输出功能。
通信模块940可以被配置为使得电子设备900能够与其它电子设备进行通信并交换各种数据。通信模块940可以是例如:以太网接口卡、USB模块、串行线路接口卡、光纤接口卡、电话线路调制解调器、xDSL调制解调器、Wi-Fi模块、蓝牙模块、2G/3G/4G/5G通信模块等。从数据输入/输出的意义上,通信模块940也可以被视为输入/输出模块930的一部分。
此外,电子设备900还可以包括其它模块950,包括(但不限于):电源模块、GPS模块、传感器模块(例如,接近传感器、照度传感器、加速度传感器、指纹传感器等)等。
然而,需要注意的是:上述模块仅是电子设备900所可能包括的模块的部分示例,根据本公开实施例的电子设备不限于此。换言之,根据本公开其它实施例的电子设备可以包括更多的模块、更少的模块或不同模块。
在一些实施例中,图9所示的电子设备900可以执行结合图2或图9所述的各个方法的各个步骤。在一些实施例中,存储器920中存储有指令,该指令在由处理器910执行时,可使得处理器910执行根据结合图2所述的各个方法的各个步骤。
至此已经结合优选实施例对本公开进行了描述。应该理解,本领域技术人员在不脱离本公开的精神和范围的情况下,可以进行各种其它的改变、替换和添加。因此,本公开的范围不局限于上述特定实施例,而应由所附权利要求所限定。
此外,在本文中被描述为通过纯硬件、纯软件和/或固件来实现的功能,也可以通过专用硬件、通用硬件与软件的结合等方式来实现。例如,被描述为通过专用硬件(例如,现场可编程门阵列(FPGA)、专用集成电路(ASIC)等)来实现的功能,可以由通用硬件(例如,中央处理单元(CPU)、数字信号处理器(DSP))与软件的结合的方式来实现,反之亦然。
Claims (17)
1.一种用于检测异常数据的方法,包括:
确定与待检测数据集相对应的对象相似度图,其中,所述对象相似度图中的每个顶点对应于所述待检测数据集中的对象数据,以及所述对象相似度图中的每条边指示与由该边连接的两个顶点相对应的对象数据之间的相似度;
将所述对象相似度图中的顶点分为一个或多个组;以及
将与所述一个或多个组中至少一个组的顶点相对应的对象数据确定为异常数据。
2.根据权利要求1所述的方法,其中,所述待检测数据集具有二分图的形式,所述二分图的顶点包括与所述对象数据相对应的对象顶点和与用户数据相对应的用户顶点,所述二分图的边包括一个或多个用户顶点与一个或多个对象顶点之间的边。
3.根据权利要求2所述的方法,其中,确定与待检测数据集相对应的对象相似度图的步骤包括:
将所述二分图中的一个或多个对象顶点确定为所述对象相似度图中的相应顶点;以及
基于所述二分图中两个对象顶点之间的相似度,来确定所述对象相似度图中相应顶点之间的边的权重。
4.根据权利要求3所述的方法,其中,两个对象顶点之间的相似度是至少基于分别与所述两个对象顶点相连的用户顶点来确定的。
7.根据权利要求5或6所述的方法,其中,各个元组还包括以下至少一项:
时间戳;以及
星级评分。
8.根据权利要求1所述的方法,其中,将所述对象相似度图中的顶点分为一个或多个组的步骤包括:
向所述对象相似度图中的每个顶点分配唯一标签;
针对每个顶点,基于其邻居的标签来更新该顶点的标签一次或多次,直到满足停止条件为止;以及
根据标签将顶点分为一组或多组,使得具有相同标签的顶点在同一组中,具有不同标签的顶点在不同组中。
9.根据权利要求8所述的方法,其中,针对每个顶点,基于其邻居的标签来更新该顶点的标签一次或多次,直到满足停止条件为止的步骤包括:
针对每个顶点mi,执行以下过程:
针对顶点mi的所有邻居顶点的每种不同标签l,执行以下过程:
确定所述所有邻居顶点中的具有标签l的第一邻居顶点;
确定所述第一邻居顶点与顶点mi之间的所有边的权重中的前K个最大权重之和,其中,K是正整数;以及
确定与不同标签l相对应的前K个最大权重之和中的最大值;以及
将与所述最大值相对应的标签l确定为顶点mi的要在下一轮迭代中使用的标签。
11.根据权利要求8所述的方法,其中,针对每个顶点,基于其邻居的标签来更新该顶点的标签一次或多次,直到满足停止条件为止的步骤是通过以下方式来并行执行的:
对每个顶点进行染色,使得相邻顶点不具有相同的颜色;
针对具有不同颜色的顶点,并行执行针对其的标签的更新过程。
12.根据权利要求1所述的方法,其中,将与所述一个或多个组中至少一个组的顶点相对应的对象数据确定为异常数据的步骤包括:
针对所述一个或多个组中的每个组,执行以下过程:
确定所述组的所有边上的相似度的平均值;
确定所述组的所有对象对上来自相同用户的边的平均数量;以及
基于所述相似度的平均值和所述边的平均数量来确定所述组的可疑度分数,
将与所述一个或多个组中具有超过阈值的可疑度分数的组相对应的数据确定为异常数据。
16.一种用于检测异常数据的设备,包括:
处理器;
存储器,其上存储有指令,所述指令在由所述处理器执行时使得所述处理器执行根据权利要求1~15中任一项所述的方法。
17.一种存储指令的计算机可读存储介质,所述指令在由处理器执行时使得所述处理器执行根据权利要求1~15中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910467998.9A CN112016927B (zh) | 2019-05-31 | 2019-05-31 | 用于检测异常数据的方法、设备和计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910467998.9A CN112016927B (zh) | 2019-05-31 | 2019-05-31 | 用于检测异常数据的方法、设备和计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112016927A true CN112016927A (zh) | 2020-12-01 |
CN112016927B CN112016927B (zh) | 2023-10-27 |
Family
ID=73500994
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910467998.9A Active CN112016927B (zh) | 2019-05-31 | 2019-05-31 | 用于检测异常数据的方法、设备和计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112016927B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113722546A (zh) * | 2021-08-19 | 2021-11-30 | 北京达佳互联信息技术有限公司 | 异常用户账户获取方法及装置、电子设备、存储介质 |
CN114596097A (zh) * | 2022-05-10 | 2022-06-07 | 富算科技(上海)有限公司 | 用户识别方法、装置、电子设备和计算机可读存储介质 |
US20220230178A1 (en) * | 2021-01-21 | 2022-07-21 | Shopify Inc. | Computer-implemented systems and methods for detecting fraudulent activity |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090307049A1 (en) * | 2008-06-05 | 2009-12-10 | Fair Isaac Corporation | Soft Co-Clustering of Data |
CN101826105A (zh) * | 2010-04-02 | 2010-09-08 | 南京邮电大学 | 基于匈牙利匹配算法的钓鱼网页检测方法 |
CN102999638A (zh) * | 2013-01-05 | 2013-03-27 | 南京邮电大学 | 基于网络群挖掘的钓鱼网站检测方法 |
US9516053B1 (en) * | 2015-08-31 | 2016-12-06 | Splunk Inc. | Network security threat detection by user/user-entity behavioral analysis |
CN108322473A (zh) * | 2018-02-12 | 2018-07-24 | 北京京东金融科技控股有限公司 | 用户行为分析方法与装置 |
CN108829715A (zh) * | 2018-05-04 | 2018-11-16 | 慧安金科(北京)科技有限公司 | 用于检测异常数据的方法、设备和计算机可读存储介质 |
CN109145162A (zh) * | 2018-08-21 | 2019-01-04 | 慧安金科(北京)科技有限公司 | 用于确定数据相似度的方法、设备和计算机可读存储介质 |
CN109191107A (zh) * | 2018-06-29 | 2019-01-11 | 阿里巴巴集团控股有限公司 | 交易异常识别方法、装置以及设备 |
CN109255371A (zh) * | 2018-08-23 | 2019-01-22 | 武汉斗鱼网络科技有限公司 | 一种确定直播平台虚假关注用户的方法以及相关设备 |
CN109413439A (zh) * | 2018-09-30 | 2019-03-01 | 武汉斗鱼网络科技有限公司 | 一种确定嫌疑用户的方法及相关设备 |
US20190114649A1 (en) * | 2017-10-12 | 2019-04-18 | Yahoo Holdings, Inc. | Method and system for identifying fraudulent publisher networks |
-
2019
- 2019-05-31 CN CN201910467998.9A patent/CN112016927B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090307049A1 (en) * | 2008-06-05 | 2009-12-10 | Fair Isaac Corporation | Soft Co-Clustering of Data |
CN101826105A (zh) * | 2010-04-02 | 2010-09-08 | 南京邮电大学 | 基于匈牙利匹配算法的钓鱼网页检测方法 |
CN102999638A (zh) * | 2013-01-05 | 2013-03-27 | 南京邮电大学 | 基于网络群挖掘的钓鱼网站检测方法 |
US9516053B1 (en) * | 2015-08-31 | 2016-12-06 | Splunk Inc. | Network security threat detection by user/user-entity behavioral analysis |
US20190114649A1 (en) * | 2017-10-12 | 2019-04-18 | Yahoo Holdings, Inc. | Method and system for identifying fraudulent publisher networks |
CN108322473A (zh) * | 2018-02-12 | 2018-07-24 | 北京京东金融科技控股有限公司 | 用户行为分析方法与装置 |
CN108829715A (zh) * | 2018-05-04 | 2018-11-16 | 慧安金科(北京)科技有限公司 | 用于检测异常数据的方法、设备和计算机可读存储介质 |
CN109191107A (zh) * | 2018-06-29 | 2019-01-11 | 阿里巴巴集团控股有限公司 | 交易异常识别方法、装置以及设备 |
CN109145162A (zh) * | 2018-08-21 | 2019-01-04 | 慧安金科(北京)科技有限公司 | 用于确定数据相似度的方法、设备和计算机可读存储介质 |
CN109255371A (zh) * | 2018-08-23 | 2019-01-22 | 武汉斗鱼网络科技有限公司 | 一种确定直播平台虚假关注用户的方法以及相关设备 |
CN109413439A (zh) * | 2018-09-30 | 2019-03-01 | 武汉斗鱼网络科技有限公司 | 一种确定嫌疑用户的方法及相关设备 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220230178A1 (en) * | 2021-01-21 | 2022-07-21 | Shopify Inc. | Computer-implemented systems and methods for detecting fraudulent activity |
US12008573B2 (en) * | 2021-01-21 | 2024-06-11 | Shopify Inc. | Computer-implemented systems and methods for detecting fraudulent activity |
CN113722546A (zh) * | 2021-08-19 | 2021-11-30 | 北京达佳互联信息技术有限公司 | 异常用户账户获取方法及装置、电子设备、存储介质 |
CN113722546B (zh) * | 2021-08-19 | 2024-03-12 | 北京达佳互联信息技术有限公司 | 异常用户账户获取方法及装置、电子设备、存储介质 |
CN114596097A (zh) * | 2022-05-10 | 2022-06-07 | 富算科技(上海)有限公司 | 用户识别方法、装置、电子设备和计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112016927B (zh) | 2023-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Liu et al. | Addressing the class imbalance problem in twitter spam detection using ensemble learning | |
Jiang et al. | Catching synchronized behaviors in large networks: A graph mining approach | |
CN111523012B (zh) | 用于检测异常数据的方法、设备和计算机可读存储介质 | |
Gupta et al. | Towards detecting fake user accounts in facebook | |
US9183387B1 (en) | Systems and methods for detecting online attacks | |
US20150047026A1 (en) | Anomaly detection to identify coordinated group attacks in computer networks | |
Lagraa et al. | A simple graph embedding for anomaly detection in a stream of heterogeneous labeled graphs | |
CN112016927B (zh) | 用于检测异常数据的方法、设备和计算机可读存储介质 | |
Zhou et al. | Analyzing and detecting money-laundering accounts in online social networks | |
CN109947814A (zh) | 用于检测数据集合中的异常数据组的方法和设备 | |
Hao et al. | Detecting shilling attacks with automatic features from multiple views | |
Yikun et al. | No place to hide: Catching fraudulent entities in tensors | |
Podder et al. | Artificial neural network for cybersecurity: A comprehensive review | |
Wang et al. | Preserving privacy in social networks against connection fingerprint attacks | |
Rupa Devi et al. | A review on network intrusion detection system using machine learning | |
Juvonen et al. | An efficient network log anomaly detection system using random projection dimensionality reduction | |
Rodríguez-Barroso et al. | Backdoor attacks-resilient aggregation based on robust filtering of outliers in federated learning for image classification | |
CN112016934B (zh) | 用于检测异常数据的方法、设备和计算机可读存储介质 | |
Reddy et al. | Detection of DDoS Attack in IoT Networks Using Sample elected RNN-ELM | |
Nguyen et al. | Manipulating recommender systems: A survey of poisoning attacks and countermeasures | |
Bauckhage et al. | Kernel archetypal analysis for clustering web search frequency time series | |
Gao et al. | Anomaly traffic detection in IoT security using graph neural networks | |
Wang et al. | Phishing webpage detection based on global and local visual similarity | |
Liao et al. | Multi-scale Convolutional Feature Fusion Network Based on Attention Mechanism for IoT Traffic Classification | |
Abuali et al. | Intrusion Detection Techniques in Social Media Cloud: Review and Future Directions |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |