用于检测行为数据的异常的方法和设备与流程

文档序号:27257890发布日期:2021-11-05 20:30阅读:122来源:国知局
用于检测行为数据的异常的方法和设备与流程

1.本技术涉及数据处理,特别地,涉及用于对诸如与交易相关的行为数据的异常进行检测的方法和设备。


背景技术:

2.交易行为存在于在诸如餐饮业的诸多行业中。与交易相关的数据的风险控制是交易行为数据管理的主要目的之一。风险控制的前提是能够准确检测到交易相关数据中存在的异常情况。
3.针对交易相关数据的异常检测提出很多方法。例如,风控业务人员采用的现有的异常交易行为的检测方法基本遵循以下步骤:(1)定义行为;(2)收集行为记录数据;(3)基于行为记录数据,定义并计算统计指标以得到行为统计数据;(4)基于行为统计数据,运行有关异常检测算法以检测到在交易过程中存在异常的用户、交易、行为等。
4.但是,由于风控业务人员的业务理解水平差异,导致对行为记录数据的统计建模不能够准确表征交易场景的特性,使得异常检测的结果差异巨大。
5.因此,存在对现有的行为数据异常的检测的改进需求。


技术实现要素:

6.根据本技术的实施例,提出用于检测行为数据的异常的方法、设备及其计算机可读存储介质,其目的在于解决如上所述的至少一个现有技术中存在的缺陷。
7.根据本技术的一方面,提出一种用于检测行为数据的异常的方法,其包括:获取与行为数据相关联的实体数据和事件数据;基于行为数据,由实体数据和事件数据构造行为图模型,其中,行为图模型由至少两个节点和连接在节点之间的边组成,节点表示与行为相关联的实体,边表示与行为相关联的事件,边和被边连接的两个节点表示在节点所表示的实体之间发生事件的行为;针对节点中的每一个,基于行为图模型抽取节点的至少一个特征;基于节点的所抽取的特征检测行为数据中的异常。
8.根据本技术的另一方面,提出一种计算机可读存储介质,其上存储有计算机程序,该计算机程序包括可执行指令,当可执行指令被处理器执行时,实施如上所述的方法。
9.根据本技术的又一方面,提出一种用于检测行为数据的异常的设备,其包括处理器以及用于存储处理器的可执行指令的存储器,其中,处理器被配置为执行可执行指令以实施如上所述的方法。
10.通过使用本技术的实施例所提出的方案,定义与在交易过程中所记录的行为数据相关联的实体数据和事件数据,根据实体数据与事件数据之间的逻辑关系定义行为图的图数据的模式(schema)来构造行为图模型,通过对行为图模型的节点做特征抽取并对所抽取的特征应用诸如孤立森林算法的异常检测方法确定存在异常的实体以及异常的行为。该方案不依赖于场景和统计指标的定义,消除现有的行为异常检测方案中的场景和统计模型的定义步骤,减少了行为异常检测过程对于风控业务人员业务认知的依赖,因此减小了统计
人员的业务理解水平对于行为异常检测过程的影响,节省了风控业务人员反复尝试与修改场景和模型定义的时间。相比于结构化数据,图模型数据的非结构性可以支持更加复杂的行为关系形态,对于新数据源的扩展性也更好。
11.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本技术的保护范围。
附图说明
12.下面参照附图详细描述本技术的示例性实施例。在附图中:
13.图1示出根据本技术的一个实施例的行为图模型的示例性结构;
14.图2示出根据本技术的一个实施例的用于检测行为数据的异常的方法的示例性流程图;
15.图3示出根据本技术的一个实施例的用于检测行为数据的异常的电子设备的示例性结构框图。
具体实施方式
16.现在将参考附图更全面地描述本技术的示例性实施例。然而,示例性实施例能够以多种形式实施,且不应被理解为限于在此阐述的实施方式;相反,提供这些实施方式使得本技术的内容更加全面和完整,并将示例性实施例的构思全面地传达给本领域的技术人员。在图中,为了清晰起见,可能会夸大部分元件的尺寸或加以变形。在图中相同的附图标记表示相同或类似的结构,因而将省略它们的详细描述。
17.此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本技术实施例的充分理解。然而,本领域技术人员将意识到,可以实践本技术的技术方案而没有所述特定细节中的一个或更多,或者可以采用其它的方法、元件等。在其它情况下,不详细示出或描述公知结构、方法或者操作以避免模糊本技术的关键内容。
18.在现有的交易相关数据的异常检测方法所包括的四个步骤中,前两个步骤主要依赖于待检测行为的物理特点,而不依赖风控业务人员对交易相关行为的业务理解。例如,在电商场景下用户的下单、支付等行为在确定的交易流程中具有固定的行为定义和行为记录数据的收集,无需风控业务人员做额外的定义。第四个步骤所运行的算法对于所有结构化数据具有普适性,也不依赖于风控业务人员的业务理解。但是,第三个步骤严重依赖风控业务人员的业务理解水平。在该步骤中,风控业务人员需要根据自身的业务理解,定义行为统计模型所针对的范围(即,需要统计哪些行为或行为组合)、计算方法(即,统计的次数、频率等)、时间窗口等,这个步骤称之为统计模型的“场景定义”。场景定义对于异常检测的结果影响巨大,但通常依赖人工定义,需要风控业务人员资深的业务经验与大量的实践尝试。因此,场景定义存在较多的主观因素并且无法实现标准统一,进而影响统计模型的结果。
19.实现更优的交易相关行为数据的异常检测,需要尽量减少由于诸如风控业务人员的业务理解水平和主观因素的负面影响,尽可能以中立、稳健、客观和符合自然与经济规律的方式从行为数据的定义和异常检测模型的建模方面做出针对性改进。
20.在本文中,以餐饮行业的门店交易数据为例介绍根据本技术的实施例的行为数据
异常检测方案,但是本领域技术人员应当理解,该数据异常检测方案不仅适用于线下门店,还可以适用于线上平台(如饿了吗、美团外卖、app小程序等)的交易行为数据的异常检测;不仅适用于餐饮行业,还可以适用于其它行业的与交易相关的行为数据的异常检测,例如其它实体的或虚拟的电商行业(如淘宝、京东、亚马逊等)的交易行为数据、银行业的交易行为数据。
21.在本文中,交易行为通常被理解为对象之间发生交换的“过程”,对象可以是有形的(例如商品、货物),也可以是无形的(例如货币、信息、服务、甚至是某个具体交易本身等)。因此,本技术的交易行为数据的异常检测也可以应用于其它存在交易或交换过程的场景中。异常检测的结果可以进一步指导和辅助风险评估的后续操作和处理。为便于区分常规理解中的“具体交易”与本技术的与交易相关联的行为“过程”,下文中使用与交易(具体或真实的交易)相关联的行为的表述。
22.与交易相关联的行为包括实体和事件。在本文中,实体表示行为的参与方。由于与交易相关联的行为是对象之间的交换过程,因此过程的参与方通常至少包括两个,即与一个交易相关联的行为过程中通常涉及至少两个对应的实体。在本文中以一个行为具有两个实体的情况为基础进行讨论,本领域技术人员也可以理解,也可以存在一个行为过程中具有更多个实体的情况。实体之间发生的行为过程可以包括发生交互事件的发起方和接受方,在某些情况下也可以将这两种实体分别称为事件的发起实体和接受实体。行为过程中的交换对象可以是有形和无形的,因此行为的实体可以是具体的人或事物(例如餐饮门店中进行消费的顾客和服务顾客的收银员、购买的商品),也可以是在行为过程中参与的其它虚拟方(例如会员账户、支付账户、提供的服务(如充值)、具体的交易等)。
23.需要特别说明的是,实体还可以包括“交易”,此时的“交易”对应于上文中与行为相区分的、真实存在的交易,例如在餐饮门店处在一个订单中消费某一或某些菜品的交易。需要说明的是,消费菜品的交易可能存在对先前的订单进行菜品的增加或减少的情况,在本文中以该菜品消费订单最终结账时作为该具体交易的结束时刻为例进行讨论。对于同一个顾客在同一收银员处在一周的不同日子下了相同菜品的订单,一般被认为是不同的行为,即,每笔订单被认为包括一个不同的“交易”类型的实体,因此这些行为分别具有不同的“交易”这个实体。只有同一笔订单才被认为具有相同的“交易”实体。例如,对于多个顾客一起聚餐的情况,他们参与了同一笔订单,与同一个“交易”实体发生了交互,例如点单、积分、用(优惠)券、评价等。
24.在本技术的另外的实施例中,也可将上述同一顾客在不同时间的相同菜品的订单认为是相同的行为,即,它们分别具有相同的实体“顾客/会员账户”、“交易”和“收银员”以及相应实体之间的相同的事件“点单”、“积分”、“用券”、“评价”等。此时,这种相同顾客在不同时间发生的相同行为例如可根据交易次数在图模型中通过代表相关实体的节点和/或代表相关事件的边的权重来体现。对于另一顾客下了相同菜品的订单,则可以认为这两个顾客与相同的“交易”实体进行了交互。在这种情况下,“交易”实体仅与交换的物品和服务等有关,与和该“交易”实体交互的另一实体以及交互事件的类型无关。在此,同一顾客购买套餐a和仅买套餐a中的单品b的订单则不应当被认为具有相同的“交易”实体,因为被交换的物品不同。
25.也就是说,相同的行为意味着相同的实体之间发生相同的交互事件。
26.因此,在餐饮门店消费的场景中,实体可以包括如下类型:会员/顾客、支付账户、收银员、交易等。其中,支付账户例如可以是支付宝账户、微信账户、银行账户或门店自己发行的储值卡账户、代金卡账户等。会员例如是会员卡号、会员编号或顾客手机号码表征的会员账户等。交易如上所述是相同商品/服务的订单。在此商品可以是单品、套餐或其组合。服务可以是充值。
27.当应用于银行业务数据场景时,实体类型可以是本行储蓄卡账户、他行储蓄卡账户、服务窗口(或经办人)、存款、取款、转账、贷款等。
28.与交易相关联的行为所包括的事件在本文中可以被理解为参与行为过程中的实体之间发生的交互操作或动作,例如支付账户(实体)与某个交易(实体)之间的交互事件是“支付”,而会员账户(实体)与某个交易(实体)之间的交互事件是“积分”、“核销”(即,使用优惠券/消费券抵扣至少部分交易金额的操作或动作)和“评价”中的一项或多项。事件是实体之间的交互动作,而与行为不同。可以理解为,在发生与交易相关联的某个行为“过程”中,至少两个实体之间存在“事件”的交互而构成该行为“过程”。在餐饮门店消费的场景中,事件可以包括如下类型:积分、核销、评价、支付、收银等。在银行业的场景中,事件类型例如可以是收款、放款、转款、存入、取出等。
29.下面将基于上述定义,以餐饮业的门店菜品消费场景为例,具体介绍根据本技术的实施例的用于检测交易相关的行为数据中的异常的方案的流程。
30.与交易相关联的行为数据包括在时间窗口内获取或收集的数据。该时间窗口可以是历史时间中的一段时间(时间窗口的起始时刻与结束时刻都在当前时刻之前),也可以是从历史时刻持续到当前时刻的一段时间。该段时间可以是以日、周、月、季度、半年、一年为单位获取的一段时间,或任何其它指定长度的一段时间。从在该时间窗口内的行为数据可以提取相关联的或对应的、实体相关的数据(在下文中被称为描述实体的实体数据)和事件相关的数据(在下文中被称为描述事件的事件数据)。实体数据例如可包括实体的名称和实体的类型。事件数据例如可包括事件的名称和事件的类型。
31.顾客在餐饮门店中消费菜品的整个过程可以包括多个行为环节。例如,顾客进入门店在订单中点菜,则该顾客(顾客或会员类型的实体,如果顾客是门店的会员,可以将顾客视为会员账户)与由该订单表征的交易(交易类型的实体)之间存在关联。例如该关联包括顾客对这次点菜订单进行积分变动、核销和评价。当顾客在订单交易中使用了优惠券/消费券时,顾客(顾客或会员类型的实体)与订单交易(交易类型的实体)之间发生积分变动事件(积分类型的事件)以及核销事件(核销类型的事件),顾客、订单交易和积分变动事件构成积分行为的过程,而顾客、订单交易和核销事件构成核销行为的过程,作为门店消费的一个行为环节。相应地,评价可以表示顾客对订单交易的评价事件,它们可以与实体相应地形成评价行为。
32.顾客消费菜品需要进行支付,则顾客使用银行卡(或移动支付)进行订单支付时,支付账户(支付账户类型的实体)与该订单交易(交易类型的实体)之间存在关联。由支付账户支付订单交易发生了支付事件(支付类型的事件),支付账户、订单交易以及它们之间的支付事件构成支付行为的过程,作为门店消费过程中的一个行为环节。收银员(收银员类型的实体)需要在前台或以类似pos机的移动收银方式对该顾客的订单交易(交易类型的实体)进行收银操作,则收银员与订单交易之间发生了交互(即,收银类型的事件),收银员、订
单交易及它们之间的收银事件构成收银行为的过程,也是一个行为环节。
33.作为一种特殊的交易,如果顾客向会员的储值卡账户(支付账户类型的实体)充值,则充值交易作为实体(交易类型的实体),二者之间发生充值事件,储值卡账户、充值交易和充值事件构成充值行为的过程。
34.与基于风控业务人员的场景定义建立统计模型不同的是,本技术的实施例根据由与交易相关的行为数据中获取的实体与事件之间的物理和逻辑关系构造行为图模型。行为图模型可以基于实体、事件及其行为的定义准确地表征餐饮门店消费过程中的各类人员、商品、账户等在不同交易过程中的行为历史,是行为历史数据的另一种呈现方式。这种呈现方式与风控业务人员的理解水平和主观定义无关。
35.图1中示出根据本技术的一个实施例的行为图模型的示例性结构。行为图模型100主要由表征实体的节点(例如101、102、

)和用于表征实体之间发生的交互事件的、在节点之间连接的边(例如201、202、

)组成。由于每个行为过程至少要有两个参与的实体,因此行为图模型包括至少两个节点。边和被边连接的两个节点一起表示在这两个节点所表示的两个实体之间发生由边表示的事件的行为过程或行为环节。两个相同的实体之间可能存在多种类型的交互事件,因此在被连接的两个相同节点之间也可具有多个边,多个边分别表示在这两个节点所表示的实体之间发生的不同的事件。在对行为图模型的节点做特征抽取时,也可将多边图处理为简单图。例如,可以将重合的所有边(即这些边位于相同的两个节点之间)视为一条边,但将这些边的权重相加。
36.节点数据可以包括节点id和节点类型。节点id和节点类型可分别对应于其所表征的实体的名称和类型。
37.图1中的行为图模型例如来自某个餐饮门店在过去一段时间内收集的多个行为数据。在图中可看到,代表会员账户1(属于会员类型)的节点101和代表会员账户2(属于会员类型)的节点105都与与代表交易1(属于交易类型)的节点102发生了交互,其中,代表会员账户1的节点101与代表交易1的节点102之间存在代表积分事件201、核销事件202和评价事件203的三条边,代表会员账户2的节点105与代表交易1的节点102之间存在代表核销事件206的一条边。代表支付账户1的节点103与节点102之间存在代表支付事件204的一条边。在此会员账户1与支付账户1不是强绑定的。具有会员账户1的顾客也可能通过朋友(例如具有会员账户2的顾客)的支付账户进行支付。代表负责该交易1的收银员1的节点104与代表交易1的节点102之间存在代表收银事件205的一条边。节点101至105及它们之间的事件201至206构成拥有会员账户1和会员账户2的两位顾客到门店进行了一笔消费、即交易1的整个过程中所涉及的所有行为。可以看到,每一笔订单,都是以代表该次订单中交易类型的实体“交易1”的节点为核心节点的行为图的一部分。
38.这两个顾客或其它顾客的由收银员1(节点104)负责的不同订单交易2(节点106,这两个节点104、106之间存在收银事件207)则形成行为图中的右侧扩展部分(部分结构未示出)。通过将行为数据中包括的所有实体数据和事件数据以节点和边的形式加入行为图模型,得到立体网络形式的行为图模型。通常行为图模型为无向图网络,即不考虑节点之间发生交互事件的起始方(发起方)和结束方(接受方)。
39.在该行为图模型中,还可根据不同事件的重要程度,赋予不同类型的边以不同的权重。可以以关注程度、时间相关性等作为权重的分配标准。通过这种方式,可以选择性地
设定行为数据中各种类型的实体、事件对行为图模型的拓扑结构的影响。例如,以边的长度表示权重的度量。权重越大长度越小,相应的节点越接近,即该交互事件涉及的实体关系和行为越紧密;反之,节点越远离表示交互事件涉及的实体关系和行为越稀疏,或者说它们越不相关。例如,如果风控业务人员只想关注是否有顾客存在恶意刷积分的行为,可以将积分事件之外的权重都设为零值而排除这些干扰项。不同类型的事件都可以通过调节权重分配来进行有条件的异常检测。通过引入权重,行为图模型的网络结构体现出具有不同稀疏特性的立体网络。为了便于计算,可以设定两个节点之间的多条边(多个事件)的权重之和为1。在上文中,权重仅表示加权的概念,也可以使用[0,1]范围内的数值之外的其它方式表示。
[0040]
获得行为图模型后,可以基于行为图模型的网络拓扑的几何形状和/或结构,针对每个节点,抽取节点的至少一个特征。换句话说,每个节点的所抽取的特征能够表征行为图模型的网络拓扑结构中与该节点相关的部分。例如,可使用如下图算法中的至少一个来抽取节点的特征:中心性算法、图嵌入算法。所抽取的特征相应地为节点的不同种类的中心度数据和图嵌入特征。在本技术的一个实施例中,使用中心性算法获取节点的不同种类的中心度数据来对节点做特征抽取。中心度数据可以表征相应节点在网络拓扑结构中的重要性或与其它节点的空间关系的紧密程度。节点的空间结构或空间关系对应于节点所代表的实体与其它实体之间的相互关系,因此可以通过计算节点的中心度数据获得实体之间的相互关系。
[0041]
中心度数据可以选择加权度中心性、接近中心性、中介中心性、pagerank(网页排名)和局部聚类系数中的至少一个。
[0042]
加权度中心性反映了一个节点与其它节点相联系的程度。例如,节点的加权度中心性可由与该节点直接连接的各边的权重之和来计算。
[0043]
接近中心性反映了某一节点与其它节点之间的接近程度,或者说某一节点到达其它节点的容易程度。节点的接近中心性例如可以与该节点到所有其它节点的最短路径的平均长度成负相关。
[0044]
中介中心性用于衡量一个节点出现在其它任意两个节点之间的最短路径上的次数,反映了该节点处于节点间路径的关键程度。中介中心性例如可以是其它两个节点之间的经过该节点的最短路径的数量占所述其它两个节点间的所有最短路径数量之和的比。
[0045]
pagerank表征了中心性的传递。就数量而言,如果一个节点接收到的由其它节点指向该节点的入链(in

links)越多,则说明该节点越重要。就质量而言,当一个重要的节点以出链(out

links)指向另一个节点,说明这个被指向的节点也重要。在计算节点的pagerank时,赋予每个节点以pagerank值,然后根据被连接的有向边重新计算每个节点的pagerank值;如此迭代,直到收敛,得到每个节点的pagerank值。
[0046]
节点的局部聚类系数体现的则是其邻节点也相互连通的可能性,即,反映了一个节点的邻节点之间接近全连接的程度。局部聚类系数例如可以是这些邻节点之间实际相连的边数与这些邻节点之间可能的边数的比。
[0047]
在计算中心度数据时,如果需要使用有向边计算,可以设定边的方向总是从交易类型的节点指向其它类型的节点。
[0048]
将所计算的每个节点的中心度数据形成一个结构化数据表,其中行代表一个节点
的相关信息(例如节点id、类型、不同种类的中心度计算结果),列代表同类型的数据(例如节点id列表示行为图模型中所包含的所有节点,接近中心性列表示所有节点的接近中心性计算数值),如下表1所示。
[0049]
表1节点的中心度数据表
[0050][0051]
接下来,基于结构化数据表使用异常检测算法来检测行为数据中的异常。异常检测算法可以使用孤立森林算法、局部密度聚类算法和one

