基于深度学习的属性图异常检测综述

2022-10-18 01:03张伊扬钱育蓉陶文彬冷洪勇李自臣马梦楠
计算机工程与应用 2022年19期
关键词:节点深度模型

张伊扬,钱育蓉,陶文彬,冷洪勇,李自臣,马梦楠

1.新疆大学 软件学院,乌鲁木齐 830046

2.新疆大学 新疆维吾尔自治区信号检测与处理重点实验室,乌鲁木齐 830046

3.北京理工大学 计算机学院,北京 100081

4.广东水利电力职业技术学院 大数据与人工智能学院,广州 510635

在互联网及通信技术高速发展的背景下,信息的交互、影响以及人与人之间的关联变得更加密切,这种相互关系以及自身的属性信息以网络的形式所呈现,并表达为属性图结构存在于各种场景中,其中包括交通网络、引文网络、通信网络以及社交网络等。为了利用图结构数据解决实际问题,近年来各种图分析任务引起研究者极大的兴趣,例如链路预测[1-2]、异常检测[3-4]、社区检测[5]和节点分类[6-7]。在上述任务中,基于属性图的异常检测任务是最重要的研究方向之一,其充分考虑到各个节点之间的相互依赖性,利用图中所包含的结构信息和属性信息识别数据中不符合期望的异常行为模式,为金融欺诈、电信诈骗、网络入侵等多个领域的欺诈与异常行为识别提供了重要帮助。

早在1996年,Staniford-Chen等人[8]就开始通过面向图的方法实现网络入侵检测,Akoglu等人[9]对当时已有的图异常检测检测技术进行了全面的总结。在早期的工作中,传统方法已经可以对图结构数据的异常个体进行识别,然而其严重依赖于领域专家设计构建的手工特征和统计模型[10],并且利用浅层机制,缺乏捕获对象之间非线性特征的能力,无法高效处理属性图中包含的拓扑结构和属性信息。深度学习作为一种强大的工具,能够有效学习属性图数据的复杂性[11],提高了检测未知异常的能力,尤其是随着图神经网络[12]的发展,进一步丰富了深度学习在图数据挖掘中的能力,在提取图数据潜在的复杂模式中表现出良好的性能,因此,基于深度学习的属性图异常检测方法层出不穷。

本文主要总结现有的基于深度学习的属性图异常检测方法,分析各个模型的特点、优势以及存在的问题,并对后续研究进行展望,本文的贡献可归纳如下:

(1)概述普通图异常检测与属性图异常检测的特点及区别,整理了经典的属性图表示学习方法。

(2)归纳总结静态属性图和动态属性图异常检测中的深度学习方法,并对部分经典静态属性图异常检测算法的实验结果进行分析。

(3)讨论属性图异常检测的应用场景、存在的问题以及未来可能研究的方向,为后期研究提供参考。

1 研究概述

异常检测是一种数据挖掘过程,旨在识别数据集中偏离大多数数据的异常模式[13-14]。为了解决异常检测问题,过去的几十年里出现大量方法,尤其是在非结构化数据点集中发现异常值,但是未考虑到数据之间的依赖性。图数据提供一种强大的机制,可以有效捕获数据对象之间的长期相关性,在异常检测领域颇受关注。基于图的异常检测是将原始网络用图模型表达,结合图数据挖掘技术以及相关知识找到罕见图形对象的过程。本章对普通图、属性图的异常检测以及图表示学习方法进行简要概述。

1.1 基于普通图的异常检测

早期的图异常检测方法大多是针对普通图进行的,对于给定的普通图,它的唯一信息是图的结构,因此针对普通图的异常检测方法利用图的结构信息来发现异常模式,可大致分为四类:基于特征的、基于邻近性的、基于聚类的和基于社区检测的方法。

(1)基于特征的检测方法:利用图形表示来提取以图/节点为中心的结构特征,用来构造特征空间的异常检测,如ODDBALL[10]、GBKD-Forest[15]等。

(2)基于邻近性的检测方法:利用图的结构信息测量图中对象的接近度,捕捉对象之间的相关性,近邻对象被认为可能属于同一类,如SimRank[16]、ASCOS[17]等。

(3)基于聚类的检测方法:此类方法的主要思想是,将复杂图数据表示成低维特征向量,然后将其划分成不同簇,通过对象距离簇中心的距离识别异常,如INCAD[18]、文献[19]方法等。

