一种异常用户检测方法及设备与流程

文档序号:12602920阅读:211来源:国知局
一种异常用户检测方法及设备与流程

本申请涉及网络技术领域,特别涉及一种异常用户检测方法。本申请同时还涉及一种异常用户检测设备。



背景技术:

随着互联网的蓬勃发展,人们的生活习惯逐渐发生着变化,相应地,电子商务平台带来的网络购物生态圈也吸引着越来越多的商家投身其中。由于电商平台存在巨大的经济利益,因此催生了很多黑色产业的发展,比如说商家雇佣大量小号购买自身产品提高电商平台的信用、黑产人员使用脚本和小号大量抢购商家促销商品再进行二次销售等。

现有的批量虚假交易买家的识别技术,主要是利用业务领域专家分析并总结的一些批量购买行为特征(如地理区域、交易次数等),训练分类模型,然后产出一些阈值来对用户ID进行筛选,这种方法容易被作弊用户以代理IP、低频交易等形式绕过模型监控。因此,如何能从海量日志数据中有效识别存在批量虚假交易行为的买家,不仅是电子商务系统防范黑色产业、保护商家和消费者正常交易行为的一个有力切入点,同时也是本领域技术人员亟待解决的技术问题。



技术实现要素:

本申请提供了一种异常用户检测方法,结合数据系统中各个用户的操作行为对用户进行检测,发现具有异常操作行为的用户,从而提高现有数据系统的稳定性,提升用户的使用体验。该方法包括:

预设第一类型操作行为与第二类型操作行为的对应关系,该方法包括:

根据所述对应关系获取指定时间段内用户的各个第一类型操作行为与后续距离其时刻最近的第二类型操作行为之间的时间间隔;

根据各所述时间间隔、多个预设的间隔时长以及与各所述间隔时长对应的权重值生成与所述用户对应的间隔累积值;

根据所述用户的间隔累积值与所述数据系统中其他用户的间隔累积值确定所述用户是否为异常用户。

优选地,根据各所述时间间隔、预设的间隔时长以及与各所述间隔时长对应的权重值生成与所述用户对应的间隔累积值,具体为:

根据所述时间间隔以及所述间隔时长确定与各所述间隔时长对应的归一化值,所述归一化值为单一间隔时长对应的时间间隔的数量与所述时间间隔的总数量的比值;

根据与各所述间隔时长对应的权重以及归一化值生成所述间隔累积值,其中,时间长度较长的间隔时长所对应的权重高于时间长度较短的间隔时长所对应的权重。

优选地,根据所述对应关系获取指定时间段内用户的各个第一类型操作行为与后续距离其时刻最近的第二类型操作行为之间的时间间隔,具体为:

获取所述用户在指定时间段内的行为记录数据,所述行为记录数据包括所述第一类型操作行为的操作时刻以及所述第二类型操作行为的操作时刻;

获取各所述第一类型操作行为的操作时刻与后续距离其最近的第二类型操作行为的操作时刻确定各所述时间间隔。

优选地,根据所述时间间隔以及多个预设的间隔时长确定与各所述间隔时长对应的归一化值,具体为:

将所述时间间隔按照多个预设的间隔时长进行分类;

确定各所述间隔时长对应的时间间隔的数量;

获取各所述间隔时长对应的时间间隔的数量与所述时间间隔的总数量的 比值,将所述比值作为各所述间隔时长的归一化值。

优选地,根据所述用户的间隔累积值与所述数据系统中其他用户的间隔累积值确定所述用户是否为异常用户,具体为:

将所述用户间隔累积值与所述其他用户中数值最大的间隔累积值之间的差值作为所述用户的反向间隔累积值;

根据所述用户以及所述其他用户的反向间隔累积值确定异常阀值;

判断所述用户的反向间隔累积值是否大于所述异常阀值;

若是,则确定所述用户为异常用户;

若否,确定所述用户为正常用户。

优选地,根据所述用户以及所述其他用户的反向间隔累积值确定异常阀值,具体为:

