识别风险行为的方法及装置
技术领域
本申请涉及计算机技术领域,尤其涉及一种识别网络风险行为的方法及装置。
背景技术
随着互联网的发展,人们的网络行为越来越频繁交织。从概念上讲,网络行为是指每个网络个体在网络中获取、发送或传输网络数据的过程,通常包括:信息查询、文件下载、发送邮件等。除了正常的网络行为外,网络个体有意或无意作出的异常网络行为会带来损失,例如:公司职员在工作期间浏览工作无关的信息、网络客服人员违规查询用户的消费记录等。为应对以上问题,用以监控网络风险行为的风险监控系统应运而生。
目前,传统的风险监控系统采取构建规则引擎的方式,对符合规则定义的网络行为进行特征提取并分析,从而实现网络行为的风险识别。然而,规则引擎所采用的规则通常存在漏洞,需要不断增加规则来填补规则的漏洞,这样无疑会增加开发人员的工作量,且效率较低;此外,以上规则引擎本身需要耗用额外的计算机资源,从而给计算机系统带来负担。
发明内容
本申请实施例提供一种识别风险行为的方法及装置,以解决现有技术在识别网络行为风险的过程中因填补规则漏洞所带来的低效率问题,以及规则引擎耗费额外的计算机资源的问题。
本申请实施例所提供的识别风险行为的方法,包括:
获取用户的行为数据;
确定特定行为链路在所述行为数据中的风险系数;
根据所述风险系数,判定所述特定行为链路是否具有风险。
本申请实施例所提供的识别风险行为的装置,包括:
获取模块,用于获取用户的行为数据;
确定模块,用于确定特定行为链路在所述行为数据中的风险系数;
判定模块,用于根据所述风险系数判定所述特定行为链路是否具有风险。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:
本申请实施例通过获取用户的行为数据,并从该行为数据中选取特定行为链路,通过运算来确定所述特定行为链路在所述行为数据中的风险系数,最后根据风险系数来确定特定行为链路是否具有风险。以上过程相较于规则引擎方式,无需人工填补规则漏洞,从而提升了行为风险识别的效率;此外,以上过程避免了规则引擎耗用额外的计算机资源的弊端,从而减轻了计算机系统的负担。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用以解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例提供的识别风险行为的方法的过程;
图2为本申请实施例提供的识别风险行为的方法中从行为数据中选取特定行为链路的过程;
图3为本申请实施例提供的识别风险行为的方法中确定短期风险系数的过程;
图4为本申请实施例提供的识别风险行为的方法中确定历史风险系数的过程;
图5为本申请实施例提供的识别风险行为的方法中确定团队风险系数的过程;
图6为本申请实施例提供的识别风险行为的方法中判定特定行为链路是否具有风险的过程;
图7为本申请实施例提供的识别风险行为的装置的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1为本申请实施例提供的识别风险行为的方法的过程,包括如下步骤:
S11:获取用户的行为数据。
本申请实施例中,行为数据通过网络监控系统来获得,网络监控通过对网络中的计算机进行监视和控制,以将网络中各个用户在时间维度上所作的互联网活动(网络行为)进行记录。其中,网络监控系统包括监控硬件或监控软件,网络包括局域网、或城域网、或广域网。以上行为数据存储于特定的存储介质中,按照实际分析需求,从所述存储介质中抽取到相应的行为数据进行分析。
本文将以某电商网站为例来介绍本申请的技术方案。则本识别风险行为的方法用于监控某电商网站的客服人员的网络行为是否具有风险。
S12:从行为数据中选取特定行为链路。行为链路是指多个行为按照发生时间先后排序所得的组合,由于行为链路更贴近用户的真实行为意图,从而提升网络行为风险识别的真实度。
图2为本申请实施例提供的识别风险行为的方法中从行为数据中选取特定行为链路的过程,本申请实施例中,步骤S12具体包括如下步骤:
S121:从行为数据中选取特定时间段内的片段数据。
沿用本文实例,假设需要作行为风险分析的网络个体是用户M,则可以从存储介质中提取出该用户M在某一天D中的一个特定时间段的片段数据,假设该特定时间段是15分钟,比如:13:10~13:25,则所述片段数据是指该用户M在该天中13:10~13:25这段时间内所作的行为数据。
S122:获取片段数据中所包含的各个行为。
在以上实例中,假设在该天中13:10~13:25这段时间内,用户M所作的行为包括行为X、行为Y及行为Z。
S123:将各个行为按照发生时间的先后顺序进行排序,以得到行为链路。
在以上实例中,按照行为X、行为Y及行为Z的发生时间从先到后的顺序进行排序,则得到的特定行为链路G是:行为X→行为Y→行为Z。
S13:确定特定行为链路在行为数据中的风险系数。
本申请实施例中,风险系数是用于表达某个特定行为链路G的罕见程度的数值。通常,若某个网络行为所发生的概率较高,即较为普遍,则表明该网络行为是正常行为,比如:客服人员查看商铺信息的行为;若某个网络行为所发送的概率较低,即在极罕见的情况才会发生,则表明该网络行为是风险行为,比如:客服人员查询亲友的消费记录的行为。本申请通过风险系数来判别某个网络行为是否具有风险。
本申请实施例中,以上风险系数包括短期风险系数a、历史风险系数b、团队风险系数c中的一个或多个。当然,在本申请其他实施例中,所分析的风险系数可不限于以上三种。短期风险系数a是指用户M在第一时间段t1(如:一天)内操作以上特定行为链路G的罕见程度;历史风险系数b是指用户M在该用户注册的总时间长度t2(注册时间到当前时间的间隔)内操作以上特定行为链路G的罕见程度;若定义用户M所在的用户人群为用户组,则该用户组包括多个用户,则团队风险系数c是指用户M所在的用户组操作以上特定行为链路G的罕见程度。
以下将详细介绍以上各风险系数的确定过程:
图3为本申请实施例提供的识别风险行为的方法中确定短期风险系数的过程,具体包括如下步骤:
S131:获取用户M在第一时间段t1内操作所有行为链路的操作总次数s1。
沿用本文实例,假设第一时间段t1是一天,则基于该用户M在该天中的行为数据,可以统计出该用户M在该天中所作的所有行为链路的数目(即操作总次数s1)。本申请实施例中,以单个特定行为链路G所持续的时间间隔tG为基准,来统计用户M在该天中的操作总次数s1,具体地,假设tG是15分钟,则操作总次数s1=24*60/15=96。
S132:获取用户M在第一时间段t1内操作特定行为链路G的操作次数s2。
在以上实例中,所设定的第一时间段t1是一天,则统计用户M在该天中操作特定行为链路G的次数(即操作次数s2),具体地,假设tG是15分钟,则将该天划分成若干个15分钟的时间片段,并依次判断每个15分钟的时间片段内是否有发生特定行为链路G,若有发生,则操作次数s2加1,若没有发生,则操作次数s2加0,直至得到该天中的操作次数s2。
S133:确定操作总次数s1与操作次数s2的比值,以得到短期风险系数a。
本申请实施例中,计算短期风险系数a的公式如下:
a=s1/s2。
图4为本申请实施例提供的识别风险行为的方法中确定历史风险系数的过程,具体包括如下步骤:
S134:获取用户M从注册时间t0到当前时间ta的总时间长度t2。
沿用本文实例,假设用户M在某电商网站的客服系统中的注册时间t0是:2014年1月1日,当前时间ta是2015年1月1日,则总时间长度t2是:365天。
S135:获取用户M操作特定行为链路G的实际时间长度t3。
本申请实施例中,获取用户M操作特定行为链路G的实际时间长度t3的步骤以天来计算,则将该用户M在以上365天的行为数据,按天拆分成365个片段数据,并依次判断各天的片段数据中是否有发生过特定行为链路G,若有发生,则将实际时间长度t3加1,若没有发生,则将实际时间长度t3加0,直至得到用户M操作特定行为链路G的实际天数(即实际时间长度t3)。
S136:根据总时间长度t2及实际时间长度t3,确定历史风险系数b。
本申请实施例中,对于某个老用户而言,因其注册时间较早,总时间长度t2较长(如:3年),假设该老用户操作特定行为链路G的实际时间长度t3是2天,则最终得出该老用户在总时间长度t2内操作过该特定行为链路G的概率较低;然而,对于某个新用户而言,因其注册时间较晚,总时间长度t2较短(如:5天),假设该新用户操作特定行为链路G的实际时间长度t3是2天,则最终得出该新用户在总时间长度t2内操作过该特定行为链路G的概率较高。可见,新老用户之间的差异会影响历史风险系数b的真实程度,为了平滑处理新老用户之间的差异,以上步骤S136具体包括:
首先,将总时间长度t2及实际时间长度t3作平滑处理,以得到平滑总时间长度t2k和平滑实际时间长度t3k。本申请实施例中,平滑处理的方式可为对数化处理、或取余化处理、或开方化处理等。以对数化处理方式为例,t2k=lg t2;t3k=lg t3,当然,对数化处理的底数不受限制。
然后,将平滑实际时间长度t2k及平滑总时间长度t3k进行运算,以得到所述历史风险系数b。本申请实施例中,计算历史风险系数b的公式如下:
b=(1+t3k)/(1+t2k)=(1+lgt3)/(1+lgt2)。
图5为本申请实施例提供的识别风险行为的方法中确定团队风险系数的过程,具体包括如下步骤:
S137:确定用户M所在的用户组中包含的用户总数n。
沿用本文实例,假设用户M是某电商网站的客服人员,则以该用户M所在部门为用户组,假设该部门包含的用户总数n是20人。
S138:在所述用户组中,获取在第二时间段t4内操作过特定行为链路G的实际用户数m。
在以上实例中,假设第二时间段t4是一天,则该步骤S138用来统计该用户M所在部门的20人中,在某天中操作过特定行为链路G的人数(即实际用户数m)。具体地,事先分别获取该部门中20人在该天的行为数据,然后依次查看以上20个用户在该天中是否有操作过特定行为链路G,若有,则将实际用户数m加1,若没有,则将实际用户数m加0,直至得到在该天内操作过特定行为链路G的实际用户数m。
S139:根据用户总数n及实际用户数m,确定团队风险系数c。
本申请实施例中,若所需分析的用户组所包含的用户数量较大(如:n=1000人),若得到在某天内操作过特定行为链路G的实际用户数m=5,则此刻表明特定行为链路G在以上用户组中被操作过的概率较低;然而,若所需分析的用户组所包含的用户数量较小(如:n=10人),若得到在某天内操作过特定行为链路G的实际用户数m=5,则此刻表明特定行为链路G在以上用户组中被操作过的概率较高。可见,不同用户组之间用户数量的差异会影响团队风险系数c的真实程度,为了平滑处理用户组所包含的用户数量的差异,以上步骤S139具体包括:
首先,将用户总数n及实际用户数m作平滑处理,以得到平滑用户总数p和平滑实际用户数q。本申请实施例中,平滑处理的方式可为对数化处理、或取余化处理、或开方化处理等。以对数化处理方式为例,p=lg n;q=lg m,当然,对数化处理的底数不受限制。
然后,将平滑用户总数p及平滑实际用户数q进行运算,以得到所述团队风险系数c。本申请实施例中,计算团队风险系数c的公式如下:
c=(1+p)/(1+q)=(1+lgn)/(1+lgm)。
S14:根据风险系数r,判定特定行为链路G是否具有风险。
本申请实施例中,计算风险系数r的公式如下:
r=a×b×c。
当然,在本申请其他实施例中,风险系数r=a+b+c。
图6为本申请实施例提供的识别风险行为的方法中判定特定行为链路是否具有风险的过程。本申请实施例中,以上步骤S14具体包括:
S141:将各个行为链路的风险系数r按照从高到低进行排序。
继续沿用本文实例,假设所抽取的行为数据是用户M在某一天D的所有行为链路,在此行为数据中,监控到的行为链路有100个,则分别依据以上方法确定这100个行为链路的风险系数r1~r100,之后将风险系数r1~r100按照从高到低进行排序。
S142:判断特定行为链路G所对应的风险系数rG是否处于风险排名内。
本申请实施例中,风险系数的排名越靠前,则表明该行为链路越罕见,其风险系数越高,假设预先设定的风险排名是前3名,则判断特定行为链路G所对应的风险系数rG是否处于前3名内。
S143:若是,则判定该特定行为链路G具有风险。
若特定行为链路G所对应的风险系数rG处于前3名内,则表明该特定行为链路G具有风险,之后可将该特定行为链路G作为风险行为进行公布,以告知某电商网站的客服人员不要操作该行为链路。
S144:若否,则判定该特定行为链路G不具有风险。
若特定行为链路G所对应的风险系数rG不处于前3名内,则表明该特定行为链路G不具有风险。
图7为本申请实施例提供的识别风险行为的装置的结构示意图。基于同样的思路,该装置包括:
获取模块10,用于获取用户的行为数据。
选取模块20,用于从所述行为数据中选取特定行为链路。
确定模块30,用于确定特定行为链路在所述行为数据中的风险系数。
判定模块40,用于根据所述风险系数判定所述特定行为链路是否具有风险。
本申请实施例中,选取模块20具体用于:
从行为数据中选取特定时间段内的片段数据。
获取片段数据中所包含的各个行为。
将各个行为按照发生时间的先后顺序进行排序,以得到特定行为链路。
本申请实施例中,风险系数包括短期风险系数、历史风险系数、团队风险系数中的一个或多个。
本申请实施例中,确定模块30包括短期风险确定模块31,用于:
获取用户在第一时间段内操作所有行为链路的操作总次数。
获取用户在第一时间段内操作特定行为链路的操作次数。
确定操作总次数与操作次数的比值,以得到短期风险系数。
本申请实施例中,确定模块30包括历史风险确定模块32,用于:
获取用户从注册时间到当前时间的总时间长度。
获取用户操作特定行为链路的实际时间长度。
根据总时间长度及实际时间长度,确定历史风险系数。
本申请实施例中,确定模块30包括团队风险确定模块33,用于:
确定用户所在的用户组中包含的用户总数。
在用户组中,获取在第二时间段内操作过特定行为链路的实际用户数。
根据用户总数及实际用户数,确定团队风险系数。
本申请实施例中,历史风险确定模块32包括第一平滑处理单元,用于:
将总时间长度及实际时间长度作平滑处理,以得到平滑总时间长度和平滑实际时间长度。
将平滑实际时间长度及平滑总时间长度进行运算,以得到历史风险系数。
本申请实施例中,团队风险确定模块33包括第二平滑处理单元,用于:
将用户总数及实际用户数作平滑处理,以得到平滑用户总数和平滑实际用户数。
将平滑用户总数及平滑实际用户数进行运算,以得到团队风险系数。
本申请实施例中,确定模块30具体用于:将短期风险系数、历史风险系数及团队风险系数进行乘积或求和,以得到所述风险系数。
本申请实施例中,判定模块40具体用于:
将各个行为链路的风险系数按照从高到低进行排序。
判断特定行为链路所对应的风险系数是否处于风险排名内。
若是,则判定该特定行为链路具有风险,若否,则判定该特定行为链路不具有风险。
本申请实施例所提供的方法及装置,通过获取用户的行为数据,并从该行为数据中选取特定行为链路,通过运算来确定所述特定行为链路在所述行为数据中的风险系数,最后根据风险系数来确定特定行为链路是否具有风险。以上过程相较于规则引擎方式,无需人工填补规则漏洞,从而提升了行为风险识别的效率;此外,以上过程避免了规则引擎耗用额外的计算机资源的弊端,从而减轻了计算机系统的负担。
本申请实施例综合考虑短期(如:某天)、历史(注册时间到当前时间)以及团队(用户所在用户组)这三个因数,来分析用户的行为是否具有风险,从而减小某些突发因数的转变(如:团队调整业务方向、或用户转岗等)对用户的行为链路的影响,进而提升风险行为识别的准确度及真实度。
值得一提的是,本文所披露的识别风险行为的装置是基于以上识别风险行为的方法,按照同样的思路所产生的,故该识别风险行为的方法可沿用以上识别风险行为的装置的所有技术特征,本文不再予以赘述。
另外值得注意的是,本申请中各风险系数的计算公式并不限于所公开的实施例,如:在其他实施例中,短期风险系数a=s2/s1;历史风险系数b=(1+lgt2)/(1+lgt3);团队风险系数c=(1+lgm)/(1+lgn)。相应地,在后续判定行为链路是否具有风险时,则将各个行为链路的风险系数按照从低到高进行排序,以判断特定行为链路所对应的风险系数是否处于风险排名内。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用以实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用以实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用以存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上所述仅为本申请的实施例而已,并不用以限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。