(4)基于社区检测的方法:此方法依赖于在图中找到密集连接的邻近节点组,并找出跨社区连接的节点或边,如Embed[20]、CADA[21]等。

1.2 基于属性图的异常检测

普通图异常检测方法往往只利用单一的图结构信息进行检测,而生活中许多场景存在更丰富的图形表示。属性图中包含大量的属性特征,可以提供更多细节来描述网络中的每个元素。对属性图进行异常检测不仅要考虑到复杂的拓扑结构,还要考虑其含有的丰富属性,根据现有的方法可以将属性图异常检测方法分为基于传统的检测方法和基于深度学习的检测方法,下面分别对其分类进行介绍。

1.2.1 基于传统的属性图异常检测分类

传统的属性图异常检测方法根据现有文献可分为基于社区分析的方法、基于残差分析的方法和基于子空间选择的方法。

(1)基于社区分析的方法:通过观察同一社区内对象的属性值,或者根据变化的社区找出具有显著差异的对象来识别异常,如AMEN[22]、CODA[5]等。

(2)基于子空间选择的方法:首先探索属性子空间,然后在已经学习到的子空间中发现异常,如FocusCO[23]、ConSub[24]、GOutRank[25]等。

(3)基于残差分析的方法:通过矩阵分解方法系统模拟残差信息来识别异常,如Rader[26]、Anomalous[27]等。

这三类方法已有不少研究,但仍存在以下不足:(1)可能会受到子空间选择和浅层学习过程中相关过度开销计算的影响;(2)忽略了节点表示和属性之间的关系;(3)忽略了正常数据和异常数据之间的不平衡性。为了解决这些问题,基于深度学习的方法应运而生。

1.2.2 基于深度学习的属性图异常检测分类

本文对基于深度学习的属性图异常检测方法进行分类,首先根据其是否随着时间演化分为静态属性图和动态属性图两类,静态图可以表示为动态图在某一时间戳的快照,动态图也可以被视为由一序列图快照所构成。其次在静态图和动态图中分为基于深度神经网络的方法和基于图神经网络的方法两大类,如图1所示。

图1 基于深度学习的属性图异常检测分类Fig.1 Classification of attribute graph anomaly detection based on deep learning

面向静态属性图异常检测:给出静态属性图,查找“少且不同”或与大部分观察到数据模式显著不同的节点/边/子图。

面向动态属性图异常检测:动态属性图的结构或属性随时间不断发生变化,可能更改包括插入和删除顶点、边、子图以及修改属性[28]。其异常检测旨在给定一个属性图序列,从中找出:(1)对应变化事件的时间戳;(2)对变化贡献最大的top-k个节点/边/子图。

基于深度学习的属性图异常检测方法使用深度学习技术,分别针对静态图和动态图达到识别其中异常对象的目的。其通过图表示学习方法将属性图映射到潜在空间的低维向量,获得高质量的嵌入以充分支持属性图异常检测任务。

1.3 图表示学习方法

对图进行异常检测的关键前提是如何对其进行合理的表示学习,图表示学习方法是将原始图结构数据压缩为低维向量,同时保留图的信息[29]。基于属性图的表示学习方法,其学习到的嵌入应该最大限度保留结构和属性两种类型信息。根据已有文献,可以将现有方法大致分为三类:基于矩阵分解的方法、基于图神经网络的方法以及基于编解码的方法。本节对最经典的属性图表示学习方法进行分类总结,如表1所示[30-37]。

表1 经典的属性图表示学习方法Table 1 Classical attribute graph representation learning method

2 基于深度学习的属性图异常检测方法

基于深度学习的属性图异常检测方法经常使用深度神经网络(deep neural network,DNN)和图神经网络(graph neural network,GNN)模型来探索属性图的非线性和异常的无监督或半监督识别。本章从静态属性图异常检测和动态属性图异常检测两方面,分别介绍基于DNN及GNN的异常检测新方法。

2.1 静态属性图异常检测方法

2.1.1 基于深度神经网络的方法

近年来,DNN在异常检测领域得到广泛应用,其通过多层抽象来学习表示特征,能够针对复杂的模式[38]进行建模,为学习数据表示提供了坚实的基础。

