Graph neural networks (GNNs) have achieved great success in many graph-based tasks. Much work is dedicated to empowering GNNs with the adaptive locality ability, which enables measuring the importance of neighboring nodes to the target node by a node-specific mechanism. However, the current node-specific mechanisms are deficient in distinguishing the importance of nodes in the topology structure. We believe that the structural importance of neighboring nodes is closely related to their importance in aggregation. In this paper, we introduce discrete graph curvature (the Ricci curvature) to quantify the strength of structural connection of pairwise nodes. And we propose Curvature Graph Neural Network (CGNN), which effectively improves the adaptive locality ability of GNNs by leveraging the structural property of graph curvature. To improve the adaptability of curvature to various datasets, we explicitly transform curvature into the weights of neighboring nodes by the necessary Negative Curvature Processing Module and Curvature Normalization Module. Then, we conduct numerous experiments on various synthetic datasets and real-world datasets. The experimental results on synthetic datasets show that CGNN effectively exploits the topology structure information, and the performance is improved significantly. CGNN outperforms the baselines on 5 dense node classification benchmark datasets. This study deepens the understanding of how to utilize advanced topology information and assign the importance of neighboring nodes from the perspective of graph curvature and encourages us to bridge the gap between graph theory and neural networks.
翻译:图形神经网络(GNNs) 在许多基于图形的任务中取得了巨大成功。 许多工作都致力于赋予 GNNS 以适应性地点能力, 通过节点机制测量目标节点附近节点的重要性。 然而, 当前节点特定机制在区分表层结构中节点的重要性方面有缺陷。 我们相信, 相邻节点的结构重要性与其在聚合中的重要性密切相关。 在本文中, 我们引入离散的图形曲线曲线( Ricci curval) 来量化双节点结构连接的强度。 我们建议 Curval 曲线曲线网络( CGNNN), 通过利用图形曲点结构的结构属性来有效地提高GNNNC 的适应性地方能力。 为了提高曲线结构对各种数据集的适应性,我们明确将曲线转化为相邻点的权重, 必要的负性曲线处理模块和 curvalcial 正常化模块。 然后, 我们从各种合成数据设置和真实的曲线曲线曲线中进行无数的实验。 实验结果显示, CNNNG 的顶级数据库和直径基级数据库是如何利用了我们最高级的C 的C 。