code: def __init__(
      self, input_dimension: int, dimensions: _typing.Sequence[int]
  ):
      super(_TopK, self).__init__()
      self.__gcn_layers: torch.nn.ModuleList = torch.nn.ModuleList()
      self.__batch_normalizations: torch.nn.ModuleList = (
          torch.nn.ModuleList()
      )
      self.__num_layers = len(dimensions)
      for layer in range(self.__num_layers):
          self.__gcn_layers.append(
              GraphConv(
                  input_dimension
                  if layer == 0
                  else dimensions[layer - 1],
                  dimensions[layer],
              )
          )
          self.__batch_normalizations.append(
              torch.nn.BatchNorm1d(dimensions[layer])
          )
  
imports: import dgl
  import torch.nn.functional
  import typing
  from dgl.nn.pytorch.conv import GraphConv
  from ..None import base_encoder, encoder_registry
label_desc: Use image node_id 1 to create a new _TopK object from inherited base classes: torch.nn with example: obj = _TopK(input_dimension, dimensions)