code: def __init__(self, layer_sizes):
      super().__init__()
  
      input_size, hidden_size, embedding_size = layer_sizes
  
      self.convs = nn.ModuleList(
          [
              SAGEConv(input_size, hidden_size, "mean"),
              SAGEConv(hidden_size, hidden_size, "mean"),
              SAGEConv(hidden_size, embedding_size, "mean"),
          ]
      )
  
      self.skip_lins = nn.ModuleList(
          [
              nn.Linear(input_size, hidden_size, bias=False),
              nn.Linear(input_size, hidden_size, bias=False),
          ]
      )
  
      self.layer_norms = nn.ModuleList(
          [
              LayerNorm(hidden_size),
              LayerNorm(hidden_size),
              LayerNorm(embedding_size),
          ]
      )
  
      self.activations = nn.ModuleList(
          [
              nn.PReLU(),
              nn.PReLU(),
              nn.PReLU(),
          ]
      )
  
imports: import copy
  import dgl
  import torch
  from dgl.nn.pytorch.conv import GraphConv, SAGEConv
  from torch import nn
  from torch.nn import BatchNorm1d, Parameter
  from torch.nn.init import ones_, zeros_
label_desc: Use image node_id 1 to create a new GraphSAGE_GCN object from inherited base classes: nn with example: obj = GraphSAGE_GCN(layer_sizes)