Liang 等人[39]通过部分标记的属性图训练模型SEANO。模型由一个双输入双输出深度神经网络来归纳学习顶点嵌入,在顶点异常的情况下会淡化顶点属性输入,更多依赖邻域特征来预测。SEANO 可以通过结合邻域信息以及自适应学习聚合权重减轻异常值带来的噪声影响,并在表示学习同时检测检测异常节点。但是其通过标签数据进行训练,通常获取有标记的数据即困难又昂贵。

为了减轻异常标记数据带来的困扰,研究者进行了大量工作。生成性对抗网络(generative adversarial network,GAN)通过轮流训练判别器和生成器,令其相互对抗,来从复杂概率分布中采样,在捕捉数据分布方面体现了强大的有效性。

Chen 等人[40]提出了一种生成性对抗属性图异常检测框架GAAN,生成器从高斯噪声中生成假图节点,判别器准确地学习真实的数据分布,经过多轮迭代训练,从而有效提高判别器的识别能力。Ding 等人[41]同样应用GAN 的思想,提高了对未知数据异常的鉴别能力。为了考虑到多跳邻居信息,模型利用图差分网络从任意顺序邻域中学习异常节点表示。该模型架构如图2 所示,使用部分可观测的图进行训练,并以前馈的方式直接检测新图上的异常,有效解决了归纳式学习的问题,能够处理新的数据而无需重新训练模型。以上基于GAN 的方法通过对抗生成思想从复杂数据分布中采样,缓解了数据不平衡问题,但是难以训练,其训练优化过程稳定性较差。

图2 AEGIS模型结构Fig.2 Framework of AEGIS model

Bandyopadhyay 等人[42]则采用无监督学习方法,将两个平行自编码器分别用于节点的连接结构和属性,通过最小化重构误差训练,并利用同质性原则进行异常检测。此外,还专门设计了异常感知函数来量化节点的异常得分。该模型可以从每个节点全局、结构、社区三方面角度测量异常分数,但是其将属性和结构信息分开考虑,忽略了彼此之间的交互关系。

2.1.2 基于图神经网络的方法

图神经网络是用于图结构化数据的深度学习框架,因其聚合来自节点邻域信息的能力受到高度认可,包括图卷积网络(graph convolutional network,GCN)和图注意力网络(graph attention network,GAT)等,在属性图异常检测任务中均取得不错的效果。基于GNN的属性图异常检测普遍的通用框架如图3 所示,将GNN 图表示学习方法用于异常检测任务中,通过重构误差识别异常对象。

图3 基于GNN异常检测通用框架Fig.3 General framework for anomaly detection based on GNN

Ding 等人[43]使用GCN 进行节点的嵌入学习,对拓扑结构和节点属性信息进行无缝建模,通过嵌入节点重建原图来进行异常检测,其采用编码器、属性和结构解码器三网络架构,与只使用单一编码器模块相比会增加梯度反向传播时间,且仅仅使用GCN提取特征,没有考虑到不同节点的贡献程度以及GCN的过度平滑问题。

为了缓解GCN 的过平滑问题,更好地区分异常与正常节点的边界,Zhu 等人[44]提出DeepAE 组合嵌入模型,在嵌入过程中引入拉普拉斯锐化放大正常节点和异常节点之间的差异[45];文献[46]中利用属性图中社区结构信息来缓解不同类型异常节点表示带来的过平滑问题;文献[47]中则采用了残差注意力机制防止异常节点过度平滑。

上述方法利用GCN将图结构和节点属性信息综合考虑,但其只能通过简单卷积运算将邻居节点的信息平均聚合到目标节点中,使目标节点无法获得邻居中最相关的信息。GAT 的出现取代传统的图卷积,侧重提取邻居节点的重要信息,接下来对使用GAT 的方法进行介绍。

AnomalyDAE[48]采用双自动编码器联合学习节点潜在表示,将GAT 用于结构编码器中以学习节点与其邻居节点之间的重要性,从而访问较重要的结构模式。该模型旨在利用图的拓扑结构和属性相似度检测单个节点级异常,无法同时检测出异常子图。文献[49]则将节点和子图实例表示学习过程集成到统一的GAT中,并设计自注意力机制用于捕获节点与子图自身及之间的关系信息,提高最终的检测效率,可以同时检测节点异常和子图异常,但是异常节点与异常子图的相互影响,以及子图异常类型不确定性仍给检测带来很大挑战。

