CN111291015B - 一种用户行为异常检测方法及装置 - Google Patents
一种用户行为异常检测方法及装置 Download PDFInfo
- Publication number
- CN111291015B CN111291015B CN202010348732.5A CN202010348732A CN111291015B CN 111291015 B CN111291015 B CN 111291015B CN 202010348732 A CN202010348732 A CN 202010348732A CN 111291015 B CN111291015 B CN 111291015B
- Authority
- CN
- China
- Prior art keywords
- behavior
- user
- vector
- feature
- classification
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/1805—Append-only file systems, e.g. using logs or journals to store data
- G06F16/1815—Journaling file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2411—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/243—Classification techniques relating to the number of classes
- G06F18/24323—Tree-organised classifiers
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种用户行为异常检测方法及装置,当需要检测某一用户的行为是否异常时,首先从服务器中获取当前时刻该用户对应的用户日志,该用户日志表示用户行为数据,可以包括交易日志、登录日志等信息。再从用户日志中提取与用户行为相关的行为特征集合,将该行为特征集合输入预先训练的用户行为向量表示模型中,获得行为向量表示,该行为向量表示包括用户在上一时刻对应的行为分类结果。将行为向量表示输入行为分类模型,获得该用户日志对应的分类结果。即,本申请实施例通过使用基于注意力机制的用户行为向量表示模型使得重要行为特征在转换为行为向量时所占权重较大,从而提高行为分类模型输出结果的准确性。
Description
技术领域
本申请涉及人工智能技术领域,具体涉及一种用户行为异常检测方法及装置。
背景技术
目前,对于用户行为异常检测的研究比较热门,主要方法包括基于离散时间马尔科夫链的异常行为检测系统和基于神经网络的用户行为检测方法。具体地,前者将用户产生的行为数据与预先设定的阈值进行比较分析,以根据分析结果确定用户行为是否异常。然而,此种方式需要人为参与,存在人为因素导致的偏差,影响结果的准确性。后者在适用场景及检测实时性、准确性方面还有诸多不足。
当前存在一些关于用户行为的研究,2016年,Veeramachananeni等人(Veeramachaneni,Kalyan, et al.,AI2:训练大数据机器进行防御,云上的大数据安全(大数据安全),IEEE高性能与智能计算国际会议(HPSC),IEEE智能数据与安全国际会议(IDS),2016 IEEE第二届国际会议)使用自动编码器神经网络检测内部威胁。2018年,Bi等人(MengB.,Andi W.,Jian X., 基于离散马尔可夫链的数据库用户异常行为检测,沈阳理工大学学报,2018,70-76)针对数据库的内部攻击,建立了基于离散时间马尔可夫链(DTMC)的异常行为检测系统,将用户提交的SQL语句作为行为特征进行分析。DTMC用于提取正常用户的特征和要检测的行为。比较偏差和阈值以确定行为是否异常。Thi等人(Thi,Nga Nguyen,VanLoi Cao,Nhien-An Le-Khac,基于长短期记忆递归神经网络的一类集体异常检测,arXiv预印本arXiv:1802,00324(2018))和Bontemps等人(Bontemps, Lo¨ıc,James McDermott,Nhien-An Le-Khac,基于长短期记忆递归网络的集体异常检测,未来数据和安全工国际会议,斯普林格,2016)在他们的工作中,使用了长短期记忆网络,但主要缺陷是没有对用户行为的原始数据进行特征提取。
发明内容
有鉴于此,本申请实施例提供一种用户行为异常检测方法及装置,以实现更准确地检测用户行为异常。
为解决上述问题,本申请实施例提供的技术方案如下:
在本申请实施例第一方面,提供了一种用户行为异常检测方法,该方法可以包括:
针对任一用户,从服务器获取当前时刻所述用户对应的用户日志,所述用户日志表示用户行为数据;
根据所述用户日志获取行为特征集合;
将所述行为特征集合输入用户行为向量表示模型,获取行为向量表示,所述行为向量表示包括所述用户在上一行为检测时刻对应的行为分类结果,所述用户行为向量表示模型是根据训练用户日志对应的行为特征集合以及所述训练用户日志对应的分类标签训练生成的,所述用户行为向量表示模型为基于注意力机制的神经网络模型;
将所述行为向量表示输入行为分类模型,获得分类结果,所述行为分类模型是根据所述训练用户日志对应的行为特征集合以及所述训练用户日志对应的分类标签训练生成的。
在一种可能的实现方式中,所述将所述行为特征集合输入用户行为向量表示模型,获取行为向量表示,包括:
针对任一行为特征,获取所述行为特征对应的特征向量,所述特征向量包括词向量、字向量以及字符向量中的任意多种;
根据所有所述行为特征各自对应的特征向量获得第一行为向量集合;
根据所述用户在上一时刻对应的行为分类结果和所述第一行为向量集合获得行为向量表示。
在一种可能的实现方式中,所述根据所有所述行为特征对应的特征向量获得第一行为向量集合,包括:
当每一所述行为特征对应的特征向量为词向量时,利用所有行为特征分别对应的词向量构建第一行为向量集合;
当每一所述行为特征对应的特征向量为字向量时,利用所有行为特征分别对应的字向量构建第一行为向量集合;
当每一所述行为特征对应的特征向量为字符向量时,利用所有行为特征分别对应的字符向量构建第一行为向量集合;
当每一所述行为特征对应的特征向量包括词向量、字向量和字符向量中的任意两种或三种时,获取每种特征向量各自对应的权重,并对所述特征向量进行加权和,获得目标特征向量,利用所有行为特征分别对应的所述目标特征向量构建第一行为向量集合。
在一种可能的实现方式中,所述根据所述用户在上一时刻对应的行为分类结果和所述第一行为向量集合获得行为向量表示,包括:
根据所述第一行为向量集合获取第二行为向量集合,所述第二行为向量集合包括多个行为向量,所述行为向量包括正向行为向量和逆向行为向量;
将所述用户在上一时刻对应的行为分类结果和所述第二行为向量集合进行组合,获得行为向量表示。
在一种可能的实现方式中,在获取所述第二行为向量集合后,所述方法还包括:
获取所述第二行为向量集合中每一行为向量各自对应的权重;
将所有所述行为向量各自对应的权重进行加权求和,获得第三行为向量集合;
所述将所述用户在上一时刻对应的行为分类结果和所述第二行为向量集合进行组合,获得行为向量表示,包括:
将所述用户在上一时刻对应的行为分类结果和所述第三行为向量集合进行拼接,获得行为向量表示。
在一种可能的实现方式中,所述方法还包括:
当所述分类结果为异常时,提示用户输入验证码,并进行验证。
在一种可能的实现方式中,所述行为分类模型为基于决策树的支持向量机分类模型。
在一种可能的实现方式中,所述用户行为向量表示模型和所述行为分类模型的训练包括:
提取训练用户日志的行为特征集合;
将所述训练用户日志的行为特征集合输入第一初始神经网络模型获得所述训练用户日志对应的行为向量表示,所述训练用户日志对应的行为向量表示包括训练用户在上一时刻对应的分类标签;
将所述训练用户日志对应的行为向量表示输入第二初始分类模型,获得第一分类结果;
根据所述第一分类结果以及所述训练用户日志对应的分类标签调整所述第一初始神经网络模型参数和所述第二初始分类模型参数,直至所述第一分类结果与所述训练用户日志对应的分类标签的误差满足预设条件,获得所述用户行为向量表示模型和所述行为分类模型。
在一种可能的实现方式中,所述将所述训练用户日志的行为特征集合输入第一初始神经网络模型获得所述训练用户日志对应的行为向量表示,包括:
针对所述训练用户日志对应的行为特征集合中的任一行为特征,获取所述行为特征对应的特征向量,所述特征向量包括词向量、字向量和字符向量中的任意多种;
根据所有所述行为特征各自对应的特征向量获得第四行为向量集合;
根据所述训练用户在上一时刻对应的分类标签和所述第四行为向量集合获得所述训练用户日志对应的行为向量表示。
在本申请实施例第二方面,提供了一种用户行为异常检测装置,所述装置包括:
第一获取单元,用于针对任一用户,从服务器获取当前时刻所述用户对应的用户日志 ,所述用户日志表示用户行为数据;
第二获取单元,用于根据所述用户日志获取行为特征集合 ;
第三获取单元,用于将所述行为特征集合输入用户行为向量表示模型,获取行为向量表示,所述行为向量表示包括所述用户在上一时刻对应的行为分类结果,所述用户行为向量表示模型是根据训练用户日志对应的行为特征集合以及所述训练用户日志对应的分类标签训练生成的,所述用户行为向量表示模型为基于注意力机制的神经网络模型;
第四获取单元,用于将所述行为向量表示输入行为分类模型,获得分类结果,所述行为分类模型是根据所述训练行为特征集合以及所述训练用户行为特征集合对应的分类标签训练生成的。
由此可见,本申请实施例具有如下有益效果:
本申请实施例当需要检测某一用户的行为是否异常时,首先从服务器中获取当前时刻该用户对应的用户日志,该用户日志表示用户行为数据,可以包括交易日志、登录日志等信息。再从用户日志中提取与用户行为相关的行为特征集合,将该行为特征集合输入预先训练的用户行为向量表示模型中,获得行为向量表示,该行为向量表示包括用户在上一时刻对应的行为分类结果。将行为向量表示输入行为分类模型,获得该用户日志对应的分类结果。即,本申请实施例通过使用基于注意力机制的用户行为向量表示模型使得重要行为特征在转换为行为向量时所占权重较大,从而提高行为分类模型输出结果的准确性。
附图说明
图1为本申请实施例提供的一种用户行为异常检测方法流程图;
图2为本申请实施例提供的一种用户行为检测框架图;
图3为本申请实施例提供的一种网络模型结构示意图;
图4为本申请实施例提供的一种网络模型训练生成方法流程图;
图5为本申请实施例提供的另一种网络模型结构示意图;
图6为本申请实施例提供的一种用户行为异常检测装置结构图。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请实施例作进一步详细的说明。
为便于理解本申请实施例提供的技术方案,下面将先对本申请涉及的技术名词进行说明。
本申请实施例提出使用基于多层注意力机制的神经网络结合基于决策树的SVMs来进行用户异常行为的实时检测。使用双向的循环门控单元神经网络捕获原本离散的用户行为记录特征与特征之间的关系,使用注意力机制使得重要的特征在最终的用户行为记录表示中所占权重更大,获得了用户行为记录更优表示。传统的用户边界是由人为规定产生的,存在人为因素导致的偏差,使用基于多层注意力机制的神经网络和SVMs结合去自动构建用户行为边界,降低了人为因素导致的偏差。先用所有标记好的数据训练通用模型。然后对于产生行为记录极大的用户(产生行为记录超过10000条),训练针对该类用户的神经网络以及SVMs来对其行为进行预测,其余的用户则使用通用模型来进行行为预测。这样使得对用户行为异常检测更具针对性,更加准确高效。
注意力机制(Attention Mechanism):源于对人类视觉注意力机制的研究。视觉注意力机制是人类视觉所特有的大脑信号处理机制。人类视觉通过快速扫描全局图像,获得需要重点关注的目标区域,也就是一般所说的注意力焦点,而后对这一区域投入更多注意力资源,以获取更多所需要关注目标的细节信息,而抑制其他无用信息。注意力机制主要有两个方面:决定需要关注输入的哪部分;分配有限的信息处理资源给重要的部分。而自注意力机制是注意力机制的改进,其减少了对外部信息的依赖,更擅长捕捉数据或特征的内部相关性
门控循环单元(Gated Recurrent Unit,GRU)网络:是长短期记忆(Long Short-Term Memory,LSTM)网络的变形,与 LSTM网络相比,GRU网络为更简单的循环神经网络,容易收敛,且仍然可以捕获长期依赖关系。
基于决策树的支持向量机(Support Vector Machine, SVM)模型:首先将所有类别分为两个类别,再将子类进一步划分为两个次级子类,如此循环下去,直到所有的节点都只包含一个单独的类别为止,此节点也是二叉树的叶子。该分类将原有的分类问题同样分解成了一系列的两类分类问题,其中两个子类间的分类算法采用SVM。
基于上述说明,下面将和附图对本申请实施例提供的用户行为检测方法进行解释说明。
参见图1,该图为本申请实施例提供的一种用户行为异常检测方法流程图,如图1所示,该方法可以包括:
S101:针对任一用户,从服务器获取当前时刻所述用户对应的用户日志 。
本实施例中,针对需要进行行为检测的用户,可以从服务器获取当前时刻该用户对应的用户日志。该用户日志表示用户行为数据,即用户进行网络浏览或操作时所产生的用户行为数据。具体地,该用户日志可以包括交易日志、登录日志等信息。
例如,以用户登录网络购物平台为例,该网络购物平台可以实时记录每个用户的行为,并将其进行存储。具体地,将与交易相关的行为记录在交易日志中,将与登录相关的行为记录在登录日志中。其中,登录日志可以包括用户订单数量、订购商品类别、取消订单数量等;登录日志可以包括登录时间、登录时的网络地址、输入密码次数登信息。
S102:根据用户日志获取行为特征集合。
当获取到用户在当前时刻对应的用户日志后,从该用户日志中提取与该用户行为相关的行为特征以获得行为特征集合。具体地,可以使用正则表达式从用户日志中提取各个行为特征。
其中,行为特征可以为下述信息:
用户ID(User ID,UID);用户登录时间(User Logon Time,ULT),如表1中20191010153356表示日期和时间2019年10月10日15:33:56;登陆时输入密码次数(Numberof Passwords,NP);
登录IP变更情况(Login IP Change,LIPC):在当前时刻若IP地址变更则记录新的IP地址并在后面加上“_1”,若未变更则仍然写该用户前一个时刻的IP地址并在后面加上“_0”;
设备的IMEI码变更情况(IMEI Code Change,IMEICC):在当前时刻若IMEI码变更则记录新的IMEI码并在后面加上“_1”,若未变更则仍然写该用户前一个时刻的IMEI码并在后面加上“_0”;
手机号码变更情况(Mobile Phone Number Change,MPNC):在当前时刻若手机号码变更则记录新的手机号码并在后面加上“_1”,若未变更则仍然写该用户前一个时刻的手机号码并在后面加上“_0”;
订单数量增长情况(Order Quantity Growth,OQG):如表1所示示例“2_100”,“_”前面的数字表示用户在这一时刻订单增量,后面的数字表示新增的订单中包含商品数量最大的订单的商品数;
订购商品类别包含(n类)(The Category of Ordered Goods (9 categories),COG):该电子商务平台总共包含n大类商品,为每一类上篇标号来用该号代表对应商品;
取消订单数量增长情况(Increase in Cancelled Orders,ICO):如表1所示示例“3_200”,“_”前面的数字表示用户在这一时刻取消订单数的增量,后面的数字表示取消的订单中包含商品数量最大的订单的商品数;
收货地址是否真实存在(Receiving Address,RA):真实存在用1表示,不存在用0表示。
表1 行为特征
S103:将行为特征集合输入用户行为向量表示模型,获取行为向量表示。
本实施例中,将获取的行为特征集合输入预先训练的用户行为向量表示模型中,获得行为向量表示。其中,行为向量表示包括该用户在上一时刻对应的行为分类结果,用户行为向量表示模型是根据训练用户日志对应的行为特征集合以及其对应的分类标签训练生成的,其中,用户行为向量表示模型为基于注意力机制的神经网络模型。其中,关于用户行为向量表示模型的训练生成过程将在后续实施例进行说明。
具体地,将行为特征集合输入用户行为向量表示模型,获取行为向量表示,具体可以通过以下方式实现:
1)针对行为特征集合中的任一行为特征,获取该行为特征对应的特征向量。
本实施例中,针对任一行为特征,获取该行为特征对应的特征向量,该特征向量可以包括词向量、字向量和字符向量中任意多种。具体地,可以利用词向量模型获得行为特征对应的词向量,常见词嵌入模型有Word2Vec;利用字向量模型获得行为特征对应的字向量和利用字符向量模型获得行为特征对应的字符向量。例如,某一行为特征为商品名称“pen”,该行为特征对应的词向量为“pen”一词对应的向量,该行为特征对应的字符向量为“p”、“e”和“n”三个字符各自对应的字符向量。若行为特征为商品名称为中文,如“水杯”,该行为特征对应的词向量为“水杯”一词对应的向量,该行为特征对应的字向量为“水”和“杯”两个字各自对应的字向量。例如,行为特征集合为,其中,表示第n个特征。对应的词向量为、对应的字向量、字符向量为。
2)根据所有行为特征各自对应的特征向量向量获得第一行为向量集合。
当获取到行为特征集合中每个行为特征对应的词向量、字向量、字符向量,根据所有行为特征各自对应的词向量、字符向量和字(符)向量获得第一行为向量集合。
当行为特征对应的特征向量为词向量、字向量、字符向量任意两种或三种时,则获得每种特征向量各自对应的权重,并对特征向量进行加权和,获得目标特征向量,利用所有行为特征分别对应的目标特征向量构建第一行为向量集合。例如,行为特征对应特征向量包括词向量和字符向量,其中,词向量为、字符向量为,词权重为、字符权重为,则行为特征对应的目标特征向量为,则第一行为向量集合。
3)根据用户在上一时刻对应的行为分类结果和第一行为向量集合获得行为向量表示。
本实施例中,当获取到第一行为向量集合后,可以根据用户在上一时刻对应的行为分类结果以及第一行为向量集合获得行为向量表示。
具体地,可以将第一行为向量集合与用户在上一时刻对应的行为分类结果进行拼接组合获得行为向量表示。例如,用户在上一时刻对应的行为分类结果为l m-1,则行为向量表示。在具体实现时,为提高后续分类结果的准确性,可以对获取的第一行为向量集合进行进一步分析处理,获取更多的信息。具体为,根据第一行为向量集合获取第二行为向量集合,该第二行为向量集合包括多个行为向量,其中,每个行为向量包括正向行为向量和逆向行为向量。在实际实现时,将第一行为向量集合输入双向门控循环网络模型中,输入的结果即为第二行为向量集合。例如,第二行为向量集合为,其中,,是正向门控循环单元的第n个循环单元的输出,是逆向门控循环单元的第n个循环单元的输出。
在具体实现时,为提高后续分类结果的准确性,在获取第二行为向量集合后,可以为第二行为向量集合中的每一行为向量分配权重,并对所有行为向量进行加权求和,获得第三行为向量集合;则将用户在上一时刻对应的行为分类结果和第三行为向量集合进行拼接,获得行为向量集合。例如,第二行为向量集合为,其中,行为向量对应的权重为t n ,则第三行为向量集合;将用户在上一时刻对应的行为分类结果和第三行为向量集合进行拼接,获得行为向量集合。
S104:将行为向量表示输入行为分类模型,获得分类结果。
当获取用户日志对应的行为向量表示后,将该行为向量表示输入预先训练的行为分类模型中,以获得当前时刻用户日志对应的分类结果。其中,行为分类模型是根据训练行为特征集合以及训练用户行为特征集合对应的分类标签训练得到的。其中,行为分类模型为基于决策树的支持向量机模型,关于行为分类模型训练生成的过程将在后续实施例进行说明。
具体实现时,行为分类结果可以为四类,分别为无异常、轻度异常、中度异常和重度异常。针对不同的分类结果可以设置不同的应急机制,当分类结果为无异常时,不对该用户进行干预操作;当分类结果为异常时,提示用户输入验证码,以进行验证。进一步地,还可以根据异常的程度,采取更严格的响应措施。例如,经管理员合核实为重度异常时,取消该用户对应的订单,并强制该用户下线。
在实际应用时,在获取用户的用户日志对应的分类结果后,可以将该用户日志以及该用户日志对应的分类结果添加至数据库,以用于优化用户行为向量表示模型和行为分类模型。
为便于理解本申请实施例的整体实现,参见图2所示的用户行为检测框架图,本申请实施例进行用户行为检测的设备可以包括特征提取模块、向量表示建立模块、异常检测模块、响应模块。
其中,特征提取模块,从需要进行异常行为检测的用户对应的用户日志中提取与用户行为相关的行为特征。
向量表示建立模块,使用基于注意力机制的神经网络对行为特征进行分析处理,获得行为向量集合。
行为分类模块,根据向量表示建立模块输入的行为向量集合进行行为分类,获得分类结果。如果该分类结果为无异常,可以将该用户日志以及用户日志对应的分类结果添加至数据库中,以便利用新增加的数据对向量表示建立模块和行为分类模块进行优化训练。如果该分类结果为异常,则可以根据异常等级采取不同的响应措施,进而将该用户日志以及用户日志对应的分类结果添加至数据库中。
为便于进一步理解向量表示建立模块和行为分类模块的工作过程,参见图3所示一种网络模型结构示意图。如图3所示,在该实施例中,向量表示建立模块对应用户行为向量表示模型、行为分类模块对应的行为分类模型。其中,用户行为向量表示模型包括输入层、字(符)嵌入层、词嵌入层、嵌入层注意力机制、双向门控循环单元层、表示层注意力机制、记录表示层。行为分类模型包括预测层。在本实施例中,以输入9个行为特征以及行为分类模型为支持向量机模型为例进行说明。
嵌入层注意力机制:为每个行为特征的词向量和字(符)向量分配不同的权重,并将词向量和字(符)向量进行加权求和,获得该行为特征的目标特征向量,并获得第一行为向量集合。具体地,该嵌入层注意力机制可以采用自注意力机制。
双向门控循环单元层:对输入的第一行为向量集合中的每个行为向量进行正向和逆向运算,获得第二行为向量集合,其中,是正向门控循环单元的第n个循环单元的输出,是逆向门控循环单元的第n个循环单元的输出。即,通过使用双向门控循环单元可以捕获离散的行为特征之间的关系,增加信息量。
预测层:根据输入的行为向量集合进行预测获得该用户在当前时刻产生的用户日志所对应的分类结果。其中,分类结果可以分为4类,分别用数字0、1、2和3表示,其中0表示无异常、1表示轻度异常、2表示中度异常、3表示重度异常。
此外,本申请实施例还提供了用户行为向量表示模型和行为分类模型的训练过程,其中,用户行为向量表示模型为基于注意力机制的神经网络模型,行为分类模型为基于决策树的支持向量机分类模型。
需要说明的是,本申请实施例中的用户行为向量表示模型和行为分类模型同时进行训练,参见图4,该图为本申请实施例提供的一种网络模型训练生成方法流程图,如图4所示,该方法可以包括:
S401:提取训练用户日志的行为特征集合。
本实施例中,可以从服务器中获取大量的训练用户日志,该训练用户日志对应的分类标签由专家进行人工标注。具体地,该分类标签可以分为四类,分别为无异常行为(0)、轻度异常(1)、中度异常(2)和重度异常(3)。当获取到训练用户日志后,提取与用户行为相关的行为特征集合,以便利用该行为特征集合训练用户行为向量表示模型和行为分类模型。
可以理解的是,在实际应用中,为保证训练的精度,可以从服务器中获取大量的、分类标签类型不同的训练用户日志。
S402:将训练用户日志的行为特征集合输入第一初始神经网络模型获得训练用户日志对应的行为向量表示。
本实施例中,当获取到训练用户日志的行为特征集合后,将其输入第一初始神经网络模型获得训练用户日志对应的行为向量表示,该训练用户日志对应的行为向量表示包括训练用户在上一时刻对应的分类标签。
具体地,第一初始神经网络模型在接收到输入的训练用户日志的行为特征集合后,针对该行为特征集合中的任一行为特征,获取该行为特征的特征向量,该特征向量可以包括词向量、字向量或字符向量中的任意组合。根据所有行为特征各自对应的特征向量获得第四行为向量集合,再根据训练用户在上一时刻对应的分类标签和第四行为向量集合获得训练用户日志对应的行为向量表示。
需要说明的是,本实施例中,根据所有行为特征各自对应的词向量、字向量和字符向量获得第四行为向量集合的实现可以参见上述S103中第一行为向量集合的获得,本实施例在此不再赘述。同时,关于根据训练用户在上一时刻对应的分类标识和第四行为向量集合获得训练用户日志对应的行为向量表示,可以参见上述S103中的实现。
S403:将训练用户日志对应的行为向量表示输入第二初始分类网络模型,获得第一分类结果。
即,本实施例中将训练用户日志对应的行为向量集合输入第二初始分类网络模型,获得第一分类结果。即,由第二初始网络模型根据输入的行为向量集合进行分类预测,获得第一分类结果。
S404:根据第一分类结果和训练用户日志对应的分类标签调整第一初始神经网络模型参数和第二初始分类网络模型参数,直至第一分类结果与训练用户日志对应的分类标签的误差满足预设条件,生成用户行为向量表示模型和行为分类模型。
本实施例中,在将训练用户日志对应的行为向量表示输入第二初始分类网络模型的同时,也将该训练用户日志对应的分类标签输入第二初始网络模型,以便第二初始网络模型根据第一分类结果和该训练用户日志对应的分类标签进行比较分析,如果二者的差值不满足预设条件,则进行反向传播,调整第一初始神经网络模型和第二初始分类网络模型的参数,直至第二初始分类网络模型输出的第一分类结果和训练用户日志对应的分类标签的差值满足预设条件,从而获得用户行为向量表示模型和行为分类模型。
其中,第一初始网络模型经训练得到用户行为向量表示模型,第二初始网络模型经训练得到行为分类模型。具体地,参见图5所示的另一种网络模型结构示意图,通过该图可知,第二初始网络模型与最终生成的行为分类模型相比,多出标签层。该标签层的作用在于根据训练用户日志的分类标签以及预测的第一分类结果进行比较分析,反向传播二者之间的误差指导第一初始网络模型和第二初始网络模型调整各自的参数。
需要说明的是,在实际应用中,对于用户日志数量超过预设数量(例如用户日志超过10000条)的用户,可以针对该类用户的用户行为进行单独的训练,以生成针对该类用户特有的用户行为向量表示模型和行为分类模型,从而提高该类用户异常行为检测的准确性。
基于上述描述可知,本申请实施例提供的用户行为检测方法存在以下优势:
1、支持向量机是分类问题中分类效果最好的机器学习算法,故而将基于多层注意力机制的神经网络和基于决策树的支持向量机进行结合应用于实时用户行为异常检测中,可以大大提高用户行为异常检测的精确度;
2、因为循环门控单元神经网络可以解决传统循环神经网络梯度消失的问题即长期依赖问题,且它比长短期记忆网络更容易收敛;双向神经网络比单向神经网络多捕获了序列的反向依赖信息,故而使用双向的循环门控单元神经网络捕获原本离散的用户行为记录特征与特征之间的关系,使用注意力机制使得重要的特征在最终的用户行为记录表示中所占权重更大,获得了用户行为记录更优表示;
3、传统的用户行为异常界定是由人为规定产生的,存在人为因素导致的偏差,使用基于多层注意力机制的神经网络和SVMs结合去自动确定用户行为是否异常,降低了了人为因素导致的偏差。
基于上述方法实施例,本申请实施例提供了一种用户行为异常检测装置,参见图6所示一种用户行为异常检测装置结构图,该装置可以包括:
第一获取单元601,用于针对任一用户,从服务器获取当前时刻所述用户对应的用户日志 ,所述用户日志表示用户行为数据;
第二获取单元602,用于根据所述用户日志获取行为特征集合 ;
第三获取单元603,用于将所述行为特征集合输入用户行为向量表示模型,获取行为向量表示,所述行为向量表示包括所述用户在上一时刻对应的行为分类结果,所述用户行为向量表示模型是根据训练用户日志对应的行为特征集合以及所述训练用户日志对应的分类标签训练生成的,所述用户行为向量表示模型为基于注意力机制的神经网络模型;
第四获取单元604,用于将所述行为向量表示输入行为分类模型,获得分类结果,所述行为分类模型是根据所述训练行为特征集合以及所述训练用户行为特征集合对应的分类标签训练生成的。
在一种可能的实现方式中,所述第三获取单元,包括:
第一获取子单元,用于针对任一行为特征,获取所述行为特征对应的特征向量,所述特征向量包括词向量、字向量以及字符向量中的任意多种;
第二获取子单元,用于根据所有所述行为特征各自对应的特征向量获得第一行为向量集合;
第三获取子单元,用于根据所述用户在上一时刻对应的行为分类结果和所述第一行为向量集合获得行为向量表示。
在一种可能的实现方式中,所述第二获取子单元,具体用于当每一所述行为特征对应的特征向量为词向量时,利用所有行为特征分别对应的词向量构建第一行为向量集合;当每一所述行为特征对应的特征向量为字向量时,利用所有行为特征分别对应的字向量构建第一行为向量集合;当每一所述行为特征对应的特征向量为字符向量时,利用所有行为特征分别对应的字符向量构建第一行为向量集合;当每一所述行为特征对应的特征向量包括词向量、字向量和字符向量中的任意两种或三种时,获取每种特征向量各自对应的权重,并对所述特征向量进行加权和,获得目标特征向量,利用所有行为特征分别对应的所述目标特征向量构建第一行为向量集合。
在一种可能的实现方式中,所述第三获取子单元,具体用于根据所述第一行为向量集合获取第二行为向量集合,所述第二行为向量集合包括多个行为向量,所述行为向量包括正向行为向量和逆向行为向量;将所述用户在上一时刻对应的行为分类结果和所述第二行为向量集合进行拼接组合,获得行为向量表示集合。
在一种可能的实现方式中,在获取所述第二行为向量集合后,所述第三获取子单元,还用于获取所述第二行为向量集合中每一行为向量各自对应的权重;将所有所述行为向量各自对应的权重进行加权求和,获得第三行为向量集合;将所述用户在上一时刻对应的行为分类结果和所述第三行为向量集合进行拼接,获得行为向量表示。
在一种可能的实现方式中,所述装置还包括:
提示单元,用于当所述分类结果为异常时,提示用户输入验证码,并进行验证。
在一种可能的实现方式中,所述行为分类模型为基于决策树的支持向量机分类模型。
在一种可能的实现方式中,所述用户行为向量表示模型和所述行为分类模型的训练包括:
提取训练用户日志的行为特征集合;
将所述训练用户日志的行为特征集合输入第一初始神经网络模型获得所述训练用户日志对应的行为向量表示,所述训练用户日志对应的行为向量表示包括训练用户在上一时刻对应的分类标签;
将所述训练用户日志对应的行为向量表示输入第二初始分类模型,获得第一分类结果;
根据所述第一分类结果以及所述训练用户日志对应的分类标签调整所述第一初始神经网络模型参数和所述第二初始分类模型参数,直至所述第一分类结果与所述训练用户日志对应的分类标签的误差满足预设条件,获得所述用户行为向量表示模型和所述行为分类模型。
在一种可能的实现方式中,将所述训练用户日志的行为特征集合输入第一初始神经网络模型获得所述训练用户日志对应的行为向量表示,包括:
针对所述训练用户日志对应的行为特征集合中的任一行为特征,获取所述行为特征对应的特征向量,所述特征向量包括词向量、字向量和字符向量中的任意多种;
根据所有所述行为特征各自对应的特征向量获得第四行为向量集合;
根据所述训练用户在上一时刻对应的分类标签和所述第四行为向量集合获得所述训练用户日志对应的行为向量表示。
需要说明的是,本实施例中各个单元的实现可以参见上述方法实施例,本实施例在此不再赘述。
通过上述描述可知,当需要检测某一用户的行为是否异常时,首先从服务器中获取当前时刻该用户对应的用户日志,该用户日志表示用户行为数据,可以包括交易日志、登录日志等信息。再从用户日志中提取与用户行为相关的行为特征集合,将该行为特征集合输入预先训练的用户行为向量表示模型中,获得行为向量表示,该行为向量表示包括用户在上一时刻对应的行为分类结果。将行为向量表示输入行为分类模型,获得该用户日志对应的分类结果。即,本申请实施例通过使用基于注意力机制的用户行为向量表示模型使得重要行为特征在转换为行为向量时所占权重较大,从而提高行为分类模型输出结果的准确性。
需要说明的是,本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统或装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
应当理解,在本申请中,字(符)表示字或字符。“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。 “以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种用户行为异常检测方法,其特征在于,所述方法包括:
针对任一用户,从服务器获取当前时刻所述用户对应的用户日志,所述用户日志表示用户行为数据;
根据所述用户日志获取行为特征集合;
将所述行为特征集合输入用户行为向量表示模型,获取行为向量表示,所述行为向量表示包括所述用户在上一行为检测时刻对应的行为分类结果,所述用户行为向量表示模型是根据训练用户日志对应的行为特征集合以及所述训练用户日志对应的分类标签训练生成的,所述用户行为向量表示模型为基于注意力机制的神经网络模型;
将所述行为向量表示输入行为分类模型,获得分类结果,所述行为分类模型是根据所述训练用户日志对应的行为特征集合以及所述训练用户日志对应的分类标签训练生成的。
2.根据权利要求1所述的方法,其特征在于,所述将所述行为特征集合输入用户行为向量表示模型,获取行为向量表示,包括:
针对任一行为特征,获取所述行为特征对应的特征向量,所述特征向量包括词向量、字向量以及字符向量中的任意多种;
根据所有所述行为特征各自对应的特征向量获得第一行为向量集合;
根据所述用户在上一时刻对应的行为分类结果和所述第一行为向量集合获得行为向量表示。
3.根据权利要求2所述的方法,其特征在于,所述根据所有所述行为特征各自对应的特征向量获得第一行为向量集合,包括:
当每一所述行为特征对应的特征向量为词向量时,利用所有行为特征分别对应的词向量构建第一行为向量集合;
当每一所述行为特征对应的特征向量为字向量时,利用所有行为特征分别对应的字向量构建第一行为向量集合;
当每一所述行为特征对应的特征向量为字符向量时,利用所有行为特征分别对应的字符向量构建第一行为向量集合;
当每一所述行为特征对应的特征向量包括词向量、字向量和字符向量中的任意两种或三种时,获取每种特征向量各自对应的权重,并对所述特征向量进行加权和,获得目标特征向量,利用所有行为特征分别对应的所述目标特征向量构建第一行为向量集合。
4.根据权利要求2或3所述的方法,其特征在于,所述根据所述用户在上一时刻对应的行为分类结果和所述第一行为向量集合获得行为向量表示,包括:
根据所述第一行为向量集合获取第二行为向量集合,所述第二行为向量集合包括多个行为向量,所述行为向量包括正向行为向量和逆向行为向量;
将所述用户在上一时刻对应的行为分类结果和所述第二行为向量集合进行组合,获得行为向量表示。
5.根据权利要求4所述的方法,其特征在于,在获取所述第二行为向量集合后,所述方法还包括:
获取所述第二行为向量集合中每一行为向量各自对应的权重;
将所有所述行为向量各自对应的权重进行加权求和,获得第三行为向量集合;
所述将所述用户在上一时刻对应的行为分类结果和所述第二行为向量集合进行组合,获得行为向量表示,包括:
将所述用户在上一时刻对应的行为分类结果和所述第三行为向量集合进行拼接,获得行为向量表示。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述分类结果为异常时,提示用户输入验证码,并进行验证。
7.根据权利要求1所述的方法,其特征在于,所述行为分类模型为基于决策树的支持向量机分类模型。
8.根据权利要求1所述的方法,其特征在于,所述用户行为向量表示模型和所述行为分类模型的训练包括:
提取训练用户日志的行为特征集合;
将所述训练用户日志的行为特征集合输入第一初始神经网络模型获得所述训练用户日志对应的行为向量表示,所述训练用户日志对应的行为向量表示包括训练用户在上一时刻对应的分类标签;
将所述训练用户日志对应的行为向量表示输入第二初始分类模型,获得第一分类结果;
根据所述第一分类结果以及所述训练用户日志对应的分类标签调整所述第一初始神经网络模型参数和所述第二初始分类模型参数,直至所述第一分类结果与所述训练用户日志对应的分类标签的误差满足预设条件,获得所述用户行为向量表示模型和所述行为分类模型。
9.根据权利要求8所述的方法,其特征在于,所述将所述训练用户日志的行为特征集合输入第一初始神经网络模型获得所述训练用户日志对应的行为向量表示,包括:
针对所述训练用户日志对应的行为特征集合中的任一行为特征,获取所述行为特征对应的特征向量,所述特征向量包括词向量、字向量和字符向量中的任意多种;
根据所有所述行为特征各自对应的特征向量获得第四行为向量集合;
根据所述训练用户在上一时刻对应的分类标签和所述第四行为向量集合获得所述训练用户日志对应的行为向量表示。
10.一种用户行为异常检测装置,其特征在于,所述装置包括:
第一获取单元,用于针对任一用户,从服务器获取当前时刻所述用户对应的用户日志,所述用户日志表示用户行为数据;
第二获取单元,用于根据所述用户日志获取行为特征集合 ;
第三获取单元,用于将所述行为特征集合输入用户行为向量表示模型,获取行为向量表示,所述行为向量表示包括所述用户在上一时刻对应的行为分类结果,所述用户行为向量表示模型是根据训练用户日志对应的行为特征集合以及所述训练用户日志对应的分类标签训练生成的,所述用户行为向量表示模型为基于注意力机制的神经网络模型;
第四获取单元,用于将所述行为向量表示输入行为分类模型,获得分类结果,所述行为分类模型是根据所述训练用户日志对应的行为特征集合以及所述训练用户日志对应的分类标签训练生成的。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010348732.5A CN111291015B (zh) | 2020-04-28 | 2020-04-28 | 一种用户行为异常检测方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010348732.5A CN111291015B (zh) | 2020-04-28 | 2020-04-28 | 一种用户行为异常检测方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111291015A CN111291015A (zh) | 2020-06-16 |
CN111291015B true CN111291015B (zh) | 2020-08-07 |
Family
ID=71027413
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010348732.5A Active CN111291015B (zh) | 2020-04-28 | 2020-04-28 | 一种用户行为异常检测方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111291015B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111797978A (zh) * | 2020-07-08 | 2020-10-20 | 北京天融信网络安全技术有限公司 | 一种内部威胁检测方法、装置、电子设备及存储介质 |
CN111815066B (zh) * | 2020-07-21 | 2021-03-26 | 上海数鸣人工智能科技有限公司 | 一种基于梯度提升决策树的用户点击预测方法 |
CN112215613B (zh) * | 2020-10-09 | 2022-06-24 | 支付宝(杭州)信息技术有限公司 | 一种密码验证方法、装置、设备及介质 |
CN112037052B (zh) * | 2020-11-04 | 2021-01-26 | 上海冰鉴信息科技有限公司 | 用户行为检测方法及装置 |
CN113472742B (zh) * | 2021-05-28 | 2022-09-27 | 中国科学院信息工程研究所 | 一种基于门控循环单元的内部威胁检测方法和装置 |
CN115168917B (zh) * | 2022-07-07 | 2023-09-22 | 大唐智创(山东)科技有限公司 | 一种云计算服务的异常用户行为处理方法及服务器 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105516127B (zh) * | 2015-12-07 | 2019-01-25 | 中国科学院信息工程研究所 | 面向内部威胁检测的用户跨域行为模式挖掘方法 |
US11074829B2 (en) * | 2018-04-12 | 2021-07-27 | Baidu Usa Llc | Systems and methods for interactive language acquisition with one-shot visual concept learning through a conversational game |
CN108734338A (zh) * | 2018-04-24 | 2018-11-02 | 阿里巴巴集团控股有限公司 | 基于lstm模型的信用风险预测方法及装置 |
CN109509054B (zh) * | 2018-09-30 | 2023-04-07 | 平安科技(深圳)有限公司 | 海量数据下商品推荐方法、电子装置及存储介质 |
CN110008409A (zh) * | 2019-04-12 | 2019-07-12 | 苏州市职业大学 | 基于自注意力机制的序列推荐方法、装置及设备 |
-
2020
- 2020-04-28 CN CN202010348732.5A patent/CN111291015B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN111291015A (zh) | 2020-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111291015B (zh) | 一种用户行为异常检测方法及装置 | |
CN107872436B (zh) | 一种账号识别方法、装置及系统 | |
Sarabadani et al. | Building automated vandalism detection tools for Wikidata | |
Thieltges et al. | The devil’s triangle: Ethical considerations on developing bot detection methods | |
CN107392022A (zh) | 爬虫识别、处理方法及相关装置 | |
US10853689B2 (en) | Methods for more effectively moderating one or more images and devices thereof | |
CN111967503A (zh) | 多类型异常网页分类模型的构建方法、异常网页检测方法 | |
Yang et al. | A novel detection method for word-based DGA | |
CN111340112A (zh) | 分类方法、装置、服务器 | |
US11373103B2 (en) | Artificial intelligence based system and method for predicting and preventing illicit behavior | |
CN111144546A (zh) | 评分方法、装置、电子设备及存储介质 | |
CN114329022A (zh) | 一种色情分类模型的训练、图像检测方法及相关装置 | |
Mittal et al. | Robust real time breaking of image captchas using inception v3 model | |
CN111970272A (zh) | 一种apt攻击操作识别方法 | |
Saxena et al. | Phishing website prediction by using cuckoo search as a feature selection and random forest and BF-tree classifier as a classification method | |
CN115952343A (zh) | 一种基于多关系图卷积网络的社交机器人检测方法 | |
CN113810338B (zh) | 异常服务地址检测方法和装置、计算机可读存储介质 | |
CN112507912B (zh) | 一种识别违规图片的方法及装置 | |
Sivanantham et al. | Web Hazard Identification and Detection Using Deep Learning-A Comparative Study | |
Mohanty et al. | Improving Suspicious URL Detection through Ensemble Machine Learning Techniques | |
Anandita et al. | A Novel Ensemble Based Identification of Phishing E-Mails | |
Kaui et al. | Detection of phishing webpages using weights computed through genetic algorithm | |
Neela et al. | An Ensemble Learning Frame Work for Robust Fake News Detection | |
CN111598159B (zh) | 机器学习模型的训练方法、装置、设备及存储介质 | |
Fonseka et al. | Detecting Tabnabbing Attacks Via An RL-Based Agent |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address |
Address after: 100032 room 8018, 8 / F, building 7, Guangyi street, Xicheng District, Beijing Patentee after: State Grid Digital Technology Holdings Co.,Ltd. Address before: 100053 8th floor, Xianglong business building, 311 guanganmennei street, Xicheng District, Beijing Patentee before: STATE GRID ELECTRONIC COMMERCE Co.,Ltd. |
|
CP03 | Change of name, title or address |