一种作弊行为的识别方法及装置的制造方法

文档序号:10665902阅读:553来源:国知局
一种作弊行为的识别方法及装置的制造方法
【专利摘要】本申请实施例公开了一种作弊行为的识别方法及装置,所述方法包括:根据待评估设备或账户的历史行为事件,生成历史行为序列;计算所述历史行为序列的熵率;确定所述历史行为序列的特征子序列;计算所述特征子序列的权重值;当所述熵率小于预设的第一阈值,且所述权重值大于预设的第二阈值时,识别所述待评估设备或账户在操作时作弊。本申请实施例方法不仅考虑了待评估设备或账户历史行为的规律性,更进一步地挖掘按时间排序的历史行为序列的行为子特征,能够兼顾历史行为序列的规律性和顺序性,提高了识别作弊账户的概率。
【专利说明】
一种作弊行为的识别方法及装置
技术领域
[0001] 本申请涉及计算机技术领域,特别涉及一种作弊行为的识别方法及装置。
【背景技术】
[0002] 互联网企业为了吸引客户,往往提供很多营销资源,比如登陆送金币,注册送红包 等。这些营销资源也吸引了很多不法份子,这些不法分子可以利用机器辅助作弊,抢占营销 资源,甚至将这些资源卖给该互联网企业的竞争对手。不法分子的作弊行为导致了企业不 仅没有成功吸引客户,还让竞争对手获益。作弊行为可以包括扫号、炒信、红包作弊以及拖 库等行为。完成上述作弊行为,作弊者往往需要循环或者重复地完成大量操作。这些操作 隐含着规律性,比如炒信,作弊者需要以较低的成本完成很多次购买动作,然后不断地给好 评。比如红包作弊,作弊者需要持续不断地领取红包,然后通过实物销赃或者信用卡还款将 红包销赃。
[0003] 现有技术中,识别作弊行为的方法是将账户的历史行为事件看做离散值,通过监 控所述账户在一定行为频度或者时间窗口下,计算所述历史行为事件的熵值,根据所述熵 值判断所述账户的历史行为是否是作弊行为。该方法中,如果历史行为事件的熵值较小,代 表所述账户行为单一;如果熵值较大,代表所述账户行为多样化。再结合历史行为的频度, 如果账户的历史行为频度高,熵值小,代表所述账户存在大量单一的历史行为,可以判断所 述账户有作弊行为。
[0004] 在实现本申请过程中,发明人发现现有技术中至少存在如下问题:虽然基于熵的 识别方法大致可以判断账户历史行为的异常,但是却忽略了账户历史行为的顺序性。比 如历史行为 1 "login loginfailure register purchase login login loginfailure register',与历史行为 2"login loginfailure register register loginfailure login', 相比,历史行为 1 中包含"login"、"loginfailure"、"register"、"login loginfailure"、 "login loginfailure register"共5组重复有序的行为,而历史行为2仅包含"login"、 "l〇ginfail Ure"、"register"共3组重复行为。经观察后,历史行为1更有可能属于作弊 行为。

【发明内容】