在针对多视图图进行异常检测时,Wang 等人[50]提出了一种半监督异常检测框架SemiGNN用于检测交易平台异常的用户。该模型采用层级注意力机制以自动学习不同视图的重要性,集成多视图的嵌入表示。其节点级注意力机制有效聚合各视图内节点信息,视图级注意力机制整合每个视图信息。SemiGNN还分别设计了针对标记数据与无标记数据的损失函数共同优化模型。另一个最新的基于多视图异常检测模型AnomMAN[51]可以在无异常实例的情况下检测异常,采用图自编码器克服了图卷积操作带来的低通性,并通过注意力机制融合来自不同视图的潜在表示。以上两种方法很好的解决了多视图属性图的异常检测问题,但是忽略了多视图中所包含的丰富信息及视角之间的不一致性,视图之间的关系对异常检测也起到至关重要的作用。

在针对属性图跨域异常检测时,主要存在两个问题:如何对来自不同领域的任意结构属性图进行建模以及如何同时检测出目标图中的共享及非共享异常。为此,文献[52]通过共享的GAT编码器学习源图及目标图的节点表示,使用标记的原图训练域自适应分类器检测共享异常,同时使用属性解码器保证了对非共享异常的检测。该模型在跨域检测中展现出优越的性能,但是不同领域之间的差异会导致模型性能降低,所以对于跨域异常检测还存在极大挑战。

上述基于深度学习的方法大都受到自动编码器体系结构的限制,以最小化图的重构误差为目标。这些误差会受到潜在噪声节点影响,同时存在正常数据和异常数据之间过拟合的问题。此外,由于全图训练机制,无法扩展到大规模属性图中。为了解决此类问题,很多学者采用基于关系学习的方法或对比自监督学习的方法,均体现出良好性能,接下来对其中具有代表性的方法进行介绍。

基于关系学习的方法通常将异常检测转化成分类问题,Wang等人[53]提出模型OCGNN,如图4所示,GNN自动提取图上信息,超球学习通过训练标记的正常数据获得一个紧凑的超球边界,来分离正常和异常数据。该模型预测并不需要存储数据,所以具有较低的内存复杂度。与文献[53]不同,Zhang 等人[54]通过结构超球学习的和属性超球学习分别从结构和属性的角度测量异常,拥有比OCGNN更强的性能,但是其网络规模明显大于OCGNN,且时间复杂度较高。这两种方法将GNN强大的表示能力和经典超球学习组合,其特征表示直接针对异常检测任务构建,与特征表示后进行传统分类的集成检测方法大不相同。

图4 OCGNN模型结构Fig.4 Framework of OCGNN model

基于对比自监督的方法中,Liu 等人[55]通过实例对采样,充分利用属性图中的局部信息捕获节点和相邻子结构之间的关系,并采用基于GCN 的对比学习方法学习节点表示。Zheng等人[56]联合使用生成性和对比性两种自监督学习策略,通过生成性属性重构和多视图级对比学习机制,充分利用属性信息以及上下文信息捕获多视图中的异常模式。随后,Zheng 等人[57]又同时在补丁和上下文两个级别通过对比学习对多视图进行异常检测,并且在此基础上进一步扩展,利用标记的小样本异常数据进行训练,使检测结果更加精确。这类基于对比自监督的模型通过学习对比复杂的无标签实例对,可以从无标记数据本身获取监督信号训练网络,不需要对数据进行大量标注。此外,这类模型的空间复杂度与节点数无关,避免将整个大规模图输入GCN 模型导致爆炸性的空间复杂性,相反,此类模型将大图划分成实例对,只需要调整批量大小或子图大小以满足内存约束,适合用于数据量大、缺乏标记数据的场景。

2.1.3 小结

基于DNN及GNN的深度学习方法,能够更高效地对图数据中丰富且复杂的信息进行表示,但是相比传统方法较为复杂,导致时间和计算资源成本增加。基于深度学习的属性图异常检测方法通常采用自编码器、GNN 和GAN 等模型作为特征提取器来学习属性图中稳健的特征,并使用残差分析的方法通过重构误差定义异常分数来检测图中的异常模式。基于关系学习的方法通过端到端的学习,可以联合训练深层神经网络,同时优化输出空间中包含超球面的数据,但是对于高维数据,训练时间和模型更新时间可能更长。基于对比自监督学习的方法通常将图拆分为独立的轻量级实例对,而非全图训练,可以灵活适用于大规模属性图。依据本节的模型介绍,表2中对各类基于深度学习的静态属性图异常检测方法进行了分析与总结。

