《Learning to Drop: Robust Graph Neural Network via Topological Denoising》

摘要:

GNN算法对于输入图的数据敏感。然而现实中,很多数据都是有噪声的以及包含很多任务无关的边,这就会导致GNN结果不是最好的。因此本文提出了PTDNet算法(一个参数拓扑降噪网络),通过把任务无关的边剔除掉,来让GNN算法更加鲁棒和结果更好。PTDNet算法主要做了两件事:一是使用参数化的网络来减少任务无关边的权值;二是使用核范数来限制低秩约束让整个网络结果更加好。

PTDNet方法:

整体框架如下所示:

作者主要贡献在Denoising layer,后面的GNN layer可以采用现有的GCN、GAT等算法。

Denoising layer:

作者认为采用参数的神经网络形式,会比只用先验知识(两个节点的节点特征不相似,所以不应该连接边)要更好。

对于输入的网络 A ,我们使用一个降噪参数 Z_{l} 使得,降噪后的 A_{l}=A*Z_{l} ,其中Z_{l}是一个只有0和1的矩阵。我的理解是如果现实中两个节点应该有边,则该矩阵的该数值为1,如果不应该存在边,那么就为0,这样子达到降噪的目的。

但是这个我们发现是离散矩阵,没法在神经网络中进行梯度下降。然后作者介绍了伯努利分布,然后介绍了一堆其他人的工作,使用

来得到Z_{l}。同时,已经有一些工作指出,低秩可以有效的对抗图网络攻击,因此作者加入低秩约束,主要两个点:(1) A_{l} 矩阵的秩是低秩的(2)每层网络的Z_{l}矩阵应该是稳定的(即不能u和v节点的连接时有时无),不然结果没法稳定。因此损失函数设计如下:

假如秩为K,希望秩从K+1开始的特征向量的和要小。

实验结果:

作者的GNN部分是通用的,因此实验采用GCN、GAT和GraphSage三种算法进行对比。实验对比了DropEdge以及PTDNet还有一些其他的算法,结果表明该方法结果最好。

作者在Cora网络上,使用GCN和GraphSage以及GAT算法,通过扰动边,来说明PTDNet方法具有鲁棒性。

个人观点:

本文主要是Denosing layer的提出,适用于各种离散值的梯度求解问题解决,通过参数化方法,对图网络攻击方法进行解决,结果还是有一定效果的。目前图网络对抗方法仍然缺乏实质性的新突破。

发布于 2021-07-04 22:28