将所述用户以及所述其他用户的间隔累积值按照大小顺序进行排序;

根据指定排序位的用户的间隔累积值的差值以及预设的系数确定所述异常阀值。

相应地,本申请还提出了一种异常用户检测设备所述设备预设第一类型操作行为与第二类型操作行为的对应关系,该设备还包括:

获取模块,根据所述对应关系获取指定时间段内用户的各个第一类型操作行为与后续距离其时刻最近的第二类型操作行为之间的时间间隔;

生成模块,根据各所述时间间隔、多个预设的间隔时长以及与各所述间隔时长对应的权重值生成与所述用户对应的间隔累积值;

确定模块,根据所述用户的间隔累积值与所述数据系统中其他用户的间隔累积值确定所述用户是否为异常用户。

优选地,所述生成模块具体用于:

根据所述时间间隔以及所述间隔时长确定与各所述间隔时长对应的归一 化值,所述归一化值为单一间隔时长对应的时间间隔的数量与所述时间间隔的总数量的比值;

根据与各所述间隔时长对应的权重以及归一化值生成所述间隔累积值,其中,时间长度较长的间隔时长所对应的权重高于时间长度较短的间隔时长所对应的权重。

优选地,所述获取模块具体用于:

获取所述用户在指定时间段内的行为记录数据,所述行为记录数据包括所述第一类型操作行为的操作时刻以及所述第二类型操作行为的操作时刻;

获取各所述第一类型操作行为的操作时刻与后续距离其最近的第二类型操作行为的操作时刻确定各所述时间间隔。

优选地,所述生成模块根据所述时间间隔以及多个预设的间隔时长确定与各所述间隔时长对应的归一化值,具体为:

将所述时间间隔按照多个预设的间隔时长进行分类;

确定各所述间隔时长对应的时间间隔的数量;

获取各所述间隔时长对应的时间间隔的数量与所述时间间隔的总数量的比值,将所述比值作为各所述间隔时长的归一化值。

优选地,所述确定模块具体用于:

将所述用户间隔累积值与所述其他用户中数值最大的间隔累积值之间的差值作为所述用户的反向间隔累积值;

根据所述用户以及所述其他用户的反向间隔累积值确定异常阀值;

判断所述用户的反向间隔累积值是否大于所述异常阀值;

若是,则确定所述用户为异常用户;

若否,确定所述用户为正常用户。

优选地,所述确定模块根据所述用户以及所述其他用户的反向间隔累积值确定异常阀值,具体为:

将所述用户以及所述其他用户的间隔累积值按照大小顺序进行排序;

根据指定排序位的用户的间隔累积值的差值以及预设的系数确定所述异常阀值。

由此可见,通过应用本申请的技术方案,基于预设的第一类型操作行为与第二类型操作行为的对应关系获取指定时间段内用户的各个第一类型操作行为与后续距离其时刻最近的第二类型操作行为之间的时间间隔,根据各时间间隔、多个预设的间隔时长以及与各间隔时长对应的权重值生成与用户对应的间隔累积值,并根据用户的间隔累积值与其他用户的间隔累积值确定用户是否为异常用户。从而能够在数据系统中的海量行为数据记录中主动监测并发现存在异常行为的用户,提高了数据系统的稳定性以及用户的使用体验。

附图说明

图1为本申请提出的一种异常用户检测方法的流程示意图;

图2为本申请提出的一种异常用户检测设备的结构示意图。

具体实施方式

为解决背景技术中的技术问题,本申请通过使用电子商务平台的用户在一段时间范围内的行为日志,通过分析两个特定类型的操作行为之间的间隔时间规律,判断该用户是否存在如批量虚假交易等异常操作行为。

如图1所示,为本申请提出的一种异常用户检测方法的流程示意图,在使用该方案之前,技术人员可以根据实际需要以及使用场景指定具体的第一类型操作行为与具体的第二类型操作行为,并预设第一类型操作行为与第二类型操作行为。包括以下步骤:

