首页 > 其他分享 >一种全新的日志异常检测评估框架:LightAD

一种全新的日志异常检测评估框架:LightAD

时间:2023-12-04 14:47:16浏览次数:33  
标签:本文 检测 全新 LightAD 日志 异常 模型

本文分享自华为云社区《【AIOps】一种全新的日志异常检测评估框架:LightAD,相关成果已被软工顶会ICSE 2024录用》,作者:华为云PaaS服务小智 。

深度学习(DL)虽然在日志异常检测中得到了不少应用,但在实际轻量级运维模型选择中,必须仔细考虑异常检测方法与计算成本的关系。具体来说,尽管深度学习方法在日志异常检测方面取得了出色的性能,但它们通常需要更长的时间来进行日志预处理、模型训练和模型推断,从而阻碍了它们在需要快速部署日志异常检测服务的在线分布式云系统中的采用。

本文对现有的基于经典机器学习和深度学习方法的日志异常检测方法进行了实证研究,并提出了一种自动化日志异常检测评估框架LightAD。

1. 日志异常检测介绍

日志是AIOps领域需要处理的常见数据,是程序运行过程中由代码打印出的一些非结构化的文本信息,日志通常由时间戳和文本信息组成。日志实时记录了系统的运行状态,包括正常运行状态和故障发生时的状态。因此通过收集和分析日志,可以快速检测和定位出系统中存在的异常。

本文研究了深度学习方法在日志异常检测中与更简单技术相比的优越性,在五个公共的日志异常检测数据集上对轻量级传统机器学习方法(如KNN、SLFN)和深度学习方法(如CNN、NeuralLog)进行了全面的评估。

本文的研究结果表明,通过合适的数据处理方式,轻量级机器学习方法能够在时间效率和准确性方面都优于深度学习方法。为了评估深度学习方法的必要性,本文提出了一种自动化的日志异常检测模型评估框架LightAD。LightAD是一种基于贝叶斯优化器的优化训练时间、推断时间和性能得分的评估框架。通过自动化超参数调优,LightAD可以实现在日志异常检测模型之间进行公正的比较,使运维工程师能够针对不同的在线异常检测目标来选择合适的异常检测模型。

2. 对现有方法的全面评估

 

640 (3).png

深度学习方法除了本身拥有更多的参数量外,其使用的数据处理方式通常也比较耗时。例如,CNN方法需要使用日志解析工具对日志进行解析,NeuralLog需要用深度语言模型BERT来对日志进行处理。本文对轻量级传统机器学习方法采用了更高效的日志处理方式。

具体而言,本文在处理以日志块来聚合的数据集(如HDFS)时,从每个文本日志消息中提取标记,以空格分隔,并删除包含数字的标记。本文使用每个块的ID将日志消息分组成日志序列,并用事件频率对其进行编码。整个预处理工作流程如下图所示。

 

640 (4).png

640 (8).png

640 (9).png

3. 全新的日志异常检测评估框架:LightAD

为全面综合评估日志异常检测算法,本文提出了基于贝叶斯优化起的自动化算法优化和评估框架LightAD,LightAD结构如下图所示。本文首先准备了一组简单的基准模型及其初始的超参数空间,对于每个模型,本文会自动化的优化模型的超参数。通过综合考虑三个维度的模型收益打分:

(1)准确性

(2)每个日志序列的训练时间

(3)每个日志序列的推断时间

最终抉择出模型收益分数最高的异常检测算法。

640 (5).png

模型收益的多目标优化公式如下:

640 (6).png

下图是在去除重复数据的HDFS数据集上使用LightAD进行异常检测方法优化和评估的结果,最高模型收益的分数由黑色加粗标识。从图中可以看出,LightAD挑选出的模型都是轻量级的机器学习方法。

640 (7).png

4. 总结

本文来自华为云PaaS技术创新Lab和香港中文大学(深圳)贺品嘉助理教授团队合作项目成果产出,相关研究成果已被软件工程领域顶会ICSE 2024(CCF A类)正式录用,文章详细内容即将公开,敬请关注。

点击关注,第一时间了解华为云新鲜技术~

 

标签:本文,检测,全新,LightAD,日志,异常,模型
From: https://www.cnblogs.com/huaweiyun/p/17874849.html

