异常检测是由硬件和软件组成的复杂分布式系统的一个重要问题。全面了解此类系统的异常检测需求和挑战对系统的安全性至关重要,尤其是在实际部署中。虽然已经有许多不同的研究领域和应用领域来处理这个问题,但很少有人试图对这种系统进行深入的研究。大多数异常检测技术都是为特定的应用领域专门开发的,而其他的则更为通用。在这项综述中,我们探索了基于图的算法在识别和缓解复杂的分布式非均匀系统中不同类型的异常方面的巨大潜力。我们主要关注的是,当应用于分布在复杂分布式系统中的异构计算设备时,提供对图的深入研究。本研究分析、比较和对比了该领域的最新研究文章。首先,我们描述了真实世界分布式系统的特征,以及在这样复杂的网络中异常检测的具体挑战,例如数据和评估、异常的性质和真实世界的需求。稍后,我们将讨论为什么可以在此类系统中使用图以及使用图的好处。然后,我们将适当地深入研究最先进的方法,并突出他们的优势和弱点。最后,我们评估和比较这些方法,并指出可能改进的地方。
异常检测是指在数据或系统中发现与预期行为[1]不匹配的异常行为或模式。换句话说,系统已知的正确行为中的非良性变化可以被检测为异常。由于分布式异构系统的特性,异常检测是其关键。在这样的系统中,不同的组件,从传感器这样的小变化,一直工作到大型组件,如控制设施,以实现系统的总体目标。所有这些组件都分布在一个大网络中;因此,这个词是分布式的,而它们在结构和数据产生方面是不同的,因此,这个词是异构的。
许多分布式异构系统在关键和/或重要领域(如发电和配电系统)运行。因此,它们的安全性和正确性至关重要。漏洞可以在这些系统的每个方面和不同的抽象层次中看到;从系统或网络中存在问题的单个组件,到发现这些组件相互连接以完成更高级任务的异常或不正常情况。表1显示了几种分布式异构网络及其可能的异常来源。在这些系统中,异常检测必须满足许多要求,这使得任务更加复杂。考虑到异常的性质,异常必须通过处理大量数据来检测,这使得检测异常是一项具有挑战性的任务,而且现实世界的设置也有限制。
近年来,神经网络已经显示出了巨大的潜力,并得到了极大的探索。他们开辟了新的途径,增加了对扩展深度学习方法的兴趣,用于异常检测[2],[3]。异常检测带来了一些实际的挑战,使得采用深度学习算法变得困难。在异常检测的学习方法中,数据以图的形式表示以提取更多信息(如关系特征)的应用越来越多。然而,图可以是不规则的;例如,一个图可能有大小可变的无序节点,并且/或者图中的节点可能有不同数量的邻居。因此,在图像处理等领域中,一些重要的操作(如正则卷积)容易计算,因此很难应用到图域[4]。此外,现有机器学习算法的一个核心假设是实例彼此独立。这个假设对于图数据来说是没有意义的,因为每个实例(节点)都通过链接和交互与其他实例(节点)相关。这导致整个研究领域都在探索图表在这种背景下的使用。
现有的综述主要是将异常检测作为一个单独的问题来处理,或者应用于特定的领域,如社交媒体互动、网络流量、推荐系统等。一些研究工作主要是基于图学习[5]的异常检测。一些调查侧重于异常检测的具体应用,如[6]。少数论文关注大数据异常检测及其挑战[7],[8]。此外,还有大量的勘探使用深度学习技术[2],[3],[9],[10],[11]来处理一般的异常检测。然而,这些工作都没有单独研究如何利用图来检测现实世界中的异构分布式系统中的异常。
本次综述的主要重点是全面介绍基于图的解决异常检测问题的技术现状。特别是,我们关注实时复杂的分布式系统,并对这些系统进行定性建模,以识别和分析利用图的优势进行异常检测的各种方法。简而言之,我们在此次综述中做出了以下显著贡献:
基于图的异常检测算法
将联邦学习应用于两个分布式集群(局域网和传感器集群)的异常检测。这里N是连接到联邦云服务器的集群数量。每个网络都有自己的测试和训练数据集、本地存储和丢失功能。服务器接收来自所有网络局部模型的各个权值,然后根据它们的可用图属性对它们进行聚合,同时返回全局权值。
用于异常检测的图自动编码器网络。有两个恶意用户(相当于网络图中的异常节点)连接到网络中。将网络图输入自编码器,计算节点和边缘的重构损失。在这个简单的例子中,只需要将重建损失与一个恒定的阈值进行比较,就可以检测到异常,但是这个过程可以更加先进和精确。
在这个图中,我们已经将SL-GAD[133]框架应用于在2.3节中讨论的LAN概念用例。(A)是图视图采样模块,选择目标节点,对两个子图进行采样。(B)是生成型和对比型辨别模块。首先,将目标节点和两个子图提供给GNN编码器,并创建图嵌入。在下一步,两个不同的目标,鉴别器和回归器试图捕获图结构和属性中的异常。生成回归模块用于捕获每个节点属性中的异常,而鉴别器模块负责发现图结构中的异常。最后,在(C)中,对比分数和生成分数相结合,计算出最终的异常分数。