异常用户识别方法及装置与流程

文档序号:11459085阅读:141来源:国知局
异常用户识别方法及装置与流程

本发明实施例涉及数据挖掘技术领域,尤其涉及一种异常用户识别方法及装置。



背景技术:

随着互联网技术的发展,用户线上订购商品或服务的应用软件的种类和数量也在飞速增长。上述各服务类应用软件的供应商为了吸引用户和商家使用自家的应用软件,有时会对下单用户和用于为下单用户提供商品或服务的商家提供一定的补贴或优惠。有些用户为了获取软件供应商提供的补贴或优惠,存在恶意刷单行为,尤其是通过多个用户账号进行团体刷单的行为,会给软件开发上造成不小的损失。因此在众多下单用户中如何确定出具有刷单等异常行为的用户成为一个亟待解决的问题。

当前,挖掘订单用户中潜在的异常用户的方式主要是依据共现原理,将同时在某一商家共同出现次数超过设定阈值的下单用户确定为异常用户,如确定为团体刷单用户。

现有技术中的上述确定团体刷单用户识别异常用户的方式,虽然可以在一定程度上挖掘出具有刷单等异常行为的用户团体刷单用户,但有时用于团体刷单的用户账号是轮流出现的,某些账号出现的次数并不是很多,这些在团体刷单中不常出现的具有异常行为的用户账号很可能淹没在正常的用户账号中,不被发现。



技术实现要素:

本发明实施例提供一种异常用户识别方法及装置,以全面准确的挖掘潜在的具有异常行为的用户。

第一方面,本发明实施例提供了一种异常用户识别方法,包括:

根据历史订单数据,确定各个下单用户两两之间的关联关系;

根据所述各个下单用户两两之间的关联关系,生成用户关系网络;

对所述用户关系网络进行社区划分,得到多个社区;

根据所述多个社区中的用户行为特征,确定异常用户。

第二方面,本发明实施例提供了一种异常用户识别装置,包括:

关联关系确定单元,用于根据历史订单数据,确定各个下单用户两两之间的关联关系;

关系网络生成单元,用于根据所述各个下单用户两两之间的关联关系,生成用户关系网络;

社区划分单元,用于对所述用户关系网络进行社区划分,得到多个社区,其中每个所述社区中包括至少两个下单用户;

异常用户确定单元,用于根据所述多个社区中的用户行为特征,确定异常用户。

本发明实施例方案在识别具有异常行为的异常用户时,首先根据下单用户两两之间的关联关系生成用户关系网络,并且根据复杂网络社区划分原理对用户关系网络进行社区划分,得到多个社区。其中,每个社区中的下单用户之间具有直接或间接的关联,不同社区的用户之间可能没有关联,因此,当一个社区中的部分下单用户可以被确定是异常用户时,该社区中的其它下单用户由于与确定出的异常用户具有直接或间接的关联,因此也可以被确定为异常用户,本发明实施例方案可以应用于挖掘团体刷单用户的场景中,利用此方式可以挖掘出刷单团伙中不常用的刷单用户,从而使获得的团体刷单用户更加准确全面。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明实施例。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明实施例的原理。

图1是本发明可能的一种应用场景示意图;

图2是本发明实施例一异常用户识别方法的流程图;

图3是本发明实施例二异常用户识别方法的流程图;

图4是图网络的一种结构示意图;

图5是本发明实施例异常用户识别装置的结构示意图;

图6是本发明实施例服务器的一种结构示意图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明实施例相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明实施例的一些方面相一致的装置和方法的例子。

现有的确定团体刷单用户的方法中,主要是根据下单用户的共现次数,例如第一下单用户在预设时间段在第一商家下单100次,第二下单用户在所述预设时间段内在第一商家下单90次,第一下单用户和第二下单用户在该预设时间段内的共现次数为90次,假设共现阈值为80,则第一下单用户和第二下单用户共现次数大于共现阈值,由此确定第一下单用户和第二下单用户为团体刷单用户。另外,第三下单用户也为第一下单用户和第二下单用户所属的刷单团伙中的一个下单用户,但第三下单用户在上述的预设时间段内在第一商家下单次数仅为10次,与第一下单用户和/或第二下单用户的共现次数小于共现阈值,确定第三下单用户为正常下单用户,可见,现有的在众多下单用户中挖掘潜在团体刷单用户的方法会存在遗漏某些下单用户的情况。