way贝叶斯算法中的一种或多种算法的组合。
[0052]
孤立森林算法检测各节点的离群程度。孤立森林算法是一种适用于多维样本数据的无监督的异常检测方法,可以检测行为图模型中的各个节点的离群程度。孤立森林算法不需要有标记的样本数据来训练。孤立森林算法的基本原理是:通过设定一个特定的条件,可将样本数据集合分割成满足该条件的子集合和不满足该条件的子集合。分别对这两个子集合各自设定彼此不同的条件,可继续将这两个子集合中的每一个又分别分割成两个子集合。因此,不断分割下去,只要分割次数足够多,理想情况下最终能将每个样本数据都与其它样本数据分割/孤立开来。这整个分割过程可形象地通过一棵孤立树来表现,其中样本数据集合中的每个样本数据都位于该孤立树的唯一叶子节点(即仅具有一个样本数据的叶子节点)上。在包含异常数据样本的样本数据集合中,异常数据样本往往离群分布且分布稀疏(这在特征空间里可以理解为:分布稀疏的区域表示事件发生在该区域的概率很低,因而可以认为落在这些区域里的样本数据是异常的)。因此,异常样本数据往往通过少量次数的分割就能很快地从群体中被分割或孤立出来,从而在从孤立树的根节点到叶子节点的行进路径中,异常样本数据通常具有较小的路径深度或者说较小的步长。也就是说,步长可用于检测样本数据离群程度的高低。但是,当使用条件的顺序不同时,同一节点可能在孤立树的不同的层级上被分割出来,即具有不同的步长,从而得到不同的离群程度评价。因此,为避免条件使用顺序对检测结果的影响,针对同一样本数据集合,通常以随机的顺序使用随机的条件多次产生孤立树。当孤立树的棵数足够多(例如100棵)时,针对一个样本数据,通过对其在各孤立树中的步长取平均,可较客观地反映出该样本数据的离群程度,即得到较正确的检测结果。
[0053]
在对所得到的结构化数据表使用孤立森林算法时,可以每次分割时随机地针对中心度数据中的任一个中心度数据使用随机的阈值条件(例如,加权度中心性大于0.5,或局部聚类系数大于0.8等)来分割表中的各个节点。在不同的孤立树中,被用作条件字段的中心度数据的顺序是随机的,阈值的大小也是随机的。使用每个节点的平均步长来确定该节点的离群程度。例如,可通过对平均步长做取负或倒数运算,将平均步长换算为离群程度的度量数值。因此,节点的平均步长越小,计算出的离群程度的度量数值越高,这代表节点的
离群程度也越高。
[0054]
由此得到每个节点的离群程度的度量数值,生成每个节点的离群程度列表,如下所示:
[0055]
表2节点的离群程度列表
[0056]
节点id节点类型离群程度交易1交易计算数值收银员1收银员计算数值会员账户1会员计算数值支付账户1支付账户计算数值
………………
[0057]
在离群程度列表中,具有较高离群程度的节点被视为与其它节点更紧密。可以基于节点的类型对节点分组来对由节点所表示的不同类型的实体进行离群程度排序。例如,分别对交易、收银员、会员/顾客、支付账户类型下的各个实体的离群程度(对应于相应节点的离群程度计算数值)进行排序。根据离群程度算法中计算离群程度数值的逻辑定义,可以采用相应的排序规则。例如,在上面所述的孤立森林算法中,以离群程度度量数值由大到小的反序排列,排名越靠前的实体离群程度越高。根据业务需求,可以设定异常实体的判断阈值。例如,每个实体类型下排序靠前的某个数量的实体或一定数量百分比/比例的实体被判断为异常实体。以门店消费中的收银员为例,在所有门店中,离群程度最高的100个收银员被认为是异常的收银员,那么这些收银员中,最异常的收银员可以是排名最高的收银员2,接着是收银员1等等。
[0058]
一般来说,与其它实体关系紧密的实体被认为是异常实体,这是因为,如果某个实体与其它实体关系越紧密,则该实体与其它实体之间直接联系的数量、或者说与该实体所对应的节点直接相连的边数之和就越大,该节点的加权度中心性就越高;同时,该节点到其它所有节点的最短距离之和越短,故而其倒数越大,接近中心性越高。因此,这样的节点容易被分离出来,即离群程度高。
[0059]
进一步,还可将与异常实体相关联的行为确定为异常行为。例如可以通过图近邻搜索算法,在行为图模型中对每个所确定的异常实体查询其n阶关联子图。n阶关联可以理解为两个实体所对应的节点通过n条边相互连接。例如,对于由节点a、b、c、d、e形成的闭环a

