Dual-discriminative Graph Neural Network for Imbalanced Graph-level Anomaly Detection
https://www.craft.me/s/3BSooGwXHxSQ7L
Motivation & Contributions
由于异常问题的不平衡性,异常信息会被海量的正常图所稀释→提出PMI
节点异常属性、图异常子结构会影响到图的性质(以分子结构为例)→ 异常属性/结构感知方法(GCN、RWK)
观点:图异常的来源(通过什么东西体现的):
特定节点。它们的某些属性,可能是额外的属性,也可能就是拓扑结构有关的属性
图属性和子结构——关键因素。异常属性、异常结构的存在是直接原因
(个人理解:这些东西在各自所属的范畴都是服从一个特殊的分布,与大部队不同。比如图属性,模型学到的正常属性服从某种分布,遇到差别大的,就能够认为是异常属性)
方法
![Image.png](https://res.craft.do/user/full/7a2d2171-d557-44e7-ed2b-9bee01f09b4d/doc/8645D020-19AF-43BA-92F8-3B87B20AB105/EA956BB3-8DBF-4945-9BFC-C83CB3CC1E63_2/qItyL2WD3CKRSlqjgQAwxX2wPF94GmajYjdEgvJxgJEz/Image.png)
如何获得图向量
anomalous attribute-aware GCN,把节点u本身的embedding和k跳内邻居节点的embedding进行拼接,得到节点u最终的embedding。这里的k跳是形成层级关系的
![Image.png](https://res.craft.do/user/full/7a2d2171-d557-44e7-ed2b-9bee01f09b4d/doc/8645D020-19AF-43BA-92F8-3B87B20AB105/336955F0-83FF-4F81-AA19-A223F574A411_2/FaRGhfPHRxxHAFOJV9L9GvUxp6s6DS2ZfkxAX9wZFmEz/Image.png)
对于节点u而言,其中第0层h0(也就是自己)直接把xu经过MLP得到,后面几层的计算则是第二个式子;(A、H应该分别是NN、NM的,假设N是节点数量,M是属性embedding维数),那W就应当为M*?的。此外,K取几,就需要几个W。拼接完了之后做readout得到最终的h_G
anomalous substructure-aware Deep RWK。现有的GNN的聚合方式会导致在区分子结构的时候存在不足,于是采用RWK(随机游走核)。随机游走核大致做的事情是通过同时随机游走两个图,可以得到两段游走序列,以此衡量两个图的相似程度。本文预定义了几种异常子结构,将每个图都跟每个异常子结构计算核:【核的计算应该调包即可?】
然后,对于图G_i来说,可以组合出下面的向量:
经由一个MLP的到这部分的h_G。
至此,iGAD模型表示为f(G;Θ),将上面获得的两部分向量拼接起来作为最后的h_GN
PMI Loss
数据量的不平衡会导致训练的问题,于是提出了一个新的损失函数PMI Point Mutual Information,可以建模输入图之间的PMI及其异常/正常性质。
其中log后面的式子如下(norm以后):
对PMI的疑问:
该式子的设计过程不是很明白
感觉log(P_i) 像是一个定值,原文P (yi) is the proportion of anomalous graphs or normal graphs in the training set T。那这个应该是针对数据集而言的一个常数?
假如先去掉norm,把P代入L,是否就是L的最终用于计算的形状?但是并未看出有将y预测与y真实交叉的痕迹,直接是预测结果+log P(P_i)。---看了作者的代码后感觉他是不是写漏了??应该是:
补充:因为label定义的是1/0,所以0的部分省略了
实验
本文用了这几个数据集(全部都是化学领域的,分子结构之类的)
SW-620
MOLT-4
PC-3
MCF-7
对比方法:
![Image.png](https://res.craft.do/user/full/7a2d2171-d557-44e7-ed2b-9bee01f09b4d/doc/8645D020-19AF-43BA-92F8-3B87B20AB105/113E50F7-6669-4963-9906-349026CEB65C_2/iVxhY037xl6ZzJ5VQlBETuz50XPsMxSoPSTo0Ixinlsz/Image.png)
简介:
评价指标:
AUC
RECALL
RECALL (A)
F-SCORE
实验结果略(四个数据集,四个指标共16项只有3项非最优)
几个RQ
性能如何
PMI是否有益:作者将baseline加入了PMI,每个结果均有提升,故有益
属性异常感知的GCN性能如何
如果使用预定义的异常子结构,性能如何
异常结构感知的RWK是否学习到了异常子结构
随机游走序列最大长度对iGAD有何影响:需要取决于数据集(异常子结构的节点数量)。
(2-4——消融实验均给出了回复且正面)
评论区