yifan-h / CS-GNN

Measuring and Improving the Use of Graph Information in Graph Neural Networks
MIT License
82 stars 10 forks source link

Why to `feature_broadcast` and `label_broadcast`? #7

Closed PolarisRisingWar closed 3 years ago

PolarisRisingWar commented 3 years ago

I find that when computing feature smoothness, the code uses the function feature_broadcast (I find it's to merge feature of a node with its neighbors).

    for i in range(times):
        feats = feature_broadcast(feats, G_org)

I find the formula in paper just used original feats with normalization. So I wonder why we need to calculate this feature broadcast?
The similar problem is on label_broadcast, which I think it's to remove some edges randomly. Why we need to do that?

yifan-h commented 3 years ago

Hi,

You can find a parameter "time=0". This parameter is for us to research how fast smoothness decreases with broadcast time. Normally you can ignore that since the defualt value is 0.