S101,根据所述对应关系获取指定时间段内用户的各个第一类型操作行为与后续距离其时刻最近的第二类型操作行为之间的时间间隔。

用户行为记录数据是大数据体系中的重要组成部分。大多数电子商务平台系统都嵌入了日志模块实时记录用户在系统上的操作行为,从而支撑相应的分析模型,比如用户对商品的浏览轨迹可用于商品智能推荐模型的训练等。在不同用户的行为记录数据中都包含了用户的各个不同行为及其对因的操作时间,其中就包括了用户浏览商品的时间以及用户购买浏览的商品的时间。

由于本申请可实现针对用户的虚假交易行为进行检测,这与用户浏览商品以及购买商品之间的时间间隔密不可分,因为正常的用户在浏览商品后通常需要一段时间考虑是否需要购买,因此不会立刻进行购买,而虚假交易的用户为了提高刷单效率,则是在浏览完商品后即刻进行购买。出于获取经济利益的原因,进行批量虚假交易行为的用户对应的“浏览”和“购买”两个行为之间的间隔时间较短,与正常交易行为存在可分辨的差异,因此在本申请的优选实施例中,当需要根据对应关系获取指定时间段内用户的各个第一类型操作行为与后续距离其时刻最近的第二类型操作行为之间的时间间隔时,可以首先获取所述用户在指定时间段内的行为记录数据,所述行为记录数据包括所述第一类型操作行为的操作时刻以及所述第二类型操作行为的操作时刻;随后再获取各所述第一类型操作行为的操作时刻与后续距离其最近的第二类型操作行为的操作时刻确定各所述时间间隔。在具体的应用场景中,第一类型操作行为可设置为“浏览”,第二类型操作行为可设置为“购买”。

S102,根据各所述时间间隔、多个预设的间隔时长以及与各所述间隔时长对应的权重值生成与所述用户对应的间隔累积值。

为了能够清楚反映一个用户在某个时间段内的第一类型操作行为与第二类型操作行为之间的时间间隔的情况,在本申请优选的实施例中引入了归一化值以及与各个间隔时长对应的权重,其中归一化值为单一间隔时长对应的时间间隔的数量与所述时间间隔的总数量的比值,而时间长度较长的间隔时 长所对应的权重高于时间长度较短的间隔时长所对应的权重。基于S101中所获取的间隔时长,该步骤首先根据时间间隔以及间隔时长确定与各所述间隔时长对应的归一化值,随后根据与各所述间隔时长对应的权重以及归一化值生成所述间隔累积值。具体地,在本申请的一个优选实施例中,可采取以下步骤确定归一化值:

步骤a)将所述时间间隔按照多个预设的间隔时长进行分类;

步骤b)确定各所述间隔时长对应的时间间隔的数量;

步骤c)获取各所述间隔时长对应的时间间隔的数量与所述时间间隔的总数量的比值,将所述比值作为各所述间隔时长的归一化值。

同时,为了能够清楚的描述一个用户的交易频次,以及将正常用户与批量虚假交易的用户进行区分,本申请技术方案针对各个间隔时长设置了一个权重值,并且令时间长度较长的间隔时长所对应的权重高于时间长度较短的间隔时长所对应的权重,然后针对每一个用户根据各间隔时长对应的权重以及归一化值生成该用户的间隔累积值。通过该方式所得到的用户的间隔累积值对于批量虚假交易的用户来说是必然小于正常交易的用户的。

以具体实施场景中针对虚假交易用户检测为例,为了能够清楚地对一个用户的交易频次进行界定,本申请预设了多个不同长短的间隔时长,例如1秒以内、1秒至10秒之间、10秒至30秒之间、30秒至1分钟之间、1分钟至10分钟之间、10分钟至30分钟之间、30分钟至1小时之间、1小时以上等。基于S101中所获取的时间间隔,本申请在该步骤中首先将时间间隔按照多个预设的间隔时长进行分类,即根据各个时间间隔的长度,将其归类到相应的范围的间隔时长中,假设某个时间间隔长度为6分钟,那么与其对应的间隔时长则为“1分钟至10分钟之间”。

