Answers.Body: <p>Consider a two-dimensional convolution layer with 3x3 kernels. The 2d inputs of this layer can be seen as a particular graph with each pixel being a graph node, that is connected to 8 of his neighbors:</p>
  <p><a href="https://i.sstatic.net/su0mc.png" rel="nofollow noreferrer"><img src="https://i.sstatic.net/su0mc.png" alt="enter image description here" /></a></p>
  <p>The 3x3 kernels of the convolutional layer not only process the information about neighborhood relation between pixels, but also about their relative orientation. For example the <code>[0,0]</code> element of the kernel might represent the weight of the node to NW. And the <code>[1,2]</code> element of the kernel represent the weight the node across the S edge:</p>
  <p><a href="https://i.sstatic.net/RLV1K.png" rel="nofollow noreferrer"><img src="https://i.sstatic.net/RLV1K.png" alt="enter image description here" /></a></p>
  <p>Now, if we make a convolution that &quot;<em>doesn't exploit edge labels</em>&quot; then we'll have to forget the labels on the picture above, making us loose directional information:</p>
  <p><a href="https://i.sstatic.net/f7vMY.png" rel="nofollow noreferrer"><img src="https://i.sstatic.net/f7vMY.png" alt="enter image description here" /></a></p>
  <p>All we can say now is that the &quot;red&quot; node has those neighbors, but we don't really know how they are oriented relative to it. Since now the sub-graph does not provide any directional information, the learned convolution kernels will be direction-agnostic - in other words, they will be rotation-invariant.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-05-20T23:55:53.687Z
Answers.Text: This answer is interesting but it's not fully clear to me. When you say "The 3x3 kernels of the convolutional layer not only process the information about neighborhood relation between pixels, but also about their relative orientation", are you talking about the regular convolutional layer of a CNN or a graph CNN? Because, if you're talking about CNNs, I don't see how the multiplication of the kernel by that specific subwindow of the 2d input keeps track of the relative positions (i.e. it's just a dot product).
Answers.UserDisplayName: nbro
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-05-20T23:57:26.863Z
Answers.Text: Maybe you mean the application of the whole kernel across all subwindows of the input (i.e. the convolution/cross-correlation)? That would make more sense to me. But, from your example that you continue below, it doesn't seem that's what you mean. In any case, although it's been a while I had to deal with graph CNNs, your interpretation of the potential utility of including edge labelling info in the graph convolution seems reasonable to me, although maybe it's important to note that the edges do not necessarily represent directions (I guess).
Answers.UserDisplayName: nbro
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-05-21T00:01:31.873Z
Answers.Text: Although maybe it's clear to you, I think you should also explicitly state where the _translation invariance_ comes into play in your answer and explanations, and how it relates to the regular graph convolution.
Answers.UserDisplayName: nbro
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-05-20T23:10:33.183Z
Answers.LastActivityDate: 2021-05-20T23:10:33.183Z
Answers.UserDisplayName: Kostya
Body: <p>I am currently reading a paper called <a href="https://openaccess.thecvf.com/content_cvpr_2017/papers/Simonovsky_Dynamic_Edge-Conditioned_Filters_CVPR_2017_paper.pdf" rel="nofollow noreferrer">Dynamic Edge-Conditioned Filters in Convolutional Neural Networks on Graphs</a> (2017, CPPR), and I cannot understand the following sentence:</p>
  <blockquote>
  <p>We identify that the current formulations of graph convolution do not
  exploit edge labels, which results in an <strong>overly homogeneous view of
  local graph neighborhoods, with an effect similar to enforcing
  rotational invariance of filters in regular convolutions on images</strong>.</p>
  </blockquote>
  <p>What does this sentence mean?</p>
  
Tags: <convolutional-neural-networks><papers><convolution><geometric-deep-learning><graph-neural-networks>
Title: Why the non-exploitation of edge labels in current graph convolutions "results in an overly homogeneous view of local graph neighborhoods"?
UserDisplayName: S.Rucinski
ThreadText: # Why the non-exploitation of edge labels in current graph convolutions "results in an overly homogeneous view of local graph neighborhoods"?
  
  (Asked by: username_0 on 2021-05-20)
  
  I am currently reading a paper called [Dynamic Edge-Conditioned Filters in Convolutional Neural Networks on Graphs](https://openaccess.thecvf.com/content_cvpr_2017/papers/Simonovsky_Dynamic_Edge-Conditioned_Filters_CVPR_2017_paper.pdf) (2017, CPPR), and I cannot understand the following sentence:
  
  > We identify that the current formulations of graph convolution do not
  > exploit edge labels, which results in an **overly homogeneous view of
  > local graph neighborhoods, with an effect similar to enforcing
  > rotational invariance of filters in regular convolutions on images**.
  
  What does this sentence mean?
  
  **Tags:** convolutional-neural-networks, papers, convolution, geometric-deep-learning, graph-neural-networks
  
  ---
  
  ## 1 answers
  
  ### Answer by username_1 on 2021-05-20. Score: 0 | Accepted answer
  
  Consider a two-dimensional convolution layer with 3x3 kernels. The 2d inputs of this layer can be seen as a particular graph with each pixel being a graph node, that is connected to 8 of his neighbors:
  
  [![enter image description here](https://i.sstatic.net/su0mc.png)](https://i.sstatic.net/su0mc.png)
  
  The 3x3 kernels of the convolutional layer not only process the information about neighborhood relation between pixels, but also about their relative orientation. For example the `[0,0]` element of the kernel might represent the weight of the node to NW. And the `[1,2]` element of the kernel represent the weight the node across the S edge:
  
  [![enter image description here](https://i.sstatic.net/RLV1K.png)](https://i.sstatic.net/RLV1K.png)
  
  Now, if we make a convolution that "*doesn't exploit edge labels*" then we'll have to forget the labels on the picture above, making us loose directional information:
  
  [![enter image description here](https://i.sstatic.net/f7vMY.png)](https://i.sstatic.net/f7vMY.png)
  
  All we can say now is that the "red" node has those neighbors, but we don't really know how they are oriented relative to it. Since now the sub-graph does not provide any directional information, the learned convolution kernels will be direction-agnostic - in other words, they will be rotation-invariant.
  
  > **Comments:**
  > **username_2**: This answer is interesting but it's not fully clear to me. When you say "The 3x3 kernels of the convolutional layer not only process the information about neighborhood relation between pixels, but also about their relative orientation", are you talking about the regular convolutional layer of a CNN or a graph CNN? Because, if you're talking about CNNs, I don't see how the multiplication of the kernel by that specific subwindow of the 2d input keeps track of the relative positions (i.e. it's just a dot product).  
  > **username_2**: Maybe you mean the application of the whole kernel across all subwindows of the input (i.e. the convolution/cross-correlation)? That would make more sense to me. But, from your example that you continue below, it doesn't seem that's what you mean. In any case, although it's been a while I had to deal with graph CNNs, your interpretation of the potential utility of including edge labelling info in the graph convolution seems reasonable to me, although maybe it's important to note that the edges do not necessarily represent directions (I guess).  
  > **username_2**: Although maybe it's clear to you, I think you should also explicitly state where the _translation invariance_ comes into play in your answer and explanations, and how it relates to the regular graph convolution.  
  
  ---
  
  