Undirected Graphs #436
-
Let me first state, I am new to GNNs. I'm trying to implement the CGCNN in this paper ([repo here])(https://github.com/txie-93/cgcnn). I started off with using What I've been trying to wrap my head around is GNNGraphTuple{GraphNeuralNetworks.GNNGraphs.GNNGraph{Tuple{Vector{Int64}, Vector{Int64}, Nothing}}, Float64}
GNNGraph(22, 358) with x: 92×22, e: 10×358 data
3.6833
GNNGraph(40, 800) with x: 92×40, e: 10×800 data
1.6222
GNNGraph(12, 116) with x: 92×12, e: 10×116 data
1.5476
GNNGraph(80, 2222) with x: 92×80, e: 10×2222 data
2.1634
GNNGraph(9, 90) with x: 92×9, e: 10×90 data
3.2824
GNNGraph(19, 340) with x: 92×19, e: 10×340 data
1.8759
GNNGraph(16, 168) with x: 92×16, e: 10×168 data
1.4667
GNNGraph(48, 1440) with x: 92×48, e: 10×1440 data
3.7994
GNNGraph(6, 42) with x: 92×6, e: 10×42 data
0.0 and FeaturedGraphTuple{GraphSignals.FeaturedGraph{GraphSignals.SparseGraph{false, SparseArrays.SparseMatrixCSC{Int64, Int64}, Vector{Int64}, Int64}, GraphSignals.NodeSignal{Matrix{Float64}}, GraphSignals.EdgeSignal{Matrix{Float64}}, GraphSignals.NullGraphSignal, GraphSignals.NullDomain}, Float64}
FeaturedGraph:
Undirected graph with (#V=22, #E=179) in adjacency matrix
Node feature: ℝ^92 <NodeSignal{Matrix{Float64}}>
Edge feature: ℝ^10 <EdgeSignal{Matrix{Float64}}>
3.6833
FeaturedGraph:
Undirected graph with (#V=40, #E=400) in adjacency matrix
Node feature: ℝ^92 <NodeSignal{Matrix{Float64}}>
Edge feature: ℝ^10 <EdgeSignal{Matrix{Float64}}>
1.6222
FeaturedGraph:
Undirected graph with (#V=12, #E=58) in adjacency matrix
Node feature: ℝ^92 <NodeSignal{Matrix{Float64}}>
Edge feature: ℝ^10 <EdgeSignal{Matrix{Float64}}>
1.5476
FeaturedGraph:
Undirected graph with (#V=80, #E=1111) in adjacency matrix
Node feature: ℝ^92 <NodeSignal{Matrix{Float64}}>
Edge feature: ℝ^10 <EdgeSignal{Matrix{Float64}}>
2.1634
FeaturedGraph:
Undirected graph with (#V=9, #E=45) in adjacency matrix
Node feature: ℝ^92 <NodeSignal{Matrix{Float64}}>
Edge feature: ℝ^10 <EdgeSignal{Matrix{Float64}}>
3.2824
FeaturedGraph:
Undirected graph with (#V=19, #E=170) in adjacency matrix
Node feature: ℝ^92 <NodeSignal{Matrix{Float64}}>
Edge feature: ℝ^10 <EdgeSignal{Matrix{Float64}}>
1.8759
FeaturedGraph:
Undirected graph with (#V=16, #E=84) in adjacency matrix
Node feature: ℝ^92 <NodeSignal{Matrix{Float64}}>
Edge feature: ℝ^10 <EdgeSignal{Matrix{Float64}}>
1.4667
FeaturedGraph:
Undirected graph with (#V=48, #E=720) in adjacency matrix
Node feature: ℝ^92 <NodeSignal{Matrix{Float64}}>
Edge feature: ℝ^10 <EdgeSignal{Matrix{Float64}}>
3.7994
FeaturedGraph:
Undirected graph with (#V=6, #E=21) in adjacency matrix
Node feature: ℝ^92 <NodeSignal{Matrix{Float64}}>
Edge feature: ℝ^10 <EdgeSignal{Matrix{Float64}}>
0.0 Is there a way to get un-directed graphs when using |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 3 replies
-
Hello! |
Beta Was this translation helpful? Give feedback.
Message passing is performed on each directed edge, and given the fact that we represent an undirected edge as two directed opposite edges, message passing is performed for both directions. Everything works as you would expect for an undirected graph, the only thing that changes is the representation of the graph.