b

c

d

e

a,1阶关联就是两个节点直接连接,如a

b,b

c;2阶关联是两个节点之间通过两条边进行连接,如a

b

c,a

e

d;3阶关联是两个实体之间通过三条边连接;以此类推。其中,节点a和d之间既存在3阶关联a

b

c

d,也存在2阶关联a

e

d。可以利用可视化组件或可视化显示设备对异常实体的n阶关联子图向业务人员进行可视化展示以方便分析调查。
[0060]
生成行为图模型的行为数据是一定时间窗口内采集的数据,当采用固定长度的时间窗口(例如考虑最近一个月、一年等时间内)时,该时间窗口随着时间推移不断更新。该时效性决定行为数据中不断补充新的数据并且丢弃旧数据。随着行为数据的更新,行为图模型也随着更新,其中可能会增加新的节点和/或边,或者进一步增加新的节点和/或边的类型从而可能增加新的行为,也可能会移除不再需要的旧的节点和/或边。
[0061]
通过使用本技术的实施例所提出的方案,定义与在交易过程中所记录的行为数据相关联的实体数据和事件数据,根据实体数据与事件数据之间的逻辑关系定义行为图的图
数据的组织结构来构造行为图模型,通过对行为图模型应用诸如孤立森林算法的异常检测方法确定存在异常的实体以及异常的行为。该方案不依赖于场景和统计指标的定义,消除现有的行为异常检测方案中的场景和统计模型的定义步骤,减少了行为异常检测过程对于风控业务人员业务认知的依赖,因此减小了统计人员的业务理解水平对于行为异常检测过程的影响,节省了风控业务人员反复尝试与修改场景和模型定义的时间。相比于结构化数据,图模型数据的非结构性可以支持更加复杂的行为关系形态,对于新数据源的扩展性也更好。
[0062]
下面根据图2介绍根据本技术的实施例的用于检测行为数据的异常的方法200,其中与上文中相同或相似的部分不再重复。
[0063]
在步骤s210中,获取与行为数据相关联的实体数据和事件数据。实体数据、事件数据与行为数据的联系在前文已经详细描述了。根据本技术的实施例,行为数据为历史数据。
[0064]
在步骤s220中,基于行为数据,由实体数据和事件数据构造行为图模型,其中,该行为图模型由至少两个节点和连接在节点之间的边组成,节点表示与行为相关联的实体,边表示与行为相关联的事件,边和被边连接的两个节点表示在节点所表示的实体之间发生事件的行为。根据本技术的实施例,在被连接的两个节点之间可具有多个边,所述边分别表示在这两个节点所表示的实体之间发生的不同的事件。优选地,边可具有权重,该权重表示与边相关联的事件的重要性。根据本技术的实施例,行为图模型为立体网络。尤其是,行为图模型为无向图模型,即,边没有方向。
[0065]
在步骤s230中,针对节点中的每一个,基于行为图模型抽取节点的至少一个特征。例如,用于对节点进行特征抽取的图算法可以是中心性算法和/或图嵌入算法。相应地,所抽取的特征包括节点的中心度数据和/或图嵌入特征。中心度数据例如包括如下中的至少一个:加权度中心性;接近中心性;中介中心性;pagerank;以及局部聚类系数。
[0066]
在步骤s240中,基于节点的所抽取的特征检测行为数据中的异常。例如,可使用如下算法中的至少一个检测所述行为数据中的异常:孤立森林算法;局部密度聚类算法;以及one

