ChandlerBang / GCond

[ICLR'22] [KDD'22] [IJCAI'24] Implementation of "Graph Condensation for Graph Neural Networks"
https://www.cs.emory.edu/~wjin30/files/GCond.pdf
109 stars 15 forks source link

Questions about the GCOND-X #15

Closed jiaweiz716 closed 1 week ago

jiaweiz716 commented 1 week ago

Hi,

Thanks for the great work!

In the function test_with_val, it can be seen that:

if self.args.lr_adj == 0:
    n = len(labels_syn)
    adj_syn = torch.zeros((n, n))

Howerver, if only set the self.args.lr_adj == 0, in the code of function train, we notice that:

for ol in range(outer_loop):
     adj_syn = pge(self.feat_syn)
     adj_syn_norm = utils.normalize_adj_tensor(adj_syn, sparse=False)
     feat_syn_norm = feat_syn

the used adj_syn is not the identity matrix. In other words, the process of training include the structure of the graph.

So, my question is how to set it up to get result GCOND-X?

Only set self.args.lr_adj == 0 or set self.args.lr_adj == 0 & adj_syn = identity matrix?

ChandlerBang commented 1 week ago

Thanks for your interest in our work. We recommend you try our newly released package [GraphSlim]

The code for GCondX is here and the scripts for benchmarking can be found here. Feel free to let us know if you have further questions.

jiaweiz716 commented 1 week ago

Ok, thanks!