一种基于深度学习生成对抗网络的日志异常检测方法及其装置

未命名 08-27 阅读:116 评论:0


1.本发明涉及日志异常检测技术领域,特别涉及一种基于深度学习生成对抗网络的日志异常检测方法及其装置。


背景技术:

2.随着跟踪系统状态并记录有价值事件的系统日志构成了我们日常生活中任何计算机系统的重要组成部分。每个日志都包含正常和异常实例,以帮助管理员诊断和维护系统的操作。如果管理员不能有效地检测和消除多样化和复杂的异常,运行工作流和事务,系统会很快崩溃。因此,异常检测技术变得越来越重要,引起了很多研究关注。
3.现有技术的异常检测方法集中于分析日志,即会话的高级粒度的异常检测,而不是检测日志级异常,削弱了响应异常的效率和系统故障的诊断,并且由于日志数据中异常占比很少,对于模型训练效果不好。


技术实现要素:

4.本发明的目的是针对现有技术的不足而提供的一种基于深度学习生成对抗网络的日志异常检测方法及其装置,采用引入生成对抗网络模型的方法,将重要的日志信息进行了分离然后再进行模型训练,训练出的模型进行检测是日志级别的,将结构化日志事件作为基于深度学习生成对抗网络中的长短期记忆网络模型的输入进行对抗训练的方法,使用训练完全的生成对抗网络生成器生成的日志事件集合是否与输入的真实日志事件集有交集,若存在交集中则为正常日志,否则出现异常,方法具体包括:结构化日志事件提取、日志异常检测模型构建、日志异常检测等步骤,采用本发明设计的装置包括预处理模块、日志事件生成器模块、日志事件判别器模块、异常检测模块和告警提示,本发明有效考虑用深度学习生成对抗网络模型,模型训练效果好,能够互相对抗学习提升长短期记忆网络的效果,由于生成对抗网络中生成器的可以生成日志,同时减少了所需要的日志数据规模,较好地解决了异常检测粒度高和异常日志数据少的问题,具有良好的应用前景。
5.实现本发明目的的具体技术方案是:一种基于深度学习生成对抗网络的日志异常检测方法,其特点是基于深度学习生成对抗网络模型,按下述步骤进行日志异常检测:
6.1)将原始日志进行预处理转换成结构化日志,对结构化日志数据进行二次提取,得到结构化日志事件。
7.2)将结构化日志事件作为生成对抗网络模型中异常日志序列生成器的输入生成异常日志序列。
8.3)将生成对抗网络模型中异常序列日志生成器生成的异常日志序列作为输入让生成对抗网络模型中的判别器进行训练。
9.4)将得到的所述生成对抗网络模型对输入的日志数据进行异常检测。
10.所述步骤1)对结构化日志数据进行二次提取使用相同的模板将非结构化日志分
为日期、时间和内容,然后从这些部分进一步提取成日志事件,最后转换成结构化日志事件序列,所述结构化日志事件由时间戳、签名和参数三个要件组成。
11.所述步骤2)将结构化日志事件作为生成对抗网络模型中异常日志序列生成器的输入生成异常日志序列,具体包括:基于深度学习长短期记忆网络模型生成一组日志事件出现的概率向量的过程,即使用长短期记忆模型作为生成对抗网络的机器学习对象,将一组日志事件序列作为深度学习的长短期记忆网络模型的输入,生成一组日志事件出现的概率向量。
12.所述步骤3)将生成对抗网络模型中异常序列日志生成器生成的异常日志序列作为输入让生成对抗网络模型中的判别器进行训练,基于生成对抗网络模型生成器生成的异常日志序列训练判别器的过程,具体包括:基于深度学习长短期记忆网络模型训练异常识别的判别器。
13.所述步骤4)将得到的所述生成对抗网络模型对输入的日志数据进行异常检测,是将得到的生成对抗网络判别器对输入的日志序列进行异常检测,其过程具体包括:将外界输入的非结构日志序列转换成结构化日志事件数据,历史日志事件作为训练好的生成对抗网络中生成器的输入,生成的一组日志事件出现的概率向量,如果即将到来的日志事件与生成的一组日志正常事件有交集,则即将到来的事件被视为正常实例,否则该日志事件将被提醒为异常。
14.一种基于深度学习生成对抗网络的日志异常检测装置,其特点是该日志异常检测装置由预处理模块、日志事件生成器模块、日志事件判别器模块、异常检测模块和告警提示模块组成,所述预处理模块用于对原始日志进行预处理,将非结构化日志序列转化为结构化日志,并对结构化日志数据进行二次提取,得到结构化日志事件;所述日志生成器模块将结构化日志事件数据作为输入,生成一组日志事件出现的概率向量;所述日志事件判别器模块将一组日志事件出现的概率向量作为输入进行训练,分别得到日志判别器和生成对抗网络的长短期记忆模型;所述异常检测模块将输入的非结构日志序列转换成结构化日志事件数据,并以历史日志事件作为训练好的生成对抗网络中生成器的输入,生成的一组日志事件出现的概率向量,如果即将到来的日志事件与生成的一组日志正常事件有交集,则即将到来的事件被视为正常实例,否则该日志事件将被提醒为异常;所述告警提示模块当异常检测模块若被检测的日志文件存在异常时,发送告警提示至应用负责人。
15.所述日志事件生成器模块对日志事件数据进行存储,包括将生成一组日志事件出现的概率向量的存储,以及第三方输入的日志事件数据的存储。
16.所述日志事件判别器模块在判断待检测的日志文件存在异常之前,首先判断待检测的日志文件是否为生成器生成过的正常日志,若判断为不是生成器生成过的正常日志,则将报警发送给设备观测人;若判断为待检测的日志文件存在的异常为未出现过的日志文件异常,则将未出现过的日志文件异常输出至第三方进行判断,所述第三方包括用户、云端装置及用户与云端装置的组合。
17.本发明与现有技术相比具有提高日志异常检测的粒度,减轻正常和异常实例之间不平衡的影响,大大提高了检测异常的性能,模型训练效果好,能够互相对抗学习提升长短期记忆网络的效果,由于生成对抗网络中生成器的可以生成日志,同时减少了所需要的日志数据规模,较好地解决了异常检测粒度高和异常日志数据少的问题,由于现有技术是集
中于分析会话级别的高级粒度的异常检测,而不是检测日志级异常,削弱了响应异常的效率和系统故障的诊断,本发明模型训练效果好,能够互相对抗学习提升长短期记忆网络的效果,由于生成对抗网络中生成器的可以生成日志,同时减少了所需要的日志数据规模,较好地解决了异常检测粒度高和异常日志数据少的问题,具有良好的应用前景。
附图说明
18.图1为实施例1的日志异常检测装置结构示意图;
19.图2为实施例1的日志异常检测流程示意图;
20.图3本实施例1的预处理日志数据示意图;
21.图4为实施例1的异常检测过程示意图。
具体实施方式
22.下面结合附图和实施例对本发明进一步地清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。基于本公开的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。需要说明的是,在不冲突的情况下,本公开实施例及实施例中的特征可以相互组合。另外,附图的作用在于用图形补充说明书文字部分的描述,使人能够直观地、形象地理解本公开的每个技术特征和整体技术方案,但其不能理解为对本公开保护范围的限制。
23.实施例1
24.参阅图1,一种基于深度学习对抗生成网络模型的日志异常检测装置由预处理模块1、日志事件生成器模块2、日志事件判别器模块3、异常检测模块4和告警提示模块5组成,所述预处理模块1用于对原始日志进行预处理,将非结构化日志序列转化为结构化日志,并对结构化日志数据进行二次提取,得到结构化日志事件;所述日志生成器模块2将结构化日志事件数据作为输入,生成一组日志事件出现的概率向量;所述日志事件判别器模块3将一组日志事件出现的概率向量作为输入进行训练,分别得到日志判别器和生成对抗网络的长短期记忆模型;所述异常检测模块4将输入的非结构日志序列转换成结构化日志事件数据,并以历史日志事件作为训练好的生成对抗网络中生成器的输入,生成的一组日志事件出现的概率向量,如果即将到来的日志事件与生成的一组日志正常事件有交集,则即将到来的事件被视为正常实例,否则该日志事件将被提醒为异常;所述告警提示模块5当异常检测模块若被检测的日志文件存在异常时,发送告警提示至应用负责人。
25.所述日志事件生成器模块2对日志事件数据进行存储,包括将生成一组日志事件出现的概率向量的存储,以及第三方输入的日志事件数据的存储。
26.所述日志事件判别器模块3在判断待检测的日志文件存在异常之前,首先判断待检测的日志文件是否为生成器生成过的正常日志,若判断为不是生成器生成过的正常日志,则将报警发送给设备观测人;若判断为待检测的日志文件存在的异常为未出现过的日志文件异常,则将未出现过的日志文件异常输出至第三方进行判断,所述第三方包括用户、云端装置及用户与云端装置的组合。
27.参阅图2,一种基于深度学习对抗生成网络模型的日志异常检测方法,包括以下步骤:
28.s100、将原始日志进行预处理转换成结构化日志,对结构化日志数据进行二次提取,得到结构化日志事件。
29.s200、将结构化日志事件作为生成对抗网络模型中日志生成器的输入生成一组日志事件出现的概率向量。
30.s300、将生成对抗网络模型中异常序列日志生成器生成的概率向量作为输入让生成对抗网络模型中的判别器进行判别。
31.s400、将输入的日志数据进行处理后得到日志事件使用训练好的生成对抗网络模型进行异常检测。
32.参阅图3,所述步骤s100中预处理是用于将原始日志中的非结构化日志转换成结构化日志,首先使用相同的模板将非结构化日志分为几个部分,例如日期时间和内容,然后从这些部分进一步提取有意义的信息即事件,事件由三个主要组件组成:时间戳、签名、参数。然后将类似的结构化日志归为一类并给与编号,按照时间戳排成结构化日志序列。
33.例如:081109,203518,143,info,dfs.datanode$dataxceiver:receiving block blk_-1608999687919862906src:/10.250.19.102:54106dest:/10.250.19.102:50010
34.以上为一条日志消息,使用相同的模板对其每一部分进行划分,其日志内容的组成如图3所示,左列是每一个段信息代表的内容,经过初步的处理后成为结构化日志。然后从这些部分进一步的提取有意义的信息,形成日志事件,避免冗余消息影响异常检测的结果。形成日志事件后,给与一个日志编号代表与这个日志事件相同的日志,最后按照时间戳排成日志序列。
35.所述步骤s200将结构化日志序列作为生成对抗网络模型中异常日志序列生成器的输入生成异常日志序列的过程如下所示:输入的一组结构化日志序列s={e(1),e(2),....,e(s)}来自解析的系统日志和一组事件e={e1,e2,...,em}其中ej表示第j个事件的签名,生成器生成异常日志序列的过程是根据setc={c1,c2,...,cn}其中ci展示了3大小滑动窗口内e事件内第i个组合{e(k-2),e(k-1),e(k)}。生成器利用长短期记忆网络,生成器的目的是生成假正常日志和异常日志,将ci作为生成器的长短期记忆模型的输入,而输入是一个m维向量,表示e中每个事件的独立出现概率。生成器的函数由下述(a)式定义为:
[0036][0037]
其中,n代表输入的n个日志的数量,是代表e中每个事件的独立发生概率的m-维向量(即,d的输入),c代表3大小滑动窗口内e事件内第i个组合{e(k-2),e(k-1),e(k)},代表第j个签名的事件,表示日志出现的概率向量,d代表日志概率向量判别器。
[0038]
所述步骤s300将生成对抗网络模型中异常序列日志生成器生成的异常日志序列作为输入让生成对抗网络模型中的判别器进行训练:使用ci作为输入,将生成器生成的发生独立出现概率的m维向量作为长短期记忆网络的参数2,而判别器最后的输出为是在上下文组合ci下m维向量是真样本还是假样本,判别器的目标函数由下述(b)式定义为:
[0039][0040]
其中,n代表输入的n个日志的数量,是代表e中每个事件的独立发生概率的m-维向量(即,d的输入),c代表3大小滑动窗口内e事件内第i个组合{e(k-2),e(k-1),e(k)},
代表第j个签名的事件,表示日志出现的概率向量,d代表日志概率向量判别器。
[0041]
参阅图4,所述步骤s400将得到的所述生成对抗网络判别器对输入的日志序列进行异常检测,在完成生成对抗网络模型的训练后,应用生成器根据系统日志中的流事件检测异常。在异常检测阶段:(1)历史和即将到来的系统日志通过日志解析器转换为结构化数据即事件;(2)生成器的输入是几个最新事件的组合,生成器生成一个对应的m维向量,表示一组正常事件是基于预定义正常概率阈值过滤的生成的m维向量构建的;(4)如果即将到来的事件与一组正常事件有交集,则即将到来的事件被视为正常实例,否则,该事件将被提醒为异常。
[0042]
上面结合附图对本发明实施例作了详细说明,但是本发明不限于上述实施例,在所述技术领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。

