snap-stanford / GraphGym

Platform for designing and evaluating Graph Neural Networks (GNN)
Other
1.69k stars 185 forks source link

Question about ID-GNN #42

Closed jw9603 closed 1 year ago

jw9603 commented 2 years ago

Hello,

I am interested in reproducing the IDGNN's results on node classification. I looked at the code and had a few quick questions

  1. When doing node classification, all configurations are in (https://github.com/snap-stanford/GraphGym/blob/master/run/grids/IDGNN/graph.txt )?

  2. Is it correct here that dataset.augment_feature feature = 'node_identity' means ID-GNN fast?

  3. If 2 is true, May I know where the node identity, i.e. cycle information, is used (position in the code) and how to use in code level?

Thank you so much for taking the time out of your busy schedule.

JiaxuanYou commented 2 years ago

Hi, thanks for your interest in ID-GNN.

  1. For node classification, the configs are here: https://github.com/snap-stanford/GraphGym/blob/master/run/grids/IDGNN/node.txt
  2. Yes, that means ID-GNN fast
  3. The node identity feature is computed via my implementation here: https://github.com/snap-stanford/GraphGym/blob/master/graphgym/contrib/transform/identity.py
jw9603 commented 2 years ago

Thank you so much for answering my questions. May I ask one more question?

In https://github.com/snap-stanford/GraphGym/blob/master/graphgym/contrib/layer/idconv.py, class GeneralIDConvLayer's method norm(), what is the role of norm function and norm function's informations?(e.g. fill_value why 1.0 or 2.0)

I'm really sorry to keep asking the question.