首页 > 编程语言 >Graph-Skeleton: ~1% Nodes are Sufficient to Represent Billion-Scale Graph

Graph-Skeleton: ~1% Nodes are Sufficient to Represent Billion-Scale Graph

时间:2024-02-25 17:22:48浏览次数:28  
标签:Billion Represent Cut target Graph background mathcal nodes

目录

Cao L., Deng H., Wang C., Chen L. and Yang Y. Graph-skeleton: ~1% nodes are sufficient to represent billion-scale graph. WWW, 2024.

本文提出了一种图压缩的方法, 这些方法基于一些有趣的经验观察.

符号说明

  • \(\mathcal{G} = (\mathcal{V}, \mathcal{E})\), graph;
  • \(\mathcal{T} = \{T_1, T_2, \ldots, T_n\}\), target nodes;
  • \(\mathcal{B} := \mathcal{V} \setminus \mathcal{T} = \{B_1, B_2, \ldots, B_{|\mathcal{V}| - n}\}\), background nodes;
  • \(X \in \mathbb{R}^{|\mathcal{V}| \times d}\), node features;
  • \(Y \in \{0, \ldots, C-1\}^n\), target node labels.

Empirical Analysis

  • 作者希望将一个大图压缩为一个轻量的容易处理的小图, 同时处理后的图尽可能不影响 target nodes 的分类准确度.

  • 所以作者先做了一些经验性的验证, 来分析一个图中到底哪些点对于 target nodes 的分类是格外重要的.

  • 根据上面的定义, 我们已经知道除了 target nodes, 剩下的都是 background nodes, 这些 background nodes 实际上只有一小部分是重要的. 我们进行如下的切分:

    1. Cut B-B: 将 background nodes 间的 edge 全部抹去;
    2. Cut T-T: 将 target nodes 间的 edge 抹去;
    3. Cut T-B: 将 target-background nodes 间的 edge 抹去;
    4. Cut BrgB: 我们称同时连接两个不同 target 的 background 结点称为 bridging node, Cut BrgB 指的就是将 bridging nodes 和 target nodes 间的 edge 抹去;
    5. Rankdom Cut: 随机抹去一些边.
  • 结果如下图所示:

  • 可以发现:

    1. 抹去 background nodes 间的边有些时候甚至能够有助于 target nodes 的判别;
    2. 抹去 target nodes 间的 或者是 bridging nodes 和 target nodes 间的边对预测的影响很大.
  • 故, 我们可以认为, 对于 target nodes 的判别最重要的是 target-target 和 target-brdB 间的关系. 此外, (b) 展示了 target nodes 和它的 k-hop neighbors 的相关系数, 随着 hop 的增加而降低.

Skeleton Graph

Node Fetching

  • 首先, 我们需要在整个大图中确定一些重要的关键点, 按照上面的经验分析, 我们通过两个准则从 background nodes 中找寻那些关键的点:
    1. Structural connectivity: Bridges two or more target nodes within \(d_1\)-hop as bridging node.
    2. Feature corrlation: \(K\) highest correlation background nodes neighboring to solo target node within \(d_2\)-hop as affiliation nodes.

Graph Condensation

  • 通过上面得到的图依然存在大量冗余的点和边, 于是本文又提出了 \(\alpha, \beta, \gamma\) 三种压缩策略 (压缩率逐步提高). 这些压缩策略主要和图的一些拓扑性质有关, 这里不多赘述.

代码

[official]

标签:Billion,Represent,Cut,target,Graph,background,mathcal,nodes
From: https://www.cnblogs.com/MTandHJ/p/18032636

