17-Long Short-Term Memory based Operation Log Anomaly Detection
Long Short-Term Memory based Operation Log Anomaly Detection
摘要:
长短期记忆(LSTM)体系结构是一种捕捉任意长度序列中的长期时间依赖关系的重要方法。此外,堆叠LSTM (S-LSTM:将递归LSTM层添加到现有LSTM网络的隐含层形成)具有稀疏表示的快速学习时间行为的能力。为了将此方法应用于异常检测,我们将在1分钟时间间隔内发生的正常和异常事件的运行日志样本建模为时间序列,目的是检测和分类正常或异常事件。为了选择合适的LSTM网络,利用网络安全数据挖掘大赛(CDMC2016)提供的数据集,对各种网络参数和网络结构进行实验。实验运行到1000个时代,学习速率在0.01-05范围内。S-LSTM网络架构在CDMC2016提供的真实测试数据上实现了最高的精度0.996和假阳性率0.02,显示了其优势。
1、介绍
云基础设施目前很受关注,许多信息技术(IT)公司大多采用云基础设施,而不是构建它们自己的单一或分布式IT基础设施。这背后的主要原因可能是计算资源更有弹性、更可靠、更方便,而且对用户收费更低。它被亚马逊(Amazon)、微软(Microsoft)、谷歌等顶级It公司采用,并在很大程度上受益。尽管有这些巨大的优势,预测系统故障仍然是主要的重要任务,否则它可能会导致资源的性能下降或云基础设施内资源的整个停机。系统故障可能由各种原因引起,如软件缺陷、硬件故障、攻击和错误配置。这就需要一种新的机制来提高云基础设施中构件的可靠性。
每个系统生成一个事件序列。事件序列是一个特定系统的特征。这些要么是正常的,要么是异常的,每一秒、每一分、每一小时都会发生。异常是指由于故意或非故意的故障而频繁发生的事件。此外,异常事件不遵循规律的行为模式。异常事件作为临界事件进行检查。这些关键事件代表了系统的特征。
虚拟化是一种在一台机器上采用多个操作系统(OS)的技术。它被广泛应用于大数据中心和集群计算基础设施,主要用于创建和运行多种服务,以提高硬件资源的利用率。每个系统生成自己的系统事件,并共同工作以感染系统资源或整个系统。硬件资源是有限的,这不能将请求的资源一直分配给虚拟化。各种虚拟化产生的事件是不同的。对这些事件进行分析以检测系统故障,对维护系统稳定具有重要意义。此外,通过向网络管理员发送信号,可以防止异常事件发生,并在异常事件发生后恢复资源。
系统日志或日志文件存放系统事件。日志文件是了解系统运行时状况和特征的丰富信息来源。它们是获取系统故障信息的唯一途径。异常检测是识别和分类系统日志中异常事件和正常事件的常用技术。由于它在各个领域都是一种基础方法,因此得到了研究团体的广泛研究,其中最重要的是在网络安全应用中,主要是入侵检测、欺诈检测、故障隔离和许多其他应用[2]。
商业系统中存在的异常检测解决方案仅仅是基于阈值的,或者主要使用累积和(CUSUM)和加权移动平均(EWMA)的统计方法来识别异常事件模式[3]的隐藏分布。这两种方法都是参数化的,需要一个适当的时间间隔值来实现显著的性能。此外,这些方法可以成功地检测简单的异常模式表示为计数和分布。另一方面,现有的异常检测方法大多集中在单点[4]上。他们没有真正利用过去的信息来确定未来的事件是正常的还是异常的。为了克服这些问题,我们使用了长-短期记忆(LSTM)。LSTM是时间序列数据建模中最重要的方法,它可以捕获跨时间步的长期时间依赖性。它在各种长期存在的人工智能(AI)任务[5]上表现良好。本文旨在将这些性能传输到CDMC2016 1任务,真实世界的操作日志异常检测中。
论文的其余部分按以下方式组织。第二部分论述了选择相关的异常检测,第三部分给出了数学信息,重新当前神经网络(RNN)和短期记忆,它们是如何训练和如何采用基于模型预测系统故障使用LSTM创建的网络日志异常数据与给定的操作。第四节介绍了CDMC 2016任务的细节,LSTM网络的参数调优,包括网络结构,提出的异常检测和评估结果的体系结构,最后在第五节总结了一篇论文,并给出了结论和未来的工作方向。
2、相关工作
异常检测适用于不同区域的各种任务。因此,它已成为一个生动的研究。研究人员引入了许多概念和方法来处理异常检测。本节的目的是简要讨论前面介绍的异常检测方法。
近年来,通过分析系统日志来发现异常事件的方法得到了广泛的应用。[6]研究了统计方法和机器学习方法中的异常检测方法。在[7]中简要概述了当今研究人员探测异常事件所采用的方法。作者提出了一个序列模式挖掘问题,并由[9]、[10]进行了进一步的研究。[11]提出了基于先验的方法,特别是广义序列模式算法来寻找长度为1的候选项。他们根据支持率和票数忽略了候选人。对于长度为n的候选项,算法需要扫描数据库n次。由于较高的计算成本和较长的时间,这种方法的性能非常有限。[12]提出了一种基于模糊集的解决方案,该方案学习时序信息中的时变模式。[13]引入了时间模式搜索,在历史数据中搜索时变模式。
[14]使用隐马尔可夫模型(HMM)对来自syslog的事件序列进行建模,以检测关键事件。此外,他们还用真实的日志系统数据展示了模型的有效性。他们还声明,基于HMM的混合日志异常检测模型作为事件日志文件的基线系统,包括系统调用、命令行、Web访问日志。[15]提出了一种新的基于HMM的潜在数据异常检测方法。他们声称,他们的方法在真实序列数据上优于单类支持向量机。[16]使用朴素贝叶斯和回归神经网络(RNN)进行软件日志分析,对可比日志分析平台进行了实验分析。他们的结论是,RNN体系在所有的实验案例中都优于朴素贝叶斯,并且所提出的系统能够有效地根据过去的序列信息预测序列的下一个单元。
讨论的方法主要集中在单点异常上。在处理集体异常检测时,需要利用过去的信息来评估当前的时间步长值。在整个数据集中有关的一组相关异常事件称为集合异常[2]。集体异常中的单个数据点通常不被认为是异常。在集体异常中出现的一系列单点可以看作是一次异常事件。LSTM以建模时间序列数据而闻名,它可以方便地将过去的信息与当前事件的时间步长值相关联。这个机制之后是[17][18][19]。[17]通过将任务相关数据建模为时间序列,讨论了长短时记忆对异常或故障检测的有效性。他们用正常的数据训练LSTM网络,并把它们用作预测器。跨时间步的预测误差建模为多元高斯分布。这种新形成的分布被他们用来估计异常行为。在心电、航天飞机、电力需求和多传感器发动机数据集上对该方法的性能进行了评估。[19]讨论了利用深度神经网络进行日志文件异常检测的各种RNN机制。他们使用了超大规模集成(VLSI)设计过程的实时日志,日志的长度从500到20000不等。[18]采用LSTM编译码方法进行多传感器异常检测。他们讨论了所提议的方法对电力需求、航天飞机和心电图的有效性,以及两个真实世界的发动机数据集,包括可预测和不可预测的特征。
3、背景
本节提供了关于递归神经网络及其变体的必要背景细节,它们是如何训练的,以及如何映射到操作日志异常检测任务上的思想。