表2 基于深度学习的静态属性图异常检测方法对比Table 2 Comparison of deep learning based attribute graph anomaly detection methods

2.2 动态属性图异常检测方法

2.2.1 基于深度神经网络的方法

动态属性图因其灵活和不断变化的特性,检测异常并非易事。现有的图表示学习方法多数都是针对静态图而设计,无法捕捉到动态图的演化趋势。为此,Yu等人[58]提出NetWalk模型,对不断变化的图进行表示学习,以达到动态检测异常值的目的。该模型为了更好处理动态图中不断更新的节点和边,专门设计了一个reservior sampling方法来更新节点表示,维护每个节点大小不变的reservoir,最后通过动态聚类的方法识别异常节点。模型泛化能力较强,但当图动态变化时,模型需全面更新所有游走路径并重新训练新的路径,且根据顶点或边表示的维度动态更新聚类中心,导致时间复杂度较高。

NetWalk 方法在一定程度上做到了动态检测,但只是更新边的表示,没有考虑到时序因素,无法持续对动态数据流进行实时性检测。长短期记忆网络(long short-term memory,LSTM)在1997 年被提出[59],适用于处理与时间序列高度相关的问题,在异常检测方面被广泛应用。

Yuan等人[60]提出一种多源长短期记忆网络M-LSTM用来检测维基百科中的异常用户,其采用多个LSTM捕捉用户编辑行为的不同方面,并进一步使用注意力机制动态学习每个方面的重要性。该模型不需要启发式规则也不需要手工设计的特征,通过编辑序列自动学习用户嵌入,并在带有标记的数据集上进行训练,但实际上异常用户的数据十分稀少,手动标记大量异常数据很繁琐。

Zheng 等人[61]提出将GAN 和LSTM 混合使用来检测异常的方法,用来解决异常数据不足的问题。模型先采用LSTM 自编码器将正常用户编码到隐藏空间得到正常用户表示,其次训练一个改进的互补GAN,其中生成器生成良性用户的互补样本与恶意用户具有相同的分布,训练后可以通过鉴别器检测出恶意用户。该模型避免了手动添加异常用户的繁琐步骤,适用于检测不同类型的异常用户,并且经过训练后用户一旦提交新的动作,就会自适应地更新用户表示,可实时预测异常用户。

2.2.2 基于图神经网络的方法

为了更好地捕获动态图中长时和短时特征,许多研究者将GNN 和LSTM 或门控循环单元(gated recurrent unit,GRU)[62]结合进行动态图异常检测。郭嘉琰等人[63]使用LSTM 获取每一时刻的全局信息,结合GCN 提取整个动态图的结构和属性特征进行异常检测,该模型关注图的全局信息,并以无监督方式学习。

文献[64]提出半监督模型AddGraph,如图5 所示,在GCN 的基础上使用基于上下文注意力的GRU 模型以支持时间信息,GCN 从每个时间戳的图形快照生成节点嵌入,随后GRU 从节点嵌入以及之前时刻的隐藏状态中学习当前的隐藏状态,用于计算每条边的异常概率。该模型可以从每个图快照之间的依赖关系中捕获更具代表的结构信息,同时结合属性还有时间特征灵活地检测异常边,并通过负采样和边际损失策略缓解了异常数据不足的问题。

图5 AddGraph模型结构Fig.5 Framework of AddGraph model

与AddGraph 中检测异常边不同,LRGCN 方法[65]对时间演化网络中的路径分类问题进行研究,以检测故障路径。该模型利用节点之间和时间快照之间对时间的依赖性关系进行建模,获得每个节点的隐藏表示,并提出一种新的路径表示方法SAPE,将图中任意长度的路径编码成固定长度的表示向量来进行异常路径预测。此方法解决了路径分类问题并可以预测异常,具有较高的可解释性,但模型设计复杂,实际应用性不高。

上述模型中的方法侧重于学习良好的节点表示,而忽略了动态图中与目标节点相关的子图结构变化。文献[66]通过挖掘不寻常的子图结构来检测异常边缘,为了表示特定的子图结构信息,模型引入节点标记函数为每个节点生成标签,分析给定时间窗口的标记子图来预测目标边的类别。该模型不需要对节点进行表示学习,并且灵活性高,任何捕捉时间信息的网络都可以用于该模型。