为了解决现有技术中,确定出的具有团体刷单等异常行为的用户不准确不全面的问题,本发明实施例提供了一种异常用户识别方案,在该方案中根据各个下单用户中两两之间的关联关系,建立用户关系网络;并利用社区划分原则,将用户关系网络划分为多个社区,当社区中的部分下单用户被确定为异常用户时,其所在的社区中的所有下单用户可能均被确定为异常用户,由此可以更加全面准确的确定出具有异常行为的用户。

图1是本发明可能的一种应用场景示意图。如图1所示,本发明所涉及的应用软件的一种基本系统架构包括:买家客户端101、卖家客户端102、派送员客户端103和服务器104,买家客户端101、卖家客户端102和派送员客户端103的数量均为多个,并且均与服务器104连接。

在图1所示的应用软件系统架构中,服务器104将商品、服务的不补贴或优惠信息显示在买家客户端101和卖家客户端102中;用户通过买家客户端101对某商品或服务下单,买家客户端101根据用户的下单操作生成订单信息发送给服务器104;服务器104将来自买家客户端101的订单信息发送给卖家客户端102,以供卖家准备相应的商品或服务;服务器104还将接收到的订单信息作为物流订单分配给派送员客户端103,以供派送员为买家配送商品或提供服务。其中,在该订单处理的流程中,如果用户通过买家客户端101所下订单满足享受补贴或优惠的条件,服务器104还向买家客户端101反馈相应的补贴或优惠,同理接单的卖家所接订单满足享受补贴或优惠的条件时,服务器104还分别向卖家客户端102反馈相应的补贴或优惠。

有些买家或卖家为了骗取软件供应商提供的补贴或优惠,可能会采用恶意刷单行为,例如:某些卖家可能会自行注册多个下单账号,并利用该多个下单账号对自家商品虚假下单,从而同时骗取软件供应商对买家和卖家提供的补贴和优惠,本申请中将该种为了骗取某些优惠、补贴或者为了使卖家店铺达到一定的信用等级而虚假下单的行为称为刷单行为,并且将利用多个不同的下单账号进行刷单的行为称为团伙刷单,其中在团伙刷单行为中,一个下单账号对应一个下单用户。

为了减少恶意刷单带来的损失,本发明实施例方案中提供了识别具有团体刷单等异常行为用户的方法。

图2是本发明实施例一异常用户识别方法的流程图。图2所示方法应用于图1所示的应用软件系统架构时,服务器为该方法的执行主体,包括:

s201,根据历史订单数据,确定各个下单用户两两之间的关联关系。

服务器根据预设时间段内的历史订单数据,确定各个下单用户中两两之间的关联关系。本申请中,各个下单用户中两两之间的关联关系,可以不仅体现在共现次数上,还可以体现在不同用户使用相同ip、不同下单用户所下订单的收货地址、召回地址相同,以及不同下单用户所下订单的备注相同等不同的维度上,从而可以深层次反应不同下单用户之间的关联关系。

s202,根据所述各个下单用户两两之间的关联关系,生成用户关系网络。

服务器在确定各个下单用户两两之间的关联关系后,生成用户关系网络,该用户关系网络可以体现各个下单用户两两之间的关联关系。

s203,对所述用户关系网络进行社区划分,得到多个社区。

服务器根据复杂网络社区划分原理对用户关系网络进行社区划分,得到多个社区,每个社区中的下单用户之间具有直接或间接的关联关系,不同社区的用户之间可能不具有关联。

s204,根据所述多个社区中的用户行为特征,确定异常用户。

服务器从上述多个社区中去确定具有异常行为的用户,例如,在某一个社区中,当确定较多数量的下单用户为刷单用户时,由于剩余刷单用户与确定为刷单用户的下单用户之间具有直接或间接的关联,因此整个社区中的下单用户均可以被确定为刷单用户。

