Answers.Body: <p><strong>Spectral Convolution</strong>
  In a spectral graph convolution, we perform an Eigen decomposition of the Laplacian Matrix of the graph. This Eigen decomposition helps us in understanding the underlying structure of the graph with which we can identify clusters/sub-groups of this graph. This is done in the Fourier space.
  An analogy is PCA where we understand the spread of the data by performing an Eigen Decomposition of the feature matrix. The only difference between these two methods is with respect to the Eigen values. Smaller Eigen values explain the structure of the data better in Spectral Convolution whereas it's the opposite in PCA.
  ChebNet, GCN are some commonly used Deep learning architectures that use Spectral Convolution</p>
  
  <p><strong>Spatial Convolution</strong>
  Spatial Convolution works on local neighbourhood of nodes and understands the properties of a node based on its k local neighbours. Unlike Spectral Convolution which takes a lot of time to compute, Spatial Convolutions are simple and have produced state of the art results on graph classification tasks. GraphSage is a good example for Spatial Convolution.</p>
  
  <p>Additional References: <a href="https://towardsdatascience.com/tutorial-on-graph-neural-networks-for-computer-vision-and-beyond-part-2-be6d71d70f49" rel="noreferrer">https://towardsdatascience.com/tutorial-on-graph-neural-networks-for-computer-vision-and-beyond-part-2-be6d71d70f49</a></p>
  
  <p><a href="https://towardsdatascience.com/graph-convolutional-networks-for-geometric-deep-learning-1faf17dee008" rel="noreferrer">https://towardsdatascience.com/graph-convolutional-networks-for-geometric-deep-learning-1faf17dee008</a></p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-05-16T16:29:28.037Z
Answers.Text: The Graph Convolutional Neural Network (GCN) is considered to be a "spatial" approach. The author has mentioned this on his own website. And you also said it: "works on local neighbourhood of nodes" ... I think you should correct this.
Answers.UserDisplayName: user3352632
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-05-31T14:07:07.750Z
Answers.Text: GCN somehow bridged the gap between 'spatial' and 'spectral' methods, since it can be considered a first order approximation of ChebNet
Answers.UserDisplayName: James Arten
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2023-11-02T07:37:50.190Z
Answers.Text: What are the pros and cons of these two approaches?
Answers.UserDisplayName: Light
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2019-11-12T22:05:18.027Z
Answers.LastActivityDate: 2019-11-12T22:05:18.027Z
Answers.UserDisplayName: Srivatsan Ramesh
Answers.Body: <p>After I read multiple explanations from different sources I think I found the main difference between the two methods. Implementation wise the only difference is the matrix that you're multiplying the signal with (Laplacian/adjacency matrix). But by using the Laplacian, you're encoding the graph structure (in-out degree of each node) which dictates how a signal should "diffuse" in the network.  </p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2019-08-29T11:57:10.920Z
Answers.LastActivityDate: 2019-08-29T11:57:10.920Z
Answers.UserDisplayName: razvanc92
Body: <p>I've been reading different papers regarding graph convolution and it seems that they come into two flavors: spatial and spectral. From what I can see the main difference between the two approaches is that for spatial you're directly multiplying the adjacency matrix with the signal whereas for the spectral version you're using the Laplacian matrix.</p>
  <p>Am I missing something, or are there any other differences that I am not aware of?</p>
  
Tags: <comparison><convolution><geometric-deep-learning><graph-neural-networks>
Title: What is the difference between graph convolution in the spatial vs spectral domain?
UserDisplayName: razvanc92
ThreadText: # What is the difference between graph convolution in the spatial vs spectral domain?
  
  (Asked by: username_0 on 2019-08-16)
  
  I've been reading different papers regarding graph convolution and it seems that they come into two flavors: spatial and spectral. From what I can see the main difference between the two approaches is that for spatial you're directly multiplying the adjacency matrix with the signal whereas for the spectral version you're using the Laplacian matrix.
  
  Am I missing something, or are there any other differences that I am not aware of?
  
  **Tags:** comparison, convolution, geometric-deep-learning, graph-neural-networks
  
  ---
  
  ## 2 answers
  
  ### Answer by username_1 on 2019-11-12. Score: 6
  
  **Spectral Convolution**
  In a spectral graph convolution, we perform an Eigen decomposition of the Laplacian Matrix of the graph. This Eigen decomposition helps us in understanding the underlying structure of the graph with which we can identify clusters/sub-groups of this graph. This is done in the Fourier space.
  An analogy is PCA where we understand the spread of the data by performing an Eigen Decomposition of the feature matrix. The only difference between these two methods is with respect to the Eigen values. Smaller Eigen values explain the structure of the data better in Spectral Convolution whereas it's the opposite in PCA.
  ChebNet, GCN are some commonly used Deep learning architectures that use Spectral Convolution
  
  **Spatial Convolution**
  Spatial Convolution works on local neighbourhood of nodes and understands the properties of a node based on its k local neighbours. Unlike Spectral Convolution which takes a lot of time to compute, Spatial Convolutions are simple and have produced state of the art results on graph classification tasks. GraphSage is a good example for Spatial Convolution.
  
  Additional References: <https://towardsdatascience.com/tutorial-on-graph-neural-networks-for-computer-vision-and-beyond-part-2-be6d71d70f49>
  
  <https://towardsdatascience.com/graph-convolutional-networks-for-geometric-deep-learning-1faf17dee008>
  
  > **Comments:**
  > **username_2**: The Graph Convolutional Neural Network (GCN) is considered to be a "spatial" approach. The author has mentioned this on his own website. And you also said it: "works on local neighbourhood of nodes" ... I think you should correct this.  
  > **username_3**: GCN somehow bridged the gap between 'spatial' and 'spectral' methods, since it can be considered a first order approximation of ChebNet  
  > **username_4**: What are the pros and cons of these two approaches?  
  
  ---
  
  ### Answer by username_0 on 2019-08-29. Score: 2
  
  After I read multiple explanations from different sources I think I found the main difference between the two methods. Implementation wise the only difference is the matrix that you're multiplying the signal with (Laplacian/adjacency matrix). But by using the Laplacian, you're encoding the graph structure (in-out degree of each node) which dictates how a signal should "diffuse" in the network.
  
  
  ---
  
  