子图检测
- 采用传统非深度学习的异常子图检测
-
- 基于静态图的异常子图检测
- 基于动态图的异常子图检测
- 采用深度学习的异常子图检测
- 参考文献
论文:A Comprehensive Survey on Graph Anomaly Detection with Deep Learning
论文地址:https://arxiv.org/abs/2106.07178
上一节:边检测
下一节:图检测
与单个和独立的图异常(即,单个节点或边)不同,异常子图中的每个节点和边可能是正常的。然而,当它们被视为一个集合时,它们是异常的。
代表算法如下图所示:
文章图片
采用传统非深度学习的异常子图检测 基于静态图的异常子图检测 核心思想:1、根据属性分布或者子图的正态性。2、根据残差图进行分析
作者在这个部分并没有展开介绍,只分别列举了代表性工作(后续随缘补充):
基于第一个思想:gAnomaly [1],AMEN [2],SLICENDICE [3]
基于第二个思想:Miller 等人[4] 通过测量预期结构和观测结构之间的残差来发现异常子图
基于动态图的异常子图检测 核心思想:提取异常子图检测的度量
Chen 等人[36] 引入了六个指标来识别社区的异常,即成长(grown)社区、萎缩(shrunken)社区、合并(merged)社区、分裂(split)社区、出生(born)社区和消失(vanished)社区。
Eswaran 等人[6] 等人提出的 SPOTLIGHT 和 Liu 等人 [30] 的工作,都在探索动态图中的突然变化,并识别与这些变化相关的异常子图。
受到社交垃圾和欺诈群体在在线社交网络中经常形成时间密集子图的现象的启发,Bogdanov 等人 [8] 和 Shin 等人[9],利用手动提取的特征,发现异常密集的子图,这些子图的演化与剩余部分明显不同。
除此之外,大量研究试图利用各种图扫描统计数据来检测异常子图, 例如 Kulldorff 统计量、Poisson 统计量、提升平均扫描统计量和 Berk-Jones 统计量。
Shao 等人 [10] 提出了一种非参数方法来检测动态图中的异常子图,其中网络结构是恒定的,但节点属性随时间变化。这项工作测量每个子图的异常分数,该分数与其中包含的节点的 p 值有关,分数较高的子图更可能异常。
此外,Jie 等人 [11] 提出的 GBGP 采用提升平均扫描统计量来识别可能形成异常子图的节点,并检测遵循预定义不规则结构的异常组。
尽管这些人工制作的特征或统计模式非常适合某些特定类型的现有异常,但它们检测不可见和伪装异常的能力受到强烈限制,直接应用这些特征或统计模式可能会带来较高的误报率。
采用深度学习的异常子图检测 核心思想: 利用深度网络抽取特征检测异常
Wang 等人 [12] 提出一个名为 DeepFD 的模型,将在线购物网络表示为二部图(一种特定类型的异构图,具有两种类型的节点和一种类型的边),其中用户是源节点,商品是汇节点,并根据它们在这些图中形成的可疑密集块检测欺诈组(即异常子图)。该工作旨在学习用户的异常感知表示,以便同一组中的可疑用户将在向量空间中紧密定位,而良性用户则远离他们。
为得到良好的检测结果,Wang 等人将损失函数分成了三个部分:1. 重构误差,确保二部图结构可以使用学习的用户表示和项目表示很好地重建图结构;2. 学习的用户表示(embedding)中保留用户相似性信息,即相似用户,其 embedding 相近;3. 参数正则项。
最后使用 DBSACN 检测出预计在向量空间中形成密集区域的可疑区域。
Zheng 等人[13] 提出的 FraudNE 还将在线评论网络建模为二部图,并根据密集块检测原则进一步检测恶意用户和相关的被操纵项目。与DeepFD不同,FraudNE 希望将这两种类型的节点编码到一个共享的潜在空间中,其中可疑用户和属于同一密集块的项目彼此非常接近,而其他节点则均匀分布。采用两种传统的自动编码器,即源节点自动编码器和汇节点自动编码器,分别学习用户表示和项目表示。这两个自动编码器都经过训练,以共同最小化其相应的重建损失和共享损失函数。提出了共享损失函数来限制表示学习过程,使得每个链接的用户和项目对获得相似的表示。由于 DBSCAN 算法便于应用于密集区域检测,FraudNE 还采用它来区分可疑用户和项目形成的密集子图。算法的示意图如下:
文章图片
参考文献 [1] N. Li, H. Sun, K. C. Chipman, J. George, and X. Yan, “A probabilistic approach to uncovering attributed graph anomalies,” in SDM, 2014, pp. 82–90.
[2] B. Perozzi and L. Akoglu, “Scalable anomaly ranking of attributed neighborhoods,” in SDM, 2016, pp. 207–215.
[3] H. Nilforoshan and N. Shah, “Slicendice: Mining suspicious multi- attribute entity groups with multi-view graphs,” in DSAA, 2019, pp. 351–363.
[4] B. A. Miller, N. Arcolano, and N. T. Bliss, “Efficient anomaly detection in dynamic, attributed graphs: Emerging phenomena and big data,” in ISI, 2013, pp. 179–184.
[5] Z. Chen, W. Hendrix, and N. F. Samatova, “Community-based anomaly detection in evolutionary networks,” J. Intell. Inf. Syst., vol. 39, no. 1, pp. 59–85, 2012.
[6] D. Eswaran, C. Faloutsos, S. Guha, and N. Mishra, “Spotlight: Detecting anomalies in streaming graphs,” in KDD, 2018, pp. 1378–1386.
[7] Z. Liu, J. X. Yu, Y. Ke, X. Lin, and L. Chen, “Spotting significant changing subgraphs in evolving graphs,” in ICDM, 2008, pp. 917–922.
[8] P. Bogdanov, C. Faloutsos, M. Mongiov`?, E. E. Papalexakis, R. Ranca, and A. K. Singh, “Netspot: Spotting significant anomalous regions on dynamic networks,” in SDM, 2013, pp. 28–36.
[9] K. Shin, B. Hooi, J. Kim, and C. Faloutsos, “Densealert: Incremental dense-subtensor detection in tensor streams,” in KDD, 2017, pp. 1057– 1066.
[10] M. Shao, J. Li, F. Chen, and X. Chen, “An efficient framework for detecting evolving anomalous subgraphs in dynamic networks,” in INFOCOM, 2018, pp. 2258–2266.
[11] F. Jie, C. Wang, F. Chen, L. Li, and X. Wu, “Block-structured optimization for anomalous pattern detection in interdependent networks,” in ICDM, 2019, pp. 1138–1143.
[12] H. Wang, C. Zhou, J. Wu, W. Dang, X. Zhu, and J. Wang, “Deep structure learning for fraud detection,” in ICDM, 2018, pp. 567–576.
[13] M.Zheng,C.Zhou,J.Wu,S.Pan,J.Shi,andL.Guo,“Fraudne:Ajoint embedding approach for fraud detection,” in IJCNN, 2018, pp. 1–8.
【GCN|Graph Anomaly Detection with Deep Learning——子图检测】微信公众号:
文章图片
推荐阅读
- 社区发现|CommDGI: Community detection oriented deep graph infomax 2020 CIKM
- 人工智能|AI程序员都需要掌握些什么()
- 人工智能|一程序员被网恋女友诈骗1.8万,警方调查“女友”后发现竟是...
- JVM系列 从一到掌握JVM系列之垃圾回收算法
- 编程语言|JAVA代码审计实战班(详细授课目录曝光)
- java|兄弟们,我终于熬出头了!Java开发4年,费时8个月,入职阿里,涨薪14K
- 游戏|读博路上的碎碎念2(还能做一些很酷的事吗)
- 游戏|读博路上的碎碎念2(还能做很酷的事吗)
- 计算机相关|信息学奥赛导论