综上可以看出,本发明实施例方案,在识别具有异常行为的用户时,首先根据下单用户两两之间的关联关系生成用户关系网络,并且根据复杂网络社区划分原理对用户关系网络进行社区划分,得到多个社区。每个社区中的下单用户之间具有直接或间接的关联,不同社区的用户之间可能没有关联,据此,当一个社区中的部分下单用户可以被确定是具有异常行为的用户时,该社区中的其它下单用户由于与上述确定出的异常用户具有直接或间接的关联,因此也可以被确定为异常用户,本发明实施例方案可以应用于挖掘团体刷单用户的场景中,尤其可以挖掘出刷单团伙中不常用的刷单用户,从而使获得的团体刷单用户更加准确全面。

图3是本发明实施例二异常用户识别方法的流程图。图3所示方法应用于图1所示的应用软件系统架构时,服务器为该方法的执行主体,包括:

s301,获取预设时间段内的历史订单数据,如获取最近30天时间中产生的历史订单数据。其中,在每个历史订单数据中可以包括下单用户(也可以称为下单账号)、下单时所用设备的ip、收货地址、召回地址和备注等信息。

s302,根据获取的历史订单数据,确定各个下单用户两两之间的关联关系。

服务器根据历史订单数据,确定下单用户中任意两个下单用户—第一下单用户和第二下单用户之间的关联关系的方式包括:

(1)服务器确定第一下单用户和第二下单用户在上述预设时间段内的共现次数。具体的,上述预设时间段被分为多个单位时间段,该多个单位时间段之和等于预设时间段,并且该多个单位时间段之间不重合。例如s301中的预设时间段为最近30天,则以一天的时间(24小时)为一个单位时间段。

可选的,服务器确定第一下单用户和第二下单用户在该预设时间段内的共现次数,包括:服务器确定第一下单用户和第二下单用户在每个单位时间段内的共现次数。

其中,服务器确定第一下单用户和第二下单用户在每个单位时间段内的共现次数包括:服务器确定第一下单用户和第二下单用户在每个单位时间段内在相同商家的共享次数,例如,第一下单用户和第二下单用户在第一个单位时间段内在第一商家共现了4次,在第二商家共现了3次,则第一第一下单用户和第二第二下单用户在该单位时间段内的共现次数为7次,同理,可以按照该方式计算第一下单用户和第二下单用户在每个单位时间段内的共现次数。

服务器计算出第一下单用户和第二下单用户在预设时间段内的每个单位时间段的共现次数之后,将所有单位时间段内的共现次数之和确定为第一下单用户和第二下单用户在该预设时间段内的共现次数。

(2)服务器确定第一下单用户和第二下单用户在上述预设时间段内的共现次数中的相同ip次数、相同收货地址次数、相同召回地址次数和相同备注次数。

(3)服务器根据所述第一下单用户和所述第二下单用户的所述共现次数、在所述共现次数中的所述相同ip次数、所述相同收货地址次数、所述相同召回地址次数和所述相同备注次数,确定所述第一下单用户和所述第二下单用户的关联关系。

可选的,服务器预先为两个用户的共现次数、相同ip次数、相同收货地址次数、相同召回地址次数和相同备注次数分配权重;服务器在计算出第一下单用户和第二下单用户在预设时间段内的共现次数、在所述共现次数中的相同ip次数、相同收货地址次数、相同召回地址次数和相同备注次数后,根据预先为所述共现次数、所述相同ip次数、所述相同收货地址次数、所述相同召回地址次数和所述相同备注次数分配的权重,确定所述第一下单用户和所述第二下单用户的关联关系。

例如,第一下单用户、第二下单用户在预设时间段内的共现次数为10次,在这10次中,使用相同ip的次数为6次、相同收货地址的次数为2次,相同召回地址的次数为4次,相同备注的次数为1次;服务器预先为共现次数、相同ip次数、相同收货地址次数、相同召回地址次数和相同备注次数分配的权重分别为w1、w2、w3、w4,则第一下单用户和第二下单用户的关联关系=w1×10+w2×6+w3×2+w4×4+w5×1。

按照上述给出的确定第一下单用户和第二下单用户之间的关联关系的方式,可以确定历史订单数据中各个下单用户两两之间的关联关系。

s303,根据各个下单用户两两之间的关联关系,生成用户关系网络。