way贝叶斯算法。根据本技术的实施例,基于节点的所抽取的特征检测行为数据中的异常的步骤s240进一步包括:确定节点中的每一个的离群程度;将离群程度满足预定标准的节点所表示的实体确定为异常实体和/或将与异常实体相关联的行为确定为异常行为。根据本技术的实施例,基于节点的离群程度对节点所表示的实体进行排序,尤其是根据实体类型对实体进行分组排序。
[0067]
可选地,还可在步骤s250中对行为数据中的异常进行可视化显示。例如,可视化表示包括异常实体的基于行为图模型生成的多阶关联子图。
[0068]
根据本技术的方法200可例如用于检测与餐饮业相关联的行为数据的异常。根据本技术的实施例,实体的类型例如包括如下中的至少一个:会员、收银员、交易以及支付账户。事件的类型包括如下中的至少一个:收银、积分、核销、评价以及支付。
[0069]
在本技术的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序包括可执行指令,该可执行指令被例如处理器执行时可以实现上述实施例中所述用于检测行为数据的异常的方法的步骤。在一些可能的实施方式中,本技术的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书中用于检测行为数据的异常的
方法中描述的根据本技术各种示例性实施例的步骤。
[0070]
根据本技术的实施例的用于实现上述方法的程序产品可以采用便携式紧凑盘只读存储器(cd

rom)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本技术的程序产品不限于此,在本技术中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
[0071]
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd

rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
[0072]
所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、rf等等,或者上述的任意合适的组合。
[0073]
可以以一种或多种程序设计语言的任意组合来编写用于执行本技术方法操作的程序代码,所述程序设计语言包括面向对象的程序设计语言、诸如java、c++等,还包括常规的过程式程序设计语言、诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
[0074]
在本技术的示例性实施例中,还提供一种电子设备,该电子设备可以包括处理器,以及用于存储所述处理器的可执行指令的存储器。其中,所述处理器配置为经由执行所述可执行指令来执行上述实施例中的用于检测行为数据的异常的方法的步骤。
[0075]
所属技术领域的技术人员能够理解,本技术的各个方面可以实现为系统、方法或程序产品。因此,本技术的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
[0076]
下面参照图3来描述根据本技术的这种实施方式的电子设备300。图3示出的电子设备300仅仅是一个示例,不应对本技术实施例的功能和使用范围带来任何限制。
[0077]
如图3所示,电子设备300以通用计算设备的形式表现。电子设备300的组件可以包括但不限于:至少一个处理单元310、至少一个存储单元320、连接不同系统组件(包括存储单元320和处理单元310)的总线330、显示单元340等。
[0078]
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元310执行,使得所述处理单元310执行本说明书行为数据异常检测方法中描述的根据本技术各种
示例性实施方式的步骤。例如,所述处理单元310可以执行如图2中所示的步骤。
[0079]
所述存储单元320可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(ram)3201和/或高速缓存存储单元3202,还可以进一步包括只读存储单元(rom)3203。
[0080]
所述存储单元320还可以包括具有一组(至少一个)程序模块3205的程序/实用工具3204,这样的程序模块3205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
[0081]
总线330可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
[0082]
电子设备300也可以与一个或多个外部设备400(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备300交互的设备通信,和/或与使得该电子设备300能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口350进行。并且,电子设备300还可以通过网络适配器360与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。网络适配器360可以通过总线330与电子设备300的其它模块通信。应当明白,尽管图中未示出,但可以结合电子设备300使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。
[0083]
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本技术实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd

rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、或者网络设备等)执行根据本技术实施方式的用于检测行为数据的异常的方法。
[0084]
本领域技术人员在考虑说明书及实践这里公开的内容后,将容易想到本技术的其它实施方案。本技术旨在涵盖本技术的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本技术的一般性原理并包括本技术未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本技术真正的范围和精神由所附的权利要求指出。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1