GraphBerry / DiG-In-GNN

The official implementation of DiG-In-GNN (AAAI 2024)
17 stars 3 forks source link

Guidance Node #2

Open Snssn opened 2 months ago

Snssn commented 2 months ago

你好,想请教一下Guidance Node是如何选择的呢?在论文中 Guidance Node Generation部分说明了通过Context-level Contrastive Learning Task和Local-level Contrastive Learning Task来学习,但如何在最初选择Guidance Node没有详细的说明。并且在子图中不一定能找到Guidance Node既能和节点v的one-hop邻居节点有连接,又能和节点v有连接,这样的情况如何解决?最后,请问对于Guidance Node的选择代码在哪个文件中?

XZJIsme commented 1 month ago

每个节点 v 都有自己对应的 guidance node

model/layers.py 的 line 411 有 feats = torch.cat((rl_agg_feats, gen_feats), dim=1),gen_feats 的 shape 是 (当前训练 batch 的节点数量, dim),rl_agg_feats 为某一关系内邻居聚合结果,以论文图 2 中的节点 v 的关系一(r=1)为例,rl_agg_feats[v] 为 v 的邻居 u_1、u_2、u_3 的聚合结果(经过 RL 邻居选择),gen_feats[v] 为节点 t_v^1(图中的绿色节点)的 feature