CN116561748A - 一种组件子序列相关性感知的日志异常检测装置 - Google Patents

一种组件子序列相关性感知的日志异常检测装置 Download PDF

Info

Publication number
CN116561748A
CN116561748A CN202310400356.3A CN202310400356A CN116561748A CN 116561748 A CN116561748 A CN 116561748A CN 202310400356 A CN202310400356 A CN 202310400356A CN 116561748 A CN116561748 A CN 116561748A
Authority
CN
China
Prior art keywords
log
sequence
embedded representation
module
sub
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.)
Pending
Application number
CN202310400356.3A
Other languages
English (en)
Inventor
陈岭
宋朝都
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University ZJU
Original Assignee
Zhejiang University ZJU
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhejiang University ZJU filed Critical Zhejiang University ZJU
Priority to CN202310400356.3A priority Critical patent/CN116561748A/zh
Publication of CN116561748A publication Critical patent/CN116561748A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Virology (AREA)
  • Mathematical Physics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种组件子序列相关性感知的日志异常检测装置,属于智能运维和深度学习技术领域,包括,在将日志序列S划出部分作为样本、获取时间特征嵌入表示t和语义特征嵌入表示V和获取时间特征嵌入表示tc和语义特征嵌入表示Vc的基础上,经过特征提取操作,序列依赖捕获模块,隐关系编码模块,图卷积模块,子序列融合模块、嵌入表示拼接模块,日志模板预测模块后得下一条日志消息中日志模板的概率分布对所有的日志模板进行排序,预测结果为排名top‑k日志模板集合,根据下一条真实的日志模板和样本的预测结果来判断日志序列是否有异常,有效捕获了异常信息,提升了检测效率和和准确性。

Description

