Skip to main content
QUICK REVIEW

[论文解读] Experience Report: Deep Learning-based System Log Analysis for Anomaly Detection

Zhuangbin Chen, Jinyang Liu|arXiv (Cornell University)|Jul 13, 2021
Software System Performance and Reliability参考文献 57被引用 63
一句话总结

本论文对六种基于 DL 的日志异常检测器进行了综述和基准评测(四个无监督、两个有监督),使用两个公开数据集(HDFS、BGL),发布了一个开源工具包,并分析了准确性、鲁棒性和效率,结果显示有监督方法通常优于无监督方法,且日志语义提升了性能。

ABSTRACT

Logs have been an imperative resource to ensure the reliability and continuity of many software systems, especially large-scale distributed systems. They faithfully record runtime information to facilitate system troubleshooting and behavior understanding. Due to the large scale and complexity of modern software systems, the volume of logs has reached an unprecedented level. Consequently, for log-based anomaly detection, conventional manual inspection methods or even traditional machine learning-based methods become impractical, which serve as a catalyst for the rapid development of deep learning-based solutions. However, there is currently a lack of rigorous comparison among the representative log-based anomaly detectors that resort to neural networks. Moreover, the re-implementation process demands non-trivial efforts, and bias can be easily introduced. To better understand the characteristics of different anomaly detectors, in this paper, we provide a comprehensive review and evaluation of five popular neural networks used by six state-of-the-art methods. Particularly, four of the selected methods are unsupervised, and the remaining two are supervised. These methods are evaluated with two publicly available log datasets, which contain nearly 16 million log messages and 0.4 million anomaly instances in total. We believe our work can serve as a basis in this field and contribute to future academic research and industrial applications.

研究动机与目标

  • 由于现代软件系统的规模和复杂性,动机为基于 DL 的日志异常检测需求。
  • 提供对代表性的神经网络检测器的全面比较(六种方法中包含五个模型)。
  • 提供一个开源工具包,以便在工业界和研究中采用和复现。
  • 在准确性、鲁棒性和效率方面,对 DL 基于的检测器与传统 ML 基线进行基准比较。

提出的方法

  • 评审并分类六种基于 DL 的日志异常检测器(四个无监督、两个有监督)。
  • 将损失函数表述为预测、重构或有监督目标,以引导模型学习。
  • 应用日志解析和日志嵌入,将半结构化日志转换为适用于 DL 模型的序列。
  • 在两个公开数据集(HDFS 和 BGL)上进行评估,使用精确度、召回率和 F1 作为指标。
  • 发布一个基于 PyTorch 的开源工具包,实现这六种方法,便于复用。

实验结果

研究问题

  • RQ1在标准日志数据集上,基于 DL 的日志异常检测器在准确性、鲁棒性和效率方面的比较如何?
  • RQ2将日志语义信息纳入对检测器性能的影响是什么?
  • RQ3在日志异常检测实践中,有监督与无监督的 DL 方法的比较如何?
  • RQ4训练数据中的异常比率对检测器性能的影响是什么?

主要发现

  • 有监督的 DL 方法在两个数据集上通常优于无监督方法(例如,有监督方法的 F1 约为 0.97–0.98)。
  • 在无语义设定下,未监督的 LSTM 在 HDFS 上达到最佳 F1 为 0.944,在 BGL 上为 0.961。
  • 引入日志语义性提升了大多数模型的性能;在 BGL 上,带语义的情况下,CNN 的最佳 F1 达到 0.989,无监督设置下 LSTM 为 0.967。
  • 日志语义性对无监督方法尤其有益,包括 Autoencoder 和 LSTM,在某些设定下 F1 提升显著(例如 Autoencoder 在 F1 上大约提升 15%)。
  • 与传统 ML 基线相比,基于 DL 的方法通常表现更好,在两个数据集上,若干传统方法的排名落后于 DL 方法。
  • 提供一个开源工具包(deep-loglizer),以促进六种检测器的重用和复现。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。