GINs are maximally powerful for anonymous input graphs

[[concept]]
Takeaway

A GIN is a maximally powerful GNN in graph-level tasksfor anonymous inputs (ie x=1 )
^statement

As long as we have an injective function from multisets to embeddings, we are able to distinguish between multisets.

We can then look at the graph level readout. In the original paper, this is defined at each layer as

Y=CONCAT(readout({(x)v:vV})|=1,2,,L)
Demonstration

2025-02-24-graph.png
Can a GIN tell them apart? We assume W0=1,ε0=0. At the first layer, we take the sum of each node's neighbors' embedding and add it to the node's embedding.

2025-03-03-graph.png
j=1
G1

  • x1=1+1=2
  • x2=1+1+1=3
  • x3=2
  • output is {2,3,2}
  • readout is [3|7]

G2
x1=x2=x3=3

  • output is {3,3,3}
  • readout is [3|9]

Mentions

File
2025-03-03 graphs lecture 11