Answers.Body: <p>I will start by saying that I do not have any experience with Graph2Seq networks or GGNN, but I have some knowledge about GNN in general and the other three architectures.</p>
  <p>Firstly, it is essential to define your definition of effectiveness because each of these architectures excels at different things. For instance, GraphSage is most of the time the least expressive of these networks but will scale best to larger graphs, something that GGNN and GAT can not do as easily on most computers.</p>
  <p>In most cases, it is best to look at previous literature to see which architecture they used for their implementation. Lastly, it is good to experiment with each architecture. For example, you could start with GCN and see how the performance is. If the GCN is accurate enough, stay with it or try GraphSage, which takes less computation and is thus, in most cases, faster. If GCN is not accurate enough, I recommend trying either GAT or GGNN, which should be more expressive.</p>
  <h3>Explanation Expressivity</h3>
  <p>In the context of GNN, expressivity means how much relevant information and patterns the GNN architecture can capture from the input graph. GraphSage has the worst expressivity because it does not use all the node neighbours when aggregating information, but only samples some of the node neighbours. Sampling is used because the belief is that most nodes in a neighbourhood share similar node features. However, this does not have to be the case and could mean that GraphSage will miss important information.</p>
  <p>GAT is the opposite of this. GAT uses the information of all its neighbours in the same way as a GCN does and weighs the importance of those features with an attention mechanism. These two aspects make it more expressive because it will use all the available information and weigh the importance of neighbouring node features. Important information will be captured more easily by GAT for this reason.</p>
  <h3>Based on your graph</h3>
  <p>Your graph is quite small and should work fine with either GAT, GGNN or GCN. GraphSage is designed for significantly larger graphs and does not work with edge attributes. Again, I advise you to look at previous literature about Graph2Seq, to see what kind of architecture they use. Also, add more information about the graph like if it is directed or undirected, and information about if it only has node features or also edge weighs and attributes.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2022-03-31T18:05:09.230Z
