一种识别用户异常操作方法和设备与流程

文档序号:12364035阅读:367来源:国知局
一种识别用户异常操作方法和设备与流程
本申请实施例涉及网络
技术领域
,特别涉及一种多维度识别用户异常操作方法和设备。
背景技术
:在线系统作弊用户的操作行为与作弊需求紧密相关,往往存在时间上的异常波动性,比如说电商网站的注册商户出于提升自身信用的目的,会雇佣炒信用户短时间内发出大量交易,形成商户交易数据的异常波动;黑客为了攻击目标网站,会在短期内发起大量访问,使得目标网站的访问流量发生异常波动等;因此如何能从海量日志数据入手,快速地识别并提取用户异常操作的多维度特征,是在线系统防范作弊用户的恶意行为的一个有力切入点。现有的异常行为检测,主要分为两类模型:(1)单变量时序模型,比如:利用查看操作行为中某个特征一段时间内的对应的操作记录频率变化来识别异常时间点,这种方法的可解释性不强,因为单变量信息量较少,难以还原异常事件的全貌,并且这种方法容易被作弊用户以多IP联合攻击等形式绕过。(2)离群点检测模型,比如:对操作行为数据进行聚类或者根据某个设定模型进行分类,把与其他行为数据记录差别较大的行为数据定位为异常行为数据,这种方法在大数据前提下对资源的需求较强,且在异常定义不明晰的前提的下较难发挥作用,泛化性不强。可见现有技术中针对用户的异常操作行为并不能做到准确的识别。技术实现要素:本申请提出了一种识别用户异常操作方法和设备,用以克服现有技术中 的缺陷,实现了在多维度方面针对用户异常操作的准确识别。本申请提出了一种识别用户异常操作的方法,包括:获取用户的日志数据,所述日志数据中包含用户的操作特征;通过所述日志数据选取包含N个操作特征的集合作为N阶特征;其中,所述N阶特征中包含有时间特征,N为正整数,且N大于等于2;根据所述时间特征确定所述N阶特征的异常得分;通过所述异常得分来对用户的异常操作进行识别。优选的,所述通过所述日志数据选取包含N个操作特征的集合作为N阶特征,具体包括:对所述日志数据中的操作特征进行分类,将属于同一类别的一个或多个操作特征归为同一个特征类别;在一个特征类别中选择一个操作特征,共选取N个特征类别的N个操作特征的集合作为N阶特征。优选的,所述确定所述N阶特征的异常得分,具体包括:基于所述N阶特征中的时间特征确定识别日期;在所述日志数据中选取预定范围的操作特征集合作为基线;基于所述日志数据获取所述N阶特征中的除时间特征以外的N-1个操作特征同时在所述识别日期以及基线内出现的次数,以及所述除时间特征以外的N-1个操作特征所属的特征类别同时在所述识别日期以及基线内出现的次数;通过获取的次数确定所述N阶特征的异常得分。优选的,所述在所述日志数据中选取预定范围的操作特征作为基线,具体包括:基于所述识别日期在所述日志数据中选取在所述识别日期之间的预定时间作为基线。优选的,所述通过获取的次数确定所述N阶特征的异常得分,具体包括:基于获取的次数生成特征数据和基线数据;利用卡方检验公式以及所述特征数据和所述基线数据确定所述N阶特征的异常得分。优选的,所述通过所述异常得分来对用户的异常操作进行识别,具体包括:若所述异常得分大于预设阈值,设置N=N+1,并通过所述日志数据选取包含N个操作特征的集合作为N阶特征;若所述异常得分不大于预设阈值,利用异常得分大于预设阈值的N-1阶特征来对用户的异常操作进行识别。本申请还提出了一种识别用户异常操作的设备,包括:获取模块,用于获取用户的日志数据,所述日志数据中包含用户的操作特征;选取模块,用于通过所述日志数据选取包含N个操作特征的集合作为N阶特征;其中,所述N阶特征中包含有时间特征,N为正整数,且N大于等于2;确定模块,用于根据所述时间特征确定所述N阶特征的异常得分;处理模块,用于通过所述异常得分,对用户的异常操作进行识别。优选的,所述选取模块,具体用于:对所述日志数据中的操作特征进行分类,将属于同一类别的一个或多个操作特征归为同一个特征类别;在一个特征类别中选择一个操作特征,共选取N个特征类别的N个操作特征的集合作为N阶特征。优选的,所述确定模块,具体用于:基于所述N阶特征中的时间特征确定识别日期;在所述日志数据中选取预定范围的操作特征集合作为基线;基于所述日志数据获取所述N阶特征中的除时间特征以外的N-1个操作特征同时在所述识别日期以及基线内出现的次数,以及所述除时间特征以外的N-1个操作特征所属的特征类别同时在所述识别日期以及基线内出现的次数;通过获取的次数确定所述N阶特征的异常得分。优选的,所述确定模块在所述日志数据中选取预定范围的操作特征作为基线,具体包括:基于所述识别日期在所述日志数据中选取在所述识别日期之间的预定时间作为基线。优选的,所述确定模块通过获取的次数确定所述N阶特征的异常得分,具体包括:基于获取的次数生成特征数据和基线数据;利用卡方检验公式以及所述特征数据和所述基线数据确定所述N阶特征的异常得分。所述处理模块,包括:重复模块,用于当所述异常得分大于预设阈值时,设置N=N+1,并执行选取模块;识别模块,用于当所述异常得分不大于预设阈值时,利用异常得分大于预设阈值的N-1阶特征来对用户的异常操作进行识别。与现有技术相比,本申请中通过所述日志数据选取包含N个操作特征的集合作为N阶特征;并确定N阶特征的异常得分;基于异常得分与阈值进行比较确定最终的N阶特征,从而利用该最终的N阶特征来对用户的异常操作 进行识别,以此通过从包含N-1个特征的N-1阶特征逐步迭代包含N个特征的N阶特征,实现对用户异常操作的快速识别,基于用户的日志数据对用户的异常操作进行识别,提高了识别的准确率。附图说明图1为本申请实施例提出的一种识别用户异常操作方法的流程示意图;图2为本申请实施例提出的一种识别用户异常操作方法的流程示意图;图3为本申请实施例提出的一种识别用户异常操作设备的结构示意图。具体实施方式针对现有技术中存在的上述问题,本申请实施例一提出了一种识别用户异常操作方法,如图1所示,包括以下步骤:步骤S101、获取用户的日志数据,日志数据中包含用户的操作特征。由于分析用户的异常操作是基于用户的日志数据的,因此需要获取用户的日志数据,该日志数据中包含有用户的操作特征,用户的操作特征也即用于标识记录用户行为的特征,其中操作特征包含有时间特征,在此以淘宝上的交易为例来进行说明,例如2014年02月21日,以及该时间对应的其他操作特征,例如存在号码为131****4321的收货手机号,买卖金额为100元等等。步骤S102、通过日志数据选取包含N个操作特征的集合作为N阶特征;其中,N阶特征中包含有时间特征,N为正整数,且N大于等于2。通过日志数据选取包含N个操作特征的集合作为N阶特征的具体过程可以包括:对日志数据中的操作特征进行分类,将属于同一类别的一个或多个操作特征归为同一个特征类别;在一个特征类别中选择一个操作特征,共选取N个特征类别的N个操作特征的集合作为N阶特征。例如手机号码为131****4321(命名为特征A1),以及手机号码为131****1234(命名为特征A2)为两个操作特征,但这两个操作特征同属于一个特征类别,即手机号,同样的,用户ID为一个特征类别,在用户ID下,可以有的操作特征,例如可以有用户ID为X(命名为特征B1),以及用户ID为Y(命名为特征B2)等,可以认为操作特征是类别特征的值;仍以该例子来进行说明,在此情况下,只有两个特征类别,因此只会有1阶特征,以及2阶段特征,其中,1阶特征中存在的操作特征有A1,或A2,或B1,或B2;而2阶段特征存在的操作特征有A1B1,或A1B2,或A2B1,或A2B2,具体的3阶特征,4阶特征等N阶特征的设置与此类似,在此不再进行赘叙,只要能保证在一个具体的N阶特征中,每个特征类别的操作特征只会出现一次,例如2阶段特征中不会有操作特征A1A2,或者B1B2。步骤S103、根据时间特征确定N阶特征的异常得分。具体的根据时间特征确定N阶特征的异常得分的过程包括:基于N阶特征中的时间特征确定识别日期;在日志数据中选取预定范围的操作特征集合作为基线;基于日志数据获取N阶特征中的除时间特征以外的N-1个操作特征同时在识别日期以及基线内出现的次数,以及除时间特征以外的N-1个操作特征所属的特征类别同时在识别日期以及基线内出现的次数;通过获取的次数确定N阶特征的异常得分。N阶特征中必定是会包括有时间特征的,通过设置该时间特征为识别日期,例如时间特征为2015年01月03日,则后续在日志数据中获取与该时间特征对应的其他数据,并在日志数据中选取预定范围的操作特征作为基线,例如可以基于识别日期在日志数据中选取在识别日期之间的预定时间作为基线时间,例如可以选择2015年01月03日之前的一个月(2014年12月02日到2015年01月02)的时间作为基线,当然也可以是其他的时间,例如还可以选择2014年11月11日到2014年12月14等等,具体可以基于需要进行 设置,在此不再进行赘叙,除此以外,还可以选择其他预定范围内的操作特征作为基线,例如可以选择同类的卖家,例如当前N阶特征中的操作特征对应的是卖家1(例如卖家ID为1)经营的是服装,在此情况下,就可以获取其他的经营服装的卖家作为基线,具体的,例如这些卖家的卖家ID为2、3,就可以设置卖家ID为2和3作为基线,来实现与卖家1进行对比。在获取了识别日期以及基线之后,在此以基线为预定范围内的时间来进行说明,例如识别日期为2015年02月03日,基线为2015年01月02日到2015年02月03,N阶特征中的N个操作特征分别为时间特征(在此即为识别日期),交易金额为100元,在此情况下,需要获取四个数据,在识别日期为2015年02月03日交易金额为100出现的次数(数据1,例如为1000次),以及在基线为2015年01月02日到2015年02月03的范围内交易金额为100出现的次数(数据2,例如为8500次),在2015年02月03日交易的次数(数据3、例如为30000次),以及在基线为2015年01月02日到2015年02月03的范围内交易的次数(数据4、例如为420000次),并通过获取的四个数据来确定N阶特征的异常得分。而具体的确定方式可以为:基于获取的次数生成特征数据和基线数据;利用卡方检验公式以及所述特征数据和所述基线数据确定所述N阶特征的异常得分;具体的,可以将特征数据和基准数据填入四格表中,再以此确定N阶特征的异常得分。仍以上述例子来进行说明,首先对上述的四个数据进行处理,生成四个数据,数据a为交易金额为100在识别日期出现的次数,即1000;数据b为数据3减去数据1,即30000-1000,也即在识别日期中出现的交易金额不是100(例如交易金额为101,120或者130等等)出现的次数;数据c为交易金 额为100在基线出现的次数,即8500;数据d为数据4减去数据2,即420000-8500,也即在基线内出现的交易金额不是100(例如交易金额为101,120或者130等等)出现的次数,形成四格表,基于该例子,如表1所示:表1操作特征识别日期基线交易金额=1001000(a)8500(c)交易金额≠10029000=30000-1000(b)411500=420000-8500(d)在获取了该四格表之后,利用卡方检验公式对该四格表中的数据进行计算,具体的,卡方检验公式为score=(ad-bc)2*n(a+b)(a+c)(b+c)(c+d)]]>其中,n=a+b+c+d;所计算出的得分score即为N阶特征的异常得分。步骤S104、通过异常得分来对用户的异常操作进行识别。具体的,通过异常得分来对用户的异常操作进行识别,包括:(1)、若异常得分大于预设阈值,设置N=N+1,并执行步骤S102;在步骤S103中,会得到一个N阶特征的异常得分,例如为9.15,然后拿异常得分与预设阈值进行比较,其中,预设阈值是根据自由度(即为(行数-1)(列数-1),在四格表中为1=(2-1)(2-1))而设定的,具体可以设置为7.88,高于此得分的特征组合异常的置信区间为95%;由于9.15大于7.88,即可以认为交易金额为100,且时间为识别日期的操作为异常操作的可能性为95%。在此情况下,设置N=N+1,例如除了处理金额为100以外,还添加一个操作特征(例如用户ID为X),来形成一个新的N阶特征,并继续执行步骤S102,这样通过从包含N个特征的N阶特征逐步迭代包含N+1个特征的N+阶特征,以前一步确定的异常得分超过阈值的操作特征的集合为基础,填加一个操作特征,形成新的操作特征集合,并计算新的操作特征集合的异常得分,以此不断的筛选出用户异常的操作特征,并基于此实现了对用户的异常 操作进行快速识别。(2)、若异常得分不大于预设阈值,利用异常得分大于预设阈值的N-1阶特征来对用户的异常操作进行识别。当然,确定出的异常得分可能会大于预设阈值,也可能不会大于预设阈值,在此情况下,若异常得分不大于预设阈值,利用异常得分大于预设阈值的N-1阶特征来对用户的异常操作进行识别,例如N-1阶特征中包含的时间特征,交易金额,确定该N-1阶特征时,其异常得分是超过预设阈值的,但当该N-1阶特征再加入一个操作操作特征,例如手机号为131****4321时,确定得到的异常得分不大于预设阈值,则通过N-1阶特征中包含的时间特征,交易金额来确定用户的异常操作,其他与此类似,在此不再进行赘叙。当然除此以外,还可以基于需要通过别的方式来进行识别,例如通过设置异常取值区间,后续通过异常得分处于哪个异常取值区间来判断用户的行为是否是异常或者异常的程度,或者设置异常得分偏差修正值的方式来对用户的异常行为进行识别等,并不限于上述的一种通过预设阈值来进行识别的方式,可以基于需要选取其他的方式,只要是基于异常得分来进行的识别即可,在此不再进行赘叙。为了对本申请进行进一步的说明,本申请实施例二还提出了具体场景下的一种识别用户异常操作方法,如图2,包括:步骤1、获取日志数据;该日志数据可以如表2。表2步骤2、基于日志数据设置基线,以及N个操作特征集合,并基于时间特征,基线以及操作特征和操作特征对应的特征类别确定N个操作特征集合的异常得分;其中,每个特征类别下属一个或多个操作特征,且每个特征类别中的操作特征不会不属于其他的特征类别,确定异常得分的N操作特征分别属于N各特征类别。例如表2中的数据,选取操作特征为时间信息为2014年12月31,卖家IP为X;其中设置2014年12月31日之前一个月的历史数据集合作为基线假设在识别日期(2014年12月31日)内共65万条交易记录,其中16800条交易记录的交易金额为100,而在基线区间内共280万条交易记录,其中32000条交易记录的交易金额为100,以此形成如下特征数据和基线数据,填入四格表,如表3所示:表3操作特征识别日期基线交易金额=10016,800[a]32,000[c]交易金额≠100633,200[b]2,768,000[d]基于表3中的数据,利用卡方检验公式确定异常得分;具体的,通过公式score=(ad-bc)2*n(a+b)(a+c)(b+c)(c+d)]]>来进行计算,其中,n=a+b+c+d;score即为异常得分。步骤3、比较异常得分与预设阈值,若异常得分大于预设阈值,则在该异常得分对应的N个操作特征集合基础上,再添加一个操作特征确定异常得分;例如在步骤2中,确定的是时间特征和交易金额为100的操作特征,在此情况在,再加一个操作特征,例如用户ID为X来确定异常得分,通过从包含N-1个特征的N-1阶特征逐步迭代包含N个特征的N阶特征,实现对用户异常操作的快速识别,例如从包含两个特征(包含时间特征和交易金额为100 的操作特征)逐步迭代到3个特征(包含时间特征和交易金额为100的操作特征,以及用户ID为X),当3个特征的异常得分也超过预设阈值时,则继续在这3个特征的基础上,再添加一个特征,形成包括4个特征的集合,并基于该包含4个特征的集合确定异常得分,以此类推,直到确定完所有特征类别的操作特征或者确定的异常得分无法大于预设阈值,以此能通过逐步迭代,以前一步得到的超过阈值异常得分为基础,计算下一步的异常得分,不断筛选出用户异常的操作,实现了对用户异常操作的快速识别。预设阈值基于自由度来进行设置,自由度=(行数-1)(列数-1);在四格表中,自由度是1,对应的,预设阈值可以设置为7.88,高于此的N个操作特征集合判断为异常的置信区间为95%。步骤4、若N个操作特征的集合的异常得分小于预设阈值,且N-1个操作特征的集合的异常得分大于预设阈值,则利用N-1个操作特征对用户的异常操作进行识别。本申请实施例三还公开了一种识别用户异常操作设备,如图3所示,包括:获取模块301,用于获取用户的日志数据,日志数据中包含用户的操作特征;选取模块302,用于通过日志数据选取包含N个操作特征的集合作为N阶特征;其中,N阶特征中包含有时间特征,且N大于等于2;确定模块303,用于根据时间特征确定N阶特征的异常得分;处理模块304,用于通过所述异常得分来对用户的异常操作进行识别。具体的,选取模块302,具体用于:对日志数据中的操作特征进行分类,将属于同一类别的一个或多个操作特征归为同一个特征类别;在一个特征类别中选择一个操作特征,共选取N个特征类别的N个操作特征的集合作为N阶特征。确定模块303,具体用于:基于N阶特征中的时间特征确定识别日期;在日志数据中选取预定范围的操作特征集合作为基线;基于日志数据获取N阶特征中的除时间特征以外的N-1个操作特征同时在识别日期以及基线内出现的次数,以及除时间特征以外的N-1个操作特征所属的特征类别同时在识别日期以及基线内出现的次数;通过获取的次数确定N阶特征的异常得分。确定模块303在日志数据中选取预定范围的操作特征作为基线,具体包括:基于识别日期在日志数据中选取在识别日期之间的预定时间作为基线。确定模块303通过获取的次数确定N阶特征的异常得分,具体包括:基于获取的次数生成特征数据和基线数据;利用卡方检验公式以及所述特征数据和所述基线数据确定所述N阶特征的异常得分。所述处理模块304,包括:重复模块,用于当异常得分大于预设阈值时,设置N=N+1,并执行选取模块302;识别模块,用于当异常得分不大于预设阈值时,利用异常得分大于预设阈值的N-1阶特征来对用户的异常操作进行识别。与现有技术相比,本申请中通过所述日志数据选取包含N个操作特征的集合作为N阶特征;并确定N阶特征的异常得分;基于异常得分与阈值进行比较确定最终的N阶特征,从而利用该最终的N阶特征来对用户的异常操作 进行识别,以此通过从包含N-1个特征的N-1阶特征逐步迭代包含N个特征的N阶特征,实现对用户异常操作的快速识别,基于用户的日志数据对用户的异常操作进行识别,提高了识别的准确率。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本申请可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施场景所述的方法。本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本申请所必须的。本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。上述本申请序号仅仅为了描述,不代表实施场景的优劣。以上公开的仅为本申请的几个具体实施场景,但是,本申请并非局限于此,任何本领域的技术人员能思之的变化都应落入本申请的保护范围。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1