CN113569879A - 异常识别模型的训练方法、异常账号识别方法及相关装置 - Google Patents
异常识别模型的训练方法、异常账号识别方法及相关装置 Download PDFInfo
- Publication number
- CN113569879A CN113569879A CN202010349171.0A CN202010349171A CN113569879A CN 113569879 A CN113569879 A CN 113569879A CN 202010349171 A CN202010349171 A CN 202010349171A CN 113569879 A CN113569879 A CN 113569879A
- Authority
- CN
- China
- Prior art keywords
- data
- abnormal
- text
- user account
- training
- 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.)
- Granted
Links
- 230000002159 abnormal effect Effects 0.000 title claims abstract description 199
- 238000012549 training Methods 0.000 title claims abstract description 132
- 238000000034 method Methods 0.000 title claims abstract description 116
- 238000000605 extraction Methods 0.000 claims abstract description 55
- 238000003062 neural network model Methods 0.000 claims abstract description 20
- 230000006399 behavior Effects 0.000 claims description 103
- 238000012545 processing Methods 0.000 claims description 40
- 230000009467 reduction Effects 0.000 claims description 22
- 238000001914 filtration Methods 0.000 claims description 18
- 238000004891 communication Methods 0.000 claims description 15
- 238000003860 storage Methods 0.000 claims description 7
- 238000007789 sealing Methods 0.000 claims description 6
- 238000013473 artificial intelligence Methods 0.000 abstract description 2
- 230000009286 beneficial effect Effects 0.000 abstract 1
- 238000009826 distribution Methods 0.000 description 26
- 230000008569 process Effects 0.000 description 16
- 238000001514 detection method Methods 0.000 description 11
- 238000013528 artificial neural network Methods 0.000 description 9
- 238000004422 calculation algorithm Methods 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 7
- 230000010354 integration Effects 0.000 description 7
- 238000012216 screening Methods 0.000 description 7
- 238000004590 computer program Methods 0.000 description 6
- 230000007547 defect Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000003203 everyday effect Effects 0.000 description 6
- 238000007781 pre-processing Methods 0.000 description 6
- 239000013598 vector Substances 0.000 description 6
- 238000002372 labelling Methods 0.000 description 5
- 239000003550 marker Substances 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 238000002156 mixing Methods 0.000 description 4
- 230000001960 triggered effect Effects 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 3
- 230000005856 abnormality Effects 0.000 description 2
- 239000008186 active pharmaceutical agent Substances 0.000 description 2
- 230000004931 aggregating effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 238000009530 blood pressure measurement Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000002939 conjugate gradient method Methods 0.000 description 2
- 235000014510 cooky Nutrition 0.000 description 2
- 230000002354 daily effect Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000011049 filling Methods 0.000 description 2
- 239000003999 initiator Substances 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000005096 rolling process Methods 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 238000007619 statistical method Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000013515 script Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Databases & Information Systems (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例涉及人工智能技术领域,公开了一种异常识别模型的训练方法,该方法包括:获取操作数据,所述操作数据包括用户账号的操作日志数据和流量数据;对所述操作数据进行数据混洗和单位时间窗口内的特征提取,生成用户账号对应的操作轨迹文本;通过DTM动态主题模型对所述操作轨迹文本进行主题建模,得到所述操作轨迹文本的行为类别;将所述操作轨迹文本的行为类别发送至数据标注器,并获取根据所述行为行为类别对所述操作数据进行标签标注后的带标签时间序列数据,作为训练数据;将所述训练数据输入预设的神经网络模型进行训练,得到异常识别模型。通过上述方式,本发明实施例实现了准确、智能识别异常的有益效果。
Description
技术领域
本发明实施例涉及人工智能技术领域,具体涉及一种异常识别模型的训练方法、异常账号识别方法、装置、设备及计算机可读存储介质。
背景技术
目前,对于各类运营商运行的系统中,用户账号信息安全至关重要,若账号异常,可能会造成用户信息的泄露或违规操作,造成损失。例如,电信系统,包括CRM、BOSS等业务运营支撑系统等,普遍存在着通过异常用户账号脚本、代码程序等批量查询用户信息、详单信息或者业务办理等非常规操作,这类操作发生的时间段不一,不过多发生在夜间,具有发生时间间隔较短,批量调用次数较多,隐蔽性强不易发现以及请求内容相对集中等特点,极易造成用户敏感信息泄露和违规业务办理,从而导致运营商在信息安全、资金安全甚至是系统安全上的风险系数不断增加。
然而现有的对于异常用户账号的识别,多采用人工统计分析、异常用户账号操作指纹相似度识别或基于API接口Hook检测的异常用户账号分析。这三种方式均存在缺陷,对于人工统计分析,花费时间长、效率低、准确率低。异常用户账号操作指纹相似度识别需要每次指纹校准和调优也需要一定的人工投入。基于API接口Hook检测在一定程度上对业务系统底层运行逻辑上具有一定的入侵性,对系统的稳定运行也会造成一定影响。
综上,现有的技术方案上都存在一定的不足,体现在处理成本上、方法适用性上、方法依赖性上,而且还可能对现网生产运行造成一定影响。因此,需要能够提供一种异常用户账号检测的准确率高、效率高的智能识别方法。
发明内容
鉴于上述问题,本发明实施例提供了一种异常识别模型的训练方法,用于解决现有技术中存在的现有账号异常识别效率低、准确率低、无法智能识别的技术问题。
根据本发明实施例的一个方面,提供了一种异常识别模型的训练方法,所述方法包括:
获取操作数据,所述操作数据包括用户账号对应的操作日志数据和流量数据;
对所述操作数据进行数据混洗和单位时间窗口内的特征提取,生成用户账号对应的操作轨迹文本;
通过DTM动态主题模型对所述操作轨迹文本进行主题建模,得到所述操作轨迹文本的行为类别;
将所述操作轨迹文本的行为类别发送至数据标注器,并获取根据所述行为行为类别对所述操作数据进行标签标注后的带标签时间序列数据,作为训练数据;
将所述训练数据输入预设的神经网络模型进行训练,得到异常识别模型。
在一种可选的方式中,对所述操作数据进行数据混洗和单位时间窗口内的特征提取,生成用户账号对应的操作轨迹文本之前,还包括:
对所述操作数据进行白名单过滤;
进行降噪处理,去除所述操作数据中的不可用数据;
得到预处理后的数据。
在一种可选的方式中,对所述操作数据进行数据混洗和单位时间窗口内的特征提取,生成用户账号对应的操作轨迹文本,进一步包括:
提取所述操作日志数据及所述流量数据中的文本特征,所述文本特征包括时间戳、用户账号、操作访问对象、访问频次、访问结果;
根据所述文本特征,按照所述用户账号对所述操作日志数据及所述流量数据进行整合,生成所述用户账号对应的操作轨迹文本。
在一种可选的方式中,通过DTM动态主题模型对所述操作轨迹文本进行主题建模,得到所述操作轨迹文本的行为类别,进一步包括:
将所述操作轨迹文本按照时间片划分为所述操作轨迹文本对应的多个切片文本;
使用K分量主题模型对每个切片文本进行主题建模,确定每个切片文本的主题;
得到所述操作轨迹文本所对应的主题。
根据本发明实施例的另一方面,提供了一种异常账号识别方法,包括:
获取待识别操作数据,并将所述待识别操作数据按单位时间窗口切分为待识别时间序列数据,其中,所述待识别数据包括用户账号对应的操作日志数据和流量数据;
将所述待识别时间序列数据输入异常识别模型进行异常识别,其中,所述异常识别模型通过上述的异常识别模型训练方法训练得到;
输出异常时间序列数据,从而确定对应的异常用户账号。
在一种可选的方式中,还包括以下步骤:根据所述异常用户账号,检查所述异常用户账号的登录记录及白名单信息,当所述异常用户账号的登录记录异常且所述异常用户账号不在白名单信息中时,对所述异常用户账号进行封停。
根据本发明实施例的另一方面,提供了一种异常识别模型的训练装置,包括:
操作数据获取模块,用于获取操作数据,所述操作数据包括用户账号的操作日志数据和流量数据;
文本析取模块,用于对所述操作数据进行数据混洗和单位时间窗口内的特征提取,生成用户账号对应的操作轨迹文本;
主题建模模块,用于通过DTM动态主题模型对所述操作轨迹文本进行主题建模,得到所述操作轨迹文本的行为类别;
标注模块,用于将所述操作轨迹文本的行为类别发送至数据标注器,并获取根据所述行为行为类别对所述操作数据进行标签标注后的带标签时间序列数据,作为训练数据;
模型训练模块,用于将所述训练数据输入预设的神经网络模型进行训练,得到异常识别模型。
根据本发明实施例的另一方面,提供了一种异常账号识别装置,包括:
输入模块,用于获取待识别操作数据,并将所述待识别操作数据按单位时间窗口切分为待识别时间序列数据,其中,所述待识别数据包括操作日志数据和流量数据;
异常识别模块,用于将所述待识别时间序列数据输入异常识别模型进行异常识别,其中,所述异常识别模型通过上述的异常识别模型训练方法训练得到;
输出模块,用于输出异常时间序列数据,从而确定对应的异常用户账号。
根据本发明实施例的另一方面,提供了一种电子设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行上述的异常识别模型的训练方法或异常账号识别方法的操作。
根据本发明实施例的又一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令在电子设备上运行时,使得电子设备执行上述的异常识别模型的训练方法或异常账号识别方法的操作。
本发明实施例对异常识别模型训练时,通过对文本进行数据混洗和单位时间窗口的特征提取,获取操作轨迹文本,将原始记录的操作数据进行特征提取和整合,整合成了可用于文本处理的操作轨迹文本,将一个数值异常检测的问题转换成了文本聚类问题,同时,DIM动态主题模型获取操作轨迹文本的行为类别充分考量了操作的时序特征,为后续进一步模型训练提供了精确的时序样本基础。因此,本发明通过对文本进行数据混洗和单位时间窗口的特征提取,并结合DIM动态主题模型获取操作轨迹文本的行为类别,从而实现了对操作数据中异常操作行为的筛选,提高了训练样本的数据处理效率。
通过采用LSTM长短记忆神经网络训练异常识别模型,考虑了操作数据行为前后的时序依赖特性,提升了异常识别模型的精准性。
另一方面,有效地改善了现有异常账号识别技术在人工成本、方法适用性上的不足,提升了异常账号识别的准确性、通用性,在面临大规模调用场景也能够自主学习进行异常用户账号建模,智能识别,提高异常用户账号封禁效率。
上述说明仅是本发明实施例技术方案的概述,为了能够更清楚了解本发明实施例的技术手段,而可依照说明书的内容予以实施,并且为了让本发明实施例的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
附图仅用于示出实施方式,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本发明实施例提供的异常识别模型的训练方法的流程示意图;
图2示出了本发明实施例提供的异常账号识别方法的流程示意图;
图3示出了本发明实施例提供的异常识别模型的训练装置的结构示意图;
图4示出了本发明实施例提供的异常账号识别装置的结构示意图
图5示出了本发明实施例提供的电子设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。
图1示出了本发明异常识别模型的训练方法实施例的流程图,该方法由异常识别模型的训练装置执行。如图1所示,该方法包括以下步骤:
步骤110:获取操作数据数据,操作数据数据包括操作日志数据和流量数据。
本实施例中,操作数据包括用户账号对应的操作日志数据和流量数据。在关键节点进行数据收集,获取操作日志数据和流量数据。其中,流量数据也即流量镜像数据通过获取浏览器端的记录来得到,浏览器端记录了用户在客户端发起的所有http请求信息,可以定位到发起方源IP、访问地址、环境参数、访问成功与否等接口以上的轨迹信息,还包括从cookie中截取访问时间,用户账号,调用菜单等数据。
操作日志数据通过采集对服务总线调用的服务总线记录来获取,核心业务系统通常采用企业服务总线(EnterpriseServiceBus)对后端服务进行统一收口,并统一对外提供调用。通过对总线调用记录的数据采集,服务总线记录的数据主要包括接口调用记录,包括调用时间、调用系统、调用服务、用户账号、用户ID、出入参数、调用IP、手机号等字段等,可以精准展现任一外围调用在接口层级的明细操作轨迹。
操作日志数据及流量数据相互补充,从而串联起完整的账号所对应的用户的行为。具体地,流量数据和操作日志数据主要依赖用户的账号和操作时间串联起来,同一个用户账号在单位时间内访问触发的HTTP请求,以及该请求触发的服务总线接口调用可以通过用户的用户账号来关联,同时以时间维度排序,从而得到任一用户访问的整个操作轨迹。
因此,本发明同时采用上述两份数据源,并使用了流处理技术对其原始记录进行快速序列化和整合,按用户将操作日志数据及流量数据按单位时间切分,合并重复内容,并统计相关访问特征,最终生成统一格式的操作轨迹数据。用户账号对应的操作轨迹文本为按照操作时间将用户账号的操作员进行一系列操作的轨迹文本。
步骤120:对所述操作数据进行数据混洗和单位时间窗口内的特征提取,生成用户账号对应的操作轨迹文本。
其中,对所述操作数据进行数据混洗和单位时间窗口内的特征提取,生成用户账号对应的操作轨迹文本之前,还包括对所述操作数据进行预处理,得到预处理后的数据。对操作数据进行预处理包括白名单过滤和降噪,过滤白名单及不可用数据。
对所述操作数据进行白名单过滤具体包括:考虑到组织单账号的使用或者生产压测账号等一些账号产生的一些大量的数据,是正常所需。因此需要将这些账号作为白名单,通过建立白名单机制,以将该类账号涉及的操作数据进行过滤。本实施例中,通过白名单列表中为白名单用户账号,通过将操作数据中的用户账号在白名单列表进行查询比对,来确定是否进行为白名单用户账号。若是白名单账号,则将该白名单账号对应的操作数据中的其它信息一并进行过滤删除。
进行降噪处理,去除所述操作数据中的不可用数据。由于程序记录数据以及镜像引流存在一定的不可预测性,会出现部分破碎及不可用数据,甚至是偏差值极大的异常数据,该类数据极易对后续聚类及模型生成造成噪声干扰,需要在本单元提前通过预设的数据格式规则和降噪算法进行数据填补或删除。其中,可通过设置格式规则,将不符合该格式规则的数据进行删除。
其中,预设的数据格式为包括流量数据格式和操作日志数据格式。流量数据格式包括按顺序的下述特征数据:账号信息(操作员工号)、时间戳、访问URL、访问IP、http返回码、request_body、response、手机号等。操作日志数据包括下述特征数据:账号信息、时间戳、调用服务名、调用IP、调用出入参、调用返回码、系统工号、手机号等。按照该数据格式并结合降噪算法进行降噪,去掉不相关及不可用的特征。其中,降噪算法可以为3标准差去噪,分箱去噪,dbscan去噪,孤立森林算法中的一种。通过上述白名单过滤及降噪处理,得到预处理后的操作数据。
在预处理完成后,对预处理后的操作数据进行数据混洗,指的是将操作数据中包括的操作日志数据及流量数据两部分数据进行混洗。数据混洗是spark的一种让数据重新分布以使得某些数据被放在同一分区里的机制。同一个key的value并没有分布在同一个地方,如同一个用户账号字段对应的具体用户账号分别分布在操作日志数据和流量数据中。Spark会搜集操作日志数据和流量数据,并把这些同一个key的value集合在一起再进行合并处理,并对混洗后的数据进行排序。本实施中,通过数据混洗后,进行单位时间窗口内的特征提取,提取操作日志数据及所述流量数据中的文本特征,文本特征包括时间戳、用户账号、操作访问对象、访问频次、访问结果等特征匹配的内容,根据所述文本特征,按照所述用户账号对所述操作日志数据及所述流量数据进行重新整合后,汇总生成一致的操作文档,形成用户账号对应的操作轨迹文本。其中,用户账号可以为多个,每个用户账号在一个单位时间窗口内对应一个操作轨迹文本。该操作轨迹文本表征用户在单位时间窗口内进行操作产生的操作轨迹。单位时间窗口为预设的时间间隔,可以是每天或每月等。如,单位时间窗口为天时,提取每天每个用户账号操作数据的特征,形成一用户账号对应的操作轨迹文本,记录的为一天内按照时间顺序用户账号的操作数据的特征。在现有的异常识别中,通常是通过数值计算来判断是否账号异常,如对日志中包含相同操作内容或者操作类型的重复字段进行统计,筛选出同一账号或地址在一天内的操作次数超过1500次的,判定为疑似异常用户账号,或对该账号操作频度进行分析,若5分钟内操作次数超过50次,则判定为异常用户账号操作等。这些都需要统计其次数频度等数值。而本发明通过对文本进行数据混洗和单位时间窗口的特征提取,获取操作轨迹文本,从而将数值异常检测的问题转换为文本聚类的问题。
步骤130:通过DTM动态主题模型对操作轨迹文本进行主题建模,得到操作轨迹文本的行为类别。
其中,操作轨迹文本的行为类别包括正常操作行为和异常操作行为。正常操作行为大体一致,而异常操作行为则与正常操作行为差别较大,因此对操作轨迹文本的操作行为进行主题建模,为每一个操作轨迹文本生成主题分布,从而确定该操作轨迹文本中的行为类别。在本实施例中,由于有多个用户账号,因此对应具有多个操作轨迹文本。将操作轨迹文本按照时间片划分为所述操作轨迹文本对应的多个切片文本;使用k分量主题模型对每个切片文本进行主题建模,确定每个切片文本的主题;得到所述操作轨迹文本所对应的主题。其中,得到每个操作轨迹文本对所有主题的概率,根据概率确定该操作轨迹文本的主题。
具体地,通过设置k个主题,并将每个操作轨迹文本按照时间片划分为多个时间切片文本,其中,按时间片划分指的是按操作轨迹文本中词的前后顺序进行划分,通过词袋模型得到词向量。使用k分量主题模型对每个时间切片文本进行建模,其中,与切片文本t相关联的主题是从切片t-1关联的主题演变而来。切片t的条件分布公式为:
其中,t表示切片t,k表示主题k,θ表示主题混合比例,βt,k是切片t中主题k的自然参数的词分布。
使用具有平均值α的逻辑法来表示不同切片文本对k个主题混合比例的不确定性,即可捕获主题模型之间的顺序结构:
变分分布反映了潜在变量的群体结构。每个主题的多项参数序列都有变化参数,每个文档级潜在变量都有变化参数。其后验分布公式如下:
其中,zt,d,n为主题指示符,表示操作轨迹文本d在切片t上第n个词对应的主题;βt,k是切片t中主题k的自然参数的词分布;θt,d是操作轨迹文本d在切片t上对所有主题的比例分布向量;每个比例向量θt,d被赋予自由度Dirichlet参数γt,d,表示每个主题指示符zt,d,n被赋予自由多项式参数并且优化通过坐标上升进行。文档级变分参数的更新具有封闭形式;我们使用共轭梯度法来优化主题级变分观测。由此得到自然主题参数的词分布{βk,1,…,βk,T}。其中,{βk,1,…,βk,T}表示范围也即t=[1,T],切片1在主题k上的自然参数的词分布,还可以是切片2在主题k的自然参数的词分布,直到切片T在主题k的自然参数的词分布。根据各个切片在主题k上的自然参数的词分布,得到所有对应的操作轨迹文本对应在主题k上的概率。从而得到每个操作轨迹文本对应的主题分布,根据主题分布概率确定操作轨迹文本的行为类别,包括异常操作行为和正常操作行为。本实施例中,主题包括异常操作行为和正常操作行为。也即k=2。动态主题模型进行主题建模,具体的建模过程为模型内部原理操作,此处不再赘述。基于动态主题模型进行主题建模,按照词的顺序进行切片,其时序特征与操作轨迹文本中操作数据的时序一致,利用该动态主题模型充分考量了操作的时序特征,为后续进一步模型训练提供了精确的时序样本基础。同时,通过预先进行类别识别,可快速准确找出异常操作行为的操作数据,提高了训练样本数据处理的效率。
步骤140:将所述操作轨迹文本的行为类别发送至数据标注器,并获取根据所述行为行为类别对所述操作数据进行标签标注后的带标签时间序列数据,作为训练数据。
其中,操作轨迹文本的行为类别表征每个操作轨迹文本是正常操作行为还是异常操作行为。在标签标注器接收到操作轨迹文本的行为类别后,运维人员通过标签标注器对于异常操作行为的操作轨迹文本所对应的操作数据进行标签标注。其中,标签包括固定时间点触发高频调用、可怀疑为定时任务程序、同一天内多次触发高频服务调用的时间间隔大致相同、某时间段内调用服务数十分接近、高频调用时间点异常,属于非工作时间调用等。本实施例中,还将操作数据按照时间的顺序排序,形成带标签时间序列数据。其中,该操作轨迹文本中的数据特征即是按照时间顺序排序,因此可直接对操作轨迹文本中的特征进行标注,形成带标签时间序列数据,也即按时间的顺序变化的数据。将该带标签的时间序列数据作为训练数据。
步骤150:将所述训练数据输入预设的神经网络模型进行训练,得到异常识别模型。
其中,本实施例中,预设的神经网络模型为LSTM神经网络模型,该模型为RNN循环神经网络的变形,可用于解决文本处理中的长依赖问题。将训练数据输入该LSTM神经网络模型进行训练,得到异常识别模型,该异常识别模型即可对输入的待识别时间序列数据进行识别,识别哪些时间序列数据为异常时间序列数据,从而获取相应的异常操作数据及对应的异常用户账号。具体的训练过程就是利用训练数据并结合所对应的标签、训练数据特征这些已有的训练数据来确定LSTM神经网络模型参数的过程。此部分为模型训练的常规操作,具体不再赘述。
本实施例中,在得到异常识别模型后,还进行定期滚动训练进一步优化该异常识别模型,从而进一步提高模型的精度和效率。
本发明通过对文本进行数据混洗和单位时间窗口的特征提取,获取操作轨迹文本,将原始记录的操作数据进行特征提取和整合,整合成了可用于文本处理的操作轨迹文本,将一个数值异常检测的问题转换成了文本聚类问题,同时,DIM动态主题模型获取操作轨迹文本的行为类别充分考量了操作的时序特征,为后续进一步模型训练提供了精确的时序样本基础。因此,本发明通过对文本进行数据混洗和单位时间窗口的特征提取,并结合DIM动态主题模型获取操作轨迹文本的行为类别,从而实现了对操作数据中异常操作行为的筛选,提高了训练样本的数据处理效率。
另一方面,通过采用LSTM长短记忆神经网络训练异常识别模型,考虑了操作数据行为前后的时序依赖特性,提升了异常识别模型的精准性。
图2示出了本发明异常账号识别方法一个实施例的流程图,该方法由异常识别设备执行。如图2所示,该方法包括以下步骤:
步骤210:获取待识别操作数据,并将待识别操作数据按单位时间窗口切分为待识别时间序列数据,其中,所述待识别数据包括操作日志数据和流量数据。
其中,将操作日志数据和流量数据按单位时间窗口汇聚。具体地,对待识别数据进行白名单过滤、降噪处理,并通过数据混洗及特征提取,将操作日志数据和流量数据合并为每个用户账号对应的待识别操作轨迹文本,并按单位时间窗口进行切分,得到待识别时间序列数据。本实施中,可按单位时间窗口对待识别操作数据进行获取后再汇聚,如按每天获取待识别的操作数据,然后将每天获取的数据处理为待识别时间序列。具体的白名单过滤、降噪处理、数据混洗及特征提取过程与上述异常识别模型的训练方法实施例的方法相同,此处不再赘述。
步骤220:将所述待识别时间序列数据输入异常识别模型进行异常识别,其中,所述异常识别模型通过上述的异常识别模型训练方法训练得到。
其中,异常识别模型的训练过程为:获取操作数据,所述操作数据包括用户账号的操作日志数据和流量数据;对所述操作数据进行数据混洗和单位时间窗口内的特征提取,生成用户账号对应的操作轨迹文本;通过DTM动态主题模型对所述操作轨迹文本进行主题建模,得到所述操作轨迹文本的行为类别;将所述操作轨迹文本的行为类别发送至数据标注器,并获取根据所述行为行为类别对所述操作数据进行标签标注后的带标签时间序列数据,作为训练数据;将所述训练数据输入预设的神经网络模型进行训练,得到异常识别模型。具体的训练过程,上述异常识别模型的训练方法实施例的方法相同,此处不再赘述。
步骤230:输出异常时间序列数据,从而确定对应的异常用户账号。
其中,该异常识别模型输出的是待识别时间序列数据中各个时间序列数据异常的概率,根据该概率确定哪些待识别操作数据为异常操作数据。根据异常操作数据确定对应的异常用户账号。
本实施例中,还包括以下步骤:根据所述异常用户账号,检查所述异常用户账号的登录记录及白名单信息,当所述异常用户账号的登录记录异常且所述异常用户账号不在白名单信息中时,对所述异常用户账号进行封停。
本实施例的异常账号识别方法有效地改善了现有异常账号识别技术在人工成本、方法适用性上的不足,提升了异常账号识别的准确性、通用性,在面临大规模调用场景也能够自主学习进行异常用户账号建模,智能识别。
同时,本实施例的异常识别模型在训练时,通过对文本进行数据混洗和单位时间窗口的特征提取,获取操作轨迹文本,将原始记录的操作数据进行特征提取和整合,整合成了可用于文本处理的操作轨迹文本,将一个数值异常检测的问题转换成了文本聚类问题,同时,DIM动态主题模型获取操作轨迹文本的行为类别充分考量了操作的时序特征,为后续进一步模型训练提供了精确的时序样本基础。因此,本发明通过对文本进行数据混洗和单位时间窗口的特征提取,并结合DIM动态主题模型获取操作轨迹文本的行为类别,从而实现了对操作数据中异常操作行为的筛选,提高了训练样本的数据处理效率。
另一方面,通过采用LSTM长短记忆神经网络训练异常识别模型,考虑了操作数据行为前后的时序依赖特性,提升了异常识别模型的精准性。
图3示出了本发明的异常识别模型的训练装置实施例的结构示意图。如图3所示,该装置300包括:操作数据获取模块310、文本析取模块320和主题建模模块模块330、标注模块340、模型训练模块350。
操作数据获取模块310,用于获取操作数据,所述操作数据包括用户账号的操作日志数据和流量数据。
文本析取模块320,用于对所述操作数据进行数据混洗和单位时间窗口内的特征提取,生成用户账号对应的操作轨迹文本。
主题建模模块330,用于通过DTM动态主题模型对所述操作轨迹文本进行主题建模,得到所述操作轨迹文本的行为类别。
标注模块340,用于将所述操作轨迹文本的行为类别发送至数据标注器,并获取根据所述行为行为类别对所述操作数据进行标签标注后的带标签时间序列数据,作为训练数据。
模型训练模块350,用于将所述训练数据输入预设的神经网络模型进行训练,得到异常识别模型。
异常识别模型的训练装置300各模块的工作过程为:
操作数据获取模块310获取操作数据数据,操作数据数据包括操作日志数据和流量数据。
本实施例中,操作数据包括操作日志数据和流量数据。在关键节点进行数据收集,获取操作日志数据和流量数据。其中,流量数据也即流量镜像数据通过获取浏览器端的记录来得到,浏览器端记录了客户端发起的所有http请求信息,可以定位到发起方源IP、访问地址、环境参数、访问成功与否等接口以上的轨迹信息,还包括从cookie中截取访问时间,用户账号,调用菜单等数据。
操作日志数据通过采集对服务总线调用的服务总线记录来获取,核心业务系统通常采用企业服务总线(EnterpriseServiceBus)对后端服务进行统一收口,并统一对外提供调用。通过对总线调用记录的数据采集,服务总线记录的数据主要包括接口调用记录,包括调用时间、调用系统、调用服务、用户账号、用户ID、出入参数、调用IP、手机号等字段等,可以精准展现任一外围调用在接口层级的明细操作轨迹。
操作日志数据及流量数据相互补充,从而串联起完整的账号所对应的用户的行为。具体地,流量数据和操作日志数据主要依赖用户的账号和操作时间串联起来,同一个用户账号在单位时间内访问触发的HTTP请求,以及该请求触发的服务总线接口调用可以通过用户账号来关联,同时以时间维度排序,从而得到任一用户访问的整个操作轨迹。
因此,本发明同时采用上述两份数据源,并使用了流处理技术对其原始记录进行快速序列化和整合,按用户将操作日志数据及流量数据按单位时间切分,合并重复内容,并统计相关访问特征,最终生成统一格式的操作轨迹数据。用户账号对应的操作轨迹文本为按照操作时间将用户账号的操作员进行一系列操作的轨迹文本。
文本析取模块320对所述操作数据进行数据混洗和单位时间窗口内的特征提取,生成用户账号对应的操作轨迹文本。
其中,该装置300还包括预处理模块,用于对操作数据进行数据混洗和单位时间窗口内的特征提取之前,对操作数据进行预处理,得到预处理后的数据。对操作数据进行预处理包括白名单过滤和降噪,过滤白名单及不可用数据。
对所述操作数据进行白名单过滤具体包括:考虑到组织单账号的使用或者生产压测账号等一些账号产生的一些大量的数据,是正常所需。因此需要将这些账号作为白名单,通过建立白名单机制,以将该类账号涉及的操作数据进行过滤。本实施例中,通过白名单列表中为白名单用户账号,通过将操作数据中的用户账号在白名单列表进行查询比对,来确定是否进行为白名单用户账号。若是白名单账号,则将该白名单账号对应的操作数据中的其它信息一并进行过滤删除。
进行降噪处理,去除所述操作数据中的不可用数据。由于程序记录数据以及镜像引流存在一定的不可预测性,会出现部分破碎及不可用数据,甚至是偏差值极大的异常数据,该类数据极易对后续聚类及模型生成造成噪声干扰,需要在本单元提前通过预设的数据格式规则和降噪算法进行数据填补或删除。
其中,预设的数据格式为包括流量数据格式和操作日志数据格式。流量数据格式包括按顺序的下述特征数据:账号信息(操作员工号)、时间戳、访问URL、访问IP、http返回码、request_body、response、手机号等。操作日志数据包括下述特征数据:账号信息、时间戳、调用服务名、调用IP、调用出入参、调用返回码、系统工号、手机号等。按照该数据格式并结合降噪算法进行降噪,去掉不相关及不可用的特征。其中,降噪算法可以为3标准差去噪,分箱去噪,dbscan去噪,孤立森林算法中的一种。通过上述白名单过滤及降噪处理,得到预处理后的操作数据。
在预处理完成后,文本析取模块320对预处理后的操作数据进行数据混洗,指的是将操作数据中包括的操作日志数据及流量数据两部分数据进行混洗。数据混洗是spark的一种让数据重新分布以使得某些数据被放在同一分区里的机制。同一个key的value并没有分布在同一个地方,如同一个用户账号字段对应的具体用户账号分别分布在操作日志数据和流量数据中。Spark会搜集操作日志数据和流量数据,并把这些同一个key的value集合在一起再进行合并处理,并对混洗后的数据进行排序。本实施中,通过数据混洗后,进行单位时间窗口内的特征提取,提取操作日志数据及所述流量数据中的文本特征,文本特征包括时间戳、用户账号、操作访问对象、访问频次、访问结果等特征匹配的内容,根据所述文本特征,按照所述用户账号对所述操作日志数据及所述流量数据进行重新整合后,汇总生成一致的操作文档,形成用户账号对应的操作轨迹文本。其中,用户账号可以为多个,每个用户账号在一个单位时间窗口内对应一个操作轨迹文本。该操作轨迹文本表征用户在单位时间窗口内进行操作产生的操作轨迹。单位时间窗口为预设的时间间隔,可以是每天或每月等。如,单位时间窗口为天时,提取每天每个用户账号操作数据的特征,形成一用户账号对应的操作轨迹文本,记录的为一天内按照时间顺序用户账号的操作数据的特征。在现有的异常识别中,通常是通过数值计算来判断是否账号异常,如对日志中包含相同操作内容或者操作类型的重复字段进行统计,筛选出同一账号或地址在一天内的操作次数超过1500次的,判定为疑似异常用户账号,或对该账号操作频度进行分析,若5分钟内操作次数超过50次,则判定为异常用户账号操作等。这些都需要统计其次数频度等数值。而本发明通过对文本进行数据混洗和单位时间窗口的特征提取,获取操作轨迹文本,从而将数值异常检测的问题转换为文本聚类的问题。
主题建模模块330通过DTM动态主题模型对操作轨迹文本进行主题建模,得到操作轨迹文本的行为类别。
其中,正常操作行为大体一致,而异常操作行为则与正常操作行为差别较大,因此对操作轨迹文本的操作行为进行主题建模,为每一个操作轨迹文本生成主题分布,从而确定该操作轨迹文本中的异常操作行为特征。在本实施例中,由于有多个用户账号,因此对应具有多个操作轨迹文本。将操作轨迹文本按照时间片划分为所述操作轨迹文本对应的多个切片文本;使用k分量主题模型对每个切片文本进行主题建模,确定每个切片文本的主题;得到所述操作轨迹文本所对应的主题。其中,得到每个操作轨迹文本对所有主题的概率,根据概率确定该操作轨迹文本的主题。
具体地,通过设置k个主题,并将每个操作轨迹文本按照时间片划分为多个时间切片文本,其中,按时间片划分指的是按操作轨迹文本中词的前后顺序进行划分,通过词袋模型得到词向量。使用k分量主题模型对每个时间切片文本进行建模,其中,与切片文本t相关联的主题是从切片t-1关联的主题演变而来。切片t的条件分布公式为:
其中,t表示切片t,k表示主题k,θ表示主题混合比例,βt,k是切片t中主题k的自然参数的词分布。
使用具有平均值α的逻辑法来表示不同切片文本对k个主题混合比例的不确定性,即可捕获主题模型之间的顺序结构:
变分分布反映了潜在变量的群体结构。每个主题的多项参数序列都有变化参数,每个文档级潜在变量都有变化参数。其后验分布公式如下:
其中,zt,d,n为主题指示符,表示操作轨迹文本d在切片t上第n个词对应的主题;βt,k是切片t中主题k的自然参数的词分布;θt,d是操作轨迹文本d在切片t上对所有主题的比例分布向量;每个比例向量θt,d被赋予自由度Dirichlet参数γt,d,表示每个主题指示符zt,d,n被赋予自由多项式参数并且优化通过坐标上升进行。文档级变分参数的更新具有封闭形式;我们使用共轭梯度法来优化主题级变分观测。由此得到自然主题参数的词分布{βk,1,…,βk,T}。
其中,{βk,1,…,βk,T}表示范围也即t=[1,T],切片1在主题k上的自然参数的词分布,还可以是切片2在主题k的自然参数的词分布,直到切片T在主题k的自然参数的词分布。根据各个切片在主题k上的自然参数的词分布,得到所有对应的操作轨迹文本对应在主题k上的概率。从而得到每个操作轨迹文本对应的主题分布,根据主题分布概率确定操作轨迹文本的行为类别,包括异常操作行为和正常操作行为。本实施例中,主题包括异常和正常。也即k=2。动态主题模型进行主题建模,具体的建模过程为模型内部原理操作,此处不再赘述。基于动态主题模型进行主题建模,按照词的顺序进行切片,其时序特征与操作轨迹文本中操作数据的时序一致,利用该动态主题模型充分考量了操作的时序特征,为后续进一步模型训练提供了精确的时序样本基础。同时,通过预先进行类别识别,可快速准确找出异常操作行为的操作数据,提高了训练样本数据处理的效率。
标注模块340将所述操作轨迹文本的行为类别发送至数据标注器,并获取根据所述行为行为类别对所述操作数据进行标签标注后的带标签时间序列数据,作为训练数据。
其中,操作轨迹文本的行为类别表征每个操作轨迹文本是正常操作行为还是异常操作行为。在标签标注器接收到操作轨迹文本的行为类别后,运维人员通过标签标注器对于异常操作行为的操作轨迹文本所对应的操作数据进行标签标注。其中,标签包括固定时间点触发高频调用、可怀疑为定时任务程序、同一天内多次触发高频服务调用的时间间隔大致相同、某时间段内调用服务数十分接近、高频调用时间点异常,属于非工作时间调用等。本实施例中,还将操作数据按照时间的顺序排序,形成带标签时间序列数据。其中,该操作轨迹文本中的数据特征即是按照时间顺序排序,因此可直接对操作轨迹文本中的特征进行标注,形成带标签时间序列数据,也即按时间的顺序变化的数据。将该带标签的时间序列数据作为训练数据。
模型训练模块350将所述训练数据输入预设的神经网络模型进行训练,得到异常识别模型。
其中,本实施例中,预设的神经网络模型为LSTM神经网络模型,该模型为RNN循环神经网络的变形,可用于解决文本处理中的长依赖问题。将训练数据输入该LSTM神经网络模型进行训练,得到异常识别模型,该异常识别模型即可对输入的待识别时间序列数据进行识别,识别哪些时间序列数据为异常时间序列数据,从而获取相应的异常操作数据及对应的异常用户账号。具体的训练过程就是利用训练数据并结合所对应的标签、训练数据特征这些已有的训练数据来确定LSTM神经网络模型参数的过程。此部分为模型训练的常规操作,具体不再赘述。
本实施例中,在得到异常识别模型后,还进行定期滚动训练进一步优化该异常识别模型,从而进一步提高模型的精度和效率。
本发明通过对文本进行数据混洗和单位时间窗口的特征提取,获取操作轨迹文本,将原始记录的操作数据进行特征提取和整合,整合成了可用于文本处理的操作轨迹文本,将一个数值异常检测的问题转换成了文本聚类问题,同时,DIM动态主题模型获取操作轨迹文本的行为类别充分考量了操作的时序特征,为后续进一步模型训练提供了精确的时序样本基础。因此,本发明通过对文本进行数据混洗和单位时间窗口的特征提取,并结合DIM动态主题模型获取操作轨迹文本的行为类别,从而实现了对操作数据中异常操作行为的筛选,提高了训练样本的数据处理效率。
另一方面,通过采用LSTM长短记忆神经网络训练异常识别模型,考虑了操作数据行为前后的时序依赖特性,提升了异常识别模型的精准性。
图4示出了本发明种异常识别装置实施例的结构示意图。如图4所示,该装置400包括:输入模块410、异常识别模块420、输出模块430.
输入模块410,用于获取待识别操作数据,并将所述待识别操作数据按单位时间窗口切分为待识别时间序列数据,其中,所述待识别数据包括操作日志数据和流量数据。
异常识别模块420,用于将所述待识别时间序列数据输入异常识别模型进行异常识别,其中,所述异常识别模型通过上述的异常识别模型训练方法训练得到。
输出模块430,用于输出异常时间序列数据,从而确定对应的异常用户账号。
各个模块的具体工作过程为:
输入模块410获取待识别操作数据,并将待识别操作数据按单位时间窗口切分为待识别时间序列数据,其中,所述待识别数据包括操作日志数据和流量数据。
其中,将操作日志数据和流量数据按单位时间窗口汇聚。具体地,对待识别数据进行白名单过滤、降噪处理,并通过数据混洗及特征提取,将操作日志数据和流量数据合并为每个用户账号对应的待识别操作轨迹文本,并按单位时间窗口进行切分,得到待识别时间序列数据。本实施中,可按单位时间窗口对待识别操作数据进行获取后再汇聚,如按每天获取待识别的操作数据,然后将每天获取的数据处理为待识别时间序列。具体的白名单过滤、降噪处理、数据混洗及特征提取过程与上述异常识别模型的训练方法实施例的方法相同,此处不再赘述。
异常识别模块420将所述待识别时间序列数据输入异常识别模型进行异常识别,其中,所述异常识别模型通过上述的异常识别模型训练方法训练得到。
其中,异常识别模型的训练过程为:获取操作数据,所述操作数据包括用户账号的操作日志数据和流量数据;对所述操作数据进行数据混洗和单位时间窗口内的特征提取,生成用户账号对应的操作轨迹文本;通过DTM动态主题模型对所述操作轨迹文本进行主题建模,得到所述操作轨迹文本的行为类别;将所述操作轨迹文本的行为类别发送至数据标注器,并获取根据所述行为行为类别对所述操作数据进行标签标注后的带标签时间序列数据,作为训练数据;将所述训练数据输入预设的神经网络模型进行训练,得到异常识别模型。具体的训练过程,上述异常识别模型的训练方法实施例的方法相同,此处不再赘述。
输出模块430输出异常时间序列数据,从而确定对应的异常用户账号。
其中,该异常识别模型输出的是待识别时间序列数据中各个时间序列数据异常的概率,根据该概率确定哪些待识别操作数据为异常操作数据。根据异常操作数据确定对应的异常用户账号。
本实施例中,还包括以下步骤:根据所述异常用户账号,检查所述异常用户账号的登录记录及白名单信息,当所述异常用户账号的登录记录异常且所述异常用户账号不在白名单信息中时,对所述异常用户账号进行封停。
本实施例的异常识别装置有效地改善了现有异常账号识别技术在人工成本、方法适用性上的不足,提升了异常账号识别的准确性、通用性,在面临大规模调用场景也能够自主学习进行异常用户账号建模,智能识别。
同时,本实施例的异常识别模型在训练时,通过对文本进行数据混洗和单位时间窗口的特征提取,获取操作轨迹文本,将原始记录的操作数据进行特征提取和整合,整合成了可用于文本处理的操作轨迹文本,将一个数值异常检测的问题转换成了文本聚类问题,同时,DIM动态主题模型获取操作轨迹文本的行为类别充分考量了操作的时序特征,为后续进一步模型训练提供了精确的时序样本基础。因此,本发明通过对文本进行数据混洗和单位时间窗口的特征提取,并结合DIM动态主题模型获取操作轨迹文本的行为类别,从而实现了对操作数据中异常操作行为的筛选,提高了训练样本的数据处理效率。
另一方面,通过采用LSTM长短记忆神经网络训练异常识别模型,考虑了操作数据行为前后的时序依赖特性,提升了异常识别模型的精准性。
图5示出了本发明电子设备实施例的结构示意图,本发明具体实施例并不对电子设备的具体实现做限定。
如图5所示,该电子设备可以包括:处理器(processor)502、通信接口(Communications Interface)504、存储器(memory)506、以及通信总线508。
其中:处理器502、通信接口504、以及存储器506通过通信总线508完成相互间的通信。通信接口504,用于与其它设备比如客户端或其它服务器等的网元通信。处理器502,用于执行程序510,具体可以执行上述用于异常识别模型的训练方法和/或异常账号识别方法实施例中的相关步骤。
具体地,程序510可以包括程序代码,该程序代码包括计算机可执行指令。
处理器502可能是中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。电子设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。
存储器506,用于存放程序510。存储器506可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
程序510具体可以被处理器502调用使电子设备执行以下操作:
获取操作数据,所述操作数据包括用户账号的操作日志数据和流量数据;
对所述操作数据进行数据混洗和单位时间窗口内的特征提取,生成用户账号对应的操作轨迹文本;
通过DTM动态主题模型对所述操作轨迹文本进行主题建模,得到所述操作轨迹文本的行为类别;
将所述操作轨迹文本的行为类别发送至数据标注器,并获取根据所述行为行为类别对所述操作数据进行标签标注后的带标签时间序列数据,作为训练数据;
将所述训练数据输入预设的神经网络模型进行训练,得到异常识别模型;和/或
获取待识别操作数据,并将所述待识别操作数据按单位时间窗口切分为待识别时间序列数据,其中,所述待识别数据包括操作日志数据和流量数据;
将所述待识别时间序列数据输入异常识别模型进行异常识别,其中,所述异常识别模型通过上述的异常识别模型训练方法训练得到;
输出异常时间序列数据,从而确定对应的异常用户账号。
在一种可选的方式中,对所述操作数据进行数据混洗和单位时间窗口内的特征提取,生成用户账号对应的操作轨迹文本之前,还包括:
对所述操作数据进行白名单过滤;
进行降噪处理,去除所述操作数据中的不可用数据;
得到预处理后的数据。
在一种可选的方式中,对所述操作数据进行数据混洗和单位时间窗口内的特征提取,生成用户账号对应的操作轨迹文本,进一步包括:
提取所述操作日志数据及所述流量数据中的文本特征,所述文本特征包括时间戳、用户账号、操作访问对象、访问频次、访问结果;
根据所述文本特征,按照所述用户账号对所述操作日志数据及所述流量数据进行整合,生成所述用户账号对应的操作轨迹文本。
在一种可选的方式中,行为类别通过DTM动态主题模型对所述操作轨迹文本进行主题建模,得到所述操作轨迹文本的行为类别,进一步包括:
将所述操作轨迹文本按照时间片划分为所述操作轨迹文本对应的多个切片文本;
使用K分量主题模型对每个切片文本进行主题建模,确定每个切片文本的主题;
得到所述操作轨迹文本所对应的主题。
在一种可选的方式中,还包括以下步骤:根据所述异常用户账号,检查所述异常用户账号的登录记录及白名单信息,当所述异常用户账号的登录记录异常且所述异常用户账号不在白名单信息中时,对所述异常用户账号进行封停。
本实施例有效地改善了现有异常账号识别技术在人工成本、方法适用性上的不足,提升了异常账号识别的准确性、通用性,在面临大规模调用场景也能够自主学习进行异常用户账号建模,智能识别。
同时,本实施例的异常识别模型在训练时,通过对文本进行数据混洗和单位时间窗口的特征提取,获取操作轨迹文本,将原始记录的操作数据进行特征提取和整合,整合成了可用于文本处理的操作轨迹文本,将一个数值异常检测的问题转换成了文本聚类问题,同时,DIM动态主题模型获取操作轨迹文本的行为类别充分考量了操作的时序特征,为后续进一步模型训练提供了精确的时序样本基础。因此,本发明通过对文本进行数据混洗和单位时间窗口的特征提取,并结合DIM动态主题模型获取操作轨迹文本的行为类别,从而实现了对操作数据中异常操作行为的筛选,提高了训练样本的数据处理效率。
另一方面,通过采用LSTM长短记忆神经网络训练异常识别模型,考虑了操作数据行为前后的时序依赖特性,提升了异常识别模型的精准性。
本发明实施例提供了一种计算机可读存储介质,所述存储介质存储有至少一可执行指令,该可执行指令在电子设备上运行时,使得所述电子设备执行上述任意方法实施例中的异常识别模型的训练方法和异常账号识别方法。
可执行指令具体可以用于使得电子设备执行以下操作:获取操作数据,所述操作数据包括用户账号的操作日志数据和流量数据;
对所述操作数据进行数据混洗和单位时间窗口内的特征提取,生成用户账号对应的操作轨迹文本;
通过DTM动态主题模型对所述操作轨迹文本进行主题建模,得到所述操作轨迹文本的行为类别;
将所述操作轨迹文本的行为类别发送至数据标注器,并获取根据所述行为行为类别对所述操作数据进行标签标注后的带标签时间序列数据,作为训练数据;
将所述训练数据输入预设的神经网络模型进行训练,得到异常识别模型;和/或
获取待识别操作数据,并将所述待识别操作数据按单位时间窗口切分为待识别时间序列数据,其中,所述待识别数据包括操作日志数据和流量数据;
将所述待识别时间序列数据输入异常识别模型进行异常识别,其中,所述异常识别模型通过上述的异常识别模型训练方法训练得到;
输出异常时间序列数据,从而确定对应的异常用户账号。
在一种可选的方式中,对所述操作数据进行数据混洗和单位时间窗口内的特征提取,生成用户账号对应的操作轨迹文本之前,还包括:
对所述操作数据进行白名单过滤;
进行降噪处理,去除所述操作数据中的不可用数据;
得到预处理后的数据。
在一种可选的方式中,对所述操作数据进行数据混洗和单位时间窗口内的特征提取,生成用户账号对应的操作轨迹文本,进一步包括:
提取所述操作日志数据及所述流量数据中的文本特征,所述文本特征包括时间戳、用户账号、操作访问对象、访问频次、访问结果;
根据所述文本特征,按照所述用户账号对所述操作日志数据及所述流量数据进行整合,生成所述用户账号对应的操作轨迹文本。
在一种可选的方式中,通过DTM动态主题模型对所述操作轨迹文本进行主题建模,得到所述操作轨迹文本的行为类别,进一步包括:
将所述操作轨迹文本按照时间片划分为所述操作轨迹文本对应的多个切片文本;
使用K分量主题模型对每个切片文本进行主题建模,确定每个切片文本的主题;
得到所述操作轨迹文本所对应的主题。
在一种可选的方式中,还包括以下步骤:根据所述异常用户账号,检查所述异常用户账号的登录记录及白名单信息,当所述异常用户账号的登录记录异常且所述异常用户账号不在白名单信息中时,对所述异常用户账号进行封停。
本实施例有效地改善了现有异常账号识别技术在人工成本、方法适用性上的不足,提升了异常账号识别的准确性、通用性,在面临大规模调用场景也能够自主学习进行异常用户账号建模,智能识别。
同时,本实施例的异常识别模型在训练时,通过对文本进行数据混洗和单位时间窗口的特征提取,获取操作轨迹文本,将原始记录的操作数据进行特征提取和整合,整合成了可用于文本处理的操作轨迹文本,将一个数值异常检测的问题转换成了文本聚类问题,同时,DIM动态主题模型获取操作轨迹文本的行为类别充分考量了操作的时序特征,为后续进一步模型训练提供了精确的时序样本基础。因此,本发明通过对文本进行数据混洗和单位时间窗口的特征提取,并结合DIM动态主题模型获取操作轨迹文本的行为类别,从而实现了对操作数据中异常操作行为的筛选,提高了训练样本的数据处理效率。
另一方面,通过采用LSTM长短记忆神经网络训练异常识别模型,考虑了操作数据行为前后的时序依赖特性,提升了异常识别模型的精准性。
本发明实施例提供一种异常识别模型的训练装置,用于执行上述异常识别模型的训练方法。
本发明实施例提供一种异常账号识别装置,用于执行上述异常账号识别方法。
本发明实施例提供了一种计算机程序,所述计算机程序可被处理器调用使电子设备执行上述任意方法实施例中的异常识别模型的训练方法和/或异常账号识别方法。
本发明实施例提供了一种计算机程序产品,计算机程序产品包括存储在计算机可读存储介质上的计算机程序,计算机程序包括程序指令,当程序指令在计算机上运行时,使得所述计算机执行上述任意方法实施例中的异常识别模型的训练方法和/或异常账号识别方法。
在此提供的算法或显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明实施例也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本发明并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明实施例的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。上述实施例中的步骤,除有特殊说明外,不应理解为对执行顺序的限定。
Claims (10)
1.一种异常识别模型的训练方法,其特征在于,所述方法包括:
获取操作数据,所述操作数据包括用户账号对应的操作日志数据和流量数据;
对所述操作数据进行数据混洗和单位时间窗口内的特征提取,生成用户账号对应的操作轨迹文本;
通过DTM动态主题模型对所述操作轨迹文本进行主题建模,得到所述操作轨迹文本的行为类别;
将所述操作轨迹文本的行为类别发送至数据标注器,并获取根据所述行为行为类别对所述操作数据进行标签标注后的带标签时间序列数据,作为训练数据;
将所述训练数据输入预设的神经网络模型进行训练,得到异常识别模型。
2.根据权利要求1所述的方法,其特征在于,对所述操作数据进行数据混洗和单位时间窗口内的特征提取,生成用户账号对应的操作轨迹文本之前,还包括:
对所述操作数据进行白名单过滤;
进行降噪处理,去除所述操作数据中的不可用数据;
得到预处理后的数据。
3.根据权利要求1所述的方法,其特征在于,对所述操作数据进行数据混洗和单位时间窗口内的特征提取,生成用户账号对应的操作轨迹文本,进一步包括:
提取所述操作日志数据及所述流量数据中的文本特征,所述文本特征包括时间戳、用户账号、操作访问对象、访问频次、访问结果;
根据所述文本特征,按照所述用户账号对所述操作日志数据及所述流量数据进行整合,生成所述用户账号对应的操作轨迹文本。
4.根据权利要求1所述的方法,其特征在于,行为类别通过DTM动态主题模型对所述操作轨迹文本进行主题建模,得到所述操作轨迹文本的行为类别,进一步包括:
将所述操作轨迹文本按照时间片划分为所述操作轨迹文本对应的多个切片文本;
使用K分量主题模型对每个切片文本进行主题建模,确定每个切片文本的主题;
得到所述操作轨迹文本所对应的主题。
5.一种异常账号识别方法,其特征在于,所述方法包括:
获取待识别操作数据,并将所述待识别操作数据按单位时间窗口切分为待识别时间序列数据,其中,所述待识别数据包括用户账号对应的操作日志数据和流量数据;
将所述待识别时间序列数据输入异常识别模型进行异常识别,其中,所述异常识别模型通过如权利要求1-4任一项所述的异常识别模型训练方法训练得到;
输出异常时间序列数据,从而确定对应的异常用户账号。
6.根据权利要求5所述的方法,其特征在于,还包括以下步骤:根据所述异常用户账号,检查所述异常用户账号的登录记录及白名单信息,当所述异常用户账号的登录记录异常且所述异常用户账号不在白名单信息中时,对所述异常用户账号进行封停。
7.一种异常识别模型的训练装置,其特征在于,所述装置包括:
操作数据获取模块,用于获取操作数据,所述操作数据包括用户账号的操作日志数据和流量数据;
文本析取模块,用于对所述操作数据进行数据混洗和单位时间窗口内的特征提取,生成用户账号对应的操作轨迹文本;
主题建模模块,用于通过DTM动态主题模型对所述操作轨迹文本进行主题建模,得到所述操作轨迹文本的行为类别;
标注模块,用于将所述操作轨迹文本的行为类别发送至数据标注器,并获取根据所述行为行为类别对所述操作数据进行标签标注后的带标签时间序列数据,作为训练数据;
模型训练模块,用于将所述训练数据输入预设的神经网络模型进行训练,得到异常识别模型。
8.一种异常账号识别装置,其特征在于,所述装置包括:
输入模块,用于获取待识别操作数据,并将所述待识别操作数据按单位时间窗口切分为待识别时间序列数据,其中,所述待识别数据包括操作日志数据和流量数据;
异常识别模块,用于将所述待识别时间序列数据输入异常识别模型进行异常识别,其中,所述异常识别模型通过如权利要求1-4任一项所述的异常识别模型训练方法训练得到;
输出模块,用于输出异常时间序列数据,从而确定对应的异常用户账号。
9.一种电子设备,其特征在于,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如权利要求1-4任意一项所述的异常识别模型的训练方法或5-6任一项所述的异常账号识别方法的操作。
10.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一可执行指令,所述可执行指令在电子设备上运行时,使得电子设备执行如权利要求1-4任意一项所述的异常识别模型的训练方法或5-6任一项所述的异常账号识别方法的操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010349171.0A CN113569879B (zh) | 2020-04-28 | 2020-04-28 | 异常识别模型的训练方法、异常账号识别方法及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010349171.0A CN113569879B (zh) | 2020-04-28 | 2020-04-28 | 异常识别模型的训练方法、异常账号识别方法及相关装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113569879A true CN113569879A (zh) | 2021-10-29 |
CN113569879B CN113569879B (zh) | 2024-03-19 |
Family
ID=78157984
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010349171.0A Active CN113569879B (zh) | 2020-04-28 | 2020-04-28 | 异常识别模型的训练方法、异常账号识别方法及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113569879B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116800515A (zh) * | 2023-07-10 | 2023-09-22 | 福建省远顺智能科技有限公司 | 一种基于人工智能的工业互联网平台安全维护系统 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2471505A1 (en) * | 2003-06-19 | 2004-12-19 | Yaron Mayer | System and method for comprehensive general generic protection for computers against malicious programs that may steal information and/or cause damages |
US20170132523A1 (en) * | 2015-11-09 | 2017-05-11 | Nec Laboratories America, Inc. | Periodicity Analysis on Heterogeneous Logs |
CN107241352A (zh) * | 2017-07-17 | 2017-10-10 | 浙江鹏信信息科技股份有限公司 | 一种网络安全事件分类与预测方法及系统 |
CN108259462A (zh) * | 2017-11-29 | 2018-07-06 | 国网吉林省电力有限公司信息通信公司 | 基于海量网络监测数据的大数据安全分析系统 |
CN108665297A (zh) * | 2017-03-31 | 2018-10-16 | 北京京东尚科信息技术有限公司 | 异常访问行为的检测方法、装置、电子设备和存储介质 |
US10148619B1 (en) * | 2016-06-24 | 2018-12-04 | EMC IP Holding Company LLC | Identity-based application-level filtering of network traffic |
CN109525595A (zh) * | 2018-12-25 | 2019-03-26 | 广州华多网络科技有限公司 | 一种基于时间流特征的黑产账号识别方法及设备 |
CN109960839A (zh) * | 2017-12-26 | 2019-07-02 | 中国移动通信集团浙江有限公司 | 基于机器学习的业务支撑系统业务链路发现方法和系统 |
CN110198305A (zh) * | 2019-05-05 | 2019-09-03 | 平安科技(深圳)有限公司 | 坐席ip的异常检测方法、系统、计算机设备及存储介质 |
CN110287439A (zh) * | 2019-06-27 | 2019-09-27 | 电子科技大学 | 一种基于lstm的网络行为异常检测方法 |
CN110336838A (zh) * | 2019-08-07 | 2019-10-15 | 腾讯科技(武汉)有限公司 | 账号异常检测方法、装置、终端及存储介质 |
CN110912874A (zh) * | 2019-11-07 | 2020-03-24 | 苏宁云计算有限公司 | 有效识别机器访问行为的方法及系统 |
-
2020
- 2020-04-28 CN CN202010349171.0A patent/CN113569879B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2471505A1 (en) * | 2003-06-19 | 2004-12-19 | Yaron Mayer | System and method for comprehensive general generic protection for computers against malicious programs that may steal information and/or cause damages |
US20170132523A1 (en) * | 2015-11-09 | 2017-05-11 | Nec Laboratories America, Inc. | Periodicity Analysis on Heterogeneous Logs |
US10148619B1 (en) * | 2016-06-24 | 2018-12-04 | EMC IP Holding Company LLC | Identity-based application-level filtering of network traffic |
CN108665297A (zh) * | 2017-03-31 | 2018-10-16 | 北京京东尚科信息技术有限公司 | 异常访问行为的检测方法、装置、电子设备和存储介质 |
CN107241352A (zh) * | 2017-07-17 | 2017-10-10 | 浙江鹏信信息科技股份有限公司 | 一种网络安全事件分类与预测方法及系统 |
CN108259462A (zh) * | 2017-11-29 | 2018-07-06 | 国网吉林省电力有限公司信息通信公司 | 基于海量网络监测数据的大数据安全分析系统 |
CN109960839A (zh) * | 2017-12-26 | 2019-07-02 | 中国移动通信集团浙江有限公司 | 基于机器学习的业务支撑系统业务链路发现方法和系统 |
CN109525595A (zh) * | 2018-12-25 | 2019-03-26 | 广州华多网络科技有限公司 | 一种基于时间流特征的黑产账号识别方法及设备 |
CN110198305A (zh) * | 2019-05-05 | 2019-09-03 | 平安科技(深圳)有限公司 | 坐席ip的异常检测方法、系统、计算机设备及存储介质 |
CN110287439A (zh) * | 2019-06-27 | 2019-09-27 | 电子科技大学 | 一种基于lstm的网络行为异常检测方法 |
CN110336838A (zh) * | 2019-08-07 | 2019-10-15 | 腾讯科技(武汉)有限公司 | 账号异常检测方法、装置、终端及存储介质 |
CN110912874A (zh) * | 2019-11-07 | 2020-03-24 | 苏宁云计算有限公司 | 有效识别机器访问行为的方法及系统 |
Non-Patent Citations (4)
Title |
---|
WENGUANG SONG等: "A Software Deep Packet Inspection System for Network Traffic Analysis and Anomaly Detection", 《SENORS》, vol. 20, no. 6, pages 1 - 41 * |
杨新存: "校园网流量管理及异常监测系统的研究与实现", 《中国优秀硕士学位论文全文数据库(信息科技辑)》, no. 11, pages 139 - 54 * |
郭晓利等: "基于SLDTM的主题提取方法", 《东北电力大学学报》, vol. 37, no. 5, pages 1 * |
韩玉雯: "云加密应用服务的日志系统设计与实现", 《中国优秀硕士学位论文全文数据库(信息科技辑)》, no. 5, pages 138 - 753 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116800515A (zh) * | 2023-07-10 | 2023-09-22 | 福建省远顺智能科技有限公司 | 一种基于人工智能的工业互联网平台安全维护系统 |
Also Published As
Publication number | Publication date |
---|---|
CN113569879B (zh) | 2024-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2019184557A1 (zh) | 定位根因告警的方法、装置和计算机可读存储介质 | |
US20170109668A1 (en) | Model for Linking Between Nonconsecutively Performed Steps in a Business Process | |
US20240129327A1 (en) | Context informed abnormal endpoint behavior detection | |
CN108629413A (zh) | 神经网络模型训练、交易行为风险识别方法及装置 | |
US20170109667A1 (en) | Automaton-Based Identification of Executions of a Business Process | |
CN108334758B (zh) | 一种用户越权行为的检测方法、装置及设备 | |
WO2018235252A1 (ja) | 分析装置、ログの分析方法及び記録媒体 | |
CN111796957B (zh) | 基于应用日志的交易异常根因分析方法及系统 | |
KR20170035892A (ko) | 온라인 서비스의 거동 변화의 인식 기법 | |
CN111783812B (zh) | 违禁图像识别方法、装置和计算机可读存储介质 | |
CN111931809A (zh) | 数据的处理方法、装置、存储介质及电子设备 | |
CN111447224A (zh) | web漏洞扫描方法及漏洞扫描器 | |
CN112416800A (zh) | 智能合约的测试方法、装置、设备及存储介质 | |
US20230344842A1 (en) | Detection of user anomalies for software as a service application traffic with high and low variance feature modeling | |
CN113282920B (zh) | 日志异常检测方法、装置、计算机设备和存储介质 | |
CN113746780A (zh) | 基于主机画像的异常主机检测方法、装置、介质和设备 | |
EP4169223A1 (en) | Method and apparatus to detect scripted network traffic | |
US20170109670A1 (en) | Crowd-Based Patterns for Identifying Executions of Business Processes | |
CN113569879B (zh) | 异常识别模型的训练方法、异常账号识别方法及相关装置 | |
CN111309706A (zh) | 模型训练方法、装置、可读存储介质及电子设备 | |
US20230246935A1 (en) | Detecting behavioral change of iot devices using novelty detection based behavior traffic modeling | |
CN113988226B (zh) | 数据脱敏有效性验证方法、装置、计算机设备及存储介质 | |
CN113349792B (zh) | 基于多导联心电信号的分类方法、装置、设备及介质 | |
CN115037790A (zh) | 异常注册识别方法、装置、设备及存储介质 | |
CN110472680B (zh) | 目标分类方法、装置和计算机可读存储介质 |
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 |