一种组件子序列相关性感知的日志异常检测装置
技术领域
本发明涉及智能运维和深度学习技术领域,具体涉及一种组件子序列相关性感知的日志异常检测装置。
背景技术
现今,大量的软件系统提供在线服务给全球用户,一旦系统出现故障,不仅影响用户体验,而且会造成巨大的经济损失。因此,及时准确地检测异常对于保障系统正常运行至关重要。为了便于识别和诊断可能出现的异常,软件系统都会产生日志。日志数据由一系列按照时间顺序排列的非结构或半结构数据组成,描述了系统运行状态以及重要事件,能够帮助运维人员快速判断系统是否异常,发现故障出现原因,同时也为异常检测研究提供了丰富的数据支持。随着系统规模的逐步增长,系统产生的日志也越来越多。除此之外,分布式软件系统的发展和应用使系统日志更加复杂,使用关键字或正则化等方法手动检查和定位异常变得更加困难。因此,自动化日志异常检测方法变得更加必要。
目前,自动化日志异常检测方法主要分为两类。第一类是传统方法,可以进一步分为基于有监督学习和基于无监督或自监督学习。基于有监督学习的方法通过提取日志数据中的模板数量或关键词分布等统计特征对日志序列进行分类,但需要数据有标签,难以实际应用。基于无监督或自监督学习的方法虽然不需要标签,但无法捕获日志序列中的长期依赖关系。
第二类方法是基于深度神经网络的方法。这种方法提取日志序列中的日志模板数量、语义特征或时间特征,结合序列依赖捕获系统正常或异常状态时的日志模式。为了捕获更加复杂的日志模式,一些方法引入组件序列、辅助数据集或多尺度的设计,结合序列依赖增强模型对系统运行状态的感知能力。除了循环神经网络,其他深度神经网络也被用于解决异常检测中的不同的挑战。例如,引入生成对抗网络来获得新的日志数据能够增强模型对异常信息的捕获能力。为了建模日志序列的时间相关性,将日志模板排列为矩阵,并引入卷积神经网络及其变体能够捕获日志序列中的时间依赖。此外,将日志序列转化为图,其中节点表示日志模板,边表示日志模板在序列中的执行顺序,接着引入图神经网络建模图中的信息交互能够捕获复杂的日志模式。由于能自动进行特征学习,基于深度神经网络的日志异常检测方法往往能比传统日志异常检测方法取得更好的性能,利用日志消息中的线程、组件和日志级别等信息还能进一步提高这些方法的性能。然而,这些方法忽略了组件子序列之间的相互影响,仅依靠序列依赖难以有效捕获组件中的异常信息。
发明内容
鉴于上述,本发明的目的是提供一种组件子序列相关性感知的日志异常检测装置,结合捕捉到的序列依赖,通过预测下一条日志消息中的日志模板进行异常检测,进而提高检测效率和检测精准度。
为实现上述发明目的,本发明提供了一种组件子序列相关性感知的日志异常检测装置,包括存储器和处理器,所述存储器用于存储执行组件子序列相关性感知的日志异常检测的计算机可执行程序,所述处理器与所述存储器通信连接,并配置为执行存储器存储的计算机可执行程序,所述处理器执行所述计算机可执行程序时,实现以下步骤:
将日志序列S划出部分作为样本,对时间戳、日志模板编码以获取时间特征嵌入表示t和语义特征嵌入表示V,根据组件从日志序列中提取子序列,对时间戳、日志模板编码以获取每条子序列时间特征嵌入表示tc和语义特征嵌入表示Vc
构建组件子序列相关性感知的日志异常检测模型,包括特征提取模块,序列依赖捕获模块,隐关系编码模块,图卷积模块,子序列融合模块、嵌入表示拼接模块,日志模板预测模块以及日志异常检测模块,特征提取模块用于根据时间特征嵌入表示t和语义特征嵌入表示V获取日志序列特征的嵌入表示X,根据子序列时间特征嵌入表示tc和语义特征嵌入表示Vc获取第i条子序列特征的嵌入表示序列依赖捕获模块用于根据日志序列特征的嵌入表示X获取日志序列S特征的嵌入表示x,根据第i条子序列特征的嵌入表示/>获取该条子序列特征的嵌入表示/>隐关系编码模块用于将子序列的嵌入表示两两拼接以获取拼接后两条子序列/>的相关性嵌入表示Xedge,图卷积模块用于根据子序列经过序列依赖建模获取的嵌入表示Xc、子序列的相关性权重xrel获取子序列更新后的嵌入表示Xm,子序列融合模块用于根据第i条子序列经过GCN更新后的嵌入表示/>与全局向量的注意力权重βi获取全部子序列融合后的嵌入表示xatt,拼接模块用于将子序列融合后的嵌入表示xatt与日志序列S的嵌入表示进行拼接以获取最终的嵌入表示xcat,日志模板预测模块用于根据最终的嵌入表示xcat获取下一条日志消息中的日志模板的概率分布/>日志异常检测模块用于根据下一条真实的日志模板和样本的预测结果判断日志序列S是否出现异常;
将所有样本送入该组件子序列相关性感知的日志异常检测模型中进行训练,并通过更新模型参数不断优化;
利用参数优化的日志异常检测模型进行日志异常检测。
优选地,所述所述特征提取模块通过特征提取器获取日志序列的嵌入表示X和第i条子序列的嵌入表示
对于日志序列,特征提取器首先使用两个全连接层对时间特征和语义特征的嵌入表示进行非线性变换,然后将二者拼接起来形成日志序列特征的嵌入表示X,具体计算过程为:
V′=fv(Linear(V,βv)),
T′=ft(Linear(t,βt)),
X=Concat(V′,T′),
其中,Linear为全连接层的计算过程,βv和βt为可学习的参数,fv和ft为Relu激活函数,Concat为拼接操作;
对于第i条子序列,特征提取器首先使用两个全连接层对第i条子序列时间特征嵌入表示tc和语义特征的嵌入表示Vc进行非线性变换,然后将二者拼接起来形成第i条子序列特征的嵌入表示具体计算过程为:
其中,Linear为全连接层的计算过程,和/>为可学习的参数,fcv和fct为Relu激活函数,Concat为拼接操作。
优选地,所述序列依赖捕获模块采用长短期记忆网络LSTM根据日志序列特征的嵌入表示X捕获序列依赖以获取日志序列S特征的嵌入表示x,根据第i条子序列特征的嵌入表示获取第i条子序列特征的嵌入表示/>日志序列S与第i条子序列互不共享LSTM网络参数,不同子序列则使用共享参数的LSTM网络,具体计算过程为:
x=LSTM1(X),
其中,LSTM1和LSTM2表示两个不共享参数的LSTM网络的计算过程,X表示日志序列特征的嵌入表示,表示第i条子序列特征的嵌入表示。
优选地,所述隐关系编码模块用于将子序列的嵌入表示两两拼接,采用多重感知机制MLP获取拼接后两条子序列的相关性嵌入表示具体计算过程为:
其中,和/>为第i和第j条子序列经过序列依赖建模获取的嵌入表示,Concat为拼接操作,/>为MLP的计算过程,f为Relu激活函数,隐关系编码器采用卷积操作获取子序列的相关性权重xrel,计算过程如下:
其中,为第i和第j条子序列的相关性嵌入表示,Conv为一维卷积神经网络1D-CNN的计算过程,σ为Sigmoid激活函数。
优选地,所述图卷积模块采用图卷积神经网络GCN实现子序列间的信息交互以获取子序列更新后的嵌入表示Xm,将不同子序列视为图中的节点,子序列的相关性权重xrel视为边权构建隐关系图,经过GCN计算得到子序列更新后的嵌入表示Xm,具体计算过程为:
Xm=σ(GCN(Xc,xrel)),
其中,xc为子序列经过序列依赖建模获取的嵌入表示,xrel为子序列的相关性权重,GCN为消息传递的计算过程,σ为Relu激活函数。
优选地,所述子序列融合模块用于根据引入的全局向量uatt,采用注意力机制MHA获取全部子序列融合后的嵌入表示xatt
引入全局向量uatt,采用注意力机制计算第i条子序列经过GCN更新后的嵌入表示与全局向量的注意力权重βi,具体计算过程为:
其中,Nc为子序列的数量,AttScore为注意力得分的计算过程。通过引入对注意力权重βi的动态限制保证训练的稳定性,避免βi在两次相邻的迭代过程中出现大幅度跳跃,具体为:
其中,为第j次迭代对应的第i条子序列的注意力权重,γ为动态阈值,γ的取值范围为0-1之间所有实数,
根据不同子序列对应的注意力权重,对子序列更新后的嵌入表示进行加权聚合,获取全部子序列融合后的嵌入表示xatt,具体为:
其中,βi为第i条子序列的注意力权重,为第i条子序列经过GCN更新后的嵌入表示,Nc为子序列的数量。
优选地,所述拼接模块用于将全部子序列融合后的嵌入表示xatt与日志序列的嵌入表示x进行拼接,获取全部子序列融合后最终的嵌入表示xcat,具体为:
xcat=Concat(x,xatt),
其中,Concat为拼接操作,x为日志序列经过序列依赖建模获取的嵌入表示,xatt为全部子序列融合后的嵌入表示。
优选地,所述日志模板预测模块将最终的嵌入表示xcat送入分类器中,计算下一条日志消息中日志模板的概率分布具体为:
其中,xcat为经过拼接后的最终的嵌入表示,为MLP的计算过程,σout为Softmax激活函数。
优选地,所述日志异常检测模块用于根据下一条真实的日志模板和样本的预测结果判断日志序列S是否出现异常,
根据下一条日志消息中日志模板的概率分布对所有的日志模板进行排序,预测结果为排名top-k日志模板集合,根据下一条真实的日志模板和样本的预测结果来判断日志序列是否出现异常,具体为:
其中,etrue为检测样本对应的下一条日志消息中真实的日志模板,为1时表示样本预测错误,此时错误样本数加一,反之表示样本预测正确。当错误样本数达到设定阈值αanom时则检测到日志序列S出现异常。
为实现上述发明目的,本发明还提供了一种组件子序列相关性感知的日志异常检测装置,其特征在于,包括数据获取单元、模型构建单元、训练单元、应用单元,
所述数据获取单元,用于将日志序列S划出部分作为样本,对时间戳、日志模板编码以获取时间特征嵌入表示t和语义特征嵌入表示V,根据组件从日志序列中提取子序列,对时间戳、日志模板编码以获取每条子序列时间特征嵌入表示tc和语义特征嵌入表示Vc
所述模型建构单元用于构建组件子序列相关性感知的日志异常检测模型,包括特征提取模块,序列依赖捕获模块,隐关系编码模块,图卷积模块,子序列融合模块、嵌入表示拼接模块,日志模板预测模块以及日志异常检测模块,特征提取模块用于根据时间特征嵌入表示t和语义特征嵌入表示V获取日志序列特征的嵌入表示X,根据子序列时间特征嵌入表示tc和语义特征嵌入表示Vc获取第i条子序列特征的嵌入表示序列依赖捕获模块用于根据日志序列特征的嵌入表示X获取日志序列特征的嵌入表示x,根据第i条子序列特征的嵌入表示/>获取该条子序列特征的嵌入表示/>隐关系编码模块用于将子序列的嵌入表示两两拼接以获取拼接后两条子序列/>的相关性嵌入表示Xedge,图卷积模块用于根据子序列经过序列依赖建模获取的嵌入表示Xc、子序列的相关性权重xrel获取子序列更新后的嵌入表示Xm,子序列融合模块用于根据第i条子序列经过GCN更新后的嵌入表示/>与全局向量的注意力权重βi获取全部子序列融合后的嵌入表示xatt,拼接模块用于将子序列融合后的嵌入表示xatt与日志序列S的嵌入表示进行拼接以获取最终的嵌入表示xcat,日志模板预测模块用于根据最终的嵌入表示xcat获取下一条日志消息中的日志模板的概率分布/>日志异常检测模块用于根据下一条真实的日志模板和样本的预测结果判断日志序列S是否出现异常;
将所有样本送入日志异常检测模型中进行训练,并通过更新模型参数不断优化;
所述应用单元用于利用参数优化的日志异常检测模型进行日志异常检测。
与现有技术相比,本发明的技术效果至少包括:
本发明提出了一种组件子序列相关性感知的日志异常检测方法,通过提取组件子序列并捕获序列依赖,结合隐关系编码器自适应建模子序列间的隐式相关性,增强了日志异常检测模型对组件中的异常信息的感知能力,能够有效地捕获组件子序列之间的相互影响,提高了异常检测的准确性和鲁棒性。同时,本发明还引入了注意力机制和GCN进行信息融合和交互,进一步提升了异常检测的性能和效果。利用注意力机制融合全部子序列更新后的嵌入表示,结合日志序列的嵌入表示预测下一条日志消息中的日志模板。本发明能够在日志异常检测的实际应用中有效地检测和诊断系统的异常问题,提高了系统的稳定性和可靠性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动前提下,还可以根据这些附图获得其他附图。
图1是本发明实施例提供的组件子序列相关性感知的日志异常检测方法流程图;
图2是本发明实施例提供的组件子序列相关性感知的日志异常检测模型框架图;
图3是本发明实施例提供的组件子序列相关性感知的日志异常检测模型中隐关系编码器的结构图;
图4是本发明实施例提供的组件子序列相关性感知的日志异常检测装置的结构图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例对本发明进行进一步的详细说明。应当理解,此处所描述的具体实施方式仅仅用以解释本发明,并不限定本发明的保护范围。
为了解决如何充分建模组件子序列之间的相互影响的问题,实施例提供了组件子序列相关性感知的日志异常检测方法和装置。
如图1所示,实施例提供的组件子序列相关性感知的日志异常检测方法,包括以下步骤:
S110,将日志序列S划出部分作为样本,对时间戳、日志模板编码以获取时间特征嵌入表示t和语义特征嵌入表示V,根据组件从日志序列中提取子序列,对时间戳、日志模板编码以获取每条子序列时间特征嵌入表示tc和语义特征嵌入表示Vc
实施例中,采集日志数据并进行解析,获取每条日志消息中的时间戳、组件和日志模板,并进行预处理。
采集日志数据,删除其中的非文本行、系统配置行和其他不相关内容。
使用日志解析工具对处理好的日志数据进行解析,日志消息m中的时间戳t和组件p等结构化信息被保留,非结构化信息被形式化为日志模板e和对应的日志参数。
对时间戳进行预处理,删除如空格、字符和标点符号等无意义内容后,将时间戳编码为统一的Unix时间戳格式。
对日志模板进行预处理,将所有不同种类的日志模板视为自然语言中的文本集合。首先删除每条日志模板文本中的非字符标记,如分隔符、操作符、标点符号和数字。接着删除每条日志模板文本中包含的介词和停顿词,如“a”,“the”,“for”等。最后将处理后的日志模板文本中的所有单词提取出来形成词汇表。
实施例中,如图2所示,根据固定时间窗口从日志数据中划分出日志序列,对时间戳和日志模板进行编码,获取其时间特征的嵌入表示t和语义特征的嵌入表示V。
使用固定时间窗口按照时间顺序对日志数据进行划分,若当前日志消息mi的时间戳与初始时间戳的差值小于窗口长度,则被划分为到日志序列S中。
对时间戳进行编码,将日志序列中日志消息m1的时间戳t1作为起始时间,其余日志消息的时间戳与起始时间的差值作为时间特征进行提取,得到时间特征的嵌入表示t。
对日志模板进行编码,首先使用训练好的词向量模型(如Bert)从词汇表中提取出每个单词对应的嵌入表示vi。接着使用TF-IDF算法计算日志模板中每个单词的TF-IDF权重wi。然后对其进行加权聚合获取日志模板的语义特征的嵌入表示v',具体为:
其中,wi和vi分别为日志模板中第i个单词的TF-IDF权重和对应的嵌入表示,Ne为日志模板包含单词的数量。最后对日志序列中的每条日志消息均提取上述嵌入表示,获取日志序列语义特征的嵌入表示V。
实施例中,根据组件从日志序列中提取出子序列,对时间戳和日志模板进行编码,获取每条子序列时间特征的嵌入表示tc和语义特征的嵌入表示Vc
根据日志消息mi中的组件pi从日志序列中提取出子序列,含有相同组件的日志消息被提取到同一条子序列中,接着根据组件集合查询未包含在日志序列中的组件并为其创建一条空序列。利用同样的方法获取每条子序列时间特征的嵌入表示tc和语义特征的嵌入表示Vc
S120,构建组件子序列相关性感知的日志异常检测模型,包括特征提取模块,序列依赖捕获模块,隐关系编码模块,图卷积模块,子序列融合模块、嵌入表示拼接模块,日志模板预测模块以及日志异常检测模块。
实施例中,整体模型框架如图2所示,对于日志序列,特征提取器首先使用两个全连接层对时间特征和语义特征的嵌入表示进行非线性变换,然后将二者拼接起来形成日志序列特征的嵌入表示X,具体计算过程为:
V′=fv(Linear(V,βv)),
T′=ft(Linear(t,βt)),
X=Concat(V′,T′),
其中,Linear为全连接层的计算过程,βv和βt为可学习的参数,fv和ft为Relu激活函数,Concat为拼接操作;
对于第i条子序列,特征提取器首先使用两个全连接层对第i条子序列时间特征嵌入表示tc和语义特征的嵌入表示Vc进行非线性变换,然后将二者拼接起来形成第i条子序列特征的嵌入表示具体计算过程为:
其中,Linear为全连接层的计算过程,和/>为可学习的参数,fcv和fct为Relu激活函数,Concat为拼接操作。
实施例中,序列依赖捕获模块采用长短期记忆网络LSTM根据日志序列特征的嵌入表示X捕获序列依赖以获取日志序列S特征的嵌入表示x,根据第i条子序列特征的嵌入表示获取第i条子序列特征的嵌入表示/>日志序列S与第i条子序列互不共享LSTM网络参数,不同子序列则使用共享参数的LSTM网络,具体计算过程为:
x=LSTM1(X),
其中,LSTM1和LSTM2表示两个不共享参数的LSTM网络的计算过程,X表示日志序列特征的嵌入表示,表示第i条子序列特征的嵌入表示。
实施例中,如图3所示,隐关系编码模块用于将子序列的嵌入表示两两拼接,采用多重感知机制MLP获取拼接后两条子序列的相关性嵌入表示具体计算过程为:
其中,和/>为第i和第j条子序列经过序列依赖建模获取的嵌入表示,Concat为拼接操作,/>为MLP的计算过程,f为Relu激活函数,隐关系编码器采用卷积操作获取子序列的相关性权重xrel,计算过程如下:
其中,为第i和第j条子序列的相关性嵌入表示,Conv为一维卷积神经网络1D-CNN的计算过程,σ为Sigmoid激活函数。
实施例中,图卷积模块利用卷积神经网络GCN实现子序列间的信息交互,获取子序列更新后的嵌入表示Xm
利用GCN实现子序列间的信息交互,将不同子序列视为图中的节点,子序列的相关性权重视为边权构建隐关系图,经过GCN计算得到子序列更新后的嵌入表示Xm,具体为:
Xm=σ(GCN(Xc,xrel)),
其中,Xc为子序列经过序列依赖建模获取的嵌入表示,xrel为子序列的相关性权重,GCN为消息传递的计算过程,σ为Relu激活函数。
实施例中,子序列融合模块用于根据引入的全局向量uatt,采用注意力机制MHA获取全部子序列融合后的嵌入表示xatt
引入全局向量uatt,采用注意力机制计算第i条子序列经过GCN更新后的嵌入表示与全局向量的注意力权重βi,具体为:
其中,Nc为子序列的数量,AttScore为注意力得分的计算过程。通过引入对注意力权重βi的动态限制保证训练的稳定性,避免βi在两次相邻的迭代过程中出现大幅度跳跃,具体为:
其中,为第j次迭代对应的第i条子序列的注意力权重,γ为动态阈值,γ的取值范围为0-1之间所有实数,
根据不同子序列对应的注意力权重,对子序列更新后的嵌入表示进行加权聚合,获取全部子序列融合后的嵌入表示xatt,具体为:
其中,βi为第i条子序列的注意力权重,为第i条子序列经过GCN更新后的嵌入表示,Nc为子序列的数量。
实施例中,嵌入表示拼接模块用于将全部子序列融合后的嵌入表示xatt与日志序列的嵌入表示x进行拼接,获取全部子序列融合后最终的嵌入表示xcat,具体为:
xcat=Concat(x,xatt),
其中,Concat为拼接操作,x为日志序列经过序列依赖建模获取的嵌入表示,xatt为全部子序列融合后的嵌入表示。
实施例中,日志模板预测模块将最终的嵌入表示xcat送入分类器中,计算下一条日志消息中日志模板的概率分布具体为:
其中,xcat为经过拼接后的最终的嵌入表示,为MLP的计算过程,σout为Softmax激活函数。
实施例中,如图2所示,根据滑动窗口从新到达的日志序列S中划分出样本,并将样本送入模型以获取下一条日志消息中日志模板的概率分布
根据下一条真实的日志模板和样本的预测结果判断日志序列S是否出现异常。
根据下一条日志消息中日志模板的概率分布对所有的日志模板进行排序,预测结果为排名top-k日志模板集合,根据下一条真实的日志模板和样本的预测结果来判断日志序列是否出现异常,计算公式如下:
其中,etrue为样本对应的下一条日志消息中真实的日志模板。为1时表示样本预测错误,此时错误样本数加一,反之表示样本预测正确。当错误样本数达到设定阈值αanom时则检测到日志序列S出现异常。
S130,将所有样本送入该组件子序列相关性感知的日志异常检测模型中进行训练,并通过更新模型参数不断优化。
以输入一条样本为例,获取其时间特征和语义特征,经过模型计算后输出下一条日志消息中日志模板的概率分布为了使得模型的输出表示中概率最大的类别与真实的日志模板保持一致,选择交叉熵损失函数,计算公式如下:
其中,Nevent为日志模板的数量,为模型输出的第i个日志模板的概率值,yi为第i个日志模板对应的真实值,/>为损失函数的输出值。yi的计算公式如下:
模型通过反向传播算法优化上述损失函数的输出值,越小表示模型的拟合能力越强,算法的更新计算公式如下:
其中θ表示模型中的可学习参数,η表示学习率。训练完成后输出更新参数后的模型。
S140,利用参数优化的日志异常检测模型进行日志异常检测。
实施例中,利用参数优化的日志异常检测模型进行日志异常检测,输出日志异常检测结果。
对于如何充分建模组件子序列之间的相互影响的问题,提出了基于组件从日志序列中提取出子序列,合日志消息中的语义和时间特征捕获序列依赖。同时引入隐关系编码器来自适应建模子序列间的隐式相关性,有效地提升了日志异常检测模型对组件中异常信息的感知能力。本发明采集和解析日志数据得到日志消息中的时间戳、组件和日志模板,并进行预处理。其次根据组件从日志序列中提取出子序列,并根据其自身的特征信息获取特征的嵌入表示。接着利用LSTM分别捕获日志序列和子序列的序列依赖并获取其嵌入表示。然后引入隐关系编码器自适应建模子序列间的隐式相关性,结合GCN实现子序列间的信息交互并更新嵌入表示,进一步提升了异常检测的性能和效果。再利用注意力机制融合全部子序列更新后的嵌入表示,结合日志序列的嵌入表示预测下一条日志消息中的日志模板。根据真实的日志模板检测日志序列是否出现异常。
基于同样的发明构思,实施例还提供了一种组件子序列相关性感知的日志异常检测装置,包括存储器和处理器,存储器用于存储计算机程序,其处理器执行计算机程序时,实现上述实施例提供的一种组件子序列相关性感知的日志异常检测方法的步骤,包括以下步骤:
S110,将日志序列S划出部分作为样本,对时间戳、日志模板编码以获取时间特征嵌入表示t和语义特征嵌入表示V,根据组件从日志序列中提取子序列,对时间戳、日志模板编码以获取每条子序列时间特征嵌入表示tc和语义特征嵌入表示Vc
S120,构建组件子序列相关性感知的日志异常检测模型,包括特征提取模块,序列依赖捕获模块,隐关系编码模块,图卷积模块,子序列融合模块、嵌入表示拼接模块,日志模板预测模块以及日志异常检测模块;
S130,将所有样本送入日志异常检测模型中进行训练,并通过更新模型参数不断优化;
S140,利用参数优化的日志异常检测模型进行日志异常检测。
实施例中,存储器可以为在近端的易失性存储器,如RAM,还可以是非易失性存储器,如ROM,FLASH,软盘,机械硬盘等,还可以是远端的存储云。处理器可以为中央处理器(CPU)、微处理器(MPU)、数字信号处理器(DSP)、或现场可编程门阵列(FPGA),即可以通过这些处理器实现组件子序列相关性感知的日志异常检测方法的步骤。
基于同样的发明构思,实施例还提供了组件子序列相关性感知的日志异常检测装置400,包括数据获取单元410、模型构建单元420、训练单元430、应用单元440,
其中,数据获取单元410用于将日志序列S划出部分作为样本,对时间戳、日志模板编码以获取时间特征嵌入表示t和语义特征嵌入表示V,根据组件从日志序列中提取子序列,对时间戳、日志模板编码以获取每条子序列时间特征嵌入表示tc和语义特征嵌入表示Vc
模型构建单元420用于构建组件子序列相关性感知的日志异常检测模型,包括特征提取模块,序列依赖捕获模块,隐关系编码模块,图卷积模块,子序列融合模块、嵌入表示拼接模块,日志模板预测模块以及日志异常检测模块,特征提取模块用于根据时间特征嵌入表示t和语义特征嵌入表示V获取日志序列特征的嵌入表示X,根据子序列时间特征嵌入表示tc和语义特征嵌入表示Vc获取第i条子序列特征的嵌入表示序列依赖捕获模块用于根据日志序列特征的嵌入表示X获取日志序列特征的嵌入表示x,根据第i条子序列特征的嵌入表示/>获取该条子序列特征的嵌入表示/>隐关系编码模块用于将子序列的嵌入表示两两拼接以获取拼接后两条子序列/>的相关性嵌入表示Xedge,图卷积模块用于根据子序列经过序列依赖建模获取的嵌入表示Xc、子序列的相关性权重xrel获取子序列更新后的嵌入表示Xm,子序列融合模块用于根据第i条子序列经过GCN更新后的嵌入表示/>与全局向量的注意力权重βi获取全部子序列融合后的嵌入表示xatt,拼接模块用于将子序列融合后的嵌入表示xatt与日志序列S的嵌入表示进行拼接以获取最终的嵌入表示xcat,日志模板预测模块用于根据最终的嵌入表示xcat获取下一条日志消息中的日志模板的概率分布/>日志异常检测模块用于根据下一条真实的日志模板和样本的预测结果判断日志序列S是否出现异常。
训练单元430用于将所有样本送入日志异常检测模型中进行训练,并通过更新模型参数不断优化。
应用单元440用于利用参数优化的日志异常检测模型进行日志异常检测。
需要说明的是,上述实施例提供的组件子序列相关性感知的日志异常检测装置在进行日志异常检测时,应以上述各功能单元的划分进行举例说明,可以根据需要将上述功能分配由不同的功能单元完成,即在终端或服务器的内部结构划分成不同的功能单元,以完成以上描述的全部或者部分功能。另外,上述实施例提供的组件子序列相关性感知的日志异常检测装置与组件子序列相关性感知的日志异常检测方法实施例属于同一构思,其具体实现过程详见组件子序列相关性感知的日志异常检测方法实施例,这里不再赘述。以上所述具体实施方式对本发明的技术方案和有益效果进行了详细说明,应理解的是以上所述仅为本发明的最优选实施例,并不用于限制本发明,凡在本发明的原则范围内所做的任何修改、补充和等同替换等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种组件子序列相关性感知的日志异常检测装置,包括存储器和处理器,所述存储器用于存储执行组件子序列相关性感知的日志异常检测的计算机可执行程序,所述处理器与所述存储器通信连接,并配置为执行存储器存储的计算机可执行程序,其特征在于:
所述处理器执行所述计算机可执行程序时,实现以下步骤:
将日志序列S划出部分作为样本,对时间戳、日志模板编码以获取时间特征嵌入表示t和语义特征嵌入表示V,根据组件从日志序列中提取子序列,对时间戳、日志模板编码以获取每条子序列时间特征嵌入表示tc和语义特征嵌入表示Vc
构建组件子序列相关性感知的日志异常检测模型,包括特征提取模块,序列依赖捕获模块,隐关系编码模块,图卷积模块,子序列融合模块、嵌入表示拼接模块,日志模板预测模块以及日志异常检测模块,特征提取模块用于根据时间特征嵌入表示t和语义特征嵌入表示V获取日志序列特征的嵌入表示X,根据子序列时间特征嵌入表示tc和语义特征嵌入表示Vc获取第i条子序列特征的嵌入表示序列依赖捕获模块用于根据日志序列特征的嵌入表示X获取日志序列特征的嵌入表示x,根据第i条子序列特征的嵌入表示/>获取该条子序列特征的嵌入表示/>隐关系编码模块用于将子序列的嵌入表示两两拼接以获取拼接后两条子序列/>的相关性嵌入表示/>图卷积模块用于根据子序列经过序列依赖建模获取的嵌入表示Xc、子序列的相关性权重xrel获取子序列更新后的嵌入表示Xm,子序列融合模块用于根据第i条子序列经过GCN更新后的嵌入表示/>与全局向量的注意力权重βi获取全部子序列融合后的嵌入表示xatt,拼接模块用于将子序列融合后的嵌入表示xatt与日志序列S的嵌入表示进行拼接以获取最终的嵌入表示xcat,日志模板预测模块用于根据最终的嵌入表示xcat获取下一条日志消息中的日志模板的概率分布/>日志异常检测模块用于根据下一条真实的日志模板和样本的预测结果判断日志序列S是否出现异常;
将所有样本送入日志异常检测模型中进行训练,并通过更新模型参数不断优化;
利用参数优化的日志异常检测模型进行日志异常检测。
2.根据权利要求1所述的组件子序列相关性感知的日志异常检测模型,其特征在于,所述特征提取模块通过特征提取器获取日志序列的嵌入表示X和第i条子序列的嵌入表示
对于日志序列,特征提取器首先使用两个全连接层对时间特征嵌入表示t和语义特征的嵌入表示V进行非线性变换,然后将二者拼接起来形成日志序列特征的嵌入表示X,具体计算过程为:
V'=fv(Linear(V,βv)),
T'=ft(Linear(t,βt)),
X=Concat(V′,T′),
其中,Linear为全连接层的计算过程,βv和βt为可学习的参数,fv和ft为Relu激活函数,Concat为拼接操作;
对于第i条子序列,特征提取器首先使用两个全连接层对第i条子序列时间特征嵌入表示tc和语义特征的嵌入表示Vc进行非线性变换,然后将二者拼接起来形成第i条子序列特征的嵌入表示具体计算过程为:
V′c=fcv(Linear(Vc,βvc)),
其中,Linear为全连接层的计算过程,和/>为可学习的参数,fcv和fct为Relu激活函数,Concat为拼接操作。
3.根据权利要求1所述的组件子序列相关性感知的日志异常检测模型,其特征在于,所述序列依赖捕获模块采用长短期记忆网络LSTM根据日志序列特征的嵌入表示X捕获序列依赖以获取日志序列S特征的嵌入表示x,根据第i条子序列特征的嵌入表示获取第i条子序列特征的嵌入表示/>日志序列S与第i条子序列互不共享LSTM网络参数,不同子序列则使用共享参数的LSTM网络,具体计算过程为:
x=LSTM1(X),
其中,LSTM1和LSTM2表示两个不共享参数的LSTM网络的计算过程,X表示日志序列特征的嵌入表示,表示第i条子序列特征的嵌入表示。
4.根据权利要求1所述的组件子序列相关性感知的日志异常检测模型,其特征在于,所述隐关系编码模块用于将子序列的嵌入表示两两拼接,采用多重感知机制MLP获取拼接后两条子序列的相关性嵌入表示具体计算过程为:
其中,和/>为第i和第j条子序列经过序列依赖建模获取的嵌入表示,Concat为拼接操作,/>为MLP的计算过程,f为Relu激活函数,隐关系编码器采用卷积操作获取子序列的相关性权重xrel,计算过程如下:
其中,为第i和第j条子序列的相关性嵌入表示,Conv为一维卷积神经网络1D-CNN的计算过程,σ为Sigmoid激活函数。
5.根据权利要求1所述的组件子序列相关性感知的日志异常检测模型,其特征在于,所述图卷积模块采用图卷积神经网络GCN实现子序列间的信息交互以获取子序列更新后的嵌入表示Xm,将不同子序列视为图中的节点,子序列的相关性权重xrel视为边权构建隐关系图,经过GCN计算得到子序列更新后的嵌入表示Xm,具体计算过程为:
Xm=σ(GCN(Xc,xrel)),
其中,Xc为子序列经过序列依赖建模获取的嵌入表示,xrel为子序列的相关性权重,GCN为消息传递的计算过程,σ为Relu激活函数。
6.根据权利要求1所述的组件子序列相关性感知的日志异常检测模型,其特征在于,所述子序列融合模块用于根据引入的全局向量uatt,采用注意力机制MHA获取全部子序列融合后的嵌入表示xatt
引入全局向量uatt,采用注意力机制计算第i条子序列经过GCN更新后的嵌入表示与全局向量的注意力权重βi,具体计算过程为:
其中,Nc为子序列的数量,AttScore为注意力得分的计算过程。通过引入对注意力权重βi的动态限制保证训练的稳定性,避免βi在两次相邻的迭代过程中出现大幅度跳跃,具体为:
其中,为第j次迭代对应的第i条子序列的注意力权重,γ为动态阈值,γ的取值范围为0-1之间所有实数,
根据不同子序列对应的注意力权重,对子序列更新后的嵌入表示进行加权聚合,获取全部子序列融合后的嵌入表示xatt,具体为:
其中,βi为第i条子序列的注意力权重,为第i条子序列经过GCN更新后的嵌入表示,Nc为子序列的数量。
7.根据权利要求1所述的组件子序列相关性感知的日志异常检测模型,其特征在于,所述拼接模块用于将全部子序列融合后的嵌入表示xatt与日志序列的嵌入表示x进行拼接,获取全部子序列融合后最终的嵌入表示xcat,具体为:
xcat=Concat(x,xatt),
其中,Concat为拼接操作,x为日志序列经过序列依赖建模获取的嵌入表示,xatt为全部子序列融合后的嵌入表示。
8.根据权利要求1所述的组件子序列相关性感知的日志异常检测模型,其特征在于,所述日志模板预测模块将最终的嵌入表示xcat送入分类器中,计算下一条日志消息中日志模板的概率分布具体为:
其中,xcat为经过拼接后的最终的嵌入表示,为MLP的计算过程,σout为Softmax激活函数。
9.根据权利要求1所述的组件子序列相关性感知的日志异常检测模型,其特征在于,所述日志异常检测模块用于根据下一条真实的日志模板和样本的预测结果判断日志序列S是否出现异常,
根据下一条日志消息中日志模板的概率分布对所有的日志模板进行排序,预测结果为排名top-k日志模板集合,根据下一条真实的日志模板和样本的预测结果来判断日志序列是否出现异常,具体为:
其中,etrue为检测样本对应的下一条日志消息中真实的日志模板,为1时表示样本预测错误,此时错误样本数加一,反之表示样本预测正确。当错误样本数达到设定阈值αanom时则检测到日志序列S出现异常。
10.一种组件子序列相关性感知的日志异常检测装置,其特征在于,包括数据获取单元、模型构建单元、训练单元、应用单元,
所述数据获取单元,用于将日志序列S划出部分作为样本,对时间戳、日志模板编码以获取时间特征嵌入表示t和语义特征嵌入表示V,根据组件从日志序列中提取子序列,对时间戳、日志模板编码以获取每条子序列时间特征嵌入表示tc和语义特征嵌入表示Vc
所述模型建构单元用于构建组件子序列相关性感知的日志异常检测模型,包括特征提取模块,序列依赖捕获模块,隐关系编码模块,图卷积模块,子序列融合模块、嵌入表示拼接模块,日志模板预测模块以及日志异常检测模块,特征提取模块用于根据时间特征嵌入表示t和语义特征嵌入表示V获取日志序列特征的嵌入表示X,根据子序列时间特征嵌入表示tc和语义特征嵌入表示Vc获取第i条子序列特征的嵌入表示序列依赖捕获模块用于根据日志序列特征的嵌入表示X获取日志序列特征的嵌入表示x,根据第i条子序列特征的嵌入表示/>获取该条子序列特征的嵌入表示/>隐关系编码模块用于将子序列的嵌入表示两两拼接以获取拼接后两条子序列/> 的相关性嵌入表示Xedge,图卷积模块用于根据子序列经过序列依赖建模获取的嵌入表示Xc、子序列的相关性权重xrel获取子序列更新后的嵌入表示Xm,子序列融合模块用于根据第i条子序列经过GCN更新后的嵌入表示/>与全局向量的注意力权重βi获取全部子序列融合后的嵌入表示xatt,拼接模块用于将子序列融合后的嵌入表示xatt与日志序列S的嵌入表示进行拼接以获取最终的嵌入表示xcat,日志模板预测模块用于根据最终的嵌入表示xcat获取下一条日志消息中的日志模板的概率分布/>日志异常检测模块用于根据下一条真实的日志模板和样本的预测结果判断日志序列S是否出现异常;
将所有样本送入日志异常检测模型中进行训练,并通过更新模型参数不断优化;
所述应用单元用于利用参数优化的日志异常检测模型进行日志异常检测。
CN202310400356.3A 2023-04-14 2023-04-14 一种组件子序列相关性感知的日志异常检测装置 Pending CN116561748A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310400356.3A CN116561748A (zh) 2023-04-14 2023-04-14 一种组件子序列相关性感知的日志异常检测装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310400356.3A CN116561748A (zh) 2023-04-14 2023-04-14 一种组件子序列相关性感知的日志异常检测装置

