本发明专利技术提供一种日志语言模型训练方法,接受日志的输入并构建对应的日志语料库,构造数据集训练相应的日志语言模型,使用日志语言模型对日志模板进行向量表征,将得到的日志模板向量应用到异常检测的下游任务训练中,截取固定序列长度的日志段落用于构建句子对,即将固定长度的日志段落随机划分为两个长句,分别为句子A和句子B,将日志语料重复构造十次形成数据集。本发明专利技术能够对不同系统的日志训练对应的日志语言模型,提升日志词向量的语义表达能力;生成的日志模板向量输入到日志异常检测、日志分类等下游任务模型中进行训练,提升了模型的效果。型的效果。型的效果。
【技术实现步骤摘要】
一种日志语言模型训练方法及系统
[0001]本专利技术涉及人工智能
,特别是涉及一种日志语言模型训练方法及系统。
技术介绍
[0002]日志作为一种由时间戳和文本信息组成的非结构化时序文本数据,实时记录了软件系统运行的状态信息,是运维人员剖析系统的异常行为与错误的重要依据。近年来,随着人工智能的不断发展,统计、数据挖掘和机器学习等技术被广泛用于日志的自动化分析,以协助和促进应用的监控、管理和故障排查。
[0003]在AIOps(智能运维)领域中,日志异常检测指的是使用机器学习方法,识别日志数据中不符合预期行为的系统异常模式,发掘异常模式背后潜在的软件故障。与传统的人工处理日志数据方法相比,该研究可以帮助应用系统进一步实现自动化运维工作,减轻人力资源的负担,此外还能帮助应用系统尽快发现异常情况,从而在最短的时间内做出响应,减轻系统因异常情况带来的损失。
[0004]目前日志异常检测方法一般的通用步骤:首先按照标准对日志进行分词(如时间或者标识符),之后进行日志解析,将日志消息解析为日志模板,接下来从解析后的日志中提取特征,将日志模板转换为对应的模板向量,最后再采用不同的模型进行异常检测。其中,特征提取是异常检测的关键,而语义向量又是异常检测中最常用的特征,选择不同的语义向量提取方法会直接影响异常检测模型的效果。
[0005]近年来,以BERT为代表的预训练语言模型发展迅速,其对不同语言的表征能力远超过去的所有语言模型。当前关于该领域的研究主要分为两方面,一是针对语言模型本身结构的改进,如更换预训练任务,在词嵌入层添加新的特征,自注意力机制优化等;二是针对不同的下游任务设计不同的微调方案。这些研究都是围绕自然语言文本进行的,在日志领域还未有人研究出一套可用性强的日志语言模型训练方案。
[0006]由于日志语句是半结构化的,且与自然语言的表达方式有差异,如果直接将其他领域数据训练的语言模型直接用于日志领域,则导致对日志语义信息的表征能力较弱,制约了下游任务(如异常检测)的表现。因此,有必要提出一种日志语言模型训练方法,可以对日志语言进行更准确的表征,从而提高异常检测等下游任务的效果。
技术实现思路
[0007]鉴于以上所述现有技术的缺点,本专利技术的目的在于提供一种日志语言模型训练方法及系统,用于解决现有技术中日志语言表征不准确,异常检测效果较差的问题。
[0008]为实现上述目的及其他相关目的,本专利技术提供一种日志语言模型训练方法,接受日志的输入并构建对应的日志语料库,构造数据集训练相应的日志语言模型,使用日志语言模型对日志模板进行向量表征,将得到的日志模板向量应用到异常检测的下游任务训练中,其中数据集构造具体步骤如下:
[0009]S1、对日志语料库内日志语料进行分词,然后遍历日志语料;
[0010]S2、截取固定序列长度的日志段落用于构建句子对,即将固定长度的日志段落随机划分为两个长句,分别为句子A和句子B;
[0011]S3、计算概率,产生0~1随机数,当数值小于0.5,将句子B替换为其它日志段落中的句子,否则维持句子B不变;拼接句子A和句子B并添加[CLS]和[SEP]标识符,分别构成NSP任务的正例/反例;
[0012]S4、步骤S3中的句子对中每个词对应的位置打乱,选择词序列排序前15%的句子对进行掩码,每个词有80%的概率替换为[mask]标签,10%的概率替换为词表中的任意词,10%的概率保持原词不变;将被替换的词在词表中的索引作为标签用于MLM任务的训练;
[0013]S5、将日志语料重复构造十次形成数据集。
[0014]于本专利技术的一实施例中,还包括步骤S5后的语言模型训练,具体步骤如下:
[0015]S6、在通用预训练语言模型的基础上固定预训练语言模型的参数,使其不参与梯度计算;
[0016]S7、构建三个适配器用于接收预训练语言模型第0、6和11层的输出向量以及前一个适配器的输出向量;
[0017]S8、得到两个维度为768维的初始输出向量,将两个初始输出向量连接后输入到全连接层进行降维,最终得到维度为768的向量作为该语言模型的最终输出向量,由所述最终输出向量形成所述日志模板向量。
[0018]上述实施例的有益效果在于:将预训练模型的全部参数进行固定,在模型外构建可插入的适配器用于接收模型中部分层的输出,通过调整适配器的参数得到需要的日志语言模型,在维持模型语义提取能力的基础上将模型训练时可调整的参数数量减少至原来的40%,提高了模型的参数利用率,同时减少了模型的训练时间。
[0019]于本专利技术的一实施例中,预训练语言模型训练时使用交叉熵函数计算损失,AdamW为优化器,适配器隐藏层维度为768维。
[0020]于本专利技术的一实施例中,其中构建对应的日志语料包括步骤S9,日志预处理,包括日志结构和变量类型的识别。
[0021]于本专利技术的一实施例中,还包括步骤S9之后的步骤S10,日志解析,根据步骤S9得到的日志结构以及变量类型对应的正则表达式,使用日志解析算法,提取日志模板。
[0022]于本专利技术的一实施例中,所述日志解析算法为Drain、Spell或LogMine。
[0023]上述实施例的有益效果在于:多种日志解析算法能够满足多种应用场景,增强适用性。
[0024]于本专利技术的一实施例中,步骤S4中的掩码采用bert
‑
base
‑
uncased、bert
‑
large或RoBERTa掩码式预训练模型。
[0025]为实现上述目的及其他相关目的,本专利技术还提供一种日志语言模型训练系统,基于上述日志语言模型训练方法,包括数据集构造模块,用于对日志语料库内日志语料进行分词,然后遍历日志语料;截取固定序列长度的日志段落用于构建句子对,即将固定长度的日志段落随机划分为两个长句,分别为句子A和句子B;计算概率,产生0~1随机数,当数值小于0.5,将句子B替换为其它日志段落中的句子,否则维持句子B不变;拼接句子A和句子B并添加[CLS]和[SEP]标识符,分别构成NSP任务的正例/反例;将句子对中每个词对应的位置打乱,选择词序列排序前15%的句子对进行掩码,每个词有80%的概率替换为[mask]标
签,10%的概率替换为词表中的任意词,10%的概率保持原词不变;将被替换的词在词表中的索引作为标签用于MLM任务的训练;将日志语料重复构造十次形成数据集。
[0026]还包括语言模型训练模块,用于在通用预训练语言模型的基础上固定预训练语言模型的参数,使其不参与梯度计算;构建三个适配器用于接收预训练语言模型第0、6和11层的输出向量以及前一个适配器的输出向量;得到两个维度为768维的初始输出向量,将两个初始输出向量连接后输入到全连接层进行降维,最终得到维度为768的向量作为该语言模型的最终输出向量,由所述最终输出向量形成所述日志模板向量。
[0027]上述实施例的有益效果在于:将预训练模型本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种日志语言模型训练方法,其特征在于,接受日志的输入并构建对应的日志语料库,构造数据集训练相应的日志语言模型,使用日志语言模型对日志模板进行向量表征,将得到的日志模板向量应用到异常检测的下游任务训练中,其中数据集构造具体步骤如下:S1、对日志语料库内日志语料进行分词,然后遍历日志语料;S2、截取固定序列长度的日志段落用于构建句子对,即将固定长度的日志段落随机划分为两个长句,分别为句子A和句子B;S3、计算概率,产生0~1随机数,当数值小于0.5,将句子B替换为其它日志段落中的句子,否则维持句子B不变;拼接句子A和句子B并添加[CLS]和[SEP]标识符,分别构成NSP任务的正例/反例;S4、步骤S3中的句子对中每个词对应的位置打乱,选择词序列排序前15%的句子对进行掩码,每个词有80%的概率替换为[mask]标签,10%的概率替换为词表中的任意词,10%的概率保持原词不变;将被替换的词在词表中的索引作为标签用于MLM任务的训练;S5、将日志语料重复构造十次形成数据集。2.根据权利要求1所述的日志语言模型训练方法,其特征在于,还包括步骤S5后的语言模型训练,具体步骤如下:S6、在通用预训练语言模型的基础上固定预训练语言模型的参数,使其不参与梯度计算;S7、构建三个适配器用于接收预训练语言模型第0、6和11层的输出向量以及前一个适配器的输出向量;S8、得到两个维度为768维的初始输出向量,将两个初始输出向量连接后输入到全连接层进行降维,最终得到维度为768的向量作为该语言模型的最终输出向量,由所述最终输出向量形成所述日志模板向量。3.根据权利要求2所述的日志语言模型训练方法,其特征在于,预训练语言模型训练时使用交叉熵函数计算损失,AdamW为优化器,适配器隐藏层维度为768维。4.根据权利要求1所述的日志语言模型训练方法,其特征在于,其中构建对应的日志语料包括步骤S9,日志预处理,包括日志结构和变量类型的识别。5.根据权利要求4所述的日志语言模型训练方法,其特征在于,还包括步...
【专利技术属性】
技术研发人员:田富龙,杜庆峰,何诚,吴嘉琦,
申请(专利权)人:上海鼎茂信息技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。