在确认所有的时间间隔都分类完毕之后,该步骤继续确定与各间隔时长 对应的时间间隔的数量,比如有多少个时间间隔对应“30秒至1分钟之间”的间隔时长,多少时间间隔对应“30分钟至1小时之间”的间隔时长等等,最后根据统计的结果获取各间隔时长对应的时间间隔的数量与时间间隔的总数量的比值,将该比值作为各个间隔时长对应的归一化值。通过以上处理所到的归一化值,可以很清楚的表明该用户的交易频次。

S103,根据所述用户的间隔累积值与其他用户的间隔累积值确定所述用户是否为异常用户。

基于S102中的说明,由于间隔累积值能够平均地反映一个用户在指定时间内的交易频次水平,因此在获取到当前数据系统的所有用户的间隔累积值后,即可进一步地根据所有用户的间隔累积值的水平设置相应的检测方案,在本申请优选的实施例中,可采取如下实现方案:

步骤a)将所述用户间隔累积值与所述其他用户中数值最大的间隔累积值之间的差值作为所述用户的反向间隔累积值。

由于本实施例中是将一段时间内所有用户的间隔累积值进行比较,因此以最大的间隔累积值的用户作为标准(该用户明显不会是批量虚假交易的用户),计算得到各个用户相对于该用户的反向间隔累积值,反向间隔累积值越大即代表该用户可能为批量虚假交易用户的可能性越大。

步骤b)根据所述用户以及所述其他用户的反向间隔累积值确定异常阀值。

为了能够准确地对批量虚假交易用户进行界定,基于上一步骤中所得到的反向间隔累积值,该步骤将用户以及其他用户的间隔累积值按照大小顺序进行排序,然后根据指定排序位的用户的间隔累积值的差值以及预设的系数确定异常阀值。其中,具体的排序位以及系数可以根据实际情况灵活设置,在此基础上本领域技术人员也可选择其他阈值指标结合反向间隔累积值(例 如灰度图分割技术等)确定用户是否为异常用户,这些都属于本申请的保护范围。

步骤c)判断所述用户的反向间隔累积值是否大于所述异常阀值;

若是,则确定所述用户为异常用户;

若否,确定所述用户为正常用户。

为了进一步阐述本申请的技术思想,现结合具体的应用场景,对本申请的技术方案进行说明。该具体实施例包括以下步骤:

步骤201,获取用户在一段时间范围内的行为记录数据。

假定分析日期为2014年1月1日至12月31日,具体的记录数据如下表1所示,该行为记录数据是从数据系统中所有用户的行为记录数据表中根据用户ID分组提取出来的,其中主要包括了日志流水号、用户ID、操作行为类型以及操作时间等信息。

表1

步骤202,以用户为单位,按照时间对行为记录数据进行排序,生成“浏览”以及“购买”行为的时间间隔序列。

基于表1该步骤按用户ID分组,分别统计“用户001”相邻的“浏览”和“购买”行为的时间间隔,形成如下格式的数据:

{用户ID:X;时间间隔(秒):4,23,12,21,2,11,……}

步骤203,对时间间隔信息进行离散化、归一化处理,生成归一化向量。

该步骤首先分别计算出时间间隔为1秒以内、1秒至10秒之间、10秒至30秒之间、30秒至1分钟之间、1分钟至10分钟之间、10分钟至30分钟之间、30分钟至1小时之间、1小时以上的交易次数,随后将这些交易次数除以总交易数量,得到维度为8的“归一化向量”。以用户ID为001以及总交易数量为100为例,相应的归一化计算示例如下表2所示:

表2

最后所得到该用户的归一化后的向量为:{V1,V2,V3,……,V8},其中,V1代表小于1秒的交易次数的归一化值(上例中为:0.3),V8代表大于等于1小时的交易次数的归一化值(上例中为:0.01),其余的Vi是时间间隔为i秒的交易次数的归一化值,另外由于是“归一化”值,因此该向量具备以下 特征:V1+V2+V3……+V8=1.0

