一种风险事件确定方法及装置
技术领域
本申请涉及计算机技术领域,尤其涉及一种风险事件确定方法及装置。
背景技术
随着互联网技术的不断发展,越来越多的用户习惯于通过网络获取服务器提供的各种网络服务。
考虑到在实际应用场景中,多数事件为合法操作的事件,这类事件为安全事件,但是也存在非法操作的事件,这类事件称为风险事件。比如,非法用户在盗用合法用户的账号下进行业务操作时,该业务操作的事件为风险事件。为了保证合法用户信息的安全性,需要在风险事件发生时,及时确定该风险事件,以便于后续及时作出相应的处理(如,拦截等)。
在现有技术中,服务器是通过策略决策的方式来确定风险事件的,具体的,服务器根据历史事件,确定各类型历史事件对应的业务逻辑规则。当服务器获取到当前正在发生的事件时,判断是否存在与该事件相匹配的业务逻辑规则,若是,确定该事件为安全事件,否则,确定该事件为风险事件。
但是,目前,随着事件类型的不断拓展,事件类型的数量呈指数型增长,这样,为这些呈指数型增长的事件设置业务逻辑规则,耗时耗力,从而会导致确定风险事件的效率较低的问题,此外,一旦未及时为增长的事件设置业务逻辑规则,这就可能会导致风险事件确定不准确的问题。
发明内容
本申请实施例提供一种风险事件确定方法及装置,用以提高确定风险事件的效率和准确率。
本申请实施例提供的风险事件确定方法,包括:
获取由当前事件的各特征构成的当前特征集;
在预设的比对特征集中,判断是否存在与所述当前特征集相匹配的比对特征集,其中,所述比对特征集是与安全事件对应的特征集;
若是,则确定所述当前事件为安全事件;
否则,确定所述当前事件为风险事件。
本申请实施例提供的风险事件确定装置,包括:
获取模块,用于获取由当前事件的各特征构成的当前特征集;
判断模块,用于在预设的比对特征集中,判断是否存在与所述当前特征集相匹配的比对特征集,其中,所述比对特征集是与安全事件对应的特征集;
确定模块,用于当存在与所述当前特征集相匹配的比对特征集时,确定所述当前事件为安全事件,以及当不存在与所述当前特征集相匹配的比对特征集时,确定所述当前事件为风险事件。
本申请实施例提供的风险事件确定方法及装置,该方法获取由当前事件的各特征构成的当前特征集,在预设的比对特征集中,判断是否存在与当前特征集相匹配的比对特征集,其中,该比对特征集是与安全事件对应的特征集,若是,则确定当前事件为安全事件,否则,确定当前事件为风险事件,这样,服务器只需要获取该当前事件的特征,就可以确定当前事件为安全事件或风险事件,从而有效提高确定风险事件的效率,由于服务器获取的特征集中各特征可较全面准确的描述该事件,这样,确定出的当前事件为风险事件或安全事件的准确性较高。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例提供的风险事件确定方法流程示意图;
图2为本申请实施例提供的初始矩阵A13×6中各行、各列、各历史交易之间的关系示意图;
图3为本申请实施例提供的风险事件确定装置结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1为本申请实施例提供的风险事件确定方法,具体包括以下步骤:
S101:获取由当前事件的各特征构成的当前特征集。
考虑到在实际应用场景中,每个当前发生的事件或者每个历史事件往往会有多个描述该事件的特征,则每个事件对应一个由该事件的各特征组成的特征集。
在本申请实施例中,服务器则可获取当前事件的各特征构成的特征集,将该特征集作为当前特征集。
例如,在电子商务领域,用户通过终端向服务器发起购买商品的业务请求,服务器处理该当前业务的过程就对应一个当前事件,服务器可获取该当前事件对应的账号、登录地点、登录时间等特征构成的特征集。
在本申请实施例中,事件的特征不限于上述的账号、登录地点、登录时间等特征。具体的,事件(当前事件或历史事件)的特征可包括但不限于注册特征、环境特征、操作特征、业务特征等,每一类型的特征还可以是在不同时间维度(如,近一小时、近一天、近一个月、近一年等时间维度)的多个特征。
所述的注册特征可包括但不限于注册账号时的用户名、用户身份证、用户联系方式、注册日期、注册时的英特网协议(Internet Protocol,IP)地址、注册终端的物理地址(Media Access Control,MAC)等。
所述的环境特征可包括但不限于事件发生时,终端的IP地址、终端的MAC地址、Cookie、当前地理位置(如国籍、省份、城市)等。
所述的操作特征可包括但不限于同一身份证注册账号的数目、账号的登录次数、登录频次和密码修改次数等。
所述的业务特征可包括但不限于当前事件的业务类型、商品类目、支付类型等。
由于事件的特征越多,对该事件的描述就越详尽,从而就对该事件的描述就越准确。在本申请实施例中,针对当前事件,服务器可获取设定数量的特征,该设定数量可以是几百个或上千个,则服务器可获取预设特征类型和特征数量的各特征,将获取的各特征构成的特征集合,作为当前特征集。
例如,预设特征类型包括注册特征、环境特征、操作特征、业务特征,预设注册特征的特征数量为300,环境特征的特征数量为500,操作特征的特征数量为500,业务特征的特征数量为100;则各类型特征的总特征数量为300+500+500+100=1400。服务器可获取当前事件对应的300个注册特征,500个环境特征,500个操作特征,以及100个业务特征,将获取的1400个特征构成的特征集合,作为当前特征集。
S102:在预设的比对特征集中,判断是否存在与当前特征集相匹配的比对特征集,若是,则执行步骤S103,否则,执行步骤S104。
在本申请实施例中,所述的比对特征集是预设的与安全事件对应的特征集。其中,所述的安全事件为正常操作产生的大样本事件,该安全事件是相对于不正常操作产生的小样本风险事件而言的。
例如,在电子商务领域,假设交易(事件)的特征包括账号、登录地点、登录时间。若大量交易的账号相同、登录地点固定(比如,经常在北京登录),登录时间范围固定(比如,通常在白天登录),则认为该类型交易为大样本交易,对应安全交易。若该交易的账号对应的登录地点由北京变为云南,登录时间范围由原来的白天变为晚上凌晨,则认为当前交易为小样本交易,对应风险交易。
在本申请实施例中,所述的比对特征集中可包括多个安全事件对应的特征集。为了能够更清楚的说明本发明,本申请以下将以少数几个交易事件和少量特征为例示意性的说明本发明。假设比对特征集中包括安全交易1~安全交易3对应的特征集,安全交易1~3,每一个交易的特征均包括:账号、登录地点和登录时间,各安全交易和各特征的对应关系如表1所示。
安全交易 |
账号 |
常登录地点 |
登录时间 |
安全交易1 |
账号1 |
北京 |
8:00~22:00 |
安全交易2 |
账号2 |
上海 |
8:00~22:00 |
安全交易3 |
账号3 |
武汉 |
8:00~22:00 |
表1
在表1中,安全交易1的各特征(账号1、北京、8:00~22:00),安全交易2的各特征(账号2、上海、8:00~22:00),以及安全交易3的各特征(账号3、武汉、8:00~22:00)构成比对特征集。
例如,假设当前交易的各特征构成的当前特征集包括:账号1、登录地点为北京、登录时间为10:30(在比对特征集的登录时间范围内),则说明该当前交易的各特征与表1中所示的安全交易1对应的各特征完全匹配,可确定当前交易的当前特征集与表1所示的比对特征集匹配,则通过步骤S103确定当前交易(当前事件)为安全交易(安全事件)。
又例如,假设当前交易的各特征构成的当前特征集包括:账号1、登录地点为云南、登录时间为00:30(不在8:00~22:00的范围内),则说明该当前交易的各特征与表1中所示的安全交易1、2或3对应的各特征均不匹配,可确定当前交易的当前特征集与表1所示的比对特征集不匹配,这可说明该账号很可能被不法分子盗取,且不法分子通过盗取的账号进行交易,则确定该交易为风险交易,则通过步骤S104确定当前交易为不安全交易(风险事件)。
S103:确定当前事件为安全事件。
S104:确定当前事件为风险事件。
本申请上述图1所示的方法,服务器获取由当前事件的各特征构成的当前特征集,判断该当前特征集是否与比对特征集相匹配,由于该比对特征集为与安全事件对应的特征集,即风险事件对应的特征集不在该比对特征集中,若当前特征集与比对特征集相匹配,则可确定该当前事件为安全事件,否则,确定当前事件为风险事件,这样,服务器只需要获取该当前事件的特征,而不需要确定事件对应的业务逻辑规则,从而有效提高确定风险事件的效率。
此外,由于服务器获取的当前事件的各特征的数量一般都较大,大量的特征可较全面准确的描述该事件,这样,通过特征集确定出的风险事件或安全事件的准确性就较高。
在本申请实施例中,判断是否存在与当前特征集相匹配的比对特征集之前,需要预设比对特征集。
比如,可以对多个样本事件(包括大样本事件和小样本事件)对应的大量特征(如,超高维度的特征)进行特征筛选(如,特征维度规约),保留最具代表性的少数特征来准确表达事件,则特征筛选的过程中,保留相互之间为强相关的特征,摒弃相互之间为弱相关的特征,保留下来的特征为大样本安全事件对应的特征,可构成比对特征集。
具体的,预设比对特征集时,预先根据记录的各历史事件,确定由各历史事件的特征构成的初始特征集,对该初始特征集进行归约处理,将归约处理后得到的特征集作为比对特征集,其中,该归约处理是对特征维度进行归约处理,该归约处理的过程,就是对初始特征集的特征维度进行压缩的过程。
所述的归约处理是一种对大型数据集的统计处理,在本申请实施例中,各历史事件的特征构成的初始特征集可形成初始矩阵;该初始矩阵的每一行与一个历史事件相对应;所述初始矩阵的每一列与各历史事件的一个特征相对应;所述比对特征集为对初始特征集进行归约处理后得到的压缩矩阵;则对初始特征集进行归约处理时,具体可首先确定初始矩阵的协方差矩阵,对该协方差矩阵进行奇异值分解,得到酉矩阵U、酉矩阵V和对角矩阵∑;在对角矩阵∑中的各奇异值λ中,选取大于预设阈值的奇异值λ;保留酉矩阵U中与选取的奇异值对应的各列特征,得到列数压缩后的酉矩阵U,即在酉矩阵U的各特征中,确定与选取的奇异值λ对应的各列特征所构成的矩阵,作为列数压缩后的酉矩阵U;将协方差矩阵与列数压缩后的酉矩阵U相乘得到压缩矩阵,则该压缩矩阵中的特征集就是比对特征集。
例如,在电子商务领域,服务器可获取最近一年的所有历史交易(历史事件),假设获取了历史交易1~历史交易3,每一个历史交易的特征包括特征1~特征6,特征1~特征6分别为账号、登录地点、登录时间、登录IP、账号的密码修改次数、账号登录次数。则历史交易1~3的各特征构成一个三行六列(3x6)的初始矩阵A13×6。初始矩阵A13×6中各行、各列、各历史交易之间的关系如图2所示。
在图2中,历史交易1~3分别对应矩阵A1的第1~3行,特征1~6分别对应矩阵A1的第1~6列。例如,历史交易1的6个特征位于初始矩阵A13×6的第一行,则历史交易1对应矩阵A13×6的第1行;历史交易1~3的各特征1位于矩阵A13×6的第1列,则特征1对应矩阵A13×6的第1列。
服务器获得初始矩阵A13×6(初始特征集)后,对初始矩阵A13×6进行归约处理时,首先计算初始矩阵A13×6任意两个特征之间的协方差,各协方差构成的矩阵为协方差矩阵A26×6为:
在矩阵A26×6中,x,y,z,l,m,n分别为特征1~特征6对应的6个变量。
以计算x和y两个特征之间的协方差为例说明,计算特征x和特征y之间的协方差cov(x,y)的公式如(1-1)所示。
其中,公式(1-1)中,m为初始矩阵A13×6的行数,m为大于1的整数,xi为初始矩阵A13×6中第一列第i行的元素,yi为第二列第i行的元素,μx为第一列元素的均值,μy为第二列元素的均值。
得到6x6的协方差矩阵A26×6之后,对该协方差矩阵A26×6进行奇异值分解,得到酉矩阵U、酉矩阵V和对角矩阵∑,协方差矩阵A26×6与酉矩阵U、酉矩阵V和对角矩阵∑的关系,如公式(1-2)所示。
A26×6=U6×4∑4×4V4×6 (1-2)
公式(1-2)中,对角矩阵∑4×4的对角线上的元素为协方差矩阵A26×6的奇异值λ1~λ4,λ1~λ4依次位于对角矩阵的第一行~第四行。各奇异值的大小可以反应两个特征之间的相关程度,奇异值越大说明对应的两个特征之间的相关程度越大,奇异值越小说明对应的两个特征之间的相关程度越小。则在对角矩阵∑的各奇异值中,选取大于预设阈值的奇异值。假设λ1、λ2和λ3大于预设阈值,选取λ1、λ2和λ3,保留酉矩阵U中λ1、λ2和λ3对应的第一列~第三列的元素,摒弃酉矩阵U中第四列~第六列的元素,得到的新的酉矩阵U'6×3;最后将协方差矩阵A26×6与新的酉矩阵U'6×3相乘,得到压缩矩阵A36×3,该压缩矩阵A36×3中的特征集就是比对特征集。
在本申请实施例中,当确定出比对特征集之后,在该比对特征集中,判断是否存在与当前特征集相匹配的比对特征集,具体可确定当前特征集对应的当前矩阵,再确定当前矩阵与列数压缩后的酉矩阵U相乘得到的变换矩阵,然后判断压缩矩阵中是否存在变换矩阵,若是,确定存在与当前特征集相匹配的比对特征集,否则,确定不存在与当前特征集相匹配的比对特征集。
沿用上例,在确定当前特征集对应的当前矩阵时,根据预设特征1~特征6获取当前交易的6个特征构成的当前特征集,该当前特征集为1x6的矩阵,将该矩阵作为当前矩阵A01×6,假设该当前矩阵为A0={1 2 8 7 5 9}。将1x6的当前矩阵A01×6与酉矩阵U'6×3相乘,得到1x3的变换矩阵,该变换矩阵中仅包含三个元素,在6x3的压缩矩阵A36×3中,查找是否存在变换矩阵,若存在,则说明,当前矩阵A01×6与压缩矩阵A36×3相匹配,该当前矩阵A01×6对应的当前交易为安全交易,否则,就可确定当前矩阵A01×6与压缩矩阵A36×3不匹配,该当前交易为风险交易。
例如,继续沿用上例,假设压缩矩阵A36×3为:
若当前矩阵A01×6与酉矩阵U'6×3相乘,得到1x3的变换矩阵为{1、2、1}时,遍历压缩矩阵中的每一行,从压缩矩阵A36×3可知,压缩矩阵中的第一行为变换矩阵为{1、2、1},可见,压缩矩阵A36×3中存在变换矩阵{1、2、1}。
若当前矩阵A01×6与酉矩阵U'6×3相乘,得到1x3的变换矩阵为{1、2、9}时,遍历压缩矩阵中的每一行,从压缩矩阵A36×3可知,压缩矩阵中的每一行与{1、2、9}均不同,说明压缩矩阵A36×3中不存在变换矩阵{1、2、9}。
在本申请实施例中,初始矩阵A13×6和当前矩阵A01×6中的元素的量纲不完全相同时,为了使得各特征的值具有可比性,则在本申请实施例中,获取初始矩阵A13×6和当前矩阵A01×6后,可对这两个矩阵中的每一个元素进行标准化处理。
具体的,在确定所述初始矩阵的协方差矩阵之前,所述方法还包括:对所述初始矩阵中的每一个元素进行标准化处理。
在确定所述当前矩阵与所述列数压缩后的酉矩阵U相乘得到的变换矩阵之前,所述方法还包括:对所述当前矩阵中的每一个元素进行标准化处理。
上述对元素进行标准化处理时,针对初始矩阵中的每一列元素,确定该列元素的均值μ和标准差S;根据公式对待标准化的元素进行标准化处理,该待标准化的元素与确定出均值μ和标准差S的一列元素对应的特征相同;其中,xi为待标准化的元素,xi'为标准化处理后的元素,i为正整数;待标准化的元素可以为所述初始矩阵中的元素或者可以为当前矩阵中的元素。
例如,对初始矩阵A13×6中的第一行第二列的元素2进行标准化处理时,计算初始矩阵A13×6中第二列的元素的均值μ和标准差S,将计算出的μ和S值以及元素2代入公式中,计算出的xi'的值为元素2的标准化处理后的值。
又例如,对当前矩阵A01×6中的第一行第一列的元素1进行标准化处理时,获取(或者计算)初始矩阵A13×6中第一列元素的均值μ和标准差S,将计算出的μ和S值以及当前矩阵A01×6中的元素1代入公式中,计算出的xi'的值为元素1的标准化处理后的值。
以上为本申请实施例提供的风险事件确定方法,基于同样的思路,本申请实施例还提供了一种风险事件确定装置,如图2所示。
图3为本申请实施例提供的风险事件确定装置,具体包括:
获取模块31,用于获取由当前事件的各特征构成的当前特征集;
判断模块32,用于在预设的比对特征集中,判断是否存在与所述当前特征集相匹配的比对特征集,其中,比对特征集是与安全事件对应的特征集;
确定模块33,用于当存在与所述当前特征集相匹配的比对特征集时,确定所述当前事件为安全事件,以及当不存在与所述当前特征集相匹配的比对特征集时,确定所述当前事件为风险事件。
可选的,所述装置还包括:
预设模块34,用于预先根据记录的各历史事件,确定由各历史事件的特征构成的初始特征集,对所述初始特征集进行归约处理,将归约处理后得到的特征集作为比对特征集。
可选的,所述初始特征集为初始矩阵;所述初始矩阵的每一行与一个历史事件相对应;所述初始矩阵的每一列与各历史事件的一个特征相对应;所述比对特征集为压缩矩阵;
所述预设模块34具体用于,确定所述初始矩阵的协方差矩阵;对所述协方差矩阵进行奇异值分解,得到酉矩阵U和对角矩阵;在所述对角矩阵中的各奇异值中,选取大于预设阈值的奇异值;保留所述酉矩阵U中与选取的奇异值对应的各列特征,得到列数压缩后的酉矩阵U;将所述协方差矩阵与列数压缩后的酉矩阵U相乘得到压缩矩阵。
可选的,所述判断模块32具体用于,确定所述当前特征集对应的当前矩阵;确定所述当前矩阵与所述列数压缩后的酉矩阵U相乘得到的变换矩阵;判断所述压缩矩阵中是否存在所述变换矩阵;
所述确定模块33具体用于,当所述压缩矩阵中存在所述变换矩阵时,确定存在与所述当前特征集相匹配的比对特征集,当所述压缩矩阵中不存在所述变换矩阵时,确定不存在与所述当前特征集相匹配的比对特征集。
可选的,所述装置还包括:
处理模块35,用于在确定所述初始矩阵的协方差矩阵之前,对所述初始矩阵中的每一个元素进行标准化处理,以及在确定所述当前矩阵与所述列数压缩后的酉矩阵U相乘得到的变换矩阵之前,对所述当前矩阵中的每一个元素进行标准化处理。
可选的,所述处理模块35具体用于,针对初始矩阵中的每一列元素,确定该列元素的均值μ和标准差S;根据公式对待标准化的元素进行标准化处理,其中,xi为待标准化的元素,xi'为标准化处理后的元素,i为正整数;所述待标准化的元素为所述初始矩阵中的元素或者所述当前矩阵中的元素。
综上所述,本申请实施例提供的一种风险事件确定方法及装置,该方法服务器获取由当前事件的各特征构成的当前特征集,然后判断该当前特征集是否与比对特征集相匹配,由于该比对特征集为与安全事件对应的特征集,即风险事件对应的特征集不在该比对特征集中,若当前特征集与比对特征集相匹配,则可确定该当前事件为安全事件,否则,确定当前事假为风险事件,这样,服务器只需要获取该当前事件的特征,而不需要确定事件对应的业务逻辑规则,从而有效提高确定风险事件的效率。此外,由于服务器获取的特征集中特征数量一般都较大,大量的特征可较全面准确的描述该事件,这样,通过特征集确定出的风险事件和安全事件的准确性较高。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、***或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。