技术特征:
1.一种基于深度学习生成对抗网络的日志异常检测方法,其特征在于,基于深度学习生成对抗网络模型,按下述步骤进行日志异常检测:1) 结构化日志事件的提取将采集的原始日志数据进行预处理转换成结构化日志,对结构化日志数据进行二次提取,得到结构化日志事件;2)日志异常检测模型的构建将结构化日志事件作为基于深度学习生成对抗网络中的长短期记忆网络模型的输入进行对抗训练,构建日志异常检测模型,基于对抗生成模型训练异常日志检测生成器生成一组日志事件出现的概率向量,将其输入基于生成对抗网络模型生成器生成的异常日志事件判别器,将生成对抗网络模型中异常序列日志生成器生成的异常日志序列作为输入让生成对抗网络模型中的判别器进行训练; 3)日志异常检测将步骤1)得到的日志事件使用训练好的生成对抗网络模型进行异常检测,使用训练完全的生成对抗网络生成器生成的日志事件集合是否与输入的真实日志事件集有交集,若存在交集中则为正常日志,否则出现异常。2.根据权利要求1所述的一种基于深度学习生成对抗网络的日志异常检测方法,其特征在于,所述步骤1)对结构化日志数据进行二次提取使用相同的模板将非结构化日志分为日期、时间和内容,从中提取事件,得到结构化日志事件,所述结构化日志事件由时间戳、签名和参数三个要件组成。3.根据权利要求1所述的一种基于深度学习生成对抗网络的日志异常检测方法,其特征在于,所述步骤2)基于对抗生成模型训练异常日志检测生成器生成一组日志事件出现的概率向量,具体包括:将一组日志事件序列作为深度学习的长短期记忆网络模型的输入,生成一组日志事件出现的概率向量,将其输入基于生成对抗网络模型生成器生成的异常日志事件判别器进行判别具体包括:基于深度学习长短期记忆网络模型训练异常识别的判别器,将生成器生成的一组日志事件出现的概率向量作为输入,判断概率向量是真样本还是假样本。4.根据权利要求1所述的一种基于深度学习生成对抗网络的日志异常检测方法,其特征在于,所述步骤3)使用训练好的生成对抗网络模型进行异常检测包括历史和即将到来的系统日志通过日志解析器转换为结构化数据,从中提取成日志事件,并以历史日志事件作为训练好的生成对抗网络中生成器的输入,生成一组日志事件出现的概率向量,如果即将到来的日志事件与生成的一组日志正常事件有交集,则即将到来的事件被视为正常实例,否则该日志事件将被提醒为异常。5.一种基于深度学习生成对抗网络的日志异常检测方法设计的日志异常检测装置,其特征在于,该日志异常检测装置包括:预处理模块、日志事件生成器模块、日志事件判别器模块、异常检测模块和告警提示模块,所述预处理模块用于对原始日志进行预处理,将非结构化日志序列转化为结构化日志,并对结构化日志数据进行二次提取,得到结构化日志事件;所述日志生成器模块将结构化日志事件数据作为输入,生成一组日志事件出现的概率向量;所述日志事件判别器模块将一组日志事件出现的概率向量作为输入进行训练,分别得到日志判别器和生成对抗网络的长短期记忆模型;所述异常检测模块将输入的非结构日
志序列转换成结构化日志事件数据,并以历史日志事件作为训练好的生成对抗网络中生成器的输入,生成的一组日志事件出现的概率向量,如果即将到来的日志事件与生成的一组日志正常事件有交集,则即将到来的事件被视为正常实例,否则该日志事件将被提醒为异常;所述告警提示模块当异常检测模块若被检测的日志文件存在异常时,发送告警提示至应用负责人。6.根据权利要求5所述的基于深度学习生成对抗网络的日志异常检测方法设计的日志异常检测装置,其特征在于,所述日志事件生成器模块对日志事件数据进行存储,包括将生成一组日志事件出现的概率向量的存储,以及第三方输入的日志事件数据的存储。7.根据权利要求5所述的基于深度学习生成对抗网络的日志异常检测方法设计的日志异常检测装置,其特征在于,所述日志事件判别器模块在判断待检测的日志文件存在异常之前,首先判断待检测的日志文件是否为生成器生成过的正常日志,若判断为不是生成器生成过的正常日志,则将报警发送给设备观测人;若判断为待检测的日志文件存在的异常为未出现过的日志文件异常,则将未出现过的日志文件异常输出至第三方进行判断,所述第三方包括用户、云端装置 及用户与云端装置的组合。

技术总结
本发明公开了一种基于深度学习生成对抗网络模型的日志异常检测方法及其装置,其特点是方法包括:采集原始日志数据,并将收集的日志数据转换为结构化日志事件;将结构化日志事件作为基于深度学习生成对抗网络中的长短期记忆网络模型的输入进行对抗训练;使用训练完全的生成对抗网络生成器进行日志异常检测等步骤;装置包括:预处理模块、日志事件生成器模块、日志事件判别器模块、异常检测模块和告警提示模块。本发明与本发明与现有技术相比具有提高日志异常检测的粒度,减轻正常和异常实例之间不平衡的影响,大大提高了检测异常的性能,较好地解决了异常检测粒度高和异常日志数据少的问题,具有良好的应用前景。具有良好的应用前景。具有良好的应用前景。


技术研发人员:李锦路 张琰彬 王伟
受保护的技术使用者:华东师范大学
技术研发日:2023.03.24
技术公布日:2023/8/24
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