相关文章

  • PNG格式PNG(Portable Network Graphics)位图图形文件格式 无损压缩的图片格式,支持索引
    PNG(PortableNetworkGraphics)是一种位图图形文件格式,它是一种无损压缩的图片格式,支持索引、灰度、RGB和RGBA等多种颜色模式。PNG格式支持多种颜色模式,包括以下几种:索引色模式(IndexedColor):索引色模式使用一个颜色索引表来存储图像中使用的颜色。每个像素使用索引值来指定......
  • CF1857G Counting Graphs 题解
    题目描述给定一棵最小生成树,求有多少张图的最小生成树是给定的树,并且这张图的所有边边权不超过\(S\)。思路考虑在最小生成树中加边。我们回顾一下Kruskal的过程:找到没被用过的,最小的边判断这条边的两端是否在一个联通块中加入这条边,将两端的联通块连在一起根据第三条......
  • EvolveGCN Evolving Graph Convolutional Networks for Dynamic Graphs
    目录概符号说明EvolveGCN代码ParejaA.,DomeniconiG.,ChenJ.,MaT.,SuzumuraT.,KanezashiH.,KalerT.,SchardlT.B.andLeisersonC.E.EvolveGCN:Evolvinggraphconvolutionalnetworksfordynamicgraphs.AAAI,2019.概GCN用在动态图上的早期探索.符号......
  • GraphMAE2论文阅读笔记
    Abstract第一篇论文GraphMAE的想法是用自动编码器体系结构来重建被输入随机屏蔽的节点特征。但是掩蔽特征重构的性能依赖输入特征的可辩别性,容易受到特征的干扰。所以提出了一个掩蔽的自监督学习框架GraphMAE2,目的是克服这个问题,思想是对图自监督学习的特征重构进行正则化处理。......
  • Linear-Time Graph Neural Networks for Scalable Recommendations
    目录概符号说明MotivationLTGNN代码ZhangJ.,XueR.,FanW.,XuX.,LiQ.,PeiJ.andLiuX.Linear-timegraphneuralnetworksforscalablerecommendations.WWW,2024.概在大图上的一种高效的训练方式.符号说明\(\mathcal{V}\),nodeset;\(\mathcal{E}\),edg......
  • OpenSceneGraph环境搭建
    OpenSceneGraph开发环境搭建环境说明windows10visualstudio2019qt5.15预编译库与资源这是最省事的方式,本人懒得走cmake编译那套,而且有现成的为何不用,省点时间研究OSG不香吗?下载预编译库,点此进入,可看到如下页面,点击StableReleasesStableReleases页面如下:......
  • Multi-behavior Recommendation with Graph Convolutional Networks论文阅读笔记
    Abstract传统的推荐模型通常只是要一种类型的用户-项目交互,但是却有着严重的数据稀疏或者冷启动问题。使用多种类型的用户-项目交互的多行为推荐,如点击和收藏,可以作为一种有效的解决方案。早期队多行为推荐的努力未能捕捉到行为对目标行为的不同影响强度。它们还忽略了多行为数据......
  • 百度搜索exgraph图执行引擎设计与实践
    导读百度搜索exgraph图执行引擎设计重点分成三个部分:图描述语言、图执行引擎、对接扩展。图描述语言是一种基于文本可读的图描述语言,用于描述任务中的算子以及算子之间的依赖关系,即让人可以理解,也可以被计算机理解并执行。图执行引擎是exgraph的核心,负责根据图描述语言生成的......
  • Qt 使用QCryptographicHash做简单的数据加密
    在编写程序的时候经常会使用到一些加密的方法,在Qt中,提供了一些常用的加密方法:Md4,Md5,Sha1,Sha224,Sha256,Sha384,Sha512,Sha3_224,Sha3_256,Sha3_384,Sha3_512,如果我们需要使用这些加密方法时,可以直接使用Qt中的QCryptographicHash类进行加密。1#include<QCryptographic......
  • Qt 哈希加密 QCryptographicHash
    QCryptographicHash类提供了生成密码散列的方法。该类可以用于生成二进制或文本数据的加密散列值。目前支持MD4、MD5、SHA-1、SHA-224、SHA-256、SHA-384和SHA-512。共有类型枚举QCryptographicHash::Algorithm:公共函数voidaddData(constchar*data,intlength)......