步骤204,按照算法生成用户ID对应的间隔累积值与反向间隔累积值。

具体地,每个用户ID的间隔累积值(“Accumulated Interval”数值)计算方法如下:

令A代表“Accumulated Interval”数值,则:

接下来对间隔累积值取反(时间间隔越短越可能批量虚假交易,间隔累积值会趋向变小),用户ID的反向间隔累积值=Max(所有用户ID的间隔累积值)-该用户ID的间隔累积值。

步骤205,对用户的反向间隔累积值进行过滤,确定异常用户的ID。

该步骤将统计出所有用户ID中的异常间隔累积值,并以此数值为阀值,过滤出怀疑存在批量虚假交易行为的买家ID。具体地,异常阀值计算公式如下:

异常阀值=2*1.5*(75分位值–25分位值);

其中,“75分位值”和“25分位值”分别是步骤3中所有用户的反向间隔累积值按从小到大的75位排名数值和25位排名值。

基于异常阈值,即可过滤出所有反向间隔累积值大于“异常阀值”的用户ID。

步骤206,输出异常用户的ID清单,判断为虚假批量交易用户。

为达到以上技术目的,本申请还提出了一种异常用户检测设备,如图2所示,该设备包括:

获取模块210,根据所述对应关系获取指定时间段内用户的各个第一类型 操作行为与后续距离其时刻最近的第二类型操作行为之间的时间间隔;

生成模块220,根据各所述时间间隔、多个预设的间隔时长以及与各所述间隔时长对应的权重值生成与所述用户对应的间隔累积值;

确定模块230,根据所述用户的间隔累积值与其他用户的间隔累积值确定所述用户是否为异常用户。

在具体的应用场景中,所述生成模块具体用于:

根据所述时间间隔以及所述间隔时长确定与各所述间隔时长对应的归一化值,所述归一化值为单一间隔时长对应的时间间隔的数量与所述时间间隔的总数量的比值;

根据与各所述间隔时长对应的权重以及归一化值生成所述间隔累积值,其中,时间长度较长的间隔时长所对应的权重高于时间长度较短的间隔时长所对应的权重。

在具体的应用场景中,所述获取模块具体用于:

获取所述用户在指定时间段内的行为记录数据,所述行为记录数据包括所述第一类型操作行为的操作时刻以及所述第二类型操作行为的操作时刻;

获取各所述第一类型操作行为的操作时刻与后续距离其最近的第二类型操作行为的操作时刻确定各所述时间间隔。

在具体的应用场景中,所述生成模块根据所述时间间隔以及多个预设的间隔时长确定与各所述间隔时长对应的归一化值,具体为:

将所述时间间隔按照多个预设的间隔时长进行分类;

确定各所述间隔时长对应的时间间隔的数量;

获取各所述间隔时长对应的时间间隔的数量与所述时间间隔的总数量的比值,将所述比值作为各所述间隔时长的归一化值。

在具体的应用场景中,所述确定模块具体用于:

将所述用户间隔累积值与所述其他用户中数值最大的间隔累积值之间的 差值作为所述用户的反向间隔累积值;

根据所述用户以及所述其他用户的反向间隔累积值确定异常阀值;

判断所述用户的反向间隔累积值是否大于所述异常阀值;

若是,则确定所述用户为异常用户;

若否,确定所述用户为正常用户。

在具体的应用场景中,所述确定模块根据所述用户以及所述其他用户的反向间隔累积值确定异常阀值,具体为:

将所述用户以及所述其他用户的间隔累积值按照大小顺序进行排序;

根据指定排序位的用户的间隔累积值的差值以及预设的系数确定所述异常阀值。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本申请可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施场景所述的方法。

本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本申请所必须的。

本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。

上述本申请序号仅仅为了描述,不代表实施场景的优劣。

以上公开的仅为本申请的几个具体实施场景,但是,本申请并非局限于 此,任何本领域的技术人员能思之的变化都应落入本申请的保护范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1