【图神经网络】在节点分类任务中无特征节点的特征表示

无特征节点的特征表示

节点度数degree

pagerank

以pagerank起源的应用场景为例,不是所有的网站都是同等重要的,所以需要根据结构信息对节点进行排序。

直觉上,如果一个网站它有很多链接,它就很重要,举例来说,一个网站有很多射入链接,那么,它比一个只有一个射入链接的网站重要,但是对于射入网站的网站的重要性也是不同的。

一个重要网址的给到的vote分值是很高的,链接的vote值正比于它的来源网站的重要性,如果一个网址i有重要性 r i r_i ri有 d i d_i di个out-links,每一个链接有 r i d i \frac{r_i}{d_i} dirivote值。网址j的重要性 r j r_j rj是所有in-links的vote值的加和。
r j = ∑ i → j r i d i r_j = \sum_{i \rightarrow j} \frac{r_i}{d_i} rj=i→j∑diri

矩阵化

下面将这个过程矩阵化,首先是概率邻接矩阵M
M i j = 1 d j M_{ij} = \frac{1}{d_j} Mij=dj1

每个值就代表节点j传递给节点i的vote值,也就是M的每一列的加和为1
rank向量
r i r_i ri是网址i的重要性,满足 ∑ i r i = 1 \sum_i r_i = 1 ∑iri=1

流程就可以表达为:
r = M ⋅ r r=M\cdot r r=M⋅r

可以看到,r是矩阵M特征值1的特征向量,怎么解决呢?

用方法power iteration

Power Iteration:

Set r j ← 1 / N r_j \leftarrow 1/N rj←1/N

1: r j ′ = ∑ i → j r i d i r'j = \sum{i \rightarrow j} \frac{r_i}{d_i} rj′=∑i→jdiri

2: If ∣ r − r ′ ∣ > ϵ |r-r'|>\epsilon ∣r−r′∣>ϵ
r ← r ′ r \leftarrow r' r←r′

3: goto 1

但是存在两个问题

所以需要修改

有 β \beta β概率,按照链接传递vote值,有 1 − β 1-\beta 1−β的概率随机跳转到一个节点,这样就解决了上面两个问题。
r j = ∑ i → j β r i d i + ( 1 − β ) 1 N r_j = \sum_{i \rightarrow j}\beta \frac{r_i}{d_i} + (1-\beta)\frac{1}{N} rj=i→j∑βdiri+(1−β)N1

用矩阵表示为
P = β M + ( 1 − β ) 1 N N × N P=\beta M + (1-\beta)\left\\frac{1}{N}\\right_{N\times N} P=βM+(1−β)N1N×N

motifs

子图

有两种1.由节点得到的子图.(node induced subgraph)2.由边得到的子图(edge induced subgraph)
图同构

子图同构

当G1的子图和G2同构,也可以说G1对G2子图同构。

无论是判断图同构还是子图同构都是一个np难问题。
motif定义

是满足三类性质的子图

1:pattern:是(node induced)小型子图

2:Recurring:有一个高的频率

3:Significant:比期望的频率高,也就是说比随机生成的图中motif频率高
子图频率

图级别的频率

节点级别的频率(通过anchor点)

motif significance

子图在图中比随机图中出现频率更高,那么就说这个子图是功能重要性。

生成随机图的方法

1 ER随机图

生成n个节点,每两个节点有p的概率相连

2 Confifuration model

spokes的替换方法switching

算法步骤

1 数出图中的motifs的数量

2 生成随机图,并数随即图中的motif数量

3 用统计方法评估每个motif的重要性(用Z-score)

来自相同领域的网络有相似的SP

神经子图表示

用GNN解决子图匹配

将子图投射到有序空间中,判断是否有子图关系

损失函数

用广度优先搜索得到正样本,对正样本进行corrupt(增加节点、删除节点或边)得到负样本
SPMiner

用于求motif频率

搜索过程

1 随机选择一个点初始化

2 每次生成节点都选择能让motif数量最多的节点(greedy)

相关推荐
小爷毛毛_卓寿杰19 小时前
我把一个 3B 模型塞进了 Xinference,然后它干掉了 DeepSeek V3.2
人工智能·开源·github
秦先生在广东19 小时前
Agent 闭环才是真正的护城河:Anthropic “300 个 Agent“ 背后被忽视的秘密
人工智能
Bigfish_coding19 小时前
前端转agent-【python】- 14 记忆系统优化:摘要与遗忘
人工智能
Bigfish_coding20 小时前
前端转agent-【python】-13 Ollama Python流式输出教程:stream=True 与 async 实践
人工智能
字节跳动数据库1 天前
文章分享——相似函数处理方法
人工智能·后端·程序员
Bigfish_coding1 天前
前端转agent-【python】-12 LangChain 入门实战:RAG + LCEL 链式调用
人工智能
程序员cxuan1 天前
读懂 Claude Code 架构分析系列,第一篇,开始!
人工智能·后端·架构
饼干哥哥1 天前
扣子3.0测评:我让 Codex 和 Claude Code 住同一个桌面,结果它们打架了!
人工智能·开源·代码规范
Token炼金师1 天前
IP-Adapter:解耦交叉注意力如何让扩散模型看见图像
人工智能
Bigfish_coding1 天前
前端转agent-【python】-11 LangGraph 高级特性:时间旅行与人工介入
人工智能