服务器在确定各个下单用户两两之间的关联关系后,根据各个下单用户两两之间的关联关系生成用户关系网络,该用户关系网络可以反映各个下单用户两两之间的关联关系。

s304,确定所述用户关系网络中关联关系低于预设阈值的下单用户。

s305,将所述关联关系低于预设阈值的下单用户从所述用户关系网络中删除,形成一个强用户关系网络。

服务器生成用户关系网络后,从所述用户关系网络中确定关联关系低于预设阈值的下单用户,并且将关联关系低于预设阈值的下单用户从关系网络中删除,形成一个强用户关系网络。

s306,将所述强用户关系网络转化为图网络。

图4是图网络的一种结构示意图。其中,图网络是对强用户关系网络的抽象,如图4所示,在图网络中,下单用户采用节点表示,具有关联关系的下单用户所对应的节点之间用边关联,从图4所示的图网络中可以直观确定下单用户之间的关联关系。

s307,为所述图网络中的每个下单用户分配一个社区标识,具有相同社区标识的下单用户属于同一个社区,例如采用fastunfold社区发现算法为图网络中的每个下单用户分配一个社区标识,由此可以将图4所示的图网络划分为多个社区。

如图4所示,在图网络中具有直接或间接关联关系的节点可以分配相同的社区标识,不具有直接或间接关联关系的节点可以分配不同的社区标识。具体的不同社区的节点可以采用不同颜色进行标识,或者采用社区标识码进行标识。

s308,确定属于同一个社区的各下单用户中,用户特征信息符合预设刷单信息的下单用户个数。

s309,当属于同一个社区的各下单用户中,用户特征信息符合预设刷单信息的下单用户个数大于设定阈值时,确定该社区中的所有下单用户为异常用户。

服务器将图网络划分为多个社区后,服务器确定每个社区的各下单用户的用户特征信息是否符合预设刷单信息,如果一个社区中用户特征信息符合预设刷单信息的下单用户个数大于设定阈值时,由于社区中的其它下单用户均是具有直接或间接关联的,因此可以确定该社区中的所有下单用户均为异常用户。

在本方案中,预设刷单信息可以根据实际需要进行设定,例如对于外卖订单而言,可以设定刷单信息为收货地址为居民楼区域,假设一个社区中的2/3下单用户所下外卖订单的收货地址为a,服务器确定收货地址a是居民楼区域地质还是办公区域地质,如果收货地址为a为居民楼区域地质,可以确定该2/3下单用户以及其所在社区的其它下单用户为团体刷单用户,当然也可以进一步结合其它信息确定是否为团体刷单用户,如下单时间,如果该2/3下单用户所下外卖订单时间为非用餐高峰时段,如0点-10点,22点至24点,则可以确定该2/3下单用户以及其所在社区的其它下单用户为团体刷单用户,以上仅是一个示例,具体确定某个社区中的下单用户是否为团体刷单用户的方式可以根据订单类型、刷单行为可能具有的典型特征进行确定。

通过以上的方法实施例的描述,所属领域的技术人员可以清楚地了解到本发明实施例可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:只读存储器(rom)、随机存取存储器(ram)、磁碟或者光盘等各种可以存储程序代码的介质。

另外,作为对上述各实施例的实现,本发明实施例还提供了一种异常用户识别装置,该装置位于图1所示的服务器中,图5是本发明实施例异常用户识别装置的结构示意图。如图5所示,该装置包括:关联关系确定单、关系网络生成单元402、社区划分单元403和异常用户确定单元404;其中:

关联关系确定单元401,用于根据历史订单数据,确定各个下单用户两两之间的关联关系;

关系网络生成单元402,用于根据所述各个下单用户两两之间的关联关系,生成用户关系网络;

社区划分单元403,用于对所述用户关系网络进行社区划分,得到多个社区;

异常用户确定单元404,根据所述多个社区中的用户行为特征,确定异常用户。

在一种可能的设计中,所述关联关系确定单元401,具体用于:

根据历史订单数据,确定所述第一下单用户和所述第二下单用户在预设时间段内的共现次数;

确定所述第一下单用户和所述第二下单用户在所述共现次数中的相同ip次数、相同收货地址次数、相同召回地址次数和相同备注次数;