[0005] 本申请实施例的目的是提供一种作弊行为的识别方法及装置,以兼顾历史行为的 规律性和顺序性,提高识别作弊行为的概率。
[0006] 为解决上述技术问题,本申请实施例提供一种作弊行为的识别方法及装置是这样 实现的:
[0007] -种作弊行为的识别方法,包括:
[0008] 根据待评估设备或账户的历史行为事件,生成历史行为序列;
[0009] 计算所述历史行为序列的熵率;
[0010] 确定所述历史行为序列的特征子序列;
[0011] 计算所述特征子序列的权重值;
[0012] 当所述熵率小于预设的第一阈值,且所述权重值大于预设的第二阈值时,识别所 述待评估设备或账户在操作时作弊。
[0013] 当所述历史行为序列的元素少于预设的第三阈值时,不计算该历史行为序列的熵 率。
[0014] 所述生成历史行为序列,包括:
[0015] 提取所述评估设备上所有账户的历史行为事件,或所述待评估账户在所有设备上 的历史行为事件,生成第一历史行为序列;
[0016] 按照时间的先后顺序,对所述第一历史行为序列重新排序,形成第二历史行为序 列。
[0017] 所述计算所述历史行为序列的熵率,包括:
[0018] 根据不同的阶数,对所述历史行为序列进行与所述阶数对应的分段处理,形成不 同的分段结果;
[0019] 计算各分段结果对应的修正条件熵;
[0020] 将各分段结果对应的修正条件熵中的最小值,确定为所述历史行为序列的熵率。
[0021] 所述确定所述历史行为序列的特征子序列,包括:
[0022] 确定最小修正条件熵对应的阶数;
[0023] 从所述阶数对应的分段结果中提取个数不小于第四阈值的子序列,确定所述子序 列为所述历史行为序列的特征子序列。
[0024] 所述计算所述特征子序列的权重值,包括:
[0025] 从预设的特征子序列及权重值对照表中查询每个特征子序列的权重值;
[0026] 计算所有特征子序列权重值的和值。
[0027] -种作弊行为的识别装置,包括:
[0028] 生成单元,用于根据待评估设备或账户的历史行为事件,生成历史行为序列;
[0029] 第一计算单元,用于计算所述历史行为序列的熵率;
[0030] 特征子序列确定单元,用于确定所述历史行为序列的特征子序列;
[0031] 第二计算单元,用于计算所述特征子序列的权重值;
[0032] 识别单元,用于当所述熵率小于预设的第一阈值,且所述权重值大于预设的第二 阈值时,识别所述待评估设备或账户在操作时作弊。
[0033] 当所述历史行为序列的元素少于预设的第三阈值时,不计算该历史行为序列的熵 率。
[0034] 所述生成单元还包括:
[0035] 提取单元,用于提取所述评估设备上所有账户的历史行为事件,或所述待评估账 户在所有设备上的历史行为事件,生成第一历史行为序列;
[0036] 排序单元,用于按照时间的先后顺序,对所述第一历史行为序列重新排序,形成第 二历史行为序列。
[0037] 所述第一计算单元包括:
[0038] 分段单元,用于根据不同的阶数,对所述历史行为序列进行与所述阶数对应的分 段处理,形成不同的分段结果;
[0039] 修正条件熵计算单元,用于计算各分段结果对应的修正条件熵;
[0040] 确定子单元,用于将各分段结果对应的修正条件熵中的最小值,确定为所述历史 行为序列的熵率。
[0041] 所述特征子序列确定单元包括:
[0042] 阶数确定单元,用于确定最小修正条件熵对应的阶数;
[0043] 特征子序列确定子单元,用于从所述阶数对应的分段结果中提取出现次数不小于 第四阈值的子序列,确定所述子序列为所述历史行为序列的特征子序列。
[0044] 所述第二计算单元包括:
[0045] 查询单元,用于从预设的特征子序列及权重值对照表中查询每个特征子序列的权 重值;
[0046] 和值计算单元,用于计算所有特征子序列权重值的和值。
[0047] -种作弊行为的识别方法,包括:
[0048] 根据待评估设备或账户的历史行为事件,生成历史行为序列;
[0049] 根据不同的阶数,对所述历史行为序列进行与所述阶数对应的分段处理,形成不 同的分段结果;
[0050] 计算各分段结果对应的修正条件熵;
[0051] 将各分段结果对应的修正条件熵中的最小值,确定为所述历史行为序列的熵率;
[0052] 当所述熵率小于预设的第一阈值时,识别所述待评估设备或账户在操作时作弊。
[0053] 当所述历史行为序列的元素少于预设的第三阈值时,不对该历史行为序列进行分 段处理。
[0054] 所述生成历史行为序列,包括:
[0055] 提取所述评估设备上所有账户的历史行为事件,或所述待评估账户在所有设备上 的历史行为事件,生成第一历史行为序列;
[0056] 按照时间的先后顺序,对所述第一历史行为序列重新排序,形成第二历史行为序 列。
[0057] -种作弊行为的识别装置,包括:
[0058] 生成单元,用于根据待评估设备或账户的历史行为事件,生成历史行为序列;
[0059] 分段单元,用于根据不同的阶数,对所述历史行为序列进行与所述阶数对应的分 段处理,形成不同的分段结果;
[0060] 修正条件熵计算单元,用于计算各分段结果对应的修正条件熵;
[0061] 确定单元,用于将各分段结果对应的修正条件熵中的最小值,确定为所述历史行 为序列的熵率;
[0062] 识别单元,用于当所述熵率小于预设的第一阈值,识别所述待评估设备或账户在 操作时作弊。
[0063] 所述生成单元还包括:
[0064] 提取单元,用于提取所述评估设备上所有账户的历史行为事件,或所述待评估账 户在所有设备上的历史行为事件,生成第一历史行为序列;
[0065] 排序单元,用于按照时间的先后顺序,对所述第一历史行为序列重新排序,形成第 二历史行为序列。由以上本申请实施例提供的技术方案可见,通过确定待评估设备或账户 的历史行为序列的熵率,以及历史行为序列特征子序列的权重值,综合所述熵率以及所述 权重值评估设备或账户是否实施作弊行为。上述方法不仅考虑了待评估设备或账户历史行 为的规律性,更进一步地挖掘按时间排序的历史行为序列的行为子特征,能够兼顾历史行 为序列的规律性和顺序性,提高了识别作弊账户的概率。
【附图说明】
[0066] 为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提 下,还可以根据这些附图获得其他的附图。
[0067]图1是本申请实施例一作弊行为的识别方法的一个流程示意图;
[0068] 图2是本申请实施例一的生成历史行为序列的一个流程示意图;
[0069] 图3是本申请实施例一的计算特征子序列权重值的一个流程示意图;
[0070] 图4是本申请实施例二的计算历史行为序列熵率的一个流程示意图;
[0071] 图5是本申请实施例二的确定历史行为序列特征子序列的一个流程示意图;
[0072] 图6是本申请实施例二中正负样本账户历史行为序列的熵率及密度关系曲线;
[0073] 图7是本申请实施例三作弊行为的识别方法的一个流程示意图;
[0074] 图8是本申请实施例的作弊行为的识别装置的一个组成示意图;
[0075] 图9是本申请实施例的生成单元的一个组成示意图;
[0076] 图10是本申请实施例的第一计算单元的一个组成示意图;
[0077] 图11是本申请实施例的特征子序列确定单元的一个组成示意图;
[0078] 图12是本申请实施例的第二计算单元的一个组成示意图;
[0079] 图13是本申请实施例的作弊行为的识别装置的另一个组成示意图。
【具体实施方式】
[0080] 本申请实施例提供一种作弊行为的识别方法及装置。
[0081 ] 为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实 施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施 例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通 技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护 的范围。
[0082] 实施例一
[0083] 在本发明实施例中,可以通过计算历史行为事件的熵率值识别待评估设备或者账 户是否实施作弊行为。为了进一步地提高识别概率,可以挖掘待评估设备或者账户历史行 为事件中的历史特征行为。综合所述历史特征行为的权重值以及所述熵率值识别所述待评 估设备或者账户是否实施作弊行为。具体实施步骤如图1所示,包括:
[0084] 步骤S101 :根据待评估设备或账户的历史行为,生成历史行为序列。
[0085] 在实际情况中,作弊者可以在一台设备上使用一个账户实施作弊行为,也可以在 多台设备上使用一个账户实施作弊行为,也可以在一台设备上使用多个账户实施作弊行 为,同样地,作弊者还可以在多台设备上使用多个账户作弊行为。比如,作弊者在电脑客户 端上同时用账户1以及账户2实施红包作弊行为,如果只监测账户1或者账户2,在所述情 况下,可能不能识别作弊者。因此,本实施例方法不仅需要监测用户账户的历史行为,还需 要监测设备的历史行为。设备以及账户的历史行为可以保存于服务器的用户历史信息数据 库中,用户账户的历史行为可以与用户账户ID相对应,设备的历史行为可以与设备的唯一 性标识相对应,如电脑的MAC地址,手机的頂SI序列。用户生成历史行为序列前,不仅要获 取具体的历史行为,还需要获取发生该历史行为的时间。
[0086] 具体地,图2是所述生成历史行为序列的流程图,如图2所示,包括:
[0087] 步骤S201 :提取所述评估设备上所有账户的历史行为事件,或所述待评估账户在 所有设备上的历史行为事件,生成第一历史行为序列;
[0088] 所述历史行为事件可以包括高危事件,所述高危事件至少包括以下一种:登录 (login),付款(PayByAccount)、注册(NewRegister)、建立交易(creatTrade)、绑定资产 (assetBind)、手机绑定(bindingMobile)、红包提取等。
[0089] 步骤S202 :按照时间的先后顺序,对所述第一历史行为序列重新排序,形成第二 历史行为序列。
[0090] 下面通过一个具体的例子来说明生成历史行为序列的方法过程,表1、2分别是一 电脑客户端的两个账户(账户1和账户2)在2015年2月1日所发生的历史行为事件。
[0091] 表1、账户1历史行为
[0092]
[0093] 表2、账户2历史行为
[0094]