Publications (1)

Publication Number Publication Date
CN116561748A true CN116561748A (zh) 2023-08-08

Family

ID=87485286

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310400356.3A Pending CN116561748A (zh) 2023-04-14 2023-04-14 一种组件子序列相关性感知的日志异常检测装置

Country Status (1)

Country Link
CN (1) CN116561748A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117421595A (zh) * 2023-10-25 2024-01-19 广东技术师范大学 一种基于深度学习技术的系统日志异常检测方法及系统
CN117971605A (zh) * 2024-03-29 2024-05-03 天津南大通用数据技术股份有限公司 基于数据库异常的自动化日志信息收集方法及系统
CN118134232A (zh) * 2024-05-07 2024-06-04 暨南大学 融合流程图和流程日志的多模态业务流程预测方法及系统

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117421595A (zh) * 2023-10-25 2024-01-19 广东技术师范大学 一种基于深度学习技术的系统日志异常检测方法及系统
CN117971605A (zh) * 2024-03-29 2024-05-03 天津南大通用数据技术股份有限公司 基于数据库异常的自动化日志信息收集方法及系统
CN118134232A (zh) * 2024-05-07 2024-06-04 暨南大学 融合流程图和流程日志的多模态业务流程预测方法及系统

Similar Documents

Publication Publication Date Title
CN116561748A (zh) 一种组件子序列相关性感知的日志异常检测装置
WO2021003810A1 (zh) 一种服务系统的更新方法、电子设备及可读存储介质
CN112257441B (zh) 一种基于反事实生成的命名实体识别增强方法
Kobayashi et al. Towards an NLP-based log template generation algorithm for system log analysis
CN113590451B (zh) 一种根因定位方法、运维服务器及存储介质
US20190079820A1 (en) Log-based computer system failure signature generation
CN116257406A (zh) 用于智慧城市的网关数据管理方法及其系统
CN113742733A (zh) 阅读理解漏洞事件触发词抽取和漏洞类型识别方法及装置
CN114584379A (zh) 基于优化特征提取粒度的日志异常检测方法
CN116361147A (zh) 测试用例根因定位方法及其装置、设备、介质、产品
CN115617614A (zh) 基于时间间隔感知自注意力机制的日志序列异常检测方法
CN115292568B (zh) 一种基于联合模型的民生新闻事件抽取方法
CN115905959A (zh) 基于缺陷因子的电力断路器关联性故障分析方法及装置
CN116955604A (zh) 一种日志检测模型的训练方法、检测方法、装置
CN116502162A (zh) 边缘算力网络中的异常算力联邦检测方法、系统及介质
CN110866172B (zh) 一种面向区块链系统的数据分析方法
CN117316462A (zh) 一种医疗数据管理方法
Dutta et al. Big data architecture for environmental analytics
CN117725458A (zh) 一种获取威胁情报样本数据生成模型的方法及装置
CN116164822A (zh) 基于知识图谱的流量计故障诊断方法、装置、介质
CN115587007A (zh) 基于RoBERTa的网络日志安全检测方法及系统
CN116414783A (zh) 一种日志检测方法、装置、电子设备和存储介质
CN115169490A (zh) 一种日志分类方法、装置、设备及计算机可读存储介质
CN114610613A (zh) 一种面向在线实时的微服务调用链异常检测方法
CN117454987B (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