中文

基于孪生网络检测软件执行日志中的异常

软件工程 2024-08-06 v1

摘要

日志是半结构化文本文件,表征软件运行时的执行路径与状态。因此,检测软件日志中的异常反映了软件执行路径或状态中的异常。这已成为软件工程中值得关注的问题。我们如同许多先前工作使用 LSTM,并在 LSTM 之上提出一种基于孪生网络(Siamese network)的新型异常检测方法。本文还在 Hadoop 分布式文件系统(HDFS)日志数据集上提供了对该方法的可靠验证。据我们所知,所提方法在同一数据集上以 0.996 的 F1 分数优于其他方法,从而在该数据集上取得新的 SOTA 性能。除主要方法外,我们引入一种新颖的训练对生成算法,将生成的训练对减少 3000 倍,同时保持 F1 分数,仅从 0.996 轻微衰减至 0.995。此外,我们提出一种通过将孪生网络与传统前馈神经网络结合的混合模型,以使端到端训练成为可能,减少搭建基于深度学习的日志异常检测器的工程投入。进而,我们通过在与合成演化的日志序列上评估模型来检验方法对日志演化的鲁棒性;在 20% 噪声比下获得 0.95 的 F1 分数。最后,我们深入探析孪生网络的一些附带益处。据此,我们引入一种在运行时无需标签要求即可监控日志演化的方法。此外,我们呈现一种便于人工管理日志异常检测的可视化技术。

关键词

引用

@article{arxiv.2102.01452,
  title  = {Detecting Anomalies in Software Execution Logs with Siamese Network},
  author = {Shayan Hashemi and Mika Mäntylä},
  journal= {arXiv preprint arXiv:2102.01452},
  year   = {2024}
}