[0095] 根据步骤S201~S202生成历史行为序列的方法,确定在2015年2月1日所述 电脑客户端的历史行为序列为:NewRegiste,login,createTrade,NewRegister,login, createTrade,bindingMobile,PayByAccount,creditRepay,assetBind,assetModify。
[0096] 此外,在本实施例中,还可以判断生成的历史事件序列的元素数量,当该元素数量 少于预设的阈值时,不对该历史事件序列进行后续的处理,而是重新选择待评估设备或账 户,进行步骤S101。例如,该预设的阈值可以是20或其它的数值。由此,能够保证对历史事 件序列的熵率计算的有效性,因为如果历史事件序列的元素数量过少,可能说明该设备或 账户活动太少,从而没有足够的信息帮助判断是否存在作弊行为。
[0097] 步骤S102 :计算所述历史行为序列的熵率。
[0098] E = - Σ PJogPi
[0099] 熵率的计算公式如上式所示,其中,E代表历史行为序列的熵率,Pi代表历 史行为序列中每一个元素在全部元素中的比例。例如,在上述历史行为序列中,元素 "bindingMobile","PayByAccount","creditRepay","assetBind","assetModify" 都属 于单点元素,单点元素的数量为5个,其比例5X 1/11 ;"NewRegiSte","login"以及 "createTrade"都属于双点元素,双点元素的比例P$3X2/11,因此,所述历史行为序列 的熵率等于-3*2/ll*log(2/ll)-5*l/ll*log(l/ll) =0· 87716。
[0100] 步骤S103 :确定所述历史行为序列的特征子序列。
[0101] 从上述历史序列中,提取个数不小于第五阈值的子序列,确定所述子序列为 所述历史序列的特征子序列。所述第五阈值不小于2。在上述历史行为序列中,元素 "NewRegiste"," login" 以及"createTrade"均出现两次,确定元素"NewRegiste"," login" 以及"createTrade"为所述历史行为序列的特征子序列。步骤S104 :计算所述特征子序列 的权重值。
[0102] 确定所述历史行为序列的特征子序列后,为了确定最终识别作弊行为的计算结 果,需要对所述特征子序列进行量化。实际情况中,在对设备或者账户评估之前,可以通过 对已有的作弊账户及正常账户的历史行为序列进行训练和测试,确定特征子序列的权重 值。例如,表3中,提取某企业2014年5月份和6月份的红包作弊账户以及正常账户的历 史行为事件,以这些账户的2014年5月的历史行为事件作为训练样本,以2014年6月的历 史行为事件作为测试样本。以正常账户的历史行为事件作为正样本,以红包作弊账户的历 史行为事件作为负样本。可以通过计算正负样本的似然比值确定特征子序列的权重值,所 述似然比值可以通过贝叶斯公式计算得到。表4示出了通过该企业2014年5、6月份的红 包作弊账户以及正常账户的历史行为事件训练、测试得到的特征子序列的权重值。
[0103] 表3、2014年5月和6月的样本账户情况表
[0104]
[0105] 表4、特征子序列及权重值对照表
[0106]
[0107] ^角定特征¥序列及权重值对照表后,如图3所示,计^所述特征子序歹!?的权重值 的方法包括:
[0108] 步骤S301 :从预设的特征子序列及权重值对照表中查询每个特征子序列的权重 值。
[0109] 查询待评估设备或账户历史行为序列的每个特征子序列的权重值。例如,步骤103 确定本实施例步骤S202确定的历史行为序列的特征子序列包括"NewRegiste","login"& 及"createTrade"。查询表4所示的特征子序列及权重值对照表,其中,"NewRegiste"的权 重值为6. 705, "login"的权重值为3. 415, "createTrade"的权重值为4. 070。
[0110] 步骤S302 :计算所有特征子序列权重值的和值。
[0111] 计算各特征子序列权重值的和值,例如,本实施例步骤S202确定的所述历史行为 序列所有特征子序列的权重值的和为6. 705+3. 415+4. 070 = 14. 190。
[0112] 步骤S105 :当所述熵率小于预设的第一阈值,且所述权重值大于预设的第二阈值 时,识别所述待评估设备或账户在操作时作弊。
[0113] 步骤S102确定了所述历史行为序列的熵率,步骤S104确定了所述历史行为序列 特征子序列的权重值。在步骤S105中,综合熵率以及特征子序列的权重值评估设备或账户 在操作时是否实施作弊行为。具体地,当所述熵率小于预设的第一阈值,且所述权重值大于 预设的第二阈值时,识别所述待评估设备或账户在操作时作弊。所述第一阈值也可以通过 对已有的作弊账户及正常账户的历史行为序列进行训练和测试来确定。例如,经过对样本 账户的历史行为事件训练、测试得到的第一阈值可以设置为0.8。所述第二阈值也可以通过 样本账户的历史行为事件训练、测试得到,可以设置为15或其他的数值。
[0114] 当所述熵率小于预设的第一阈值,且所述权重值大于预设的第二阈值时,识别 所述待评估设备或账户在操作时作弊。本实施例S202确定的历史行为序列的熵率为 0. 87716,特征子序列的权重值为14. 190。当第一阈值为0. 8,第二阈值为15时,不能识别 步骤S202所述电脑客户端在操作时作弊。
[0115] 利用上述实施例方法,通过确定待评估设备或账户的历史行为序列的熵率,以及 历史行为序列特征子序列的权重值,综合所述熵率以及所述权重值评估设备或账户是否实 施作弊行为。上述方法不仅考虑了待评估设备或账户历史行为的规律性,更进一步地挖掘 按时间排序的历史行为序列的行为子特征,能够兼顾历史行为序列的规律性和顺序性,提 高了识别作弊账户的概率。
[0116] 实施例二
[0117] 为了进一步考虑历史行为序列的顺序性,在上述实施例中计算熵率方法中对历史 行为序列进行分段处理。综合所述历史特征行为的权重值以及所述熵率值识别所述待评估 设备或者账户是否实施作弊行为。
[0118] 在本实施例中,根据对该历史行为序列不同的分段结果,可以得到不同的多个熵 率,并且,可以将该多个熵率中的最小值,作为该历史行为序列的熵率。当然,本实施例并不 限于此,还可以采用其他的方法该历史行为序列的熵率。
[0119] 本实施例的实施方法步骤与上一实施例的相同。步骤S101与上一实施例的具体 实施方式相同,在此不再赘述。图4是上述实施例步骤S102的流程图。如图4所述,步骤 S102 "计算所述历史行为序列的熵率"可以包括以下步骤:
[0120] 步骤S401 :根据不同的阶数,对所述历史行为序列进行与所述阶数对应的分段处 理,形成不同的分段结果。
[0121] 在该步骤中,可以将历史行为序列分别按照与1阶、2阶、……、K阶对应的方式进 行分段。分段后,每一阶数形成的分段结果包括m-L+1个的元素,其中,m代表所述历史行 为序列的元素总数,L代表阶数,且1彡L彡K。
[0122] 例如,对于历史行为序列"NewRegiste,login,createTrade,NewRegister,login, createTrade,bindingMobile,PayByAccount,creditRepay,assetBind,assetModify'',其 1阶分段结果、2阶分段结果和3阶分段结果分别为:
[0123] 1 阶分段:NewRegiste,login,createTrade,NewRegister,login,createTrade, bindingMobile,PayByAccount,creditRepay,assetBind,assetModify ;
[0124] 2 阶分段:NewRegiste login,login createTrade,createTrade NewRegister, NewRegister login, login createTrade, createTrade bindingMobile, bindingMobile PayByAccount? PayByAccount creditRepay, creditRepay assetBind, assetBind assetModify ;
[0125] 3 阶分段:NewRegiste login createTrade,login createTrade NewRegister, createTrade NewRegister login,NewRegister login createTrade,login createTrade bindingMobile, createTrade bindingMobile PayByAccount? bindingMobile PayByAccount creditRepay, PayByAccount creditRepay assetBind, creditRepay assetBind assetModify。
[0126] 在上述举例中,所述历史事件序列的元素总是m为11,1阶分段结果包括11个元 素,2阶分段结果包括10个元素,3阶分段结果包括9个元素。
[0127] 步骤S402 :计算各分段结果对应的修正条件熵。
[0128] 计算各个分段结果所对应的熵率(Entropy Rate,ER),并且在步骤S403中,将该 步骤所计算得到的熵率中的最小值,确定为所述历史行为序列的熵率。
[0129] 熵率衡量了一个随机过程的复杂性,熵率低代表有规律的序列,熵率高代表一个 趋于随机的序列。熵率被定义为,给定一个长度为N的随机变量序列,该序列的熵随N的增 长率。
[0130] 在本实施例中,对于历史行为序列的有限性,可以通过计算与各阶数对应的分段 结果的修正条件熵(Corrected Conditional Entropy,CCE),确定所述历史行为序列的熵 率。
[0131] 例如,在本实施例中,可以通过下式(1),来计算各分段结果的修正条件熵:
[0132]
(1、
[0133] 其中,各参数含义如下:
[0134] CE代表条件熵的估计值,衡量了 L-1阶到L阶空间信息变化的增量。CE = 0代表 长度为N的序列几乎能被长度为N-1的序列完全预测,比如123123123-;CE = E(l),代表 序列每个元素完全独立,每个新的元素给序列增加了 E(l)的信息量;
[0135] Bias代表条件熵相对于熵率的偏移量,用来对条件熵CE进行修正;
[0136] E(L)代表L阶分段后所得到的序列的熵,衡量了 L阶分段后所得到的序列的信息 量;
[0137] perC(L)代表与阶数L对应的分段结果中的单点元素在全部元素中的比例。例 如,在上述 1 阶分段的结果中,元素 "bindingMobile","PayByAccount","creditRepay", "3886七13;[11(1","3886七10(1丨€7"都属于单点元素,单点元素的数量为5个,其比例口61'0(1)为 5/11 ;
[0138] E(l)代表Scale因子,表示该序列同分布的理论白噪音值,其数值等于1阶分段后 所得到的序列的熇
其中,Pi代表阶数为1的分段结果中的每一元素在全部元 素中的比例;
[0139] 匕代表L阶分段后所得到的序列中的每个元素在全部元素中的比例。例如,在上 述 1 阶分段的结果中,元素"NewRegiste"," login","createTrade","bindingMobile"的数 量分别为 2、2、2、1,因此,元素 "NewRegiste","login","createTrade","bindingMobile" 在全部11个元素中的比例别为2/11、2/11、2/11、1/11。
[0140] 在上述式(1)中,随着L增大,单点变多,导致CE下降,Bias增大,因此,对于CCE =CE+Bias而言,则存在CCE的极小值,该极小值可作为有限序列熵率的最佳估值。
[0141] 步骤S403 :将各分段结果对应的修正条件熵中的最小值,确定为所述历史行为序 列的熵率。
[0142] 在该步骤中,可以将步骤S402所计算出的与多个阶数L对应的分段结果的修正条 件熵CCE中的最小值,作为该离散化时间间隔序列的熵率。
[0143] 表5示出了根据上述式(1),对上述步骤S401所得到的1阶分段、2阶分段和3阶 分段所得到的历史行为序列分别进行计算的结果。
[0144] 表5、对步骤401中历史行为序列熵率计算的结果
[0145]
[0146]
[0147] 步骤S103 :确定所述历史行为序列的特征子序列。
[0148] 从上述表5的计算结果来看,修正条件熵(CCE)的计算结果相对于熵的计算结果 更能反映序列的规律性。在此基础上,分段处理后的历史行为序列的最小修正条件熵进一 步反映了所述历史行为序列的规律性。为了能够使得作弊行为的识别精度更加准确,在本 发明实施例中,考虑了历史行为序列的顺序性特征,具体可以从按时间排序的所述历史行 为序列中提取出节奏感最强的特征子序列。实现方法如图5所示,确定所述历史行为序列 的特征子序列的方法包括:
[0149] 步骤S501 :确定最小修正条件熵对应的阶数。
[0150] 最小修正条件熵最能反映所述历史行为序列的规律性,因此,最小修正条件熵对 应的阶数所形成的分段序列相应地也最有规律性。从所述分段序列中可以提取出特征子 序列。从表3的计算结果显示,当阶数L = 2时,所述历史行为序列的修正条件熵的值最 小,因此,可以从 2 阶分段序列"NewRegiste login,login createTrade,createTrade NewRegister, NewRegister login, login createTrade, createTrade bindingMobile, bindingMobile PayByAccount? PayByAccount creditRepay, creditRepay assetBind, assetBind assetModify"中提取特征子序列。
[0151] 步骤S502 :从所述阶数对应的分段结果中提取个数不小于第四阈值的子序列,确 定所述子序列为所述历史行为序列的特征子序列。
[0152] 从所述2阶分段子序列中,提取个数不小于第四阈值的子序列。所述第四阈值可 以是2,当所述第四阈值是2时,所述特征子序列确定为"NewRegiste login"以及"login createTrade',。
[0153] 步骤S104 :计算所述特征子序列的权重值,
[0154] 参照表4的特征子序列及权重值对照表,上述步骤S502确定的特征子序列 "NewRegiste login" 的权重值为 6. 705, "login createTrade" 的权重值为 10. 162。
[0155] 计算各特征子序列权重值的和值,步骤S202确定的所述历史行为序列所有特征 子序列的权重值的和为6. 705+10. 162 = 16. 867。
[0156] 步骤S105 :当所述熵率小于预设的第一阈值,且所述权重值大于预设的第二阈值 时,识别所述待评估设备或账户在操作时作弊。
[0157] 以表3中的样本账户为例,根据步骤S402的方法计算正负样本账户中每个账户历 史行为序列的修正条件熵,根据步骤S403的方法确定每个账户历史行为序列的熵率。图6 是正负样本账户历史行为序列的熵率及密度关系曲线,从所述关系曲线显示,熵率在〇~ 0. 8之间时,正样本和负样本的密度值区分不明显,熵率大于0. 8后,正样本和负样本的密 度值区分明显。因此,表3中的样本账户的历史行为事件训练、测试得到的第一阈值可以设 置为〇. 8。所述第二阈值也可以通过样本账户的历史行为事件训练、测试得到,可以设置为 15或其他的数值。
[0158] 当所述熵率小于预设的第一阈值,且所述权重值大于预设的第二阈值时,识别所 述待评估设备或账户在操作时作弊。本实施例步骤S403确定的历史行为序列的熵率为 0. 528728,特征子序列的权重值为16. 867。当第一阈值为0. 8,第二阈值为15时,可以识别 步骤S202所述电脑客户端在操作时作弊。
[0159] 利用上述实施例方法,通过分段计算历史行为序列的熵率,可以更加准确地反映 待评估设备或者账户行为的规律性。在分段计算熵率的基础上提取的特征子序列,相对第 一实施例确定的特征子序列,也更能反映历史行为序列的规律特征,进一步提高了识别作 弊设备或者账户的概率。
[0160] 实施例三
[0161] 第二方法实施例中,可以不考虑提取特征子序列,只通过分段计算历史行为时间 的熵值,也可以识别待评估设备或者账户的作弊行为。下面介绍第三个识别作弊行为的方 法实施例,如图7所示,包括五个步骤:
[0162] 步骤S701 :根据待评估设备或账户的历史行为事件,生成历史行为序列。
[0163] 和步骤S101的实施方式相同,在此不再赘述。
[0164] 步骤S702 :根据不同的阶数,对所述历史行为序列进行与所述阶数对应的分段处 理,形成不同的分段结果。
[0165] 和步骤S401的实施方式相同,在此不再赘述。
[0166] 步骤S703 :计算各分段结果对应的修正条件熵。
[0167] 和步骤S402的实施方式相同,在此不再赘述。
[0168] 步骤S704 :将各分段结果对应的修正条件熵中的最小值,确定为所述历史行为序 列的熵率。
[0169] 和步骤S403的实施方式相同,在此不再赘述。
[0170] 步骤S705 :当所述熵率小于预设的第一阈值时,识别所述待评估设备或账户在操 作时作弊。
[0171] 参考实施例二的步骤S105,所述第一阈值的设置可以参考图6所示的正负样本账 户历史行为序列的熵率及密度关系曲线,所述第一阈值可以设置为〇. 8。当所述熵率小于预 设的第一阈值时,识别所述待评估设备或账户在操作时作弊。例如,实施例二步骤S403确 定的历史行为序列的熵率为〇. 528728,当第一阈值为0. 8,可以识别步骤S202所述电脑客 户端在操作时作弊。
[0172] 利用上述方法实施例,通过分段计算历史行为序列的熵值,可以简便而又精确地 识别作弊行为。
[0173] 下面介绍本申请一种作弊行为的识别装置的一个实施例,与所述作弊行为的识别 方法相对应。
[0174] 图8是本申请一种作弊行为的识别装置一个实施例的组成结构图。如图8所示, 所述作弊行为的识别装置800包括:生成单元801、第一计算单元802、特征子序列确定单元 803、第二计算单元804以及识别单元805。其中,
[0175] 生成单元801,用于根据待评估设备或账户的历史行为,生成历史行为序列;
[0176] 第一计算单元802,用于计算所述历史行为序列的熵率;
[0177] 特征子序列确定单元803,用于确定所述历史行为序列的特征子序列;
[0178] 第二计算单元804,用于计算所述特征子序列的权重值;
[0179] 识别单元805,用于当所述熵率小于预设的第一阈值,且所述权重值大于预设的第 二阈值时,识别所述待评估设备或账户在操作时作弊。
[0180] 图9是本实施例的生成单元的一个组成示意图,如图9所示,该生成单元801包括 提取单元901和排序单元902。其中,
[0181] 提取单元901,用于提取所述评估设备上所有账户的历史行为,或所述待评估账户 在所有设备上的历史行为,生成第一历史行为序列;
[0182] 排序单元902,用于按照时间的先后顺序,对所述第一历史行为序列重新排序,形 成第二历史行为序列。
[0183] 图10是本实施例的第一计算单元的一个组成示意图,如图10所示,该第一计算单 元802包括分段单元1001,修正条件熵计算单元1002以及确定子单元1003。其中,
[0184] 分段单元1001,用于根据不同的阶数,对所述历史行为序列进行与所述阶数对应 的分段处理,形成不同的分段结果;
[0185] 修正条件熵计算单元1002,用于计算各分段结果对应的修正条件熵;
[0186] 确定子单元1003,用于将各分段结果对应的修正条件熵中的最小值,确定为所述 历史行为序列的熵率。
[0187] 图11是本实施例的特征子序列确定单元的一个组成示意图,如图11所示,该特征 子序列确定单元803包括阶数确定单元1101以及特征子序列确定子单元1102。其中,
[0188] 阶数确定单元1101,用于确定最小修正条件熵对应的阶数;
[0189] 特征子序列确定子单元1102,用于从所述阶数对应的分段结果中提取出现次数不 小于第四阈值的子序列,确定所述子序列为所述历史行为序列的特征子序列。
[0190] 图12是本实施例的第二计算单元的一个组成示意图,如图12所示,该第二计算单 元804包括查询单元1201以及和值计算单元1202。其中,
[0191] 查询单元1201,用于从预设的特征子序列及权重值对照表中查询每个特征子序列 的权重值;
[0192] 和值计算单元1202,用于计算所有特征子序列权重值的和值。
[0193] 在本实施例中,识别单元805可以将第一计算单元802所计算出来的所述熵率与 预设的第一阈值比较,将第二计算单元805计算出来的所述权重值与第二阈值比较,当当 所述熵率小于预设的第一阈值,且所述权重值大于预设的第二阈值时,可以识别所述待评 估设备或账户在操作时作弊。
[0194] 关于作弊行为的识别装置800中各单元的详细说明,请参考本申请实施例作弊行 为的识别方法的相应步骤,本实施例不再重复说明。
[0195] 根据本申请的上述实施例,通过计算历史行为序列的熵率以及挖掘按时间排序的 历史行为序列的行为子特征,能够兼顾历史行为序列的规律性和顺序性,提高了识别作弊 账户的概率。
[0196] 图13是本申请另一种作弊行为的识别装置一个实施例的组成结构图。如图13所 示,所述作弊行为的识别装置1300包括:生成单元1301、分段单元1302、修正条件熵计算单 元1303、确定单元1304以及识别单元1305。其中,
[0197] 生成单元1301,用于根据待评估设备或账户的历史行为事件,生成历史行为序 列;
[0198] 分段单元1302,用于根据不同的阶数,对所述历史行为序列进行与所述阶数对应 的分段处理,形成不同的分段结果;
[0199] 修正条件熵计算单元1303,用于计算各分段结果对应的修正条件熵;
[0200] 确定单元1304,用于将各分段结果对应的修正条件熵中的最小值,确定为所述历 史行为序列的熵率;
[0201] 识别单元1305,用于当所述熵率小于预设的第一阈值,识别所述待评估设备或账 户在操作时作弊。
[0202] 本实施例的生成单元1301的组成和生成单元801的组成相同,在此不再赘述。
[0203] 在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例 如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改 进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直 接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路 结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑 器件(Programmable Logic Device, PLD)(例如现场可编程门阵列(Field Programmable Gate Array,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设 计人员自行编程来把一个数字系统"集成"在一片PLD上,而不需要请芯片制造厂商来设 计和制作专用的集成电路芯片2。而且,如今,取代手工地制作集成电路芯片,这种编程也 多半改用"逻辑编译器(logic compiler)"软件来实现,它与程序开发撰写时所用的软件 编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描 述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种, 如 ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware Description Language)、Confluence、CUPL(Cornell University Programming Language)、HDCal、 JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(Ruby Hardware Description Language)等,目前最普遍使用的是 VHDL(Very-High_Speed Integrated Circuit Hardware Description Language)与 Verilog2〇 本令页域技术人员 也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路 中,就可以很容易得到实现该逻辑方法流程的硬件电路。
[0204] 控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理 器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算 机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit, ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制 器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20 以及 Silicone Labs C8051F320, 存储器控制器还可以被实现为存储器的控制逻辑的一部分。
[0205] 本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完 全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程 逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种 硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者 甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部 件内的结构。
[0206] 上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现, 或者由具有某种功能的产品来实现。
[0207] 为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本 申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
[0208] 通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可 借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质 上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,在一个典型的配置 中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。该计算机 软件产品可以包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者 网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。该计算机软件产 品可以存储在内存中,内存可能包括计算机可读介质中的非永久性存储器,随机存取存储 器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是 计算机可读介质的示例。计算机可读介质包括永久性和非永久性、可移动和非可移动媒体 可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模 块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取 存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储 器(R0M)、电可擦除可编程只读存储器(EEPR0M)、快闪记忆体或其他内存技术、只读光盘只 读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储 或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按 照本文中的界定,计算机可读介质不包括短暂电脑可读媒体(transitory media),如调制 的数据信号和载波。
[0209] 本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部 分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实 施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例 的部分说明即可。
[0210] 本申请可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、月艮 务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置 顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备 的分布式计算环境等等。
[0211] 本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序 模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组 件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由 通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以 位于包括存储设备在内的本地和远程计算机存储介质中。
[0212] 虽然通过实施例描绘了本申请,本领域普通技术人员知道,本申请有许多变形和 变化而不脱离本申请的精神,希望所附的权利要求包括这些变形和变化而不脱离本申请的 精神。
【主权项】
1. 一种作弊行为的识别方法,其特征在于,包括: 根据待评估设备或账户的历史行为事件,生成历史行为序列; 计算所述历史行为序列的熵率; 确定所述历史行为序列的特征子序列; 计算所述特征子序列的权重值; 当所述熵率小于预设的第一阈值,且所述权重值大于预设的第二阈值时,识别所述待 评估设备或账户在操作时作弊。2. 根据权利要求1所述的识别方法,其特征在于, 当所述历史行为序列的元素少于预设的第三阈值时,不计算该历史行为序列的熵率。3. 根据权利要求1所述的识别方法,其特征在于,所述生成历史行为序列,包括: 提取所述评估设备上所有账户的历史行为事件,或所述待评估账户在所有设备上的历 史行为事件,生成第一历史行为序列; 按照时间的先后顺序,对所述第一历史行为序列重新排序,形成第二历史行为序列。4. 根据权利要求1所述的识别方法,其特征在于,所述计算所述历史行为序列的熵率, 包括: 根据不同的阶数,对所述历史行为序列进行与所述阶数对应的分段处理,形成不同的 分段结果; 计算各分段结果对应的修正条件熵; 将各分段结果对应的修正条件熵中的最小值,确定为所述历史行为序列的熵率。5. 根据权利要求4所述的识别方法,其特征在于,所述确定所述历史行为序列的特征 子序列,包括: 确定最小修正条件熵对应的阶数; 从所述阶数对应的分段结果中提取个数不小于第四阈值的子序列,确定所述子序列为 所述历史行为序列的特征子序列。6. 根据权利要求5所述的识别方法,其特征在于,所述计算所述特征子序列的权重值, 包括: 从预设的特征子序列及权重值对照表中查询每个特征子序列的权重值; 计算所有特征子序列权重值的和值。7. -种作弊行为的识别装置,其特征在于,包括: 生成单元,用于根据待评估设备或账户的历史行为事件,生成历史行为序列; 第一计算单元,用于计算所述历史行为序列的熵率; 特征子序列确定单元,用于确定所述历史行为序列的特征子序列; 第二计算单元,用于计算所述特征子序列的权重值; 识别单元,用于当所述熵率小于预设的第一阈值,且所述权重值大于预设的第二阈值 时,识别所述待评估设备或账户在操作时作弊。8. 根据权利要求7所述的识别装置,其特征在于, 当所述历史行为序列的元素少于预设的第三阈值时,不计算该历史行为序列的熵率。9. 根据权利要求7所述的识别装置,其特征在于,所述生成单元还包括: 提取单元,用于提取所述评估设备上所有账户的历史行为事件,或所述待评估账户在 所有设备上的历史行为事件,生成第一历史行为序列; 排序单元,用于按照时间的先后顺序,对所述第一历史行为序列重新排序,形成第二历 史行为序列。10. 根据权利要求7所述的识别装置,其特征在于,所述第一计算单元包括: 分段单元,用于根据不同的阶数,对所述历史行为序列进行与所述阶数对应的分段处 理,形成不同的分段结果; 修正条件熵计算单元,用于计算各分段结果对应的修正条件熵; 确定子单元,用于将各分段结果对应的修正条件熵中的最小值,确定为所述历史行为 序列的熵率。11. 根据权利要求10所述的识别装置,其特征在于,所述特征子序列确定单元包括: 阶数确定单元,用于确定最小修正条件熵对应的阶数; 特征子序列确定子单元,用于从所述阶数对应的分段结果中提取出现次数不小于第四 阈值的子序列,确定所述子序列为所述历史行为序列的特征子序列。12. 根据权利要求11所述的识别装置,其特征在于,所述第二计算单元包括: 查询单元,用于从预设的特征子序列及权重值对照表中查询每个特征子序列的权重 值; 和值计算单元,用于计算所有特征子序列权重值的和值。13. -种作弊行为的识别方法,其特征在于,包括: 根据待评估设备或账户的历史行为事件,生成历史行为序列; 根据不同的阶数,对所述历史行为序列进行与所述阶数对应的分段处理,形成不同的 分段结果; 计算各分段结果对应的修正条件熵; 将各分段结果对应的修正条件熵中的最小值,确定为所述历史行为序列的熵率; 当所述熵率小于预设的第一阈值时,识别所述待评估设备或账户在操作时作弊。14. 根据权利要求13所述的识别方法,其特征在于, 当所述历史行为序列的元素少于预设的第三阈值时,不对该历史行为序列进行分段处 理。15. 根据权利要求13所述的识别方法,其特征在于,所述生成历史行为序列,包括: 提取所述评估设备上所有账户的历史行为事件,或所述待评估账户在所有设备上的历 史行为事件,生成第一历史行为序列; 按照时间的先后顺序,对所述第一历史行为序列重新排序,形成第二历史行为序列。16. -种作弊行为的识别装置,其特征在于,包括: 生成单元,用于根据待评估设备或账户的历史行为事件,生成历史行为序列; 分段单元,用于根据不同的阶数,对所述历史行为序列进行与所述阶数对应的分段处 理,形成不同的分段结果; 修正条件熵计算单元,用于计算各分段结果对应的修正条件熵; 确定单元,用于将各分段结果对应的修正条件熵中的最小值,确定为所述历史行为序 列的熵率; 识别单元,用于当所述熵率小于预设的第一阈值,识别所述待评估设备或账户在操作 时作弊。17.根据权利要求16所述的识别装置,其特征在于,所述生成单元还包括: 提取单元,用于提取所述评估设备上所有账户的历史行为事件,或所述待评估账户在 所有设备上的历史行为事件,生成第一历史行为序列; 排序单元,用于按照时间的先后顺序,对所述第一历史行为序列重新排序,形成第二历 史行为序列。
【文档编号】G06Q30/02GK106033574SQ201510104560
【公开日】2016年10月19日
【申请日】2015年3月10日
【发明人】郑丹丹, 林述民
【申请人】阿里巴巴集团控股有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1