CN114912500A - 一种基于预训练模型的无监督日志异常检测方法 - Google Patents
一种基于预训练模型的无监督日志异常检测方法 Download PDFInfo
- Publication number
- CN114912500A CN114912500A CN202111429926.9A CN202111429926A CN114912500A CN 114912500 A CN114912500 A CN 114912500A CN 202111429926 A CN202111429926 A CN 202111429926A CN 114912500 A CN114912500 A CN 114912500A
- Authority
- CN
- China
- Prior art keywords
- log
- model
- training model
- label
- unsupervised
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
-
- 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/08—Learning methods
- G06N3/088—Non-supervised learning, e.g. competitive learning
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computational Linguistics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Evolutionary Biology (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请公开的基于预训练模型的无监督日志异常检测方法,包括:收集来自不同系统产生的日志数据集;将日志数据集进行预处理;源系统日志集调用LSTM与全连接层模型,构建预训练模型;混合模型投票伪标签:通过预训练模型中的LSTM提取出无标签目标系统日志向量序列的深度特征向量表示;基于层次聚类HDBSCAN的分类器辅助预训练模型的全连接层,投票预测筛选出置信度高的日志向量序列作为带伪标签目标系统日志集;微调预训练模型;将目标系统日志向量序列输入到微调后的预训练模型中,进行异常检测。本发明涉及的技术方案,进行日志序列异常检测时,其能够利用已知的源系统数据集,在不使用目标系统日志标签的前提下保障检测效果,降低标签标记成本。
Description
技术领域
本申请涉及日志异常检测技术领域,更具体地说,尤其涉及一种基于预训练模型的无监督日志异常检测方法。
背景技术
随着互联网技术的发展,信息数据流量日益增多。日志是记录计算机系统运行状态和事件的重要载体,可以在各个关键点记录系统状态和重要事件以帮助调试系统故障并执行根本原因分析,因此系统日志异常检测至关重要。
目前,对于日志异常检测的方法有:
一、基于transformer结构的监督日志异常检测方法:该方法是设计一个日志序列编码器与一个参数值编码器提取出相应的深度特征表示,并根据注意力机制分配给两种深度特征表示的不同权重,利用标签数据对模型进行训练,得到异常概率;
二、基于长短时记忆网络(Long Short-TermMemory)的无监督日志异常检测方法:该方法利用长短时记忆网络学习日志模版和参数的序列规律,分别预测下一个模板和参数值的概率,未出现在预测的前k个模板或参数时被认为是异常,结合两种异常检测来综合判断整个系统异常;
三、半监督迁移学习方法:利用源系统带标签的数据训练基于监督的 LSTM模型作为原始模型,通过迁移学习使用少量目标系统的标签数据对原始模型进行参数微调,从而优化模型的检测性能进行异常检测。在现有技术中常用上述三种方法进行系统日志异常检测,但是上述方法在检测运用时也存在众多弊端,影响检测结果或者直接无法进行检测,其中包括:
一、监督方法需要大量的标签数据:以往有监督方法需要大量的标签数据去对模型进行训练,然而异常的日志的数量是较少的。为了得到一个好的分类模型,标签数据的数量就显得尤为重要。在一定范围内,标签数据的数量越多,训练出来的检测模型就越好,理想的有监督检测模型必须由大量的标签数据训练得到,但是当前现实条件下,对标签数据的获取是极其困难的。
二、无监督检测方法需要大量正常序列:以往日志异常检测中基于LSTM 的无监督学习方法需要大量正常日志组成的日志序列,如果训练数据中存在少量异常日志序列,那么模型性能将大幅下降。因此,理想的模型必须由大量正常日志序列组成。换言之,这种形式的无监督学习方法,其实是一种只需要正样本的有监督学习方法。本质上,也是需要大量的确定标签数据进行训练,而标签数据的获取难度直接限制了该方法的正常实施,影响检测效果。
三、半监督迁移学习方法无法做到自动化部署:半监督迁移学习方法的分类模型在模型训练时,需要少量拥有真实标签的目标数据去进行模型微调。当给予数据数量较少时,其模型迁移效果也是不理想的。而且真实标签的获取,仍然需要专业人员手动对数据集进行标注,在模型使用系统发生变化时,无法自动化进行调整,仍然需要人员辅助其训练,无疑是增加了人力成本,且花费的时间较多。
因此,如何提供一种基于预训练模型的无监督日志异常检测方法,进行日志序列异常检测时,其能够利用已知的源系统数据集,在不使用目标系统日志标签的前提下保障检测效果,降低标签标记成本,已经成为本领域技术人员亟待解决的技术问题。
发明内容
为解决上述技术问题,本申请提供一种基于预训练模型的无监督日志异常检测方法,进行日志序列异常检测时,其能够利用已知的源系统数据集,在不使用目标系统日志标签的前提下保障检测效果,降低标签标记成本。
本申请提供一种基于预训练模型的无监督日志异常检测方法,包括以下步骤:S1、日志收集:收集来自不同系统产生的日志数据集,日志数据集包括源系统日志集和目标系统日志集,其中所述源系统日志集已经包含标签; S2、日志预处理:将所述日志数据集先后进行日志解析、日志向量化以及日志序列化处理;S3、构建预训练模型:调用LSTM与全连接层模型,将所述有标签源系统日志向量序列作为所述LSTM与全连接层模型的输入数据,进行模型训练,将训练好的模型作为所述预训练模型;S4、混合模型投票伪标签:通过所述LSTM有效提取出所述无标签目标系统日志向量序列的深度特征向量表示;随后构建一个基于层次聚类HDBSCAN的分类器辅助原有预训练模型的全连接层,投票预测筛选出置信度高的日志向量序列作为带伪标签目标系统日志集;S5、微调预训练模型:利用所述带伪标签目标系统日志集,重新输入到所述预训练模型微调LSTM模型的参数;S6、在线异常检测:将目标系统日志向量序列输入到微调后的预训练模型中,通过全连接层输出正常日志消息序列以及异常日志消息序列,完成异常检测。
进一步地,在本发明一种优选方式中,在所述步骤S2中,所述日志解析、日志向量化以及日志序列化处理的操作具体为:
S201、日志解析处理:将所述日志数据集中半结构化的原始日志消息转换为结构化的日志模板形式;
其中,日志解析方法包括:FT-TREE、FP-TREE以及其他数据解析方法;
S202、日志向量化处理:随后将每条原始日志映射到日志模板中,通过日志向量化手段将日志模板转换成日志模板向量;
S203、日志序列化处理:最后通过滑动窗口将所述源系统日志集以及所述目标系统日志集中的日志数据分别转化为有标签源系统日志向量序列以及无标签目标系统日志向量序列。
进一步地,在本发明一种优选方式中,在所述步骤S202中,所述日志模板向量转换的具体步骤为:
使用向量化方法将日志模板中的单词转换为向量形式表示,随后通过词向量求和平均的方法,得到日志模板向量;
所述向量化方法包括:WORD2VEC、LSA、STR2VEC、GLOVE以及其他向量化方法;其中所述GLOVE是一种生成词向量方法,具体操作为:利用全局统计特征与局部上下文特征,有效捕捉词义相近的词,使其单词的词向量相似度尽可能接近单词间词义相似度。
进一步地,在本发明一种优选方式中,所述GLOVE的代价函数具体为:
其中vi、vj分别表示单词I的词向量与单词J的词向量;bi、bj分别是两种不同大小的偏置量;Xi,j是单词I与单词J在共现矩阵中出现的次数;f是权重函数。
进一步地,在本发明一种优选方式中,所述权重函数表达公式具体为:
其中,为防止中x过大导致词共现频率过载,引入超参数xmax进行约束;将所述超参数xmax设为100。
进一步地,在本发明一种优选方式中,在所述步骤S4中,所述混合模型投票伪标签的步骤具体为:
S401、将无标签目标系统日志向量序列输入所述预训练模型,利用所述预训练模型的LSTM得到日志深度特征向量,通过已经训练好的全连接层得到预训练模型标签La和概率Pa;
S402、同时将所述日志深度特征向量进行基于层级聚类HDBSCAN处理产生无监督模型标签Lb和概率Pb;
S403、通过上述预训练模型标签和无监督模型标签及其概率值的比较投票预测筛选出带伪标签目标系统日志集。
进一步地,在本发明一种优选方式中,所述投票预测筛选的具体规则为:
若所述HDBSCAN与所述全连接层预测相同时,则认定该日志向量序列可信,将其加入所述带伪标签目标系统日志集中;
若所述HDBSCAN与所述全连接层预测相左时,为所述预训练模型的分类器与所述HDBSCAN分别设置一个高阈值THa与THb,通过判断预测概率值是否高于所述高阈值:若预测概率值高于所述高阈值,则将该日志向量序列加入所述带伪标签目标系统日志集中。
进一步地,在本发明一种优选方式中,所述高阈值THa与THb的预设标准高于所述预训练模型以及所述HDBSCAN原始设置的阈值标准。
进一步地,在本发明一种优选方式中,所述投票表达公式具体为:
La==Lb||Pa>THa||Pb>THb。
进一步地,在本发明一种优选方式中,所述HDBSCAN用以使用最小生成树构建点与点之间的层次数模型;根据离群点的距离计算出一个离群点分数,该分数介于0-1之间,分数越高,该点成为异常值的可能性就越大。
本发明提供的一种基于预训练模型的无监督日志异常检测方法,与现有技术相比,包括以下步骤:S1、日志收集:收集来自不同系统产生的日志数据集,日志数据集包括源系统日志集和目标系统日志集,其中所述源系统日志集已经包含标签;S2、日志预处理:将所述日志数据集先后进行日志解析、日志向量化以及日志序列化处理;S3、构建预训练模型:调用LSTM与全连接层模型,将所述有标签源系统日志向量序列作为所述LSTM与全连接层模型的输入数据,进行模型训练,将训练好的模型作为所述预训练模型;S4、混合模型投票伪标签:通过所述LSTM有效提取出所述无标签目标系统日志向量序列的深度特征向量表示;随后构建一个基于层次聚类HDBSCAN的分类器辅助原有预训练模型的全连接层,投票预测筛选出置信度高的日志向量序列作为带伪标签目标系统日志集;S5、微调预训练模型:利用所述带伪标签目标系统日志集,重新输入到所述预训练模型微调LSTM模型的参数;S6、在线异常检测:将目标系统日志向量序列输入到微调后的预训练模型中,通过全连接层输出正常日志消息序列以及异常日志消息序列,完成异常检测。本发明提供的一种基于预训练模型的无监督日志异常检测方法,关键在于:首先通过预训练模型提取日志序列的深度特征表示;然后,使用预训练模型的分类器与基于层次的聚类构建一个伪标签混合投票器,对未标记的日志序列分配伪标签,并更新预训练模型参数;由于预训练模型可以使用大量已有数据进行训练,避免数据过少所导致的模型分类效果较差的问题;其次基于 LSTM预训练模型能有效地提取日志时序序列的潜在特征,从日志序列中提取共有特征;相较于现在大多数方法采用一定量标签的异常数据微调预训练模型更新参数的方法,使用无监督的聚类方法与预训练模型分类器混合投票的形式对其进行自动化标记标签,从而将其作为训练数据,更新预训练模型参数的方法,避免了人工标记数据集的时间成本,且达到理想的异常检测效果,相对于现有技术而言,本方法在进行日志序列异常检测时,其能够利用已知的源系统数据集,在不使用目标系统日志标签的前提下保障检测效果,降低标签标记成本。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的基于预训练模型的无监督日志异常检测方法的方法流程图;
图2为本发明实施例提供的基于预训练模型的无监督日志异常检测方法的步骤流程框架图;
图3为本发明实施例提供的LSTM模型框架图;
图4为本发明实施例提供的LSTM日志异常检测模型的框架图;
图5为本发明实施例提供的wordcount数据集的模型性能评测柱形图;
图6为本发明实施例提供的不同比例划分WORDCOUNT数据集下的模型性能的折线图。
具体实施方式
为了使本领域的技术人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,当元件被称为“固定于”或“设置于”另一个元件上,它可以直接在另一个元件上或者间接设置在另一个元件上;当一个元件被称为是“连接于”另一个元件,它可以是直接连接到另一个元件或间接连接至另一个元件上。
需要理解的是,术语“长度”、“宽度”、“上”、“下”、“前”、“后”、“第一”、“第二”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本申请和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本申请的限制。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本申请的描述中,“多个”、“若干个”的含义是两个或两个以上,除非另有明确具体的限定。
须知,本说明书附图所绘示的结构、比例、大小等,均仅用以配合说明书所揭示的内容,以供熟悉此技术的人士了解与阅读,并非用以限定本申请可实施的限定条件,故不具技术上的实质意义,任何结构的修饰、比例关系的改变或大小的调整,在不影响本申请所能产生的功效及所能达成的目的下,均应仍落在本申请所揭示的技术内容得能涵盖的范围内。
本发明提供的一种基于预训练模型的无监督日志异常检测方法,与现有技术相比,包括以下步骤:S1、日志收集:收集来自不同系统产生的日志数据集,日志数据集包括源系统日志集和目标系统日志集,其中所述源系统日志集已经包含标签;S2、日志预处理:将所述日志数据集先后进行日志解析、日志向量化以及日志序列化处理;S3、构建预训练模型:调用LSTM与全连接层模型,将所述有标签源系统日志向量序列作为所述LSTM与全连接层模型的输入数据,进行模型训练,将训练好的模型作为所述预训练模型;S4、混合模型投票伪标签:通过所述LSTM有效提取出所述无标签目标系统日志向量序列的深度特征向量表示;随后构建一个基于层次聚类HDBSCAN的分类器辅助原有预训练模型的全连接层,投票预测筛选出置信度高的日志向量序列作为带伪标签目标系统日志集;S5、微调预训练模型:利用所述带伪标签目标系统日志集,重新输入到所述预训练模型微调LSTM模型的参数;S6、在线异常检测:将目标系统日志向量序列输入到微调后的预训练模型中,通过全连接层输出正常日志消息序列以及异常日志消息序列,完成异常检测。
本发明提供的一种基于预训练模型的无监督日志异常检测方法,包括以下步骤:S1、日志收集:收集来自不同系统产生的日志数据集,日志数据集包括源系统日志集和目标系统日志集,其中所述源系统日志集已经包含标签; S2、日志预处理:将所述日志数据集先后进行日志解析、日志向量化以及日志序列化处理;S3、构建预训练模型:调用LSTM与全连接层模型,将所述有标签源系统日志向量序列作为所述LSTM与全连接层模型的输入数据,进行模型训练,将训练好的模型作为所述预训练模型;S4、混合模型投票伪标签:通过所述LSTM有效提取出所述无标签目标系统日志向量序列的深度特征向量表示;随后构建一个基于层次聚类HDBSCAN的分类器辅助原有预训练模型的全连接层,投票预测筛选出置信度高的日志向量序列作为带伪标签目标系统日志集;S5、微调预训练模型:利用所述带伪标签目标系统日志集,重新输入到所述预训练模型微调LSTM模型的参数;S6、在线异常检测:将目标系统日志向量序列输入到微调后的预训练模型中,通过全连接层输出正常日志消息序列以及异常日志消息序列,完成异常检测。由于现有技术是针对单一系统日志作为处理对象,形成日志向量序列进行检测,而本发明是针对同域多系统日志作为处理对象,因此需要对不同语法和组成结构的日志进行解析与向量化,其次,现有技术是直接使用真实标签对预训练模型进行微调,本发明通过无监督的聚类方法与预训练模型分类器混合投票的形式对其进行自动化标记标签,因此能降低训练异常检测模型时所需要的训练成本。本发明提供的一种基于预训练模型的无监督日志异常检测方法,相对于现有技术而言,进行日志序列异常检测时,其能够利用已知的源系统数据集,在不使用目标系统日志标签的前提下保障检测效果,降低标签标记成本。
具体地,在本发明的实施例中,在所述步骤S2中,所述日志解析、日志向量化以及日志序列化处理的操作具体为:S201、日志解析处理:将所述日志数据集中半结构化的原始日志消息转换为结构化的日志模板形式;S202、日志向量化处理:随后将每条原始日志映射到日志模板中,通过日志向量化手段将日志模板转换成日志模板向量;S203、日志序列化处理:最后通过滑动窗口将所述源系统日志集以及所述目标系统日志集中的日志数据分别转化为有标签源系统日志向量序列以及无标签目标系统日志向量序列。
其中,所述日志解析处理中,每个日志消息包含日期、时间戳、等级、进程类型、组件(消息生成位置)和内容。
以HADOOP日志为例,2015-10-18,"18:01:51,963",INFO,MAIN,ORG.APACHE.HADOOP.HTTP.HTTPSERVER2,JETTY BOUND TO PORT 62267。其中日期是2015-10-18,时间戳为18:01:51,963,等级为INFO,该条日志进程的类型为MAIN,消息生成的位置为ORG.APACHE.HADOOP.HTTP.HTTPSE RVER2,该条日志消息的内容为JETTY BOUND TO PORT62267。
具体地,在本发明的实施例中,所述日志解析方法包括:FT-TREE、FP- TREE以及其他数据解析方法。
在本发明中采用FT-TREE进行日志解析;经过FT-TREE进行日志解析之后,日志模板显示在如下表1中的最后一行,半结构化的原始日志消息被转换为结构化日志事件。日志消息中的变量部分被删除,而日志消息中的常量部分则保持不变。每个日志消息都有一个唯一对应的日志模板。以上述日志为例,日志模板是“INFO MAIN ORG APACHE HADOOP HTTPJETT Y BOUND TO PORT”。
表1原始日志与日志事件
具体地,在本发明的实施例中,在所述步骤S202中,所述日志模板向量转换的具体步骤为:使用向量化方法将日志模板中的单词转换为向量形式表示,随后通过词向量求和平均的方法,得到日志模板向量;
所述向量化方法包括:WORD2VEC、LSA、STR2VEC、GLOVE以及其他向量化方法;其中所述GLOVE是一种生成词向量方法,具体操作为:利用全局统计特征与局部上下文特征,有效捕捉词义相近的词,使其单词的词向量相似度尽可能接近单词间词义相似度。
具体地,在本发明的实施例中,所述GLOVE的代价函数具体为:
其中vi、vj分别表示单词I的词向量与单词J的词向量;bi、bj分别是两种不同大小的偏置量;Xi,j是单词I与单词J在共现矩阵中出现的次数;f是权重函数。
具体地,在本发明的实施例中,所述权重函数表达公式具体为:
其中,为防止中x过大导致词共现频率过载,引入超参数xmax进行约束;将所述超参数xmax设为100。
具体地,在所述步骤S3中,所述LSTM是一种特殊的RNN,通过门控状态来控制传输状态,对输入信息可以选择性的记录或遗忘,因此可以有效的处理序列数据。
其中,所述预训练模型架构是一个有监督的LSTM日志异常检测模型;由所述LSTM模型与所述全连接层模型构成,通过LSTM模型提取日志向量序列的深度特征表示,并经过全连接层得到日志向量序列的异常检测结果。在预训练数据期间,通过源系统日志向量序列的标签对模型参数进行训练
具体地,在本发明的实施例中,在所述步骤S4中,所述混合模型投票伪标签的步骤具体为:S401、将无标签目标系统日志向量序列输入所述预训练模型,利用所述预训练模型的LSTM得到日志深度特征向量,通过已经训练好的全连接层得到预训练模型标签La和概率Pa;S402、同时将所述日志深度特征向量进行基于层级聚类HDBSCAN处理产生无监督模型标签Lb和概率 Pb;S403、通过上述预训练模型标签和无监督模型标签及其概率值的比较投票预测筛选出带伪标签目标系统日志集。
其中,在所述LSTM模型中,所述LSTM具有强大的特征提取能力,能有效的提取出日志向量序列的深度特征表示,其深度特征表示的分布规律与异常状态存在一定的关联性;因此构建一个基于层次聚类HDBSCAN的分类器辅助原有预训练模型的全连接层,能够一起筛选出置信度高的日志向量序列作为伪标签日志集,进行后续预训练模型网络参数更新。
具体地,在本发明的实施例中,所述投票预测筛选的具体规则为:若所述HDBSCAN与所述全连接层预测相同时,则认定该日志向量序列可信,将其加入所述带伪标签目标系统日志集中;若所述HDBSCAN与所述全连接层预测相左时,为所述预训练模型的分类器与所述HDBSCAN分别设置一个高阈值THa与THb,通过判断预测概率值是否高于所述高阈值:若预测概率值高于所述高阈值,则将该日志向量序列加入所述带伪标签目标系统日志集中。
例如,日志向量序列在HDBSCAN与全连接层预测都为1或0时,便加入所述带伪标签目标系统日志集中;若日志向量序列在HDBSCAN预测为1,全连接层预测为0时,判断HDBSCAN预测概率值是否高于高阈值,若是,则加入所述带伪标签目标系统日志集中。
具体地,在本发明的实施例中,所述高阈值THa与THb的预设标准高于所述预训练模型以及所述HDBSCAN原始设置的阈值标准。
其中,与分类器分类标签时所设置的阈值不同,为了在混合投票阶段,更好的筛选出至信度高的数据,为预训练模型的分类器与HDBSCAN分别设置了一个高阈值THa与THb。这两个高阈值相比与原本分类器所示的阈值而言,标准更高,例如HDBSCAN分类标签时,阈值设置为分位数0.95,而在混合投票中的高阈值THb设置为分位数0.98。通过这种方式能有效地降低分配伪标签时所产生的噪声,提高模型的鲁棒性,为后续预训练模型更新,提供可靠的数据。
具体地,在本发明的实施例中,所述投票表达公式具体为:
La==Lb||Pa>THa||Pb>THb。
具体地,在本发明的实施例中,所述HDBSCAN用以使用最小生成树构建点与点之间的层次数模型;根据离群点的距离计算出一个离群点分数,该分数介于0-1之间,分数越高,该点成为异常值的可能性就越大。由于HDBSCAN 的性能会在输入向量维度超过50维时,随着向量维度的增加,而急剧下降,因此使用FASTICA算法对日志向量序列的深度特征表示进行降维。
具体地,在步骤S5微调预训练模型中,由于预训练模型是根据源系统日志集进行训练所得到的,虽然源系统日志集与目标系统日志集具有一定相关性,模型能对目标系统日志进行异常检测,但精度还有待提高。使用伪标签日志集对预训练模型进行微调,能在不需要目标系统日志集真实标签的情况下,通过带伪标签的日志向量序列重新训练预训练模型,达到调整模型部分参数,更加贴合目标系统日志集的数据情况,提升模型效果。固定全连接层参数,有利于提升模型对噪声的鲁棒性,因此在微调过程中,只调整LSTM 的参数,不对全连接层参数进行改动。
实施例评估:
为了评估本申请方法的性能,以下通过列举实施例1进行验证说明:
在本申请实施例中1采用了在HADOOP架构的应用所产生的 WORDCOUNT和PAGERANK数据集。如下表2所示,显示了 WORDCOUNT和PAGERANK数据集的一些基本信息;PAGERANK数据集中包含有214670条原始日志,其中异常日志消息的数量为120862条,正常日志消息的数量为93808条;WORDCOUNT数据集中包含有81948条原始日志,其中异常日志消息的数量为4564条,正常日志消息的数量为77384条。将PAGERANK作为源系统数据集,WORDCOUNT作为目标系统数据集,采用机器学习中常用的三种性能评价指标来评价模型的好坏,即准确率、召回率、F1-分数。
表2 Hadoop数据集的概述
具体地,在实施例中1,,将本申请中异常检测方法分别与LOGTRANSF ER、LOGCLUSTERING进行比较。LOGTRANSFER是一种基于迁移学习的半监督学习的日志异常检测方法,其采用日志模板作为输入并搭配LSTM模型构建而成,利用LSTM网络提取日志序列模式,提出了一种源系统与目标系统共享全连通网络的迁移学习方法,通过滑动窗口来提取其原始日志序列的特征送入LSMT网络中输出该日志序列异常的概率。LOGCLUSTERING是一种基于聚类的无监督学习的日志异常检测方法,通过日志序列转换成向量并将其聚类成簇,从每个聚类中提取一个有代表性的序列,并检查它是否表示知识库中存储的先前检查过的聚类。
首先以WORDCOUNT作为测试集,与无监督方法LOGCLUSTERING、半监督迁移学习方法LOGTRANSFER进行比较,通过准确率、召回率、F1- 分数进行构建模型比较其性能,结果如附图5所示:
通过以下实施例结果,作为一种无监督学习方法,本申请提供的方法在召回率和F1分数上明显优于比较基线LOGCLUSTERING,在与迁移学习方法LOGTRANSFER比较时,虽然LOGTRANSFER准确率较高,但是召回率偏低,本申请提供的方法也略优于LOGTRANSFER。可以看出我们的方法在不需要目标系统真实标签的情况下,依然能获得较理想的异常检测模型,明显减少了模型的训练成本。
我们将WORDCOUNT数据集按1:9、2:8、4:6、6:4、8:2比例划分,通过划分的数据集分别进行构建模型评价其性能。
通过附图6的实验结果所示,可以看出基于预训练模型的无监督日志异常检测方法只需要训练较少的数据集就能获得理想的异常检测模型,明显减少了模型的训练成本。
由上所述,本发明实施例涉及的基于预训练模型的无监督日志异常检测方法,首先通过预训练模型提取日志序列的深度特征表示;然后,使用预训练模型的分类器与基于层次的聚类构建一个伪标签混合投票器,对未标记的日志序列分配伪标签,并更新预训练模型参数;由于预训练模型可以使用大量已有数据进行训练,避免数据过少所导致的模型分类效果较差的问题;其次基于LSTM预训练模型能有效地提取日志时序序列的潜在特征,从日志序列中提取共有特征;相较于现在大多数方法采用一定量标签的异常数据微调预训练模型更新参数的方法,使用无监督的聚类方法与预训练模型分类器混合投票的形式对其进行自动化标记标签,从而将其作为训练数据,更新预训练模型参数的方法,避免了人工标记数据集的时间成本,且达到理想的异常检测效果,相对于现有技术而言,本方法在进行日志序列异常检测时,其能够利用已知的源系统数据集,在不使用目标系统日志标签的前提下保障检测效果,降低标签标记成本。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其他实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种基于预训练模型的无监督日志异常检测方法,其特征在于,包括以下步骤:
S1、日志收集:收集来自不同系统产生的日志数据集,日志数据集包括源系统日志集和目标系统日志集,其中所述源系统日志集已经包含标签;
S2、日志预处理:将所述日志数据集先后进行日志解析、日志向量化以及日志序列化处理;
S3、构建预训练模型:调用LSTM与全连接层模型,将所述有标签源系统日志向量序列作为所述LSTM与全连接层模型的输入数据,进行模型训练,将训练好的模型作为所述预训练模型;
S4、混合模型投票伪标签:通过所述LSTM有效提取出所述无标签目标系统日志向量序列的深度特征向量表示;随后构建一个基于层次聚类HDBSCAN的分类器辅助原有预训练模型的全连接层,投票预测筛选出置信度高的日志向量序列作为带伪标签目标系统日志集;
S5、微调预训练模型:利用所述带伪标签目标系统日志集,重新输入到所述预训练模型微调LSTM模型的参数;
S6、在线异常检测:将目标系统日志向量序列输入到微调后的预训练模型中,通过全连接层输出正常日志消息序列以及异常日志消息序列,完成异常检测。
2.根据权利要求1所述的基于预训练模型的无监督日志异常检测方法,其特征在于,在所述步骤S2中,所述日志解析、日志向量化以及日志序列化处理的操作具体为:
S201、日志解析处理:将所述日志数据集中半结构化的原始日志消息转换为结构化的日志模板形式;
S202、日志向量化处理:随后将每条原始日志映射到日志模板中,通过日志向量化手段将日志模板转换成日志模板向量;
S203、日志序列化处理:最后通过滑动窗口将所述源系统日志集以及所述目标系统日志集中的日志数据分别转化为有标签源系统日志向量序列以及无标签目标系统日志向量序列。
3.根据权利要求2所述的基于预训练模型的无监督日志异常检测方法,其特征在于,在所述步骤S202中,所述日志模板向量转换的具体步骤为:
使用向量化方法将日志模板中的单词转换为向量形式表示,随后通过词向量求和平均的方法,得到日志模板向量;
所述向量化方法包括:WORD2VEC、LSA、STR2VEC和GLOVE算法;其中所述GLOVE是一种生成词向量方法,具体操作为:利用全局统计特征与局部上下文特征,有效捕捉词义相近的词,使其单词的词向量相似度尽可能接近单词间词义相似度。
6.根据权利要求1所述的基于预训练模型的无监督日志异常检测方法,其特征在于,在所述步骤S4中,所述混合模型投票伪标签的步骤具体为:
S401、将无标签目标系统日志向量序列输入所述预训练模型,利用所述预训练模型的LSTM得到日志深度特征向量,通过已经训练好的全连接层得到预训练模型标签La和概率Pa;
S402、同时将所述日志深度特征向量进行基于层级聚类HDBSCAN处理产生无监督模型标签Lb和概率Pb;
S403、通过上述预训练模型标签和无监督模型标签及其概率值的比较投票预测筛选出带伪标签目标系统日志集。
7.根据权利要求6所述的基于预训练模型的无监督日志异常检测方法,其特征在于,所述投票预测筛选的具体规则为:
若所述HDBSCAN与所述全连接层预测相同时,则认定该日志向量序列可信,将其加入所述带伪标签目标系统日志集中;
若所述HDBSCAN与所述全连接层预测相左时,为所述预训练模型的分类器与所述HDBSCAN分别设置一个高阈值THa与THb,通过判断预测概率值是否高于所述高阈值:若预测概率值高于所述高阈值,则将该日志向量序列加入所述带伪标签目标系统日志集中。
8.根据权利要求7所述的基于预训练模型的无监督日志异常检测方法,其特征在于,所述高阈值THa与THb的预设标准高于所述预训练模型以及所述HDBSCAN原始设置的阈值标准。
9.根据权利要求7所述的基于预训练模型的无监督日志异常检测方法,其特征在于,所述投票表达公式具体为:
La==Lb||Pa>THa||Pb>THb。
10.根据权利要求7所述的基于预训练模型的无监督日志异常检测方法,其特征在于,所述HDBSCAN用以使用最小生成树构建点与点之间的层次数模型;根据离群点的距离计算出一个离群点分数,该分数介于0-1之间,分数越高,该点成为异常值的可能性就越大。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111429926.9A CN114912500A (zh) | 2021-11-29 | 2021-11-29 | 一种基于预训练模型的无监督日志异常检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111429926.9A CN114912500A (zh) | 2021-11-29 | 2021-11-29 | 一种基于预训练模型的无监督日志异常检测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114912500A true CN114912500A (zh) | 2022-08-16 |
Family
ID=82763355
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111429926.9A Pending CN114912500A (zh) | 2021-11-29 | 2021-11-29 | 一种基于预训练模型的无监督日志异常检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114912500A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115604003A (zh) * | 2022-10-14 | 2023-01-13 | 浙江工业大学(Cn) | 一种基于程序日志数据的系统异常检测方法 |
CN115941357A (zh) * | 2023-01-09 | 2023-04-07 | 北京安帝科技有限公司 | 基于工业安全的流量日志检测方法、装置与电子设备 |
CN116484260A (zh) * | 2023-04-28 | 2023-07-25 | 南京信息工程大学 | 一种基于双向时间卷积网络的半监督日志异常检测方法 |
CN116910592A (zh) * | 2023-09-13 | 2023-10-20 | 中移(苏州)软件技术有限公司 | 日志检测方法、装置、电子设备及存储介质 |
CN117041019A (zh) * | 2023-10-10 | 2023-11-10 | 中国移动紫金(江苏)创新研究院有限公司 | 内容分发网络cdn的日志分析方法、装置及存储介质 |
CN118133207A (zh) * | 2024-04-30 | 2024-06-04 | 苏州元脑智能科技有限公司 | 跨领域日志异常检测模型构建方法、装置、设备及介质 |
-
2021
- 2021-11-29 CN CN202111429926.9A patent/CN114912500A/zh active Pending
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115604003A (zh) * | 2022-10-14 | 2023-01-13 | 浙江工业大学(Cn) | 一种基于程序日志数据的系统异常检测方法 |
CN115604003B (zh) * | 2022-10-14 | 2024-04-05 | 浙江工业大学 | 一种基于程序日志数据的系统异常检测方法 |
CN115941357A (zh) * | 2023-01-09 | 2023-04-07 | 北京安帝科技有限公司 | 基于工业安全的流量日志检测方法、装置与电子设备 |
CN115941357B (zh) * | 2023-01-09 | 2023-05-12 | 北京安帝科技有限公司 | 基于工业安全的流量日志检测方法、装置与电子设备 |
CN116484260A (zh) * | 2023-04-28 | 2023-07-25 | 南京信息工程大学 | 一种基于双向时间卷积网络的半监督日志异常检测方法 |
CN116484260B (zh) * | 2023-04-28 | 2024-03-19 | 南京信息工程大学 | 一种基于双向时间卷积网络的半监督日志异常检测方法 |
CN116910592A (zh) * | 2023-09-13 | 2023-10-20 | 中移(苏州)软件技术有限公司 | 日志检测方法、装置、电子设备及存储介质 |
CN116910592B (zh) * | 2023-09-13 | 2023-11-24 | 中移(苏州)软件技术有限公司 | 日志检测方法、装置、电子设备及存储介质 |
CN117041019A (zh) * | 2023-10-10 | 2023-11-10 | 中国移动紫金(江苏)创新研究院有限公司 | 内容分发网络cdn的日志分析方法、装置及存储介质 |
CN117041019B (zh) * | 2023-10-10 | 2024-01-02 | 中国移动紫金(江苏)创新研究院有限公司 | 内容分发网络cdn的日志分析方法、装置及存储介质 |
CN118133207A (zh) * | 2024-04-30 | 2024-06-04 | 苏州元脑智能科技有限公司 | 跨领域日志异常检测模型构建方法、装置、设备及介质 |
CN118133207B (zh) * | 2024-04-30 | 2024-08-06 | 苏州元脑智能科技有限公司 | 跨领域日志异常检测模型构建方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114912500A (zh) | 一种基于预训练模型的无监督日志异常检测方法 | |
CN107294993B (zh) | 一种基于集成学习的web异常流量监测方法 | |
WO2021139235A1 (zh) | 系统异常检测方法、装置、设备及存储介质 | |
US20220405592A1 (en) | Multi-feature log anomaly detection method and system based on log full semantics | |
CN111178456B (zh) | 异常指标检测方法、装置、计算机设备和存储介质 | |
CN111552609B (zh) | 一种异常状态检测方法、系统、存储介质、程序、服务器 | |
Gemaque et al. | An overview of unsupervised drift detection methods | |
CN109117883B (zh) | 基于长短时记忆网络的sar影像海冰分类方法及系统 | |
Yuan et al. | Learning-based real-time event identification using rich real PMU data | |
Perini et al. | Quantifying the confidence of anomaly detectors in their example-wise predictions | |
CN111612041A (zh) | 异常用户识别方法及装置、存储介质、电子设备 | |
CN114844840B (zh) | 一种基于计算似然比的分布外网络流量数据检测方法 | |
CN116451142A (zh) | 一种基于机器学习算法的水质传感器故障检测方法 | |
CN110912917A (zh) | 恶意url检测方法及系统 | |
CN118052558B (zh) | 基于人工智能的风控模型决策方法及系统 | |
Zhang et al. | Automatic Traffic Anomaly Detection on the Road Network with Spatial‐Temporal Graph Neural Network Representation Learning | |
Zhang et al. | Robust KPI anomaly detection for large-scale software services with partial labels | |
Glavind et al. | On a simple scheme for systems modeling and identification using big data techniques | |
Xu et al. | TLS-WGAN-GP: A generative adversarial network model for data-driven fault root cause location | |
Yu et al. | Partial label learning with emerging new labels | |
CN112039907A (zh) | 一种基于物联网终端评测平台的自动测试方法及系统 | |
Liu et al. | Valid probabilistic anomaly detection models for system logs | |
CN115964478A (zh) | 网络攻击检测方法、模型训练方法及装置、设备及介质 | |
Guo et al. | Combining imbalance learning strategy and multiclassifier estimator for bug report classification | |
Li et al. | Abnormal line loss identification and category classification of distribution networks based on semi-supervised learning and hierarchical classification |
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 |