在对动态图进行时空特征提取时,多数模型[64,66]分别使用两个独立模块如:GCN模块获取空间知识,GRU模块捕获时间信息进行建模,容易导致捕捉耦合信息能力不足的问题。Liu等人[67]中提出一种基于Transformer的动态图异常检测框架TADDY,设计综合的节点编码方法来覆盖足够的时间与空间信息,并通过一个单一Transformer 变换器进行耦合。其中节点编码综合全局空间、局部空间以及时间信息等多种知识,可以对不断演化的节点角色进行高质量的表示学习。

2.2.3 小结

与静态图不同,动态图随时间变化不断更新,其中不仅包含丰富的图上属性,还包含其时间属性。现有针对动态图进行异常检测的方法,基本都是将动态图看作一序列时间快照进行处理,主要采用自编码器、GNN、LSTM、GRU等深度学习模型考虑每个图快照在不同时间戳中所包含的时间与空间信息,大多数情况下时空信息是耦合的,需要同时捕获,现有的解决方案如文献[64,66]普遍使用时间模块和空间模块叠加的混合模型,分别用于捕获时间及空间信息,但是可能会丢失一些交叉信息,耦合性能较弱。其次,动态图随时间演化,部分演化较慢的异常难以区分,而且对动态图表示学习方法的设计以及对数据进行实时检测也是难点所在。

依据本节的模型介绍,表3 从模型、发表年份、机制、优势和局限性以及适用场景等多方面比较总结了部分动态属性图中的异常检测方法,不同的方法都有其自身的优势和局限性,在具体的应用中应该根据其构造的属性图以及可能产生的异常类型选取合适的检测方法。

表3 基于深度学习动态属性图方法对比Table 3 Comparison of deep learning based dynamic attribute graph anomaly detection methods

3 实验分析

基于属性图的异常检测研究具有多种类型模式,对于不同的模式需选择不同数据集以及评价指标。本章主要对部分静态属性图异常检测方法的实验结果进行对比分析。首先介绍三个实验所用的公开数据集的基本情况,为了验证深度学习方法在静态属性图异常检测中的有效性,通过经典的深度学习方法与传统方法在3个数据集上的实验结果进行分析。

3.1 数据集及评价指标介绍

(1)数据集

本实验使用的3 个数据集为BlogCatalog、Flickr 和ACM。表4对这3个数据集的信息进行相关总结。

表4 数据集信息Table 4 Datasets information

(2)评价指标

属性图异常检测通常用准确率、召回率、AUC进行衡量,选取的评价指标需要视具体情况而定。例如数据不平衡,异常数据很少时,学习到的模型对任意一个样例预测基本都是正常的,模型会得到非常高的准确率,但是该模型基本无法检测到异常,不能代表此模型有很强的性能。AUC 值从统计角度来看,表示随机选择异常实例比正常实例更高的概率,所以在大多数文献中,这种评价指标来衡量模型性能是最常用的,本节采用AUC值对模型的性能进行对比。

3.2 实验结果与分析

本节展示并分析在BlogCatalog、Flickr、ACM 数据集上不同算法的结果,各个算法在3个不同数据集上的AUC指数如表5所示。

表5 实验结果对比Table 5 Comparison of experimental results

其中,LOF 是经典的基于密度的方法,检测密度较低且只考虑属性信息的异常,SCAN方法基于结构相似度对顶点进行聚类,只考虑结构层面的异常,这两类方法只通过单一的模态信息进行异常检测,没有充分利用属性图上的信息,取得AUC 值较低。AMEN 使用结构和属性信息从自我网络角度识别邻域异常,此方法只能识别邻域异常并高度依赖于观察到的节点交互,但是在属性图中,图结构可能非常稀疏,而且学习能力有限,导致效果也并不太好。Rader和Anomalous通过计算残差和识别异常来区分原始数据和预测数据,该类型方法对属性信息和结构信息进行联合建模,较以上3种方法取得不错的性能,但其在处理属性网络稀疏性、数据非线性和复杂模态交互问题时仍受浅层机制限制。Dominant使用深度学习方法通过GCN聚合邻居特征学习节点良好的表示,GCN 可以处理具有多层非线性变换的高阶节点交互,有效缓解网络稀疏性问题,但是只使用单个GCN 编码器,无法联合捕捉两个模态信息之间的复杂交互。AnomalyDAE 使用两个独立自编码器分别从两个角度学习属性和结构之间的跨模态交互,并引入图注意力机制有针对性聚合邻居信息,达到比较好的结果。根据上述实验结果及分析表明:基于深度学习的方法在属性图异常检测中具有良好的效果。

