CN113792820B - 用户行为日志异常检测模型的对抗训练方法和装置 - Google Patents
用户行为日志异常检测模型的对抗训练方法和装置 Download PDFInfo
- Publication number
- CN113792820B CN113792820B CN202111345056.7A CN202111345056A CN113792820B CN 113792820 B CN113792820 B CN 113792820B CN 202111345056 A CN202111345056 A CN 202111345056A CN 113792820 B CN113792820 B CN 113792820B
- Authority
- CN
- China
- Prior art keywords
- sample
- user behavior
- data stream
- sequence
- 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.)
- Active
Links
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/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
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)
- Debugging And Monitoring (AREA)
Abstract
公开一种用户行为日志异常检测模型的对抗训练方法和装置,所述对抗训练方法包括:获取用户行为日志数据流;基于预设的编码规则,将所述用户行为日志数据流转换为以十六进制表示的样本数据流,并将所述样本数据流中的每两个相邻的十六进制数绑定为组合码,然后将组合码转换为索引值,从而得到索引序列;基于预训练模型,将所述索引序列转换为特征向量序列;将所述特征向量序列作为生成对抗网络的输入,利用所述生成对抗网络的生成器和判别器进行相互博弈,从而对所述预训练模型和所述生成对抗网络进行对抗训练,并将最终训练好的所述生成对抗网络的生成器作为所述用户行为日志异常检测模型。
Description
技术领域
本公开总体说来涉及数据异常检测技术领域,更具体地讲,涉及一种用户行为日志异常检测模型的对抗训练方法和装置。
背景技术
异常是数据中不符合正常行为的定义(Chandola et al., 2009)的模式。目前针对异常检测的方法有很多,例如监督学习、半监督学习和无监督学习。针对有监督学习,方法有机器学习和深度学习方法,所谓有监督学习是专门针对有标签数据的异常检测。半监督方法是使用大量的无标签数据加上少量的有标签数据进行模型训练中的干预。而无监督学习则真正是使用了无标签的数据进行数据流的异常检测。
针对用户行为日志异常检测的现有技术有:一、基于LDA(Latent DirichletAllocation,隐含狄利克雷分布)的方法,使用LDA分析模型对行为日志进行评估,根据评估的分值高低来对异常进行判别,并且向管理员发送警报。LDA具体的实现方式则是贝叶斯模型,根据词、主题和文档进行贝叶斯概率模型建模来实现异常检测。二、基于聚类的方法,统一行为日志结构转化为行为序列进行聚类处理,主要是针对日志的特征类型进行的异常检测。三、基于用户行为轨迹可视化的方法,对用户行为轨迹数据进行标准化格式处理,最后通过可视化的展示,清晰的分析用户的行为。
然而,现有技术需要进行语料库的建立,有些技术还需要人工标签数据,加大了异常检测模型训练的难度和时间。具体表现在,使用的大量的繁琐的数据处理或行为序列处理等操作,面对大量的数据时,对整个数据的处理是相当费时的。另外,聚类的算法复杂度过高,当日志样本庞大时,需要消耗的成本也过高;而且奇异值对整个训练结果影响过大,导致训练的精度降低;当聚类结果训练成链状时,则更加不符合训练的预期。
发明内容
本公开基于特有的用户行为日志数据编码方式,提供一种用户行为日志异常检测模型的对抗训练方法和装置,从而简化数据处理,并且能够在无标签的情况下使训练后的模型准确识别用户行为日志的异常。
在一个总的方面,提供一种用户行为日志异常检测模型的对抗训练方法,所述对抗训练方法包括:获取用户行为日志数据流;基于预设的编码规则,将所述用户行为日志数据流转换为以十六进制表示的样本数据流,并将所述样本数据流中的每两个相邻的十六进制数绑定为组合码,然后将组合码转换为索引值,从而得到索引序列;基于预训练模型,将所述索引序列转换为特征向量序列;将所述特征向量序列作为生成对抗网络的输入,利用所述生成对抗网络的生成器和判别器进行相互博弈,从而对所述预训练模型和所述生成对抗网络进行对抗训练,并将最终训练好的所述生成对抗网络的生成器作为所述用户行为日志异常检测模型。
可选地,所述用户行为日志数据流包括第一数量个日志样本,每个日志样本包括第二数量个特征元素。
可选地,每个日志样本的所述第二数量个特征元素包括用户名和行为时间,其中,所述获取用户行为日志数据流的步骤包括:通过将具有相同用户名且行为时间在预设时间段内的各个日志样本按照时间顺序进行数据拼接。
可选地,所述基于预设的编码规则,将所述用户行为日志数据流转换为用十六进制表示的样本数据流,并将所述样本数据流中的每两个相邻的十六进制数绑定为组合码,然后将组合码转换为索引值,从而得到索引序列的步骤包括:基于每个日志样本中的所有特征元素去重后的数量 ,建立每个日志样本的特征元素与十六进制数的对应关系;基于每个日志样本中的特征元素与十六进制数的对应关系,将所有特征元素转换为十六进制数,从而得到样本数据流;通过将所述样本数据流中每两个相邻的十六进制数绑定为组合码,得到样本序列;基于预设的索引词典库,将所述样本序列中的组合码转换为索引值,从而将所述样本序列转换为索引序列,其中,所述索引词典库中的每个索引值各自对应一个组合码。
可选地,所述索引词典库包括256种索引值与组合码的对应关系。
可选地,所述基于所述预训练模型,将所述索引序列转换为特征向量序列的步骤包括:基于所述预训练模型,将所述索引序列中的索引值转换为特征向量,从而将所述索引序列转换为特征向量序列,其中,每个索引值各自转换为预设长度的特征向量。
可选地,所述将所述特征向量序列作为生成对抗网络的输入,利用所述生成对抗网络的生成器和判别器进行相互博弈,从而对所述预训练模型和所述生成对抗网络进行对抗训练的步骤包括:将所述特征向量序列作为真样本,并利用所述生成器产生预测样本;利用所述判别器判断预测样本是真样本还是假样本;基于所述判别器判断出所述预测样本是假样本,调整所述预训练模型和所述生成对抗网络的参数,从而使所述判别器最终无法判断所述预测样本是真样本还是假样本。
在另一总的方面,提供一种用户行为日志的异常检测方法,所述异常检测方法包括:获取待检测的用户行为日志数据流;基于预设的编码规则,将所述待检测的用户行为日志数据流转换为以十六进制表示的样本数据流,并将所述样本数据流中的每两个相邻的十六进制数绑定为组合码,然后将组合码转换为索引值,从而得到待检测的索引序列;将所述待检测的索引序列作为输入,利用如上所述的对抗训练方法得到的用户行为日志异常检测模型产生预测的索引序列;基于所述预测的索引序列与所述待检测的索引序列不一致,确定所述待检测的用户行为日志数据流是异常数据。
在另一总的方面,提供一种用户行为日志异常检测模型的对抗训练装置,所述对抗训练装置包括:数据获取单元,被配置为获取用户行为日志数据流;组合编码单元,被配置为基于预设的编码规则,将所述用户行为日志数据流转换为以十六进制表示的样本数据流,并将所述样本数据流中的每两个相邻的十六进制数绑定为组合码,然后将组合码转换为索引值,从而得到索引序列;向量表示单元,被配置为基于预训练模型,将所述索引序列转换为特征向量序列;对抗训练单元,被配置为将所述特征向量序列作为生成对抗网络的输入,利用所述生成对抗网络的生成器和判别器进行相互博弈,从而对所述预训练模型和所述生成对抗网络进行对抗训练,并将最终训练好的所述生成对抗网络的生成器作为所述用户行为日志异常检测模型。
可选地,所述用户行为日志数据流包括第一数量个日志样本,每个日志样本包括第二数量个特征元素。
可选地,每个日志样本的所述第二数量个特征元素包括用户名和行为时间,其中,数据获取单元被配置为:通过将具有相同用户名且行为时间在预设时间段内的各个日志样本按照时间顺序进行数据拼接。
可选地,组合编码单元被配置为:基于每个日志样本中的所有特征元素去重后的数量 ,建立每个日志样本的特征元素与十六进制数的对应关系;基于每个日志样本中的特征元素与十六进制数的对应关系,将所有特征元素转换为十六进制数,从而得到样本数据流;通过将所述样本数据流中每两个相邻的十六进制数绑定为组合码,得到样本序列;基于预设的索引词典库,将所述样本序列中的组合码转换为索引值,从而将所述样本序列转换为索引序列,其中,所述索引词典库中的每个索引值各自对应一个组合码。
可选地,所述索引词典库包括256种索引值与组合码的对应关系。
可选地,向量表示单元被配置为:基于所述预训练模型,将所述索引序列中的索引值转换为特征向量,从而将所述索引序列转换为特征向量序列,其中,每个索引值各自转换为预设长度的特征向量。
可选地,对抗训练单元被配置为:将所述特征向量序列作为真样本,并利用所述生成器产生预测样本;利用所述判别器判断预测样本是真样本还是假样本;基于所述判别器判断出所述预测样本是假样本,调整所述预训练模型和所述生成对抗网络的参数,从而使所述判别器最终无法判断所述预测样本是真样本还是假样本。
在另一总的方面,提供一种存储有计算机程序的计算机可读存储介质,其特征在于,当所述计算机程序被处理器执行时,实现如上所述的用户行为日志异常检测模型的对抗训练方法或者如上所述的用户行为日志的异常检测方法。
在另一总的方面,提供一种计算装置,所述计算装置包括:处理器;和存储器,存储有计算机程序,当所述计算机程序被处理器执行时,实现如上所述的用户行为日志异常检测模型的对抗训练方法或者如上所述的用户行为日志的异常检测方法。
根据本公开的实施例的用户行为日志异常检测模型的对抗训练方法和装置可以将用户行为日志数据流转换为十六进制数据流后进行模型训练,不仅考虑到了用户行为日志数据前后顺序之间的联系,也考虑到了同一用户在某时间段的连续操作对模型的影响,并且在数据无标签的情况下,降低了模型训练难度的同时,增加了模型训练的精度,使训练后的模型能够高效准确地识别用户行为日志中的异常。
将在接下来的描述中部分阐述本公开总体构思另外的方面和/或优点,还有一部分通过描述将是清楚的,或者可以经过本公开总体构思的实施而得知。
附图说明
通过下面结合示出实施例的附图进行的描述,本公开的实施例的上述和其他目的和特点将会变得更加清楚,其中:
图1是示出根据本公开的实施例的用户行为日志异常检测模型的对抗训练方法的流程图;
图2是示出根据本公开的实施例的图1中的步骤S102的流程图;
图3是示出根据本公开的实施例的生成对抗网络的示意图;
图4是示出根据本公开的实施例的用户行为日志的异常检测方法的流程图;
图5是示出根据本公开的实施例的用户行为日志异常检测模型的对抗训练装置的框图;
图6是示出根据本公开的实施例的计算装置的框图。
具体实施方式
提供下面的具体实施方式以帮助读者获得对在此描述的方法、设备和/或系统的全面理解。然而,在理解本申请的公开之后,在此描述的方法、设备和/或系统的各种改变、修改和等同物将是清楚的。例如,在此描述的操作的顺序仅是示例,并且不限于在此阐述的那些顺序,而是除了必须以特定的顺序发生的操作之外,可如在理解本申请的公开之后将是清楚的那样被改变。此外,为了更加清楚和简明,本领域已知的特征的描述可被省略。
在此描述的特征可以以不同的形式来实现,而不应被解释为限于在此描述的示例。相反,已提供在此描述的示例,以仅示出实现在此描述的方法、设备和/或系统的许多可行方式中的一些可行方式,所述许多可行方式在理解本申请的公开之后将是清楚的。
如在此使用的,术语“和/或”包括相关联的所列项中的任何一个以及任何两个或更多个的任何组合。
尽管在此可使用诸如“第一”、“第二”和“第三”的术语来描述各种构件、组件、区域、层或部分,但是这些构件、组件、区域、层或部分不应被这些术语所限制。相反,这些术语仅用于将一个构件、组件、区域、层或部分与另一构件、组件、区域、层或部分进行区分。因此,在不脱离示例的教导的情况下,在此描述的示例中所称的第一构件、第一组件、第一区域、第一层或第一部分也可被称为第二构件、第二组件、第二区域、第二层或第二部分。
在说明书中,当元件(诸如,层、区域或基底)被描述为“在”另一元件上、“连接到”或“结合到”另一元件时,该元件可直接“在”另一元件上、直接“连接到”或“结合到”另一元件,或者可存在介于其间的一个或多个其他元件。相反,当元件被描述为“直接在”另一元件上、“直接连接到”或“直接结合到”另一元件时,可不存在介于其间的其他元件。
在此使用的术语仅用于描述各种示例,并不将用于限制公开。除非上下文另外清楚地指示,否则单数形式也意在包括复数形式。术语“包含”、“包括”和“具有”说明存在叙述的特征、数量、操作、构件、元件和/或它们的组合,但不排除存在或添加一个或多个其他特征、数量、操作、构件、元件和/或它们的组合。
除非另有定义,否则在此使用的所有术语(包括技术术语和科学术语)具有与由本公开所属领域的普通技术人员在理解本公开之后通常理解的含义相同的含义。除非在此明确地如此定义,否则术语(诸如,在通用词典中定义的术语)应被解释为具有与它们在相关领域的上下文和本公开中的含义一致的含义,并且不应被理想化或过于形式化地解释。
此外,在示例的描述中,当认为公知的相关结构或功能的详细描述将引起对本公开的模糊解释时,将省略这样的详细描述。
根据本公开的实施例的用户行为日志异常检测模型的对抗训练方法和装置可以将用户行为日志数据流转换为十六进制数据流后进行模型训练,不仅考虑到了用户行为日志数据前后顺序之间的联系,也考虑到了同一用户在某时间段的连续操作对模型的影响,并且在数据无标签的情况下,降低了模型训练难度的同时,增加了模型训练的精度,使训练后的模型能够高效准确地识别用户行为日志中的异常。
下面将参照图1至图6对根据本公开的实施例的用户行为日志异常检测模型的对抗训练方法和装置进行详细描述。
图1是示出根据本公开的实施例的用户行为日志异常检测模型的对抗训练方法的流程图。
参照图1,在步骤S101中,可获取用户行为日志数据流。这里,用户行为日志数据流可包括第一数量个日志样本,每个日志样本可包括第二数量个特征元素。进一步地,第一数量可由本领域的技术人员根据最终获取到的数据总量来确定,以及第二数量可由本领域的技术人员根据获取的用户行为日志的类型来确定。
根据本公开的实施例,每个日志样本的第二数量个特征元素可包括用户名和行为时间。这里,可通过将具有相同用户名且行为时间在预设时间段内的各个日志样本按照时间顺序进行数据拼接。进一步地,预设时间段可以是10秒,即可以将同一用户在10秒内的各个日志样本按照时间顺序进行数据拼接,从而保存该用户的连续操作信息以帮助模型判断日志是否异常。另外,预设时间段的时长也可由本领域的技术人员根据实际情况来设置。
接下来,作为示例,假设一个类型的用户行为日志的日志样本中的各特征元素分别表示“操作行为”、“操作所处系统”、“用户名”、“ip地址”、“行为时间”、“其它”。进一步假设该类型的用户行为日志的一个日志样本为“打印文件输出,文件输出系统,wangzh1 ,XX.XX.20.7,2020-06-17 10:35:37,信息”,该日志样本在数据流中可表示为,其中的可表示特征元素,进而该日志样本可包括6个特征元素,即对于该类型的用户行为日志,每个日志样本可包括6个特征元素。具体地讲,对于该日志样本,特征元素即“打印文件输出”,可表示“操作行为”;特征元素即“文件输出系统”,可表示“操作所处系统”;特征元素即“wangzh1”,可表示“账号名”;特征元素即“XX.XX.20.7”,可表示“ip地址”;特征元素即“2020-06-17 10:35:37”,可表示“操作时间”;以及特征元素即“信息”,可表示“其它”。
接下来,在步骤S102中,可基于预设的编码规则,将用户行为日志数据流转换为以十六进制表示的样本数据流,并将样本数据流中的每两个相邻的十六进制数绑定为组合码,然后将组合码转换为索引值,从而得到索引序列。下面参照图2详细描述根据本公开的实施例的图1中的步骤S102。
图2是示出根据本公开的实施例的图1中的步骤S102的流程图。
参照图2,在步骤S201中,可基于每个日志样本中的所有特征元素去重后的数量 ,建立每个日志样本的特征元素与十六进制数的对应关系。这里,可统计对特征元素进行去重处理之后剩下的特征元素的数量,然后建立该数量个特征元素与十六进制数的对应关系,从而使去重后的特征元素与该对应关系中的十六进制数一一对应。进一步地,特征元素与十六进制数的具体对应关系,可由本领域的技术人员根据实际情况来设置。
接下来,在步骤S202中,可基于每个日志样本中的特征元素与十六进制数的对应关系,将所有特征元素转换为十六进制数,从而得到样本数据流。
作为示例,对于如上所述的日志样本,基于建立的特征元素与十六进制数的对应关系,特征元素可转换为十六进制数00,特征元素可转换为十六进制数02,特征元素可转换为十六进制数a8,特征元素可转换为十六进制数00001407,特征元素可转换为十六进制数141406110a2325,以及特征元素可转换为十六进制数00,从而日志样本可转换为相应的样本数据流的其中一部分“0001a800001407141406110a232500”。
接下来,在步骤S203中,可通过将样本数据流中每两个相邻的十六进制数绑定为组合码,得到样本序列。
作为示例,对于如上所述的样本数据流的其中一部分“0001a800001407141406110a232500”,可将每两个相邻的十六进制数绑定为组合码“00”、“01”和“a8”等,得到相应的样本序列的其中一部分“00,01,a8,00,00,14,07,14,14,06,11,0a,23,25,00”。
接下来,在步骤S204中,可基于预设的索引词典库,将样本序列中的组合码转换为索引值,从而将样本序列转换为索引序列。这里,索引词典库中的每个索引值各自对应一个组合码。进一步地,索引词典库可包括256种索引值与组合码的对应关系,以及索引词典库中的索引值与组合码的具体对应关系,可由本领域的技术人员根据实际情况来设置。
作为示例,对于如上所述的样本序列的其中一部分00,01,a8,00,00,14,07,14,14,06,11,0a,23,25,00”,可将组合码转换为索引值,得到相应的索引序列的其中一部分“222,35,99,222,222,27,3,27,27,9,18,44,56,71,222”。
返回参照图1,在步骤S103中,可基于预训练模型,将索引序列转换为特征向量序列。这里,预训练模型是通过无监督学习或自监督学习而成的模型,可以将数据表示成特征向量。作为示例,预训练模型可以是BERT模型。
根据本公开的实施例,可基于预训练模型,将索引序列中的索引值转换为特征向量,从而将索引序列转换为特征向量序列。这里,每个索引值各自转换为预设长度的特征向量。进一步地,预设长度的数值可以是300,也可由本领域的工作人员根据实际情况来设置。
接下来,在步骤S104中,可将特征向量序列作为生成对抗网络(GenerativeAdversarial Network,GAN)的输入,利用生成对抗网络的生成器和判别器进行相互博弈,从而对预训练模型和生成对抗网络进行对抗训练,并将最终训练好的生成对抗网络的生成器作为用户行为日志异常检测模型。
根据本公开的实施例,可将特征向量序列作为真样本,并利用生成器产生预测样本;然后,可利用判别器判断预测样本是真样本还是假样本;接下来,可基于判别器判断出预测样本是假样本,调整预训练模型和生成对抗网络的参数,从而使判别器最终无法判断预测样本是真样本还是假样本。
根据本公开的实施例,生成对抗网络适用于仅有正常数据或者仅有少量异常数据的情况,可满足于用户行为日志的异常检测。生成对抗网络包括一个生成器和一个判别器。生成器用于产生和真实数据相似的预测样本,通过这些预测样本让判别器产生误判;判别器则是针对一个样本,判断它是来自于真实数据集,还是来自生成器产生的预测样本。在此基础上,生成器与判别器进行相互博弈,最终达到一个稳定的状态(即纳什均衡),此时的生成器就能产生和真实数据一致的样本。换言之,通过生成对抗网络学习正常数据的数据分布,最终得到的生成器产生或者重建的数据就认为是正常数据。下面参照图3具体描述根据本公开的实施例的生成对抗网络。
图3是示出根据本公开的实施例的生成对抗网络的示意图。
参照图3,作为示例,假设输入生成对抗网络的样本数据µ服从概率分布,可将样本数据µ作为真样本;进而假设生成器为,判别器为,其中,为随机概率分布,ß为生成器的参数,∂为判别器的参数。进一步地,初始化设置生成器的随机概率分布,让根据产生预测样本,判别器接收真样本和生成器产生的预测样本,要求判别器尽可能判断预测样本是真样本还是假样本,同时要求生成器产生的预测样本越来越接近于真样本。通过生成器和判别器相互博弈反馈来更新生成器的参数∂和判别器的参数ß,直到训练达到一个平衡的状态,能够将生成器用于产生与真实数据一致的样本。下面参照图4详细描述根据本公开的实施例的用户行为日志的异常检测方法。
图4是示出根据本公开的实施例的用户行为日志的异常检测方法的流程图。
参照图4,在步骤S401中,可获取待检测的用户行为日志数据流。
接下来,在步骤S402中,可基于预设的编码规则,将待检测的用户行为日志数据流转换为以十六进制表示的样本数据流,并将样本数据流中的每两个相邻的十六进制数绑定为组合码,然后将组合码转换为索引值,从而得到待检测的索引序列。
接下来,在步骤S403中,可将待检测的索引序列作为输入,利用根据本公开的实施例的用户行为日志异常检测模型的对抗训练方法得到的用户行为日志异常检测模型产生预测的索引序列。这里,最终训练好的生成对抗网络的生成器可作为用户行为日志异常检测模型,并且该生成器可包括具体的将索引序列转换为特征向量序列的模块。进一步地,该生成器可将作为输入的待检测的索引序列转换为特征向量序列,然后经过该生成器网络内部的进一步转换,该生成器可产生预测的特征向量序列,并可将其转换为预测的索引序列作为输出。
接下来,在步骤S404中,可基于预测的索引序列与待检测的索引序列不一致,确定待检测的用户行为日志数据流是异常数据。这里,当预测的索引序列与待检测的索引序列一致时,可确定待检测的用户行为日志数据流是正常数据。
根据本公开的实施例的用户行为日志异常检测模型的对抗训练方法,通过将用户行为日志数据流转换为十六进制数据流后进行模型训练,既可以考虑到用户行为日志数据前后顺序之间的联系,也可以考虑到同一用户在某时间段的连续操作对模型的影响,并且在数据无标签的情况下,降低了模型训练难度的同时,增加了模型训练的精度,使训练后的模型能够高效准确地识别用户行为日志中的异常。另外,根据本公开的实施例的用户行为日志的异常检测方法,能够简化数据处理,方便快捷地对用户行为日志进行异常检测。
图5是示出根据本公开的实施例的用户行为日志异常检测模型的对抗训练装置的框图。根据本公开的实施例的用户行为日志异常检测模型的对抗训练装置可以在具有足够运算能力的计算装置中实现。
参照图5,根据本公开的实施例的用户行为日志异常检测模型的对抗训练装置500可包括数据获取单元510、组合编码单元520、向量表示单元530和对抗训练单元540。
数据获取单元510可获取用户行为日志数据流。这里,用户行为日志数据流可包括第一数量个日志样本,每个日志样本可包括第二数量个特征元素。
可选择地,如上所述,每个日志样本的第二数量个特征元素可包括用户名和行为时间。这里,数据获取单元510可通过将具有相同用户名且行为时间在预设时间段内的各个日志样本按照时间顺序进行数据拼接。
组合编码单元520可基于预设的编码规则,将用户行为日志数据流转换为以十六进制表示的样本数据流,并将样本数据流中的每两个相邻的十六进制数绑定为组合码,然后将组合码转换为索引值,从而得到索引序列。
可选择地,组合编码单元520可基于每个日志样本中的所有特征元素去重后的数量 ,建立每个日志样本的特征元素与十六进制数的对应关系;可基于每个日志样本中的特征元素与十六进制数的对应关系,将所有特征元素转换为十六进制数,从而得到样本数据流;可通过将样本数据流中每两个相邻的十六进制数绑定为组合码,得到样本序列;可基于预设的索引词典库,将样本序列中的组合码转换为索引值,从而将样本序列转换为索引序列。这里,索引词典库中的每个索引值各自对应一个组合码。
可选择地,如上所述,索引词典库包括256种索引值与组合码的对应关系。
向量表示单元530可基于预训练模型,将索引序列转换为特征向量序列。
可选择地,向量表示单元530可基于预训练模型,将索引序列中的索引值转换为特征向量,从而将索引序列转换为特征向量序列。这里,每个索引值各自转换为预设长度的特征向量。
对抗训练单元540可将特征向量序列作为生成对抗网络的输入,利用生成对抗网络的生成器和判别器进行相互博弈,从而对预训练模型和生成对抗网络进行对抗训练,并将最终训练好的生成对抗网络的生成器作为用户行为日志异常检测模型。
对抗训练单元540可将特征向量序列作为真样本,并利用生成器产生预测样本;可利用判别器判断预测样本是真样本还是假样本;可基于判别器判断出预测样本是假样本,调整预训练模型和生成对抗网络的参数,从而使判别器最终无法判断预测样本是真样本还是假样本。
图6是示出根据本公开的实施例的计算装置的框图。
参照图6,根据本公开的实施例的计算装置600可包括处理器610和存储器620。处理器610可包括(但不限于)中央处理器(CPU)、数字信号处理器(DSP)、微型计算机、现场可编程门阵列(FPGA)、片上系统(SoC)、微处理器、专用集成电路(ASIC)等。存储器620存储将由处理器610执行的计算机程序。存储器620包括高速随机存取存储器和/或非易失性计算机可读存储介质。当处理器610执行存储器620中存储的计算机程序时,可实现如上所述的用户行为日志异常检测模型的对抗训练方法或者如上所述的用户行为日志的异常检测方法。
根据本公开的实施例的用户行为日志异常检测模型的对抗训练方法或者根据本公开的实施例的用户行为日志的异常检测方法可被编写为计算机程序并被存储在计算机可读存储介质上。当所述计算机程序被处理器执行时,可实现如上所述的用户行为日志异常检测模型的对抗训练方法或者如上所述的用户行为日志的异常检测方法。计算机可读存储介质的示例包括:只读存储器(ROM)、随机存取可编程只读存储器(PROM)、电可擦除可编程只读存储器(EEPROM)、随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、闪存、非易失性存储器、CD-ROM、CD-R、CD+R、CD-RW、CD+RW、DVD-ROM、DVD-R、DVD+R、DVD-RW、DVD+RW、DVD-RAM、BD-ROM、BD-R、BD-R LTH、BD-RE、蓝光或光盘存储器、硬盘驱动器(HDD)、固态硬盘(SSD)、卡式存储器(诸如,多媒体卡、安全数字(SD)卡或极速数字(XD)卡)、磁带、软盘、磁光数据存储装置、光学数据存储装置、硬盘、固态盘以及任何其他装置,所述任何其他装置被配置为以非暂时性方式存储计算机程序以及任何相关联的数据、数据文件和数据结构并将所述计算机程序以及任何相关联的数据、数据文件和数据结构提供给处理器或计算机使得处理器或计算机能执行所述计算机程序。在一个示例中,计算机程序以及任何相关联的数据、数据文件和数据结构分布在联网的计算机系统上,使得计算机程序以及任何相关联的数据、数据文件和数据结构通过一个或多个处理器或计算机以分布式方式存储、访问和执行。
根据本公开的实施例的用户行为日志异常检测模型的对抗训练方法和装置可以将用户行为日志数据流转换为十六进制数据流后进行模型训练,不仅考虑到了用户行为日志数据前后顺序之间的联系,也考虑到了同一用户在某时间段的连续操作对模型的影响,并且在数据无标签的情况下,降低了模型训练难度的同时,增加了模型训练的精度,使训练后的模型能够高效准确地识别用户行为日志中的异常。
虽然已表示和描述了本公开的一些实施例,但本领域技术人员应该理解,在不脱离由权利要求及其等同物限定其范围的本公开的原理和精神的情况下,可以对这些实施例进行修改。
Claims (9)
1.一种用户行为日志异常检测模型的对抗训练方法,其特征在于,所述对抗训练方法包括:
获取用户行为日志数据流,其中,所述用户行为日志数据流包括第一数量个日志样本,每个日志样本包括第二数量个特征元素,其中,每个日志样本的所述第二数量个特征元素包括用户名和行为时间,其中,所述获取用户行为日志数据流的步骤包括:通过将具有相同用户名且行为时间在预设时间段内的各个日志样本按照时间顺序进行数据拼接;
基于预设的编码规则,将所述用户行为日志数据流转换为以十六进制表示的样本数据流,并将所述样本数据流中的每两个相邻的十六进制数绑定为组合码,然后将组合码转换为索引值,从而得到索引序列;
基于预训练模型,将所述索引序列转换为特征向量序列;
将所述特征向量序列作为生成对抗网络的输入,利用所述生成对抗网络的生成器和判别器进行相互博弈,从而对所述预训练模型和所述生成对抗网络进行对抗训练,并将最终训练好的所述生成对抗网络的生成器作为所述用户行为日志异常检测模型。
2.如权利要求1所述的对抗训练方法,其特征在于,所述基于预设的编码规则,将所述用户行为日志数据流转换为用十六进制表示的样本数据流,并将所述样本数据流中的每两个相邻的十六进制数绑定为组合码,然后将组合码转换为索引值,从而得到索引序列的步骤包括:
基于每个日志样本中的所有特征元素去重后的数量,建立每个日志样本的特征元素与十六进制数的对应关系;
基于每个日志样本中的特征元素与十六进制数的对应关系,将所有特征元素转换为十六进制数,从而得到样本数据流;
通过将所述样本数据流中每两个相邻的十六进制数绑定为组合码,得到样本序列;
基于预设的索引词典库,将所述样本序列中的组合码转换为索引值,从而将所述样本序列转换为索引序列,其中,所述索引词典库中的每个索引值各自对应一个组合码。
3.如权利要求2所述的对抗训练方法,其特征在于,所述索引词典库包括256种索引值与组合码的对应关系。
4.如权利要求2所述的对抗训练方法,其特征在于,所述基于所述预训练模型,将所述索引序列转换为特征向量序列的步骤包括:
基于所述预训练模型,将所述索引序列中的索引值转换为特征向量,从而将所述索引序列转换为特征向量序列,其中,每个索引值各自转换为预设长度的特征向量。
5.如权利要求4所述的对抗训练方法,其特征在于,所述将所述特征向量序列作为生成对抗网络的输入,利用所述生成对抗网络的生成器和判别器进行相互博弈,从而对所述预训练模型和所述生成对抗网络进行对抗训练的步骤包括:
将所述特征向量序列作为真样本,并利用所述生成器产生预测样本;
利用所述判别器判断预测样本是真样本还是假样本;
基于所述判别器判断出所述预测样本是假样本,调整所述预训练模型和所述生成对抗网络的参数,从而使所述判别器最终无法判断所述预测样本是真样本还是假样本。
6.一种用户行为日志的异常检测方法,其特征在于,所述异常检测方法包括:
获取待检测的用户行为日志数据流;
基于预设的编码规则,将所述待检测的用户行为日志数据流转换为以十六进制表示的样本数据流,并将所述样本数据流中的每两个相邻的十六进制数绑定为组合码,然后将组合码转换为索引值,从而得到待检测的索引序列;
将所述待检测的索引序列作为输入,利用如权利要求1至5中任一项所述的对抗训练方法得到的用户行为日志异常检测模型产生预测的索引序列;
基于所述预测的索引序列与所述待检测的索引序列不一致,确定所述待检测的用户行为日志数据流是异常数据。
7.一种用户行为日志异常检测模型的对抗训练装置,其特征在于,所述对抗训练装置包括:
数据获取单元,被配置为获取用户行为日志数据流,其中,所述用户行为日志数据流包括第一数量个日志样本,每个日志样本包括第二数量个特征元素,其中,每个日志样本的所述第二数量个特征元素包括用户名和行为时间,其中,数据获取单元还被配置为:通过将具有相同用户名且行为时间在预设时间段内的各个日志样本按照时间顺序进行数据拼接;
组合编码单元,被配置为基于预设的编码规则,将所述用户行为日志数据流转换为以十六进制表示的样本数据流,并将所述样本数据流中的每两个相邻的十六进制数绑定为组合码,然后将组合码转换为索引值,从而得到索引序列;
向量表示单元,被配置为基于预训练模型,将所述索引序列转换为特征向量序列;
对抗训练单元,被配置为将所述特征向量序列作为生成对抗网络的输入,利用所述生成对抗网络的生成器和判别器进行相互博弈,从而对所述预训练模型和所述生成对抗网络进行对抗训练,并将最终训练好的所述生成对抗网络的生成器作为所述用户行为日志异常检测模型。
8.一种存储有计算机程序的计算机可读存储介质,其特征在于,当所述计算机程序被处理器执行时,实现如权利要求1至5中任意一项所述的对抗训练方法或者如权利要求6所述的用户行为日志的异常检测方法。
9.一种计算装置,其特征在于,所述计算装置包括:
处理器;和
存储器,存储有计算机程序,当所述计算机程序被处理器执行时,实现如权利要求1至5中任意一项所述的对抗训练方法或者如权利要求6所述的用户行为日志的异常检测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111345056.7A CN113792820B (zh) | 2021-11-15 | 2021-11-15 | 用户行为日志异常检测模型的对抗训练方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111345056.7A CN113792820B (zh) | 2021-11-15 | 2021-11-15 | 用户行为日志异常检测模型的对抗训练方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113792820A CN113792820A (zh) | 2021-12-14 |
CN113792820B true CN113792820B (zh) | 2022-02-08 |
Family
ID=78955163
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111345056.7A Active CN113792820B (zh) | 2021-11-15 | 2021-11-15 | 用户行为日志异常检测模型的对抗训练方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113792820B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114493781A (zh) * | 2022-01-25 | 2022-05-13 | 工银科技有限公司 | 用户行为预测方法、装置、电子设备及存储介质 |
CN115622806B (zh) * | 2022-12-06 | 2023-03-31 | 南京众智维信息科技有限公司 | 一种基于bert-cgan的网络入侵检测方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110516125A (zh) * | 2019-08-28 | 2019-11-29 | 拉扎斯网络科技(上海)有限公司 | 识别异常字符串的方法、装置、设备及可读存储介质 |
KR20200007613A (ko) * | 2018-07-13 | 2020-01-22 | 클라우드브릭주식회사 | 웹 트래픽 학습을 위한 16진수 이미지 변환과 증분학습을 적용한 딥러닝 방법 |
CN111881447A (zh) * | 2020-06-28 | 2020-11-03 | 中国人民解放军战略支援部队信息工程大学 | 恶意代码片段智能取证方法及系统 |
CN112464051A (zh) * | 2020-12-08 | 2021-03-09 | 深圳市金证优智科技有限公司 | 一种异常数据检测方法、装置及计算机可读存储介质 |
CN113468035A (zh) * | 2021-07-15 | 2021-10-01 | 创新奇智(重庆)科技有限公司 | 日志异常检测方法、装置、训练方法、装置及电子设备 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103970118A (zh) * | 2013-02-04 | 2014-08-06 | 鸿富锦精密工业(深圳)有限公司 | Bmc运行状态显示系统及方法 |
CN109359090A (zh) * | 2018-08-27 | 2019-02-19 | 中国科学院信息工程研究所 | 基于卷积神经网络的文件碎片分类方法及系统 |
CN111209168A (zh) * | 2020-01-14 | 2020-05-29 | 中国人民解放军陆军炮兵防空兵学院郑州校区 | 一种基于nLSTM-self attention的日志序列异常检测框架 |
CN112231289A (zh) * | 2020-10-15 | 2021-01-15 | 北京明略昭辉科技有限公司 | 一种日志触犯的异常规则信息的存储方法、系统及计算机设备 |
CN112560049A (zh) * | 2020-12-28 | 2021-03-26 | 苏州极光无限信息技术有限公司 | 一种漏洞检测方法、装置和存储介质 |
CN112711520A (zh) * | 2020-12-30 | 2021-04-27 | 平安科技(深圳)有限公司 | 异常日志信息的处理方法、装置、设备及存储介质 |
CN112685215A (zh) * | 2021-01-22 | 2021-04-20 | 浪潮云信息技术股份公司 | 一种云平台异常日志分析方法 |
CN112463546B (zh) * | 2021-01-25 | 2021-04-27 | 北京天健源达科技股份有限公司 | 一种异常日志表的处理方法 |
CN113434357B (zh) * | 2021-05-17 | 2023-04-11 | 中国科学院信息工程研究所 | 基于序列预测的日志异常检测方法及装置 |
-
2021
- 2021-11-15 CN CN202111345056.7A patent/CN113792820B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200007613A (ko) * | 2018-07-13 | 2020-01-22 | 클라우드브릭주식회사 | 웹 트래픽 학습을 위한 16진수 이미지 변환과 증분학습을 적용한 딥러닝 방법 |
CN110516125A (zh) * | 2019-08-28 | 2019-11-29 | 拉扎斯网络科技(上海)有限公司 | 识别异常字符串的方法、装置、设备及可读存储介质 |
CN111881447A (zh) * | 2020-06-28 | 2020-11-03 | 中国人民解放军战略支援部队信息工程大学 | 恶意代码片段智能取证方法及系统 |
CN112464051A (zh) * | 2020-12-08 | 2021-03-09 | 深圳市金证优智科技有限公司 | 一种异常数据检测方法、装置及计算机可读存储介质 |
CN113468035A (zh) * | 2021-07-15 | 2021-10-01 | 创新奇智(重庆)科技有限公司 | 日志异常检测方法、装置、训练方法、装置及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN113792820A (zh) | 2021-12-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113792820B (zh) | 用户行为日志异常检测模型的对抗训练方法和装置 | |
US20120158625A1 (en) | Creating and Processing a Data Rule | |
US11487996B2 (en) | Real-time predictive maintenance of hardware components using a stacked deep learning architecture on time-variant parameters combined with a dense neural network supplied with exogeneous static outputs | |
CN111277606B (zh) | 检测模型训练方法、检测方法及装置、存储介质 | |
US11481692B2 (en) | Machine learning program verification apparatus and machine learning program verification method | |
Miranskyy et al. | Using entropy measures for comparison of software traces | |
WO2022001125A1 (zh) | 一种存储系统的存储故障预测方法、系统及装置 | |
Stoyanov et al. | Predictive analytics methodology for smart qualification testing of electronic components | |
CN112395179B (zh) | 一种模型训练方法、磁盘预测方法、装置及电子设备 | |
CN112951311A (zh) | 一种基于变权重随机森林的硬盘故障预测方法及系统 | |
CN116559619A (zh) | 半导体器件的测试方法及相关装置 | |
Soltani et al. | Event reconstruction using temporal pattern of file system modification | |
CN118070280A (zh) | 恶意网页文件的检测方法及装置、电子设备、存储介质 | |
JP2013182468A (ja) | パラメータ値設定誤り検出システム、パラメータ値設定誤り検出方法およびパラメータ値設定誤り検出プログラム | |
CN113779045B (zh) | 工控协议数据异常检测模型的训练方法和训练装置 | |
CN116204648A (zh) | 样本确定方法、装置、计算机设备及计算机可读存储介质 | |
CN113742151B (zh) | 多版本cdm工具自动测试方法、装置和计算机设备 | |
EP3163463A1 (en) | A correlation estimating device and the related method | |
CN118133350B (zh) | 一种融合隐私保护的数据治理方法及系统 | |
Wessman | Advanced Algorithms for Classification and Anomaly Detection on Log File Data: Comparative study of different Machine Learning Approaches | |
Marr et al. | Identifying the mode and impact of technological substitutions | |
Campesato | Python 3 and Data Analytics Pocket Primer | |
CN118377688A (zh) | 日志验证方法和装置 | |
CN117076167A (zh) | 固态驱动器的异常检测处理方法和装置 | |
CN118093318A (zh) | 基于id3决策树的日志健康度检测方法、装置和设备 |
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 |