相关文章

  • 戴森发布全新Airstrait吹风直发器,美发科技品类再添力作 —利用气流,吹干的同时拉直头发
    (2023年11月30日,上海)戴森今日重磅发布全新美发造型产品——戴森Airstrait™吹风直发器,作为戴森美发科技品类的又一创新力作,戴森Airstrait™吹风直发器再次革新行业,以全新的直发造型方式,真正帮助消费者实现无热损伤的“每日造型”。戴森Airstrait™吹风直发器是戴森气流技术的再次革......
  • 无法加载windows安装程序。发生内部错误。若要安装windows,请重新启动安装——it专员实
    无法加载windows安装程序。发生内部错误。若要安装windows,请重新启动安装——it专员实习生日志(2023.12.4)导航目录无法加载windows安装程序。发生内部错误。若要安装windows,请重新启动安装——it专员实习生日志(2023.12.4)导航遇到的困难/问题描述解决的经过与思路造成的原因解......
  • 单机ELK接收kafka日志环境搭建
    单机ELK接收kafka日志环境搭建1、安装elk单机环境参考以下链接:https://www.cnblogs.com/zuouncle/p/17332191.html2、搭建kafka下载kafka:https://archive.apache.org/dist/kafka/2.6.2/解压:tar-zxvfkafka_2.12-2.6.2.tgzmv kafka_2.12-2.6.2kafka创建文件夹:mkdir-p......
  • .NET 7(C#)配置使用log4net日志框架的方法
    .NET7(C#)中配置和使用log4net日志框架是一个涉及多步骤的过程。log4net是一个高度灵活且强大的日志记录库,可用于记录应用程序的运行时信息。它支持各种日志输出格式和目的地,如文件、数据库、控制台等。以下是在.NET7(C#)项目中配置和使用log4net的基本步骤:1.安装log4net......
  • python日志模块回顾
    日志模块配置文件logging.yamlversion:1formatters:simple:format:'[%(asctime)s%(thread)d][%(levelname)s]%(message)s'#日志内容的格式化,具体参数问GPT或百度dateformat:'%Y-%m-%d%H:%M:%S.%f'handlers:console:class:logging.StreamHand......
  • Logstash分析Nginx日志
    六、Logstash分析Nginx日志实现思路:1.将Nginx普通日志转换为json2.将Nginx日志的时间格式进行格式化输出3.将Nginx日志的来源IP进行地域分析4.将Nginx日志的user-agent字段进行分析5.将Nginx日志的bytes修改为整数6.移除没有用的字段,message、headers6.1架构......
  • centos查看日志文件内容,包含某个关键字的前后5行日志内容
    简述centos查看日志的几种方法centos查看日志文件内容,包含某个关键字的前后5行日志内容前情提示系统:一说部分截图、链接等因过期、更换域名、MD语法等可能不显示,可联系反馈(备注好博文地址),谢谢❤带有#号、删除线、不操作、不执行字样的为提示或者备份bash,实际不执行如果无法下载......
  • 【PUSDN】centos查看日志文件内容,包含某个关键字的前后5行日志内容,centos查看日志的几
    简述centos查看日志的几种方法centos查看日志文件内容,包含某个关键字的前后5行日志内容前情提示系统:一说部分截图、链接等因过期、更换域名、MD语法等可能不显示,可联系反馈(备注好博文地址),谢谢❤带有#号、删除线、不操作、不执行字样的为提示或者备份bash,实际不执行如果无法下载......
  • dump 日志收集与分析(jmap 和 jstack 工具)讲解与实战操作
    目录一、概述二、常见的dump工具三、dump可能会导致进程卡住风险(生产谨慎操作)四、安装JDK五、jmap介绍与示例讲解1)jmap介绍2)Kafka安装(单机)1、下载安装包2、配置环境变量3、配置kafka3、配置ZooKeeper4、启动kafka5、验证3)示例讲解【示例一】执行jmap命令查看内存使用情况【......
  • 日志模块python loguru
    日志模块pythonloguru下载pipinstallloguru开箱即用Loguru的主要概念是只有一个:loggerfromloguruimportloggerlogger.info("Thisisloginfo!")logger.warning("Thisislogwarn!")logger.error("Thisislogerror!")logger.debug("This......