How to build graph conv. for semantic segmentation?

Hi, All,
I touched graph conv. for a short time and confronted with several questions. e.g.,

  1. How many nodes should be built in graph conv. temporarily except memory consumption and is there suitable method to initialize adjacency matrices for graph nodes?

  2. In semantic segmentation, assume there are several graph conv. layers in an encoder, now i set the output size as 128 in the first graph conv. as follows:
    class GCN(nn.Module):
    def init(self, in_features):
    self.gcn1 = GraphConvolution(in_features, 128) # #1
    self.gcn2 = GraphConvolution(128, in_features) # #2

    def forward(self, input, adj):
    out = self.gcn1(input, adj)
    out = self.gcn2(out, adj)
    return out

class Encoder(nn.Module):

Indeed, I’m not sure how to set the output size of the first graph conv.? in the similar way, how to set the output size in the second graph conv. (i.e., #2), not ‘in_features’, it’s noted that this network was developed for segmentation task. By the way, the large conv. parameters often incurred memory overflow and is there good idea to avoid it? Thanks in advance.