Answers.Text: would you mind you explain the expressiveness of GCN, GAT and GGNN in a bit more detail. Would really appreciate it.
Answers.UserDisplayName: Exploring
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2022-04-01T08:34:25.610Z
Answers.Text: would you mind to explain why some of the GNN variants are not expressive enough?
Answers.UserDisplayName: Exploring
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2022-04-01T13:25:51.977Z
Answers.Text: I edited my initial answer to include more information about expressiveness.
Answers.UserDisplayName: Jesse
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2022-04-01T17:36:24.510Z
Answers.Text: I have been struggling firstly where to ask this question. Secondly finding materials about this topic. Appreciate it.
Answers.UserDisplayName: Exploring
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2022-04-05T18:47:05.033Z
Answers.Text: I am using a directed graph.
Answers.UserDisplayName: Exploring
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2022-04-06T22:35:51.487Z
Answers.Text: Can you pls give me a paper that rates GNN in terms of expressivity. Is expressivity a common term?
Answers.UserDisplayName: Exploring
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2022-04-06T22:39:06.743Z
Answers.Text: also what about GGNN. Is GGNN more expressive than GAT?
Answers.UserDisplayName: Exploring
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2022-03-31T09:53:11.560Z
Answers.LastActivityDate: 2022-04-01T13:42:36.193Z
Answers.LastEditDate: 2022-04-01T13:42:36.193Z
Answers.UserDisplayName: Jesse
Body: <p>I am doing a machine translation task using a Graph2Seq graph neutral network.</p>
  <p>There are many different variants of GNN:</p>
  <ul>
  <li>GCN</li>
  <li>GAT</li>
  <li>GraphSage</li>
  <li>GGNN</li>
  </ul>
  <p>Which one would be the most effective for a machine translation task?</p>
  <p>I have around 400 nodes in the graph, and on average, a node is connected to 3.5 neighbours.</p>
  
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2022-03-31T12:04:25.627Z
Comments.Text: The choice of GNN depends highly on the nature of the graphs you are dealing with, so the information you are giving is not enough to argue about which architecture might be best: How do you construct the graphs? How large are the graphs and what is the size of the node neighborhoods are some questions to consider. Even then you can only assume which GNN might work, you will still have to do empirical evaluations on different GNNs to be sure
Comments.UserDisplayName: Chillston
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2022-03-31T18:01:06.207Z
Comments.Text: @Chillston added information about the graph
Comments.UserDisplayName: Exploring
Tags: <deep-learning><graph-neural-networks><gnn>
Title: What is the best GNN for a NMT task?
UserDisplayName: Exploring
ThreadText: # What is the best GNN for a NMT task?
  
  (Asked by: username_0 on 2022-03-31)
  
  I am doing a machine translation task using a Graph2Seq graph neutral network.
  
  There are many different variants of GNN:
  
  * GCN
  * GAT
  * GraphSage
  * GGNN
  
  Which one would be the most effective for a machine translation task?
  
  I have around 400 nodes in the graph, and on average, a node is connected to 3.5 neighbours.
  
  **Tags:** deep-learning, graph-neural-networks, gnn
  
  > **Comments:**
  > **username_1**: The choice of GNN depends highly on the nature of the graphs you are dealing with, so the information you are giving is not enough to argue about which architecture might be best: How do you construct the graphs? How large are the graphs and what is the size of the node neighborhoods are some questions to consider. Even then you can only assume which GNN might work, you will still have to do empirical evaluations on different GNNs to be sure  
  > **username_0**: @username_1 added information about the graph  
  
  ---
  
  ## 1 answers
  
  ### Answer by username_2 on 2022-03-31. Score: 2
  
  I will start by saying that I do not have any experience with Graph2Seq networks or GGNN, but I have some knowledge about GNN in general and the other three architectures.
  
  Firstly, it is essential to define your definition of effectiveness because each of these architectures excels at different things. For instance, GraphSage is most of the time the least expressive of these networks but will scale best to larger graphs, something that GGNN and GAT can not do as easily on most computers.
  
  In most cases, it is best to look at previous literature to see which architecture they used for their implementation. Lastly, it is good to experiment with each architecture. For example, you could start with GCN and see how the performance is. If the GCN is accurate enough, stay with it or try GraphSage, which takes less computation and is thus, in most cases, faster. If GCN is not accurate enough, I recommend trying either GAT or GGNN, which should be more expressive.
  
  ### Explanation Expressivity
  
  In the context of GNN, expressivity means how much relevant information and patterns the GNN architecture can capture from the input graph. GraphSage has the worst expressivity because it does not use all the node neighbours when aggregating information, but only samples some of the node neighbours. Sampling is used because the belief is that most nodes in a neighbourhood share similar node features. However, this does not have to be the case and could mean that GraphSage will miss important information.
  
  GAT is the opposite of this. GAT uses the information of all its neighbours in the same way as a GCN does and weighs the importance of those features with an attention mechanism. These two aspects make it more expressive because it will use all the available information and weigh the importance of neighbouring node features. Important information will be captured more easily by GAT for this reason.
  
  ### Based on your graph
  
  Your graph is quite small and should work fine with either GAT, GGNN or GCN. GraphSage is designed for significantly larger graphs and does not work with edge attributes. Again, I advise you to look at previous literature about Graph2Seq, to see what kind of architecture they use. Also, add more information about the graph like if it is directed or undirected, and information about if it only has node features or also edge weighs and attributes.
  
  > **Comments:**
  > **username_0**: would you mind you explain the expressiveness of GCN, GAT and GGNN in a bit more detail. Would really appreciate it.  
  > **username_0**: would you mind to explain why some of the GNN variants are not expressive enough?  
  > **username_2**: I edited my initial answer to include more information about expressiveness.  
  > **username_0**: I have been struggling firstly where to ask this question. Secondly finding materials about this topic. Appreciate it.  
  > **username_0**: I am using a directed graph.  
  > **username_0**: Can you pls give me a paper that rates GNN in terms of expressivity. Is expressivity a common term?  
  > **username_0**: also what about GGNN. Is GGNN more expressive than GAT?  
  
  ---
  
  