4 应用场景

属性图异常检测广泛应用于社会中的各个领域。在金融欺诈检测、入侵检测、电信欺诈交易检测以及虚假新闻检测等领域发挥着至关重要的作用。

(1)金融欺诈检测

网上金融服务给人们提供便利的同时,也产生许多金融欺诈,例如电信交易欺诈、保险欺诈等,用户之间丰富的交互形成一个大型网络。早在2010年,Li等人[70]开始使用基于子图的结构来检测交易网络中的潜在欺诈案件。Liu等人[71]提出一种用于恶意账户检测的图神经网络,Wang等人[50]从多个视图进行欺诈检测,都展现出不错的效果。在后续应用中,可以多加关注实时检测或者预测欺诈的发生,如Hu 等人[72]使用基于元路径的图嵌入方法预测用户的现金流出,使用户避免遭受巨大损失。

(2)虚假评论检测

淘宝、京东、亚马逊等许多购物网站成为垃圾评论所处的平台。欺诈的评论者受到利益驱使编造撰写虚假评论,分别不真实地提升或者损害商家声誉,导致用户对商家产生不公正的看法。针对虚假评论检测,最开始使用行为分析和语言文本分析[73-74]例如提取如评论长度、发表时间、评论时间等特征,并基于规则挖掘发现可疑评论,随后,Akoglu 等人[75]提出利用关系分析和网络效应,从欺诈评论家之间的联系来检测虚假评论,Wang等人[76]使用一种新的传播算法捕捉评论者、评论和商铺之间的关系,定义诚实可信度分数来检测垃圾评论。

(3)拍卖欺诈检测

雅虎、eBay等购物网站是拍卖欺诈最多的平台,在2008 年美国联邦互联网犯罪中心就接到拍卖投诉约占总投诉25%,网上拍卖活动中,卖家不将购买商品交付给买家的“不交付欺诈”约占33%之多[77]。文献[78]最早提出基于图数据的拍卖欺诈检测方法,通过对eBay 数据进行分析,发现拍卖过程中的欺诈者。文献[79]开发了一个基于RMN 的关系分类模型,用来捕获节点属性包括诚实、同谋、欺诈者之间的复杂关联,并使用LBP进行推理。

(4)电信欺诈检测

电信诈骗问题给用户造成大量财产损失,2017年电信欺诈造成损失高达292 亿美元,占全球估计收入的1.69%。大量电信欺诈检测方法涌现,Cortes等人[80]通过每个电信账户构建子图,动态衡量不同账户之间的通话频率和时间,根据观察到的知识来检测欺诈账号。Liu等人[81]提出一种用于电信欺诈的图表示模型,建立用户和通信关系图,通过注意力机制自适应的组合其联系人来决定账户的表示,在识别欺诈电话方面取得不错的效果。

(5)虚假新闻检测

虚假新闻包括娱乐、经济、政治等领域的多种不实新闻,扰乱社会秩序和稳定,给人们思想以及生活带来不小的影响。针对新闻发表用户、内容、评论等可以构建图模型进行异常检测,识别虚假新闻以及传播者。Shu 等人[82]采用基于上下文的方法,利用从用户社交媒体资料中获得用户元信息作为检测虚假新闻的特征,Mishra等人[83]用GNN学习其他用户特征例如滥用政治观点和立场进行假新闻的检测任务,文献[84]将新闻和新闻发布者建模为图,提出了一种新的图神经网络,利用社交媒体用户的信息转播行为检测虚假新闻。

5 研究展望

随着图数据的研究与发展,属性图被越来越多地应用于复杂系统进行建模,特别是对现实世界产生的属性网络进行异常检测,逐渐得到国内外学者的广泛关注,将深度学习引入属性图异常检测问题,取得明显的优势。本文总结了近年来最新的属性图异常检测模型,比较分析各个模型的特点与差异。虽然基于深度学习的属性图异常检测方法在解决图数据稀疏性、数据非线性以及结构信息和属性信息的交互等方面表现优异,但也面临着一些亟待解决的问题。

