基于注意力机制的半监督日志异常检测方法.pdf
《基于注意力机制的半监督日志异常检测方法.pdf》由会员分享,可在线阅读,更多相关《基于注意力机制的半监督日志异常检测方法.pdf(11页珍藏版)》请在咨信网上搜索。
1、 基于注意力机制的半监督日志异常检测方法*尹春勇,冯梦雪(南京信息工程大学计算机学院、网络空间安全学院,江苏 南京 2 1 0 0 4 4)摘 要:日志记载着系统运行时的重要信息,通过日志异常检测可以快速准确地找出系统故障的原因。然而,日志序列存在数据不稳定和数据之间相互依赖等问题。为此,提出了一种新的半监督日志序列异常检测方法。该方法利用双向编码语义解析B E R T模型和多层卷积网络分别提取日志信息,得到日志序列之间的上下文相关信息和日志序列的局部相关性,然后使用基于注意力机制的B i-G RU网络进行日志序列异常检测。在3个数据集上验证了所提方法的性能。与6个基准方法相比,所提方法拥有最
2、优的F1值,同时获得了最高的A U C值0.9 8 1 3。实验结果表明,所提方法可以有效处理日志序列的数据不稳定性和数据之间相互依赖的问题。关键词:日志异常检测;双向门控递归单元;多层卷积;双向编码语义解析;注意力机制中图分类号:T P 3 9 1.4 1文献标志码:Ad o i:1 0.3 9 6 9/j.i s s n.1 0 0 7-1 3 0 X.2 0 2 3.0 8.0 0 9A s e m i-s u p e r v i s e d l o g a n o m a l y d e t e c t i o n m e t h o d b a s e d o n a t t e n
3、 t i o n m e c h a n i s mY I N C h u n-y o n g,F E NG M e n g-x u e(S c h o o l o f C o m p u t e r S c i e n c e,N a n j i n g U n i v e r s i t y o f I n f o r m a t i o n S c i e n c e a n d T e c h n o l o g y,N a n j i n g 2 1 0 0 4 4,C h i n a)A b s t r a c t:L o g s r e c o r d i m p o r t a
4、 n t i n f o r m a t i o n a b o u t s y s t e m o p e r a t i o n,a n d l o g a n o m a l y d e t e c t i o n c a n q u i c k l y a n d a c c u r a t e l y i d e n t i f y t h e c a u s e o f s y s t e m f a i l u r e s.H o w e v e r,l o g s e q u e n c e s h a v e p r o b l e m s s u c h a s d a t
5、 a i n s t a b i l i t y a n d i n t e r d e p e n d e n c e b e t w e e n d a t a.T h e r e f o r e,a n e w s e m i-s u p e r v i s e d l o g s e q u e n c e a n o m a l y d e t e c t i o n m e t h o d i s p r o p o s e d.T h i s m e t h o d u s e s t h e B i d i r e c t i o n a l E n c o d e r R e
6、 p r e s e n t a t i o n s f r o m T r a n s f o r m e r s(B E R T)m o d e l a n d m u l t i-l a y e r c o n v o l u t i o n a l n e t w o r k t o e x t r a c t l o g i n f o r m a t i o n,o b t a i n t h e c o n t e x t u a l r e l e v a n c e b e t w e e n l o g s e q u e n c e s a n d t h e l o c
7、 a l r e l e v a n c e o f l o g s e q u e n c e s.F i n a l l y,t h e a t t e n t i o n-b a s e d B i-G RU n e t w o r k i s u s e d f o r l o g s e q u e n c e a n o m a l y d e t e c t i o n.T h e p e r f o r m a n c e o f t h i s m o d e l w a s v e r i f i e d o n t h r e e d a t a s e t s.C o
8、m p a r e d w i t h s i x b e n c h m a r k m o d e l s,t h i s m o d e l h a s t h e b e s t F1 v a l u e a n d t h e h i g h e s t A U C v a l u e(0.9 8 1 3),a n d t h e e x p e r i m e n t a l r e s u l t s s h o w t h a t i t c a n e f f e c-t i v e l y h a n d l e t h e p r o b l e m s o f d a
9、t a i n s t a b i l i t y a n d i n t e r d e p e n d e n c e b e t w e e n d a t a i n l o g s e q u e n c e s.K e y w o r d s:l o g a n o m a l y d e t e c t i o n;b i d i r e c t i o n a l g a t e r e c u r r e n t u n i t;m u l t i l a y e r c o n v o l u t i o n;b i d i r e c-t i o n a l e n c
10、o d e r r e p r e s e n t a t i o n f r o m t r a n s f o r m e r s;a t t e n t i o n m e c h a n i s m1 引言随着互联网络的发展,软件系统变得非常庞大和复杂,这也导致软件系统产生的日志数量日益增多。在程序运行过程中产生的大量日志信息,记录了程序的运行时间、当前状态等。日志记载软件系统运行状态,是维护软件系统的重要数据1。开发人员通过分析和检测这些日志信息,来诊断系统异常的根本原因。然而,随着大型软件系统的发展,*收稿日期:2 0 2 3-0 1-3 0;修回日期:2 0 2 3-0 3-2
11、3通信地址:2 1 0 0 4 4 江苏省南京市南京信息工程大学计算机学院、网络空间安全学院A d d r e s s:S c h o o l o f C o m p u t e r S c i e n c e,N a n j i n g U n i v e r s i t y o f I n f o r m a t i o n S c i e n c e a n d T e c h n o l o g y,N a n j i n g 2 1 0 0 4 4,J i a n g s u,P.R.C h i n a C N 4 3-1 2 5 8/T PI S S N 1 0 0 7-1 3 0
12、 X 计算机工程与科学C o m p u t e r E n g i n e e r i n g&S c i e n c e第4 5卷第8期2 0 2 3年8月 V o l.4 5,N o.8,A u g.2 0 2 3 文章编号:1 0 0 7-1 3 0 X(2 0 2 3)0 8-1 4 0 5-1 1日志数据出现爆炸式的增长,导致对日志的处理变得非常困难。例如,现在的通讯软件每小时可以产生超过5 0 G B的日志数据2,使用人工的方式来对几十G B的日志文本进行分析和异常检测需要耗费大量的人力与时间,显然是不现实的。因此,需要能对日志进行异常检测的模型。在软件系统的维护中,日志分析任务
13、包括安全任务(如入侵检测、内部威胁检测和恶意软件检测)和更一般的维护任务(如检测硬件故障、建模数据或流量模式)。由于日志数据源每天的更新量庞大,想要实现人工日志解析几乎是不可能的。因此,研究人员针对异常检测进行了大量深入的研究3,4。日志异常检测是日志分析中最重要的研究内容之一。日志序列是由按系统执行顺序排列的日志组成的序列,执行顺序异常或不完整的执行模式都会导致日志序列的异常。因此,异常检测可以从日志序列的角度开展研究。多年来研究人员已经提出了许多基于日志序列的异常检测方法5,6。普遍的基于日志序列的异常检测方法都有相同的步骤:(1)通过正则表达式或者其他规则对非结构化数据进行结构化,然后进
14、行日志解析以提取出日志时间或日志序列。(2)通过基于日志序列的机器学习或深度学习技术构建异常检测模型。从建模角度来看,日志序列异常检测主要分为有监督和无监督2种。有监督方法是将日志序列异常检测视为正常和 异常实例之 间的二 元 分 类 问 题(如L o g-R o b u s t7、H i t A n o m a l y8)。但是,基于监督的方法需要手工标注大量的日志序列数据,这需要消耗大量的人力资源。因此,研究人员对基于无监督方法的研究颇多。无监督方法可分为基于模板计数向量方法(如P A C(P r i n c i p a l C o m p o n e n t A-n a l y s i
15、s)9、I M(I n v a r i a n t M i n i n g)1 0和L S TM-A E(L o n g S h o r t-T e r m M e m o r y A u t o E n c o d e r)1 1)、聚类 方 法(如L o g C l u s t e r1)和 半 监 督 方 法(如L o g A n o m a l y1 2)。此外,随着深度学习技术的普及,基于深度学习的方法也逐渐运用于异常检测中(如D e e p L o g1 3、S w i s s L o g1 4、L o g B e r t1 5和P L E-L o g1 6)。虽然这些方法已经广泛
16、地应用在研究中,但仍存在一些问题。比如,在实践中操作人员会频繁修改源代码中的日志语句,日志语句中有2 0%4 5%会在整个生命周期中发生变化1 7。日志数据不稳定且在传入过程中可能丢失,会导致训练数据中没有包含所有的日志数据1 8。日志数据分组方法对模型的性能也有很大的影响。此外,当处理较短的日志序列时,模型准确性往往会较低1 9。基于对以上问题的思考,本文提出了一种新的基于半监督的异常检测方法,通过使用基于固定深度树的在线日志解析D r a i n2 0模型进行日志解析;之后利用训练好的双向编码语义解析B E R T(B i d i-r e c t i o n a l E n c o d e
17、 r R e p r e s e n t a t i o n f r o m T r a n s-f o r m e r s)2 1模型进行特征提取,得到日志序列之间的上下文相关信息;再使用卷积网络提取日志局部信息;最后,使用基于注意力机制的双向门控递归单元B i-G RU(B i-d i r e c t i o n a l G a t e R e c u r r e n t U-n i t)网络进行异常检测。B i-G RU可以很好地结合日志序列的上下文信息,进一步解决日志数据依赖问题。本文的主要工作如下:(1)以双向编码语义解析(B E R T)模型为基础,提出了一种基于注意力机制的双向门
18、控递归单元(B i-G RU)网络的日志序列异常检测方法。在日志异常检测过程中,充分结合日志语句的上下文信息,并使用注意力机制将权重分配给更重要的事情,从而实现更准确快速的检测。(2)考虑到日志语句之间存在局部相关性,使用卷积网络来提取日志语句的局部信息,结合上下文信息和局部信息来检测异常。在3个数据集上的实验结果表明,该方法拥有较高的F1分数,并且平均A U C值最高。2 相关工作本节简单回顾日志解析和异常检测相关的背景知识。日志解析是异常检测中的关键步骤,通过日志解析技术提取日志模板,其准确性对日志模板预测有很大的影响。日志分析是对系统或应用产生的日志进行收集、整理、处理和分析。日志解析是
19、对日志信息进行解析和提取。日志解析是日志分析中的一个重要组成部分,也是异常检测中的一个重要组成部分。日志解析方法主要有以下4种:(1)基于启发式的方法。H e等人2 0提出了D r a i n,通过树中的叶节点维护日志组,树的内部节点嵌入了不同的启发式规则。D r a i n的扩展版本基于一个允许日志组在线合并的有向无环图,此外它还为日志解析提供了一个参数自动调优机制。(2)基于群集的方法。如M a s a y o s h i等人2 2提出的S H I S O(S c a l a b l e H a n d l e r f o r I n c r e m e n t a l S y s t e
20、 m l O g)和S h i m a等 人2 3提 出 的L e n M a6041C o m p u t e r E n g i n e e r i n g&S c i e n c e 计算机工程与科学 2 0 2 3,4 5(8)(L e n g t h M a t t e r s)。S H I S O是一种在线日志解析方法,它使用树形结构来指导解析过程。在解析过程中,S H I S O遍历树,通过比较日志消息和相应日志组中的事件模板,找到最合适的日志组。S H I-S O对路径爆炸非常敏感,因此其效率往往不令人满意。L e n M a与S H I S O相似,它将每个日志消息编码为一个
21、长度向量,其中每个维度记录一个标记的字符数。在解析过程中L e n M a通过比较日志消息的长度向量实现解析。(3)基于频繁模式挖掘的方法。D a i等人2 4提出的L o g r a m与现有的计算频繁令牌的方法不同,L o g r a m考虑了频繁n-g r a m,其核心观点是频繁的n-g r a m更可能是常数。L o g r a m根据开发人员现有的日志消息来构建字典。(4)基于最长公共子序列的方法。D u等人2 5提出的S p e l l,是一种基于最长公共子序列的在线实时动态日志解析方法。S p e l l实现了日志输入的动态接受、输入的实时处理以及新日志模板的连续生成。此外,S
22、 p e l l解析方法还可以并行实现。B L o g A D(B i-d i r e c t i o n a l g a t e r e c u r r e n t u n i t L o g A n o m a l y D e t e c t i o n)采用D r a i n的扩展版进行日志解析,因为现有研究已经证明它非常有效2 6。异常检测方法可以分监督学习和无监督学习。无监督学习有主成分分析P C A9和不变量挖掘I M1 0等。P C A生成日志模板计数向量的2个子空间(正常空间和异常空间),通过计算模板计数向量到异常空间的投影长度来确定日志序列是否异常。I M从消息计数向量中挖掘
23、稀疏整数值的不变量,能够检测到分布式系统的完整异常消息。这些方法虽然在一定程度上反映了日志序列的模式特征,但是它们忽略了日志序列之间的顺序关系,可能将异 常数据判断 为正常,导致 假阴率相 对较高2 7。有监督学习的方法有:L i a n g等人2 8训练支持向量机S VM(S u p p o r t V e c t o r M a c h i n e)分类器来检测日志事件故障;B e r t e r o等人2 9将日志文件的词映射到高维度空间,然后使用标准分类器检查日志事件是否异常;Z h a n g等人3 0提出P r e F i x(P r e-d i c t a n d F i x),
24、将随机森林算法应用于模板序列,从而可以干预并“修复”潜在故障。虽然有监督学习的方法可以在异常检测中获得高性能,但是其需要带有标签的日志数据进行训练,构建训练数据非常耗时,在实际条件下不实用。近些年来基于深度学习的方法被广泛应用于日志异常检测中,特别是基于模板预测的异常检测。D e e p L o g1 3提 出 利 用 长 短 期 记 忆L S TM(L o n g S h o r t-T e r m M e m o r y)深度学习网络,构建了基于堆叠L S TM模型的异常检测框架。D e e p-L o g利用S p e l l解析器进行日志模板提取,之后利用L S TM模型学习正常日序列
25、中的特征,并通过预测给定事件的下一个日志事件来确定是否异常。D e e p L o g在构建模型框架时不需要通过异常日志来进行训练,从而减少了模型构建的工作量,但是在面对大量日志事件的更复杂数据集时却表现不佳1 9。M e n g等人1 2提出的L o g A n o m a l y是一种基于日志模板语义特征的框架,使用日志计数向量作为输入来训练L S TM模型;还提出了一种新的语义模板t e m p l a t e 2 V e c,允许L o g A n o m a l y通过匹配新的日志模板与训练日志中的现有模板来提高准确性。但是,由于L o g A n o m a l y使用日志事件的索
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 注意力 机制 监督 日志 异常 检测 方法
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【自信****多点】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【自信****多点】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。