Replies: 1 comment
-
The x = ... # [num_nodes, num_features]
x_src = x_j = x[edge_index[0]] # [num_edges, num_features]
x_dst = x_i = x[edge_index[1]] # [num_edges, num_features] This is needed to compute a message per edge, which we then later aggregate according to destination node indices. Importantly, we can only lift |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Thanks for your efforts to develop such a great environment.
When launching GCN-like models with edge_index format, I noticed there is a step 'lift' in collect function during propagation.
pytorch_geometric/torch_geometric/nn/conv/message_passing.py
Lines 217 to 219 in 09f25e9
pytorch_geometric/torch_geometric/nn/conv/message_passing.py
Lines 186 to 189 in 09f25e9
It seems that the step is to arrange input tensor to different form with edge_index. But, I do not catch up what's going on during the step exactly because I'm not familiar with graph models.
What is src.index_select(node_dim, edge_index) exactly and why is the step needed only for 'torch.tensor' type?
I appreciate your support again.
Beta Was this translation helpful? Give feedback.
All reactions