(1)模型效率与泛化性:面对现实世界中复杂任务形成的大规模网络,其中甚至包含数以百万的节点、边及其属性信息,基于大规模网络形成的图数据具有海量高维的特征。现有的异常检测模型中,需要将图数据作为输入进行分析,而深度学习技术不仅对硬件要求高,同时需要较长的训练时间,因此图规模的不断扩大会直接导致算法耗时过长、内存消耗急剧增加。其次,大多数异常检测方法都针对特定领域建模,对异常的定义各不相同,导致算法普适性较低,泛化能力弱。

(2)动态性与实时性:动态属性图不断变化的结构和属性信息给异常检测带来极大挑战,例如为了检测动态属性图中的异常,将其按时间戳划分成时间快照的方法无法精确地捕捉到图中对象的演化模式特征;其次在整个动态演化过程中重复利用静态图表示学习方法进行学习,会耗费极大的代价,降低模型的运行效率,且动态图中对异常的实时检测也是难点之一。

(3)异常罕见性:现实世界中由于异常的罕见特性,异常对象的数量远小于正常对象,且深度学习模型依赖于训练数据,这种数据不均衡现象将导致模型捕捉正常和异常数据差异的能力降低,并可能导致异常数据过拟合,成为检测异常的一大障碍。

(4)可解释性:模型的可解释性是一种较为主观的性质,目前可解释性差也是深度学习最大的缺陷之一。基于图数据的异常检测技术的可解释性有助于帮助更好地理解异常以及异常分数,使分析人员从模型中获取更多的有用信息,对后续异常处理过程至关重要,但现有的工作通常缺乏可解释能力。

随着大数据技术的发展,属性图数据因其海量、高维、动态、异构且具有丰富属性信息等特点给异常检测带来了极大挑战,综上所述,后续研究可以分为以下几个方面。

(1)大规模属性图异常检测:针对此问题可以从3个方面着手。首先可以研究更有效的网络表示方法,在最大程度保留原始图结构的基础上进行降维,得到高维数据的特征表示。其次可以采用模型压缩的方法,例如剪枝处理去除冗余参数。此外,还可以采用分布式并行处理的方法,降低模型复杂度,充分利用现有资源。随着数据量的不断增大,基于大规模高维属性图数据异常检测方法的研究是未来的重点之一。

(2)不平衡属性图异常检测:为了解决属性图数据的不平衡性,可以在属性图异常检测中可以考虑采用对抗生成的思想解决异常数据缺少的问题,或在采用图神经网络时多考虑其过度平滑问题所带来的影响,也可以在数据集中通过异常注入生成合成数据集来验证方法的有效性。

(3)动态属性图异常检测:为了更好地适应于动态数据,可设计用于动态图的表示学习方法,获得演化时刻的特征表示;其次可以采用时间窗口来提取特征或计算正常的节点活动,但如何选择合适的时间窗口以检测不同类型的异常仍旧是一个开放性问题。

(4)异构属性图异常检测:异构属性图是一种特殊的图,其包含不同类型的节点和边,现有的方法大多只针对于同构图,忽略了对异构图中不同类型图对象的异常检测。对此,设计针对于异构属性图的异常检测方法也是很有前景的研究方向。

(5)统一检测框架与评价指标:现有模型的普适性较低,没有通用的异常检测框架,在评估模型性能的时候通常根据不同领域进行分析选取合适的评价指标。因此,在未来的研究中,可以构建一个应用于不同类型异常检测的统一框架模型,同时捕获各个类型的异常,并建立统一的衡量异常的评价算法指标。

(6)属性图异常检测可解释性:目前,对各种方法的可解释工作十分缺少,后续针对此问题的研究,可以设计专门的解释机制,集成到异常检测框架中,进行准确、稳定、合理的解释。也可以通过图表、对比图等形式进行辅助,可视化呈现出异常与正常数据之间的差异,给出可解释的结果。

猜你喜欢
节点深度模型
基于RSSI测距的最大似然估计的节点定位算法
适用于BDS-3 PPP的随机模型
四增四减 深度推进
自制空间站模型
深度思考之不等式
分区域的树型多链的无线传感器网络路由算法
一种基于能量和区域密度的LEACH算法的改进
基于点权的混合K-shell关键节点识别方法
简约教学 深度学习
模型小览(二)