根据所述第一下单用户和所述第二下单用户的所述共现次数、在所述共现次数中的所述相同ip次数、所述相同收货地址次数、所述相同召回地址次数和所述相同备注次数,确定所述第一下单用户和所述第二下单用户的关联关系。

在一种可能的设计中,所述关联关系确定单元401,具体用于:

根据预先为所述第一下单用户和第二下单用户的所述共现次数、所述相同ip次数、所述相同收货地址次数、所述相同召回地址次数和所述相同备注次数分配的权重,确定所述第一下单用户和所述第二下单用户的关联关系。

在一种可能的设计中,所述预设时间段包括多个单位时间段,所述多个单位时间段之和等于所述预设时间段,所述多个时间段之间不重叠;

所述关联关系确定单元401,具体用于:

确定所述第一下单用户和所述第二下单用户在每个所述单位时间段内在相同商家下单的次数;

将所述第一下单用户和所述第二下单用户在所述预设时间段内的所有单位时间段内在相同商家下单的次数之和,确定为所述第一下单用户和所述第二下单用户在所述预设时间段内的共现次数。

在一种可能的设计中,删除单元,用于所述关系网络生成单元402根据所述各个下单用户两两之间的关联关系,生成用户关系网络之后,

确定所述用户关系网络中关联关系低于预设阈值的下单用户;

将所述关联关系低于预设阈值的下单用户从所述用户关系网络中删除。

在一种可能的设计中,所述关系网络生成单元402,还用于将执行所述删除步骤之后的所述用户关系网络转化为图网络,在所述图网络中,节点表示下单用户,节点之间连接的边表示下单用户之间具有关联关系。

在一种可能的设计中,所述社区划分单元403,具体用于:

为所述图网络中的每个下单用户分配一个社区标识,具有相同社区标识的下单用户属于同一个社区。

在一种可能的设计汇总,所述异常用户确定单元404,具体用于:

确定属于同一个社区的各下单用户中,用户特征信息符合预设刷单信息的下单用户个数;

当属于同一个社区的各下单用户中,用户特征信息符合预设刷单信息的下单用户个数大于设定阈值时,确定该社区中的所有下单用户为异常用户。

图6是本发明实施例服务器的一种结构示意图。如图6所示,服务器包括处理器、存储器和通信接口。其中,处理器、存储器和通信接口通过通信总线相连;通信总线504可以是外设部件互连标准(peripheralcomponentinterconnect,简称pci)总线或扩展工业标准结构(extendedindustrystandardarchitecture,简称eisa)总线等。通信总线504可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

通信接口501用于从外部设备(例如:网络设备)收发数据。例如:处理器502处理的数据可以经通信接口502传递到外部设备。

存储器503,用于存放程序。具体地,程序可以包括程序代码,程序代码包括计算机操作指令。存储器503可能包含随机存取存储器(randomaccessmemory,简称ram),也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。图中仅示出了一个处理器,当然,处理器503也可以根据需要,为多个处理器。本申请中的物流调度流程可以存储在存储器中。处理器502根据存储器503中存储的程序代码执行上述实施例中的异常用户识别方法的流程。

本发明实施例方案在应用于挖掘团体刷单用户的场景时,首先根据下单用户两两之间的关联关系生成用户关系网络,并且根据复杂网络社区划分原理对用户关系网络进行社区划分,得到多个社区。每个社区中的下单用户之间具有直接或间接的关联,不同社区的用户之间可能没有关联,据此,当一个社区中的部分下单用户可以被确定是刷单用户时,该社区中的其它下单用户由于与刷单用户具有直接或间接的关联,因此也可以被确定为刷单用户,采用此方式可以挖掘出刷单团伙中不常用的刷单用户,从而使获得的团体刷单用户更加准确全面。

本发明实施例可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明实施例,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。

需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。

本领域技术人员在考虑说明书及实践这里公开的发明实施例后,将容易想到本发明实施例的其它实施方案。本申请旨在涵盖本发明实施例的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明实施例的一般性原理并包括本发明实施例未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明实施例的真正范围和精神由下面的权利要求指出。

应当理解的是,本发明实施例并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明实施例的范围仅由所附的权利要求来限制。

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