class_docstr: An implementation of the Evolving Graph Convolutional without Hidden Layer.
  For details see this paper: `"EvolveGCN: Evolving Graph Convolutional
  Networks for Dynamic Graph." <https://arxiv.org/abs/1902.10191>`_
  Args:
      in_channels (int): Number of filters.
      improved (bool, optional): If set to :obj:`True`, the layer computes
          :math:`\mathbf{\hat{A}}` as :math:`\mathbf{A} + 2\mathbf{I}`.
          (default: :obj:`False`)
      cached (bool, optional): If set to :obj:`True`, the layer will cache
          the computation of :math:`\mathbf{\hat{D}}^{-1/2} \mathbf{\hat{A}}
          \mathbf{\hat{D}}^{-1/2}` on first execution, and will use the
          cached version for further executions.
          This parameter should only be set to :obj:`True` in transductive
          learning scenarios. (default: :obj:`False`)
      normalize (bool, optional): Whether to add self-loops and apply
          symmetric normalization. (default: :obj:`True`)
      add_self_loops (bool, optional): If set to :obj:`False`, will not add
          self-loops to the input graph. (default: :obj:`True`)
code: def _create_layers(self):
      self.recurrent_layer = GRU(
          input_size=self.in_channels,
          hidden_size=self.in_channels,
          num_layers=1,
      )
      for param in self.recurrent_layer.parameters():
          param.requires_grad = True
          param.retain_grad()
  
      self.conv_layer = GCNConv_Fixed_W(
          in_channels=self.in_channels,
          out_channels=self.in_channels,
          improved=self.improved,
          cached=self.cached,
          normalize=self.normalize,
          add_self_loops=self.add_self_loops,
      )
  
imports: from typing import Optional, Tuple
  import torch
  from torch import Tensor
  from torch.nn import GRU
  from torch_geometric.typing import Adj, OptTensor
  from torch_sparse import SparseTensor
  from torch_geometric.nn.inits import glorot
  from torch_geometric.nn.conv import MessagePassing
  from torch_geometric.nn.conv.gcn_conv import gcn_norm
label_desc: Use image node_id 4 for calling the EvolveGCNO obj's underlying